linux視頻錄制,推流處理


1.linux視頻合成(視頻后綴要一致)

 ffmpeg -i 1.mp4 -i 2.mp4 -i 3.mp4 -lavfi hstack=inputs=3 4.mp4

 (input=3表示希望合並的視頻的個數)

2.縱向合成視頻

ffmpeg -i 1.mp4 -i 2.mp4 -lavfi vstack=input=2 3.mp4

3.合成音頻和視頻

ffmpeg -i video.mp4 -i audio.wav -c:v copy -c:a aac -strict experimental output.mp4

4.如果視頻中已經包含了音頻,這個時候還可以替換視頻中的音頻

ffmpeg -i video.mp4 -i audio.wav -c:v copy -c:a aac -strict experimental 

-map 0:v:0 -map 1:a:0 output.mp4

5.合並兩個音頻

ffmpeg -i input1.mp3 -i input2.mp3 -filter_complex amerge -ac 2 -c:a libmp3lame -q:a 4 output.mp3

6.獲取視頻中的音頻

ffmpeg -i input.mp4 -vn -y -acodec copy output.m4a

7.去掉視頻中的音頻

ffmpeg -i input.mp4 -an output.mp4

8.視頻轉換

ffmpeg -i input.avi output.mp4 

9.視頻剪切:

下面的命令,可以從時間為00:00:15開始,截取5秒鍾的視頻。 

ffmpeg -ss 00:00:15 -t 00:00:05 -i input.mp4 -vcodec copy -acodec copy output.mp4 

-ss表示開始切割的時間,-t表示要切多少。上面就是從15秒開始,切5秒鍾出來。

10.視頻截圖

ffmpeg –i test.avi –r 1 –f image2 image-%3d.jpeg        //提取圖片

ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy output.avi    //剪切視頻

//-r 提取圖像的頻率,-ss 開始時間,-t 持續時間

11.視頻錄制

ffmpeg –i rtsp://192.168.3.205:5555/test –vcodec copy out.avi

12.推流

ffmpeg -re -i source.flv -vcodec copy -acodec copy -f flv -y rtmp://127.0.0.1:1935/live/livestream  #推rtmp

 

ffmpeg -re -i cw.ts -vcodec copy -acodec copy  -f rtp_mpegts  rtp://238.123.46.66:8001  推rtp

 

ffmpeg -re -i cw.ts -vcodec copy -acodec copy  -f mpegts  udp://238.123.46.66:8001  推udp

13.推流應用

1、將文件當做直播送至live

ffmpeg -re -i localFile.mp4 -c copy -f flv rtmp://server/live/streamName

2、將直播媒體保存至本地文件

ffmpeg -i rtmp://server/live/streamName -c copy dump.flv

14.將一個JPG圖片經過h264壓縮循環輸出為mp4視頻

ffmpeg.exe -i INPUT.jpg -an -vcodec libx264 -coder 1 -flags +loop -cmp +chroma -subq 10 -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -flags2 +dct8x8 -trellis 2 -partitions +parti8x8+parti4x4 -crf 24 -threads 0 -r 25 -g 25 -y OUTPUT.mp4

15.將當前攝像頭及音頻通過DSSHOW采集,視頻h264、音頻faac壓縮后發布

ffmpeg -r 25 -f dshow -s 640×480 -i video=”video source name”:audio=”audio source name” -vcodec libx264 -b 600k -vpre slow -acodec libfaac -ab 128k -f flv rtmp://server/application/stream_name

 

16.推流

ffmpeg -re -i a.mp4 -c copy -f flv rtmp://192.168.2.169/live?vhost=play/11

 

-re 按照時間戳順序推流 不加的話直接把所有文件都推過去

-f  輸出格式

-c  音視頻格式 copy 與源流一樣

 

 

 

17.ffmpeg -re -safe 0 -f concat -i test.txt -vcodec copy -acodec copy -f flv rtmp://xxx

 

-safe 0 可以用絕對路徑,否則只能用相對路徑

cat test.txt

file 'a.mp4'

file 'a.mp4'

file 'a.mp4'

18.同時錄制音頻

ffmpeg -f dshow -i video="screen-capture-recorder":audio="virtual-audio-capturer" av-out.mp4


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM