使用 ffmpeg 和 ffserver 通过 rtsp 将网络摄像头源流式传输到 android 客户端
streaming a webcam feed over rtsp using ffmpeg & ffserver to an android client
我正在尝试通过 rtsp 传输我的网络摄像头并使用 android 打开流。
我设法使用 ffserver 和 ffmpgeg 使第一部分工作(rtsp 流)。这是我的 ffserver.conf 文件:
HTTPPort 8000
RTSPPort 8001
HTTPBindAddress 192.168.1.74
RTSPBindAddress 192.168.1.74
MaxClients 100
MaxBandwidth 10000
NoDefaults
<Feed witty.ffm>
File /tmp/witty.ffm
FileMaxSize 20M
</Feed>
<Stream witty.mov>
Feed witty.ffm
Format rtp
VideoSize 640x480
VideoQMin 1
VideoQMax 20
VideoFrameRate 30
VideoBitRate 500
AVOptionVideo flags +global_header
VideoCodec libx264
AVPresetVideo baseline
NoAudio
</Stream>
服务器:
ffserver -f -d ffserver.conf // luch the server
然后我用FFmpeg打开网络摄像头(Mac OS)
ffmpeg -f avfoundation -i "default" http://192.168.1.74:8000/witty.ffm
我可以从 VLC 打开流但是在 android 上使用 videoView 我收到一个错误 (1,-38) 和一个警告视图说 "can't play this video".
<Stream witty.mov>
.mov (QuickTime) 不属于 Android 支持的视频格式。
使用支持的格式,如 3GP 等
我正在尝试通过 rtsp 传输我的网络摄像头并使用 android 打开流。 我设法使用 ffserver 和 ffmpgeg 使第一部分工作(rtsp 流)。这是我的 ffserver.conf 文件:
HTTPPort 8000
RTSPPort 8001
HTTPBindAddress 192.168.1.74
RTSPBindAddress 192.168.1.74
MaxClients 100
MaxBandwidth 10000
NoDefaults
<Feed witty.ffm>
File /tmp/witty.ffm
FileMaxSize 20M
</Feed>
<Stream witty.mov>
Feed witty.ffm
Format rtp
VideoSize 640x480
VideoQMin 1
VideoQMax 20
VideoFrameRate 30
VideoBitRate 500
AVOptionVideo flags +global_header
VideoCodec libx264
AVPresetVideo baseline
NoAudio
</Stream>
服务器:
ffserver -f -d ffserver.conf // luch the server
然后我用FFmpeg打开网络摄像头(Mac OS)
ffmpeg -f avfoundation -i "default" http://192.168.1.74:8000/witty.ffm
我可以从 VLC 打开流但是在 android 上使用 videoView 我收到一个错误 (1,-38) 和一个警告视图说 "can't play this video".
<Stream witty.mov>
.mov (QuickTime) 不属于 Android 支持的视频格式。
使用支持的格式,如 3GP 等