ffmpeg streamaudio视频摄像头树莓派

时间:2015-11-03 14:17:23

标签: video ffmpeg raspberry-pi broken-pipe

我在Rpi上使用网络摄像头录制音频视频。我正在使用ffmpeg 这是我的命令:

ffmpeg -y -ac 1 -f alsa -i hw:1,0 -i /dev/video1 -r 10 -s 120*120 -async 1 -strict -2 -c:a aac -pix_fmt yuv420p -threads 0 -ar 44100 -f mpegts out.avi

这会生成带有视频和音频的.avi文件,但是当我尝试使用ffserver进行流式传输时使用:

ffmpeg -y -ac 1 -f alsa -i hw:1,0 -i /dev/video1 -r 10 -s 120*120 -async 1 -strict -2 -c:a aac -pix_fmt yuv420p -threads 0 -ar 44100 -f mpegts http\\some_ip:someport\webcam.ffm

我得到av_interleaved_write_frame(): Broken pip

我如何解决这个问题?流音频视频的任何其他建议(请不要使用Motion)。

更新

这是我的ffserver配置文件

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

<Feed feed1.ffm>
    File /tmp/feed1.ffm
    FileMaxSize 200K
    ACL allow 127.0.0.1
</Feed>

# if you want to use mpegts format instead of flv
# then change "live.flv" to "live.ts"
# and also change "Format flv" to "Format mpegts"
<Stream live.avi>
    Format mpegts
    Feed feed1.ffm

    VideoCodec mjpeg
    VideoFrameRate 30
    VideoBitRate 512
    VideoSize 320x240
    AVOptionVideo crf 23
    AVOptionVideo preset medium
    # for more info on crf/preset options, type: x264 --help
    AVOptionVideo flags +global_header

    AudioCodec aac
    Strict -2
    AudioBitRate 128
    AudioChannels 2
    AudioSampleRate 44100
    AVOptionAudio flags +global_header
</Stream>

当我将流保存到本地文件out.avi我可以看到视频和音频但是当我在我的Windows机器上使用ffserver vlc时甚至无法显示视频(黑屏随时会出现一些声音故障) 感谢。

1 个答案:

答案 0 :(得分:1)

将源推送到ffserver时,您必须使用ffm格式。请删除-f mpegts并确保该网址以.ffm结尾,或将其替换为-f ffm

FFserver Wiki