python中怎样把一个文件夹中所有的*.ts文件都读进来形成一个视频文件?

要将一个文件夹中所有的*.ts文件合并成一个视频文件,可以使用FFmpeg库来处理。

首先,确保你的系统中已经安装了FFmpeg。

然后,可以使用以下代码来实现:

复制代码
`import os

# 定义输入文件夹路径和输出文件名
input_folder = "path/to/input/folder"
output_file = "path/to/output/file.mp4"

# 使用os模块的walk函数遍历文件夹中的所有文件
for root, _, files in os.walk(input_folder):
    # 遍历文件夹中的所有文件
    for file in files:
        # 判断文件是否为*.ts文件
        if file.endswith(".ts"):
            # 构建输入文件的路径
            input_file = os.path.join(root, file)
            
            # 使用FFmpeg合并命令将.ts文件合并为.mp4文件
            command = f"ffmpeg -i {input_file} -c copy -bsf:v h264_mp4toannexb -f mpegts temp.ts"
            os.system(command)

# 使用FFmpeg合并命令将所有.temp.ts文件合并为最终的.mp4文件
command = f"ffmpeg -i \"concat:temp.ts|\" -c copy {output_file}"
os.system(command)

# 删除临时文件
os.remove("temp.ts")
`

请注意替换代码中的input_folderoutput_file变量为你自己的路径。

这段代码首先遍历文件夹中的所有文件,如果文件是以.ts结尾的文件,则使用FFmpeg将其转换为.mp4格式的.temp.ts文件。然后使用FFmpeg将所有.temp.ts文件合并为一个最终的.mp4文件,并且删除临时文件。

相关推荐
Mallow Flowers33 分钟前
Python训练营-Day31-文件的拆分和使用
开发语言·人工智能·python·算法·机器学习
蓝婷儿1 小时前
Python 爬虫入门 Day 2 - HTML解析入门(使用 BeautifulSoup)
爬虫·python·html
云边小网安1 小时前
java集合篇(六) ---- ListIterator 接口
java·开发语言·青少年编程·java集合
不被定义的程序猿1 小时前
Golang 在 Linux 平台上的并发控制
开发语言·后端·golang
struggle20252 小时前
Burn 开源程序是下一代深度学习框架,在灵活性、效率和可移植性方面毫不妥协
人工智能·python·深度学习·rust
腾飞开源2 小时前
17_Flask部署到网络服务器
python·flask·python web开发·flask快速入门教程·flask框架·flask视频教程·flask会话技术
陈旭金-小金子2 小时前
发现 Kotlin MultiPlatform 的一点小变化
android·开发语言·kotlin
Mikhail_G2 小时前
Python应用八股文
大数据·运维·开发语言·python·数据分析
mikes zhang2 小时前
Flask文件上传与异常处理完全指南
后端·python·flask
烛阴2 小时前
深入浅出地理解Python元类【从入门到精通】
前端·python