我目前正在使用一个自动化的Python脚本,用于使用ffmpeg
索引和转换我所有的电影和剧集。我使用subprocess.call()
运行ffmpeg
命令,并在一些电影中测试了此命令。不出所料,大型h264
文件仅转换为以前的三分之一。
但是,现在我正在测试该方法,我发现转换后的情节(在h264中约为400MB)的hevc中有超过1.6GB。我绝对不知道为什么新文件的hevc会大得多。 这是我的代码:
def convert(path):
outvid = path.strip(".mkv") + "h265.mkv"
cmd = ["ffmpeg", "-i", path, "-map", "0", "-map_metadata", "0", "-map_chapters", "0", "-c:v", "libx265",
"-c:a", "copy", "-c:s", "copy", "-preset", "ultrafast", "-x265-params", "lossless=1", outvid]
subprocess.call(cmd)
convert("/Volumes/2TB/Black Butler/Season 1/Black Butler S01E01.mkv")
我对ffmpeg
和subprocess
都没有太多的经验。这是我最早的大型项目之一。我希望有人可以告诉我可能是什么问题。
更新 问题仅适用于小型视频文件。我现在只检查文件大小,然后跳过小文件。反正不会有太大的不同。