使用 MediaInfo CLI 的递归(批量)视频编解码器详细信息

使用 MediaInfo CLI 的递归(批量)视频编解码器详细信息

我想分享我的脚本来使用 Media Info CLI 和 python 来执行此操作。起初我尝试使用纯 bash,但一开始应该直接使用 python,更快、适应性更强(对我来说)。

我的任务是递归地浏览指定文件夹中的所有文件(在本例中是在 NAS 上),然后打印并将每个文件中使用的所有视频编解码器和配置文件级别存储在 txt 文件中。

原因是我发现一些较旧的三星电视无法播放配置文件级别大于 4.1 的 H264,因此需要进行一些重新编码,而且最新的三星电视也放弃了对 xvid/divx 的支持。

答案1

用法: ./your_script_name.py ./your_path | tee输出.txt

如果您想要媒体信息中的不同/附加详细信息,请检查“mediainfo --Info-Parameters”中提供的信息

#! /usr/bin/env python3

from glob import glob
import os
import sys
import subprocess

codecSummary = set() #dictionary


path = sys.argv[1]
print(path)

files = [f for f in glob(path+'/**', recursive=True) if os.path.isfile(f)]

#print(files)

for file in files:
        result = subprocess.check_output('mediainfo "'+file+'" "--Inform=Video;%Format% %Format_Profile%"', shell=True).decode().rstrip()

        if result:
                codecSummary.add(result)
                print(result + ' '+ file)

打印(编解码器摘要)

相关内容