4

我正在使用 avconv(ffmpeg“替换”)从我的树莓派直播网络摄像头

avconv -f video4linux2 -v debug -r 5 -s 176x144 -i /dev/video0 -vcodec mjpeg http://192.168.0.3:8090/feed1.ffm

到我的本地网络 OSX 机器(用于测试)运行 ffserver

Port 8090
BindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 10000
CustomLog -
NoDaemon

<Feed feed1.ffm>
   File feed1.ffm
   FileMaxSize 20M
   ACL allow 192.168.0.10
</Feed>

<Stream test.mjpeg>
   Feed feed1.ffm
   Format mjpeg
   NoAudio
   VideoQMin 1
   VideoQMax 10
   VideoSize 176x144
   VideoFrameRate 5
</Stream>

当我启动 avconv 时,它似乎可以流式传输到 ffserver:

Output #0, ffm, to 'http://192.168.0.3:8090/feed1.ffm':
  Metadata:
    encoder         : Lavf55.0.1
    Stream #0.0, 0, 1/1000000: Video: mjpeg, yuvj420p, 320x240, 1/5, q=2-31, 200 kb/s, 1000k tbn, 5 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo -> mjpeg)
Press ctrl-c to stop encoding
frame=  108 fps= 18 q=21.7 size=     688kB time=21.60 bitrate= 260.9kbits/s 

ffserver 状态页面显示流

ff 服务器状态

但是,当我在 VLC 中加载时http://localhost:8090/test.mjpeg,它不会播放并且 ffserver 会吐出:

Sat May 25 17:25:34 2013 dimensions not set
Sat May 25 17:25:34 2013 Error writing output header
Sat May 25 17:25:34 2013 127.0.0.1 - - [GET] "/test.mjpeg HTTP/1.1" 200 66

我已经尝试了很多不同的配置和设置,我不知道是什么导致了这个错误!

谢谢

4

0 回答 0