日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python使用ffmpeg批量将flv转mp4

發布時間:2023/12/20 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python使用ffmpeg批量将flv转mp4 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

python使用ffmpeg批量將flv轉mp4

體積小

如果需要體積比較小,可以將h265格式的mp4封裝。60M轉為40M,花了583.61s,太慢了。

# # ffmpeg -i test.flv -c:v libx265 -c:a copy -crf 20 test.mp4

把coderStr 的值改成下面這個。

coderStr = " -c:v libx265 -c:a copy -crf 20 "

速度快

如果需要速度快,直接復制原數據。速度最快。體積沒多大變化。

# ffmpeg -i test.flv -vcodec copy -acodec copy test3.mp4

腳本

用命令行批量轉時,遇到了一些文件名含空格出錯的事情。所以,這里通過python循環來批量執行命令。
腳本如下

import os from os import path as mpath import timedef ffmpeg_updatefile(path ,coderStr ,oldFormat ,newFormat ):# 獲取文件路徑,獲取文件名稱列表source = mpath.normpath(path)videoList = os.listdir(source)videoListTemp = [];# 只選擇目錄下的mkv文件for Sname in videoList:if Sname.endswith(oldFormat):videoListTemp.append(Sname)# 執行ffmpeg命令for i in videoListTemp:oldname = ioldname = os.path.join(path,oldname)output = i[0:-4]newname = output + newFormatnewname = os.path.join(path,newname)otherStr = " "cmd = "ffmpeg -i "+ otherStr +"\""+ oldname +"\" "+ coderStr +" \""+ newname + "\""#os.system(cmd)#time.sleep(12)print(cmd)passif __name__ == '__main__':#path = r'F:\result\video2'#當前目錄path = os.getcwd()oldFormat = '.flv'newFormat = '.mp4'coderStr = " -vcodec copy -acodec copy "ffmpeg_updatefile(path,coderStr,oldFormat,newFormat)

ffmpeg常用命令

ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} ...ffmpeg -i [輸入文件名] [參數選項] -f [格式] [輸出文件] 參數選項: (1) -an: 去掉音頻 (2) -vn: 去掉視頻 (3) -acodec: 設定音頻的編碼器,未設定時則使用與輸入流相同的編解碼器。音頻解復用在一般后面加copy表示拷貝 (4) -vcodec: 設定視頻的編碼器,未設定時則使用與輸入流相同的編解碼器,視頻解復用一般后面加copy表示拷貝 (5) –f: 輸出格式(視頻轉碼) (6) -bf: B幀數目控制 (7) -g: 關鍵幀間隔控制(視頻跳轉需要關鍵幀) (8) -s: 設定畫面的寬和高,分辨率控制(352*278) (9) -i: 設定輸入流 (10) -ss: 指定開始時間(0:0:05(11) -t: 指定持續時間(0:05(12) -b: 設定視頻流量,默認是200Kbit/s (13) -aspect: 設定畫面的比例 (14) -ar: 設定音頻采樣率 (15) -ac: 設定聲音的Channel數 (16) -r: 提取圖像頻率(用于視頻截圖) (17) -c:v: 輸出視頻格式 (18) -c:a: 輸出音頻格式 (18) -y: 輸出時覆蓋輸出目錄已存在的同名文件-vcoder 設定視頻的編碼器,未設定時則使用與輸入流相同的編解碼器

參考資料

ffmpeg常用命令

總結

以上是生活随笔為你收集整理的python使用ffmpeg批量将flv转mp4的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。