基于ffmpeg的流媒體服務器
睿豐德科技 專注RFID識別技術和條碼識別技術與管理軟件的集成項目。質量追溯系統、MES系統、金蝶與條碼系統對接、用友與條碼系統對接
OS:ubuntu 12.04
ffmpeg:N-47141-g4063bb2
x264:0.133.2334 a3ac64b
目標:
使用ffserver建立流媒體服務器
使用ffmpeg對本地文件流化(x264編碼器)
使用ffplay播放
目錄 [hide]
ffserver.conf配置
1Port 8090 #訪問端口2RTSPPort 554 #rtsp端口3BindAddress 0.0.0.0 #服務器地址綁定4MaxHTTPConnections 2000 #允許的最大連接數5MaxClients 1000 #最大的客戶數6MaxBandwidth 100007CustomLog -89<Feed feed1.ffm>10File /tmp/feed1.ffm11FileMaxSize 1G12ACL allow 127.0.0.1 #只允許本地連接13</Feed>1415################ asf ################1617<Stream test.asf>18Feed feed1.ffm19Format asf #流媒體格式20VideoCodec libx264 #編碼格式21VideoFrameRate 25 #楨率22VideoSize 1024x768 #播放大小23VideoBitRate 2M #碼率24VideoBufferSize 1000000025VideoGopSize 2426StartSendOnKey27Preroll 528#使用x264編碼時必須有下面的4個參數29VideoQMin 330VideoQMax 3131AVOptionVideo flags +global_header32AVOptionAudio flags +global_header33NOAudio34</Stream>3536################ flv ################3738<Stream test.flv>3940Feed feed1.ffm41Format flv 4243NoAudio44#AudioBitRate 32 45#AudioChannels 246#AudioSampleRate 4410047#AVOptionAudio flags +global_header48#AudioCodec libmp3lame 4950#NoVideo51VideoBitRate 1024 52VideoFrameRate 40 53VideoSize 1280x720 54VideoBufferSize 100000055VideoCodec libx264 5657VideoQMin 3 58VideoQMax 31 5960VideoBitRateTolerance 100 61VideoGopSize 12 62StartSendOnKey6364AVOptionVideo qmin 365AVOptionVideo qmax 3166#AVOptionVideo quality good67#AVOptionVideo cpu-used 068AVOptionVideo flags +global_header69#AVOptionVideo keyint_min 2570#AVOptionVideo qcomp 0.671AVOptionVideo qdiff 472#AVOptionVideo me_range 1673#Preroll 1574</Stream>7576################ rtsp ################7778<Stream live.h264>79Format rtp80Feed feed1.ffm81VideoCodec libx26482#VideoFrameRate 783VideoBitRate 30084#VideoSize 480x27285VideoSize 352x28886#AVPresetVideo default87AVPresetVideo superfast88AVOptionVideo flags +global_header8990PixelFormat yuv420p91AVOptionVideo me_range 492AVOptionVideo qdiff 493AVOptionVideo qmin 294AVOptionVideo qmax 519596#MulticastAddress 224.124.0.197#MulticastPort 500098#MulticastTTL 199100NoAudio101#AudioCodec libfaac102#AudioBitRate 32103#AudioChannels 2104#AudioSampleRate 22050105#AVOptionAudio flags +global_header106</Stream>107108################ html ################109110<Stream stat.html>111Format status112# Only allow local people to get the status113ACL allow localhost114ACL allow 192.168.0.0 192.168.255.255115#FaviconURL http://pond1.gladstonefamily.net:8080/favicon.ico116</Stream>117118# Redirect index.html to the appropriate site119<Redirect index.html>120URL http://www.ffmpeg.org/121</Redirect>啟動ffserver服務器
1ffserver -d -f ./ffserver.conf使用ffmpeg對本地文件流化
1./ffmpeg -i ./1.mov -vcodec libx264 -qmin 3 -qmax 31 -qdiff 4 -me_range 16 -keyint_min 25 -qcomp 0.6 -b 9000K http://localhost:8090/feed1.ffm捕捉本地攝像頭數據
1./ffmpeg -f video4linux2 -i /dev/video0 http://localhost:8090/feed1.ffm 為流媒體增加聲音
在ffmserver.conf中打開聲音:
1#NoAudio2AudioBitRate 128kb 3AudioChannels 2 4AudioSampleRate 44100 5AVOptionAudio flags +global_header在輸入中加入聲音捕獲:
1ffmpeg -f v4l2 -i /dev/video0 -f alsa -i hw:0,0 http://localhost:8090/feed_tv.ffm使用ffplay播放
1./ffplay mmsh://localhost:8090/test.asf2./ffplay http://localhost:8090/test.flv3./ffplay rtsp://localhost:554/live.h264git: https://github.com/lnmcc/multi_stream_server.git
RFID管理系統集成商 RFID中間件 條碼系統中間層 物聯網軟件集成