FFmpeg常用推流命令
一疮绷、FFmpeg推RTMP流準備工作
首先確保自已已經(jīng)安裝了nginx + rtmp服務器。
打開配置文件nginx.conf
完成如下配置
如果沒有nginx + rtmp服務器嚣潜,請閱讀我的另一篇簡書文章
二冬骚、FFmpeg推流
1.推流MP4文件
視頻文件地址:/Users/xu/Desktop/bangbangbang.mp4
推流拉流地址:rtmp://localhost:1935/rtmplive/home
acc:RTMP的音頻格式
flv: RTMP的視頻格式
?ffmpeg -re -i /Users/xu/Desktop/bangbangbang.mp4 -vcodec libx264 -acodec aac -f flv rtmp://localhost:1935/rtmplive/home
輸入命令行后,暫時先不要點回車懂算,等設置好本地拉流后只冻,再進行推流。
2.本地拉流MP4文件
打開VLC播放器
VLC.3
設置播放地址
設置拉流地址
rtmp://localhost:1935/rtmplive/home
開始推流计技,點擊open后開始播放喜德。
推流成功!
三、用ffmpeg推流桌面以及推流攝像頭進行直播
1.如果希望將桌面錄制或者分享垮媒,可以使用命令行如下:
ffmpeg -f avfoundation -i"1"-vcodec libx264 -preset ultrafast -acodec libfaac -f flv rtmp://localhost:1935/rtmplive/home
這個只能夠推桌面舍悯。
2.如果需要桌面+麥克風,比如一般做遠程教育分享 命令行如下:
ffmpeg -f avfoundation -i"1:0"-vcodec libx264 -preset ultrafast -acodec libmp3lame -ar44100-ac1-f flv rtmp://localhost:1935/rtmplive/home
這個可以推桌面+麥克風睡雇。
3.如果需要桌面+麥克風萌衬,并且還要攝像頭拍攝到自己,比如一般用于互動主播入桂,游戲主播奄薇,命令行如下
ffmpeg -f avfoundation -framerate30-i"1:0"\-f avfoundation -framerate30-video_size640x480 -i"0"\-c:v libx264 -preset ultrafast \-filter_complex'overlay=main_w-overlay_w-10:main_h-overlay_h-10'-acodec libmp3lame -ar44100-ac1-f flv rtmp://localhost:1935/rtmplive/home
這個可以推桌面+麥克風,并且攝像頭把人頭放在界面下面
四抗愁、FFmpeg常用基本命令
1.分離視頻音頻流
ffmpeg -i input_file -vcodeccopy-an output_file_video//分離視頻流ffmpeg -i input_file -acodeccopy-vn output_file_audio//分離音頻流
2.視頻解復用
ffmpeg–itest.mp4 –vcodeccopy–an–fm4vtest.264ffmpeg –itest.avi –vcodeccopy–an–fm4vtest.264
3.視頻轉(zhuǎn)碼
ffmpeg –i test.mp4 –vcodec h264 –s352*278–an –f m4v test.264//轉(zhuǎn)碼為碼流原始文件ffmpeg –i test.mp4 –vcodec h264 –bf0–g25–s352*278–an –f m4v test.264//轉(zhuǎn)碼為碼流原始文件
ffmpeg –i test.avi -vcodec mpeg4 –vtag xvid –qsame test_xvid.avi//轉(zhuǎn)碼為封裝文件
-bf B幀數(shù)目控制
-g 關鍵幀間隔控制
-s 分辨率控制
4.視頻封裝
ffmpeg –i video_file –i audio_file –vcodeccopy–acodeccopyoutput_file
5.視頻剪切
ffmpeg –i test.avi –r1–f image2 image-%3d.jpeg//提取圖片ffmpeg -ss0:1:30-t0:0:20-i input.avi -vcodec copy -acodec copy output.avi//剪切視頻
-r 提取圖像的頻率
-ss 開始時間
-t 持續(xù)時間
6.視頻錄制
ffmpeg –i rtsp://192.168.3.205:5555/test –vcodec copy out.avi
7.YUV序列播放
ffplay -f rawvideo -video_size1920x1080 input.yuv
8.YUV序列轉(zhuǎn)AVI
ffmpeg–sw*h–pix_fmtyuv420p–iinput.yuv –vcodecmpeg4output.avi
9.常用參數(shù)說明:
主要參數(shù):
i 設定輸入流
f 設定輸出格式
ss 開始時間
視頻參數(shù):
b 設定視頻流量馁蒂,默認為200Kbit/s-r 設定幀速率,默認為25
s 設定畫面的寬與高-aspect 設定畫面的比例
vn 不處理視頻-vcodec 設定視頻編解碼器蜘腌,未設定時則使用與輸入流相同的編解碼器
音頻參數(shù):
ar 設定采樣率
ac 設定聲音的Channel數(shù)
acodec 設定聲音編解碼器沫屡,未設定時則使用與輸入流相同的編解碼器an 不處理音頻