我已经看到了很多关于如何将视频从服务器流到android设备的信息,但关于另一种方式(ala Qik)的信息却不多。谁能给我指点一下方向,或者给我一些建议?


当前回答

我也在研究这个问题,虽然我没有一个很好的解决方案,但我确实设法挖出了SIPDroid的视频代码:

http://code.google.com/p/sipdroid/source/browse/trunk/src/org/sipdroid/sipua/ui/VideoCamera.java

其他回答

我也在研究这个问题,虽然我没有一个很好的解决方案,但我确实设法挖出了SIPDroid的视频代码:

http://code.google.com/p/sipdroid/source/browse/trunk/src/org/sipdroid/sipua/ui/VideoCamera.java

我主持了一个开源项目,使Android手机IP摄像头:

http://code.google.com/p/ipcamera-for-android

原始视频数据从LocalSocket获取,在流媒体之前首先检查MP4的MDAT MOOV。现场视频包装在FLV格式,并可以通过Flash视频播放器与内置的web服务器播放:)

查看Yasea图书馆

Yasea是一个Android流媒体客户端。它对YUV和PCM数据进行编码 H.264/AAC,封装在FLV中进行传输 RTMP。

特点:

Android mini API 16。 H.264/AAC硬编码。 H.264软编码。 使用状态回调处理程序的RTMP流。 人像和景观动态方向。 前后摄像头热开关。 流媒体时录制到MP4。

Mux(我的公司)有一个开源的android应用程序,可以将RTMP传输到服务器,包括设置摄像头和用户交互。它被构建为流到Mux的实时流API,但可以轻松地流到任何RTMP入口点。

Took me some time, but I finally manage do make an app that does just that. Check out the google code page if you're interested: http://code.google.com/p/spydroid-ipcamera/ I added loads of comments in my code (mainly, look at CameraStreamer.java), so it should be pretty self-explanatory. The hard part was actually to understand the RFC 3984 and implement a proper algorithm for the packetization process. (This algorithm actually turns the mpeg4/h.264 stream produced by the MediaRecorder into a nice rtp stream, according to the rfc)

Bye