Python3 代码在 Win10 下无法正常运行 - ffmpeg 视频处理修复指南
以下是修复 Python3 代码在 Win10 下无法正常运行的步骤:
- 导入库:
import os
from natsort import natsorted
import subprocess
- ffmpeg 路径配置:
- 确保 ffmpeg 已安装,并且其可执行文件路径已添加到系统环境变量中。
- 如果未添加,请在 cmd 中手动进入 ffmpeg 的安装目录并执行命令。例如:
cd C:\ffmpeg\bin
ffmpeg -i input.mp4 -vcodec copy -acodec copy output.mp4
- 修改文件路径:
- 将代码中的文件路径修改为当前电脑上的实际路径。
# 存储当前文件夹下的所有 mp4 文件路径
L = []
for root, dirs, files in os.walk('E:/home/up'):
files = natsorted(files)
for file in files:
# 只处理 mp4 文件
if os.path.splitext(file)[1] == '.mp4':
file_path = os.path.join(root, file)
L.append(file_path)
# 转换为 ts 格式
for l in L:
ts_file_path = l.replace('.mp4', '.ts')
cmd = f'ffmpeg -i '\'{l}\'' -vcodec copy -acodec copy -vbsf h264_mp4toannexb '\'{ts_file_path}\''
subprocess.run(cmd, shell=True)
# 合并为 mp4 格式
ts_list = [l.replace('.mp4', '.ts') for l in L]
concat_str = '|'.join(ts_list)
cmd = f'ffmpeg -i 'concat:{concat_str}' -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4'
subprocess.run(cmd, shell=True)
# 删除 ts 文件
for ts in ts_list:
os.remove(ts)
注意:
- 代码中使用了单引号 (') 和反斜杠 () 来转义双引号 ('),以确保 ffmpeg 命令能够正确执行。
- 可以根据需要修改代码中的文件路径和输出文件名。
希望这些修复步骤能够帮助您解决 Python3 代码在 Win10 下运行时遇到的 ffmpeg 视频处理问题。
原文地址: https://www.cveoy.top/t/topic/nzG3 著作权归作者所有。请勿转载和采集!