2013-10-17 86 views
0

我有兩個ffmpeg命令:ffmpeg concat和scale同時?

ffmpeg -i d:\1.mp4 -i d:\1.mp4 -filter_complex "[0:0] [0:1] [1:0] [1:1] concat=n=2:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" d:\3.mp4

ffmpeg -i d:\1.mp4 -vf scale=320:240 d:\3.mp4

如何都同時使用它們呢?

+0

完整的ffmpeg控制檯輸出缺失。 ffmpeg命令行使用問題應該在[su]處提出,因爲[so]僅限於編程問題。我投票支持遷移,所以請不要在[su]中交叉發佈重複問題。 – LordNeckbeard

+0

非常感謝,我錯過了有關superuser.com的智慧。但我會回答這個問題,因爲我找到了工作解決方案。 –

回答

5
ffmpeg -i d:\1.mp4 -i d:\2.mp4 -filter_complex "concat=n=2:v=1:a=1 [v] [a]; \ 
[v]scale=320:200[v2]" -map "[v2]" -map "[a]" d:\3.mp4 

首先,我們串接一切,管結果到[v][a](見filtergraph syntax docs - 從concat濾波器輸出)。接下來我們採取[v],將其縮放並輸出到[v2],最後我們將[v2][a]複製到d:\3.mp4文件。

+0

我也一樣; 'ffmpeg -i video720p.mp4 -i video1080p.mp4 -filter_complex「concat = n = 2:v = 1:a = 1 [v] [a]; \ [v] scale = 1280:720 [v2]」 - 地圖「[v2]」-map「[a]」videoResult.mp4' 但是我得到這個錯誤:輸入鏈接in1:v0參數(大小爲1920x1080,SAR 0:1)與相應的輸出鏈接in0不匹配: v0參數(1280x720,SAR 0:1) [Parsed_concat_0 @ 0x1e2d1a0]在Parsed_concat_0上配置輸出焊盤失敗 – Mikel

0

構造自定義FilterGraph動態,移動調整過程更接近視頻源,例如我們應對更加複雜的圖形,以掌握其建築語言的靈魂:

ffmpeg.exe -i Movie_oriented_minus_90.mov -i Movie_pause.mp4 -i Sound_pause.aac -filter_complex "[0:v:0]scale=1920:1080 [c1],[c1]vflip[c2],[c2]hflip[clip], [clip] [0:a:0] [1:v:0] [2:a:0] concat=n=2:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" -c:v libx264 -q:v 0 -acodec mp3 -s 1920x1080 Movie_oriented_plus_90_with_pause.mp4 
  • 第1階段:Movie_oriented_minus_90是源0,其視頻流 [0:v:0]送入規模過濾器和作爲產生[C1],然後[C1]翻轉 垂直插入〔C2〕然後〔C2〕翻轉水平成[剪輯] 從而旋轉180度
  • 階段2:與第二源流級聯,即第一視頻流 第一視頻流:[剪輯](從源0處理的流)和從原始視頻[0聲 :一個:0]第二視頻流:從視頻 從源1構成[1:v:0]和音頻[2: a:0] from source 2(30 sec of silen CE與-filter_complex製造 「aevalsrc = 0:d = 30」 的ffmpeg分離 運行)
  • 階段3期間:所產生的視頻序列[V]並[a]然後壓縮 與X264編解碼器到目標MP4文件

所以,你的問題的主要問題是,你試圖連接具有dfferent尺寸和僅流,那麼申請調整操作已經整合的流這當然是不能由具有不同尺寸的媒體樣本組成。

0

後人: 如果輸入源的大小不同(這是組合前需要縮放的主要原因),則接受的答案不起作用。

你需要做的是第一標尺,然後通過管道將視頻輸出到CONCAT過濾器,像這樣:

ffmpeg -i input1.mp4 -i input2.mp4 -filter_complex "[0:v]scale=1024:576:force_original_aspect_ratio=1[v0]; [1:v]scale=1024:576:force_original_aspect_ratio=1[v1]; [v0][0:a][v1][1:a]concat=n=2:v=1:a=1[v][a]" -map [v] -map [a] output.mp4 

今天有這個問題,並拉我的頭髮好三的時間想這個不幸的是,接受的答案沒有像評論中指出的那樣起作用。