一、應用場景
github上很多AI項目,都只提供對圖片的處理,比如圖片清晰度提升、圖片動漫化等,但是如果要對一個視頻進行處理應該怎么辦呢?我的想法是將視頻拆分為圖片,然后將所有處理后的圖片合並為視頻,就相當於變相的對視頻進行處理了
二、方法步驟
0、下載ffmpeg,下載的版本為win64-gpl 並將其添加到環境變量:https://github.com/BtbN/FFmpeg-Builds/releases/tag/latest
分割視頻為圖片
-
1、將視頻分割成圖片,2.mp4就是原視頻,/frame%08d.png 表示分割后的圖片的命名方式
-
ffmpeg -i .\input\2.mp4 -qscale:v 1 -qmin 1 -qmax 1 -vsync 0 ./output//frame%08d.png
-

-
2、獲取原視頻的幀速率(一秒多少幀),方便后續合成,執行以下命令:
-
易錯點:在cmd的輸出窗口里,多少fps就是幀速率
-
ffmpeg -i 原視頻

-
合並圖片為視頻
-
將圖片合成視頻,並且將原視頻的聲音也添加上去,注意,下面的2個 -r 30 指代的就是上一步獲取的幀速率,需要根據實際替換
-
ffmpeg -r 30 -i output/frame%08d.png -i input/2.mp4 -map 0:v:0 -map 1:a:0 -c:a copy -c:v libx264 -r 30 -pix_fmt yuv420p output_w_audio.mp4 #30代表幀速率,要和上一步獲取的值保持一致,-i后面接的的圖片目錄, -i onepiece_demo.mp4 -map 0:v:0 -map 1:a:0 -c:a copy 表示復制原視頻的音頻,-c:v libx264 -r 30 -pix_fmt yuv420p output_w_audio.mp4 表示將處理后的視頻輸出為output_w_audio.mp4
-
