1. 程式人生 > >實例:通過調用外部程序進行錄制視頻(ffmpeg.exe)

實例:通過調用外部程序進行錄制視頻(ffmpeg.exe)

fff 需要 固定 過程 序列 mpeg 用戶 win 按鍵

相關知識點:

1. ffmpeg可以用下面的參數來錄制Windows 桌面操作的視頻。

ffmpeg.exe -y -rtbufsize 100M -f gdigrab -framerate 10 -draw_mouse 1 -i desktop 
-c:v libx264 -r 20 -crf 35 -pix_fmt yuv420p -fs 100M "fffffffffffffffff"

其中 fffffffffffffffff 部分 是需要填入 產生的視頻文件名。

錄制過程中,用戶按鍵盤 q 鍵,可以退出錄制。
2. ffmpeg還可以用來合並視頻文件,windows下面的格式如下 ffmpeg
.exe -f concat -i concat.txt -codec copy out.mp4 其中concat.txt 是要合並視頻的文件列表。格式如下,每行以file 開頭 後面是要合並的視頻文件名: file 20170330_110818.mp4 file 20170330_110833.mp4

題目:

下載ffmpeg程序 (進入 http://ffmpeg.zeranoe.com/builds/ 點擊 Download FFmpeg按鈕即可)

要求大家寫一個python程序,運行後提示用戶是要做什麽操作,如下
 ‘請選擇您要做的操作:1:錄制視頻,2:合並視頻:‘
 
 如果用戶輸入1並回車, 則調用ffmpeg錄制視頻文件,產生在當前目錄下面。
 要求錄制的視頻文件名 是當前時間(年月日_時分秒.mp4格式),
 比如 ‘20170330_093612.mp4‘ (怎麽產生這種時間格式的字符串,不知道的請自行網上搜索方法)
 
 如果用戶輸入2並回車,則按字母順序列出當前目錄下所有的 mp4為擴展名
 的視頻文件(怎麽列出,請自行網上搜索方法),並在前面編上序號。如下所示
 
 ---------------------------------
    目錄中有這些視頻文件:
    1 - 20170329_202814.mp4
    2 - 20170330_093251.mp4
    3 - 20170330_093612.mp4

    請選擇要合並視頻的視頻文件序號(格式 1,2,3,4) : 
 ---------------------------------    

 用戶輸入視頻序號(序號以逗號隔開)後, 程序合並視頻文件, 輸出的合並後視頻文件名 固定為 out.mp4

答案:

實例:通過調用外部程序進行錄制視頻(ffmpeg.exe)