以下是一个使用 Python 3 和 mediainfo 库来统计文件大小、视频音频 info 并将结果写入 Excel 的脚本:

import os
import mediainfo
import openpyxl

# 获取指定目录下的所有文件
def get_all_files(directory):
    all_files = []
    for root, dirs, files in os.walk(directory):
        for file in files:
            all_files.append(os.path.join(root, file))
    return all_files

# 获取文件大小
def get_file_size(file_path):
    return os.path.getsize(file_path)

# 获取视频音频 info
def get_media_info(file_path):
    media_info = mediainfo.MediaInfo.parse(file_path)
    video_info = {}
    audio_info = {}
    for track in media_info.tracks:
        if track.track_type == 'Video':
            video_info['Codec'] = track.codec
            video_info['Height'] = track.height
            video_info['Width'] = track.width
            video_info['Frame rate'] = track.frame_rate
        elif track.track_type == 'Audio':
            audio_info['Codec'] = track.codec
            audio_info['Channels'] = track.channel_s
            audio_info['Sampling rate'] = track.sampling_rate
    return {'Video': video_info, 'Audio': audio_info}

# 写入 Excel
def write_to_excel(file_path, file_size, video_info, audio_info, sheet):
    row = [file_path, file_size, video_info['Codec'], video_info['Height'], video_info['Width'], 
           video_info['Frame rate'], audio_info['Codec'], audio_info['Channels'], audio_info['Sampling rate']]
    sheet.append(row)

# 主程序
if __name__ == '__main__':
    directory = 'C:/test' # 指定目录
    all_files = get_all_files(directory)
    
    wb = openpyxl.Workbook() # 创建一个新的 Excel 文件
    sheet = wb.active
    sheet.title = 'Media Info'
    headers = ['File Path', 'File Size', 'Video Codec', 'Height', 'Width', 'Frame rate', 
               'Audio Codec', 'Channels', 'Sampling rate']
    sheet.append(headers)
    
    for file in all_files:
        if os.path.isfile(file):
            file_size = get_file_size(file)
            media_info = get_media_info(file)
            write_to_excel(file, file_size, media_info['Video'], media_info['Audio'], sheet)
    
    wb.save('Media Info.xlsx') # 保存 Excel 文件

使用方法:

  1. 将以上脚本保存为media_info.py文件;
  2. 在命令行中执行pip install mediainfo openpyxl安装mediainfoopenpyxl库;
  3. 修改脚本中的directory变量为要统计的目录;
  4. 在命令行中执行python media_info.py,等待程序完成;
  5. 在脚本所在目录下会生成一个名为Media Info.xlsx的 Excel 文件,其中包含了所有文件的统计信息。
Python 脚本使用 MediaInfo 统计文件大小、视频音频信息并写入 Excel

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

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