python中怎样把一个文件夹中所有的*.ts文件拼接为.MP4文件?

你可以使用ffmpeg库来实现将一个文件夹中的所有*.ts文件拼接为一个.MP4文件。

首先,你需要确保已经安装了ffmpeg。然后,可以使用以下代码实现:

复制代码
`import os

def concat_videos(input_folder, output_file):
    # 获取文件夹中所有的.ts文件
    ts_files = [f for f in os.listdir(input_folder) if f.endswith('.ts')]
    ts_files.sort() # 按文件名排序

    # 生成包含所有.ts文件的文件列表
    with open('filelist.txt', 'w') as f:
        for ts_file in ts_files:
            f.write(f"file '{os.path.join(input_folder, ts_file)}'\n")
    
    # 使用ffmpeg进行拼接
    os.system(f"ffmpeg -f concat -i filelist.txt -c copy {output_file}")

    # 删除文件列表
    os.remove('filelist.txt')

# 使用示例
input_folder = '/path/to/ts/files'
output_file = '/path/to/output.mp4'

concat_videos(input_folder, output_file)
`

将上述代码中的/path/to/ts/files替换为你的输入文件夹路径,将/path/to/output.mp4替换为你的输出文件路径。然后运行代码即可将所有的*.ts文件拼接为一个.MP4文件。

相关推荐
Johny_Zhao4 小时前
CentOS Stream 8 高可用 Kuboard 部署方案
linux·网络·python·网络安全·docker·信息安全·kubernetes·云计算·shell·yum源·系统运维·kuboard
站大爷IP4 小时前
精通einsum():多维数组操作的瑞士军刀
python
站大爷IP5 小时前
Python与MongoDB的亲密接触:从入门到实战的代码指南
python
Roc-xb6 小时前
/etc/profile.d/conda.sh: No such file or directory : numeric argument required
python·ubuntu·conda
粟悟饭&龟波功6 小时前
Java—— ArrayList 和 LinkedList 详解
java·开发语言
冷雨夜中漫步6 小时前
Java中如何使用lambda表达式分类groupby
java·开发语言·windows·llama
a4576368766 小时前
Objective-c Block 面试题
开发语言·macos·objective-c
Cai junhao6 小时前
【Qt】Qt控件
开发语言·c++·笔记·qt
uyeonashi6 小时前
【QT系统相关】QT网络
开发语言·网络·c++·qt
世由心生7 小时前
[从0到1]环境准备--anaconda与pycharm的安装
ide·python·pycharm