📅  最后修改于: 2023-12-03 14:48:48.313000             🧑  作者: Mango
这是一个用于在上传音频或视频文件之前获取其持续时间的程序。通过该程序,程序员可以方便地获取音频或视频文件的持续时间,并在上传之前进行必要的处理。
import subprocess
def get_duration(file_path):
try:
# 使用FFmpeg命令行工具获取音频或视频文件的持续时间
result = subprocess.check_output(['ffmpeg', '-i', file_path])
result = result.decode('utf-8')
duration_line = [line for line in result.split('\n') if 'Duration' in line][0]
duration_string = duration_line.split('Duration: ')[1].split(',')[0]
hours, minutes, seconds = duration_string.split(':')
total_seconds = int(hours) * 3600 + int(minutes) * 60 + int(seconds)
return total_seconds
except (subprocess.CalledProcessError, IndexError):
# 处理异常情况,例如文件格式不支持或解码错误
return None
file_path = 'path/to/audio_or_video_file'
duration = get_duration(file_path)
if duration is None:
print('无法获取持续时间')
else:
print(f'持续时间: {duration}秒')
以上代码片段返回的是一个markdown格式的介绍,其中包含了上传前获取音频或视频持续时间的主题、功能特点、实现思路、代码示例和注意事项等信息。可以根据具体情况进行修改和补充,以满足实际需求。