![如何將參數傳遞給混合過濾器 FFMPEG](https://rvso.com/image/1493956/%E5%A6%82%E4%BD%95%E5%B0%87%E5%8F%83%E6%95%B8%E5%82%B3%E9%81%9E%E7%B5%A6%E6%B7%B7%E5%90%88%E9%81%8E%E6%BF%BE%E5%99%A8%20FFMPEG.png)
我正在嘗試合併 5 張圖像,並在組合它們後創建一個閃爍的視頻。 FFMPEG 對我來說還是相當新的。
這是我執行的命令:
"-loop 1 -i "+path+"images_001.jpg " +
"-loop 1 -i "+path+"images_002.jpg " +
"-loop 1 -i "+path+"images_003.jpg " +
"-loop 1 -i "+path+"images_004.jpg " +
"-loop 1 -i "+path+"images_005.jpg " +
"-filter_complex " +
"[1:v][0:v]blend=all_expr='A*(if(gte(T,0.5),1,T/0.5))+B*(1-(if(gte(T,0.5),1,T/0.5)))'[b1v];" +
"[2:v][1:v]blend=all_expr='A*(if(gte(T,0.5),1,T/0.5))+B*(1-(if(gte(T,0.5),1,T/0.5)))'[b2v];" +
"[3:v][2:v]blend=all_expr='A*(if(gte(T,0.5),1,T/0.5))+B*(1-(if(gte(T,0.5),1,T/0.5)))'[b3v];" +
"[4:v][3:v]blend=all_expr='A*(if(gte(T,0.5),1,T/0.5))+B*(1-(if(gte(T,0.5),1,T/0.5)))'[b4v];" +
"[0:v][b1v][1:v][b2v][2:v][b3v][3:v][b4v][4:v]concat=n=9:v=1:a=0,format=yuv420p[v] -map [v] "+path+"out.mp4"
執行此命令後,進程將永遠運行。這是我的那件事的螢幕截圖:
我知道我錯過了一些愚蠢的事情;由於我是新手,ffmpeg
如果我能了解一些我在這裡出錯的地方,那就太好了。我缺什麼?
答案1
在每個之後-loop 1
,插入-t x
其中 x 是持續時間(以秒為單位)。
答案2
你的混合表達對我來說沒有意義。你想做什麼? Blend 對每個像素執行類似的操作:像素分量 = 函數(A 輸入的像素分量,B 輸入的像素分量)。那你的函數該做什麼?它可以做 (A + B) / 2 這是非常簡單的情況...