以下是一个使用mediainfo和openpyxl模块编写的Python脚本,用于从视频文件中提取详细信息并将其写入Excel文件中:

import os
import subprocess
import openpyxl

# 要统计信息的视频文件所在目录
videos_dir = '/path/to/videos/directory'

# 要写入信息的Excel文件名
output_file = 'video_info.xlsx'

# 列名
header = ['文件名', '格式', '分辨率', '码率', '帧率', '时长']

# 初始化Excel文件
wb = openpyxl.Workbook()
ws = wb.active
ws.title = '视频信息'
ws.append(header)

# 遍历视频文件目录
for filename in os.listdir(videos_dir):
    if filename.endswith('.mp4') or filename.endswith('.mkv'):
        # 使用mediainfo获取视频信息
        command = ['mediainfo', '--Output=JSON', os.path.join(videos_dir, filename)]
        result = subprocess.run(command, stdout=subprocess.PIPE)
        output = result.stdout.decode('utf-8')
        info = eval(output)['media']['track'][0]

        # 提取有用信息
        file_format = info['format']
        width = info['width']
        height = info['height']
        resolution = f'{width}x{height}'
        bitrate = info['bit_rate']
        framerate = info['frame_rate']
        duration = info['duration']

        # 写入Excel文件
        row = [filename, file_format, resolution, bitrate, framerate, duration]
        ws.append(row)

# 保存Excel文件
wb.save(output_file)

print('视频信息已写入Excel文件!')

在脚本中,我们首先指定要统计信息的视频文件所在目录和要写入信息的Excel文件名。然后,我们使用openpyxl模块创建一个新的Excel文件,并添加一个名为“视频信息”的工作表。接下来,我们遍历视频文件目录,对于每个MP4或MKV文件,使用mediainfo获取其信息,并从结果中提取有用信息。最后,我们将每个视频的信息写入Excel文件的新行中,并保存Excel文件。

请注意,为了使用mediainfo,您需要在系统中安装mediainfo命令行工具。您可以使用以下命令在Ubuntu上进行安装:

sudo apt-get install mediainfo

或者使用以下命令在Mac OS上进行安装:

brew install mediainfo

此外,我们在脚本中使用了eval函数来解析mediainfo的JSON输出。请确保您只运行可信的视频文件,并谨慎使用eval函数。

Python脚本使用mediainfo统计视频信息并写入Excel

原文地址: https://www.cveoy.top/t/topic/mzZl 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录