以下是一个 Python 3 编写的使用 MediaInfo 统计视频元数据并将其写入 Excel 的脚本。在运行此脚本之前,您需要安装 mediainfo 和 openpyxl 模块。

import os
import openpyxl
from openpyxl import Workbook
from pymediainfo import MediaInfo


def get_video_metadata(file_path):
    # 使用 MediaInfo 获取视频元数据
    media_info = MediaInfo.parse(file_path)
    video_metadata = {}
    for track in media_info.tracks:
        if track.track_type == 'Video':
            video_metadata['Duration'] = int(float(track.duration))
            video_metadata['Width'] = track.width
            video_metadata['Height'] = track.height
            video_metadata['FrameRate'] = track.frame_rate
            video_metadata['Codec'] = track.codec
            video_metadata['Bitrate'] = int(track.bit_rate)
            break
    return video_metadata


def write_to_excel(file_path, sheet):
    # 将元数据写入到 Excel 表格中
    metadata = get_video_metadata(file_path)
    row = []
    row.append(os.path.basename(file_path))
    row.append(metadata.get('Duration'))
    row.append(metadata.get('Width'))
    row.append(metadata.get('Height'))
    row.append(metadata.get('FrameRate'))
    row.append(metadata.get('Codec'))
    row.append(metadata.get('Bitrate'))
    sheet.append(row)


def main():
    # 遍历目录下所有视频文件并统计元数据
    directory = 'path/to/directory'
    wb = Workbook()
    sheet = wb.active
    sheet.title = 'Video Metadata'
    sheet.append(['Filename', 'Duration', 'Width', 'Height', 'FrameRate', 'Codec', 'Bitrate'])
    for dirpath, dirnames, filenames in os.walk(directory):
        for filename in filenames:
            if filename.endswith('.mp4') or filename.endswith('.avi') or filename.endswith('.mov'):
                file_path = os.path.join(dirpath, filename)
                write_to_excel(file_path, sheet)

    # 保存 Excel 文件
    wb.save('video_metadata.xlsx')


if __name__ == '__main__':
    main()

此脚本将遍历指定目录下的所有视频文件,并使用 MediaInfo 获取视频元数据。然后,它将这些元数据写入 Excel 表格中,包括文件名,持续时间,分辨率,帧速率,编解码器和比特率。最后,脚本将保存 Excel 文件。

Python 脚本使用 MediaInfo 统计视频元数据并写入 Excel

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

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