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文件,并且删除临时文件。

相关推荐
顾温3 分钟前
协程结束——实测
开发语言·unity·c#
u0110225123 分钟前
如何解决Oracle 12c以上版本的ORA-65096_C##公共用户前缀限制
jvm·数据库·python
woxihuan1234567 分钟前
JavaScript中利用Range对象实现复杂的文本选择操作
jvm·数据库·python
赏金术士12 分钟前
Kotlin 从入门到进阶 之委托 模块(六)
python·微信·kotlin
zhoutongsheng12 分钟前
CSS如何使用-hover显示图片文字说明_利用--after实现图文叠加效果
jvm·数据库·python
2301_7838486516 分钟前
CSS解决浮动元素导致的布局闪烁_稳定容器布局高度
jvm·数据库·python
m0_7407963616 分钟前
Workerman5.0协程实战:PHP高并发新标准
jvm·数据库·python
2301_7693406717 分钟前
如何在 CSS 中实现元素的绝对定位,使其不受窗口尺寸变化影响
jvm·数据库·python
m0_7020365323 分钟前
防止SQL注入的运维实践_实时清理数据库缓存与历史记录
jvm·数据库·python
ch.ju24 分钟前
Java程序设计(第3版)第二章——函数的递归
java·开发语言