以下是一个使用pymediainfo库统计视频元数据并将结果写入excel的Python脚本示例:

import os
import csv
import datetime
from pymediainfo import MediaInfo

def get_video_metadata(video_path):
    media_info = MediaInfo.parse(video_path)
    video_data = {}
    for track in media_info.tracks:
        if track.track_type == 'General':
            video_data['file_name'] = os.path.basename(video_path)
            video_data['duration'] = str(datetime.timedelta(milliseconds=track.duration))
            video_data['file_size'] = track.file_size
            video_data['format'] = track.format
            video_data['bit_rate'] = track.overall_bit_rate
        elif track.track_type == 'Video':
            video_data['video_codec'] = track.codec_id
            video_data['width'] = track.width
            video_data['height'] = track.height
            video_data['frame_rate'] = track.frame_rate
        elif track.track_type == 'Audio':
            video_data['audio_codec'] = track.codec_id
            video_data['audio_channels'] = track.channel_s
            video_data['audio_bit_rate'] = track.bit_rate
    return video_data

def write_to_excel(data, output_path):
    with open(output_path, 'w', newline='') as outfile:
        writer = csv.writer(outfile)
        writer.writerow(['File Name', 'Duration', 'File Size', 'Format', 'Bit Rate', 'Video Codec', 'Width', 'Height', 'Frame Rate', 'Audio Codec', 'Audio Channels', 'Audio Bit Rate'])
        for video in data:
            writer.writerow([video['file_name'], video['duration'], video['file_size'], video['format'], video['bit_rate'], video['video_codec'], video['width'], video['height'], video['frame_rate'], video['audio_codec'], video['audio_channels'], video['audio_bit_rate']])
    print("Data written to excel file successfully!")

def main():
    input_path = 'path/to/video/folder'
    output_path = 'output_file.csv'
    data = []
    for file in os.listdir(input_path):
        if file.endswith('.mp4') or file.endswith('.mov'):
            video_data = get_video_metadata(os.path.join(input_path, file))
            data.append(video_data)
    write_to_excel(data, output_path)

if __name__ == '__main__':
    main()

这个脚本会读取指定文件夹中的所有.mp4和.mov文件,并使用get_video_metadata函数获取每个文件的元数据。然后,它会将元数据写入一个CSV文件,该文件可以在Excel中打开。请注意,输出文件将覆盖任何现有的同名文件。如果需要,可以更改输出文件名和路径。

我需要一个python3编写的利用pymediainfo库统计视频元数据并写入excel的脚本

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

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