小白白是我~ 2022-10-12 16:26 采纳率: 83.3%
浏览 42
已结题

Windows如何用代码将ts文件合并成mp4文件

问题遇到的现象和发生背景

img

img

img

img

用代码块功能插入代码,请勿粘贴截图
运行结果及报错内容

运行结果就是在屏幕上输出了几行字加上一行乱码,并没有出现mp4文件

我的解答思路和尝试过的方法

我查找了相关资料,都说的是Windows是用copy /b *.ts movie.mp4进行文件格式转换,
我把" ".join和"+".join的形式都试过了,还是不行,
通过cmd输入命令copy /b *.ts movie.mp4是能够进行合并,但是合并出来的视频是乱序的,

我想要达到的结果

我想按照用同步操作按顺序读取m3u8_txt文件中的ts,再找到对应的ts文件,用代码按照顺序将ts文件合并成mp4文件,
希望可以得到解答

  • 写回答

1条回答 默认 最新

  • honestman_ 2022-10-12 16:30
    关注
    
    import os
    #获取所有的ts文件
    path_list = os.listdir(tsPath)
    
    #对文件进行排序并将排序后的ts文件路径放入列表中
    path_list.sort()
    li = [os.path.join(tsPath,filename) for filename in path_list]
    #将ts路径并合成一个字符参数
    tsfiles = '|'.join(li)
    
    #print(tsfiles)
    
    #指定输出文件名称
    saveMp4file = tsPath + 'target.mp4'
    
    #调取系统命令使用ffmpeg将ts合成mp4文件
    cmd = 'ffmpeg -i "concat:%s" -acodec copy -vcodec copy -absf aac_adtstoasc %s'%    (tsfiles,saveMp4file)
    os.system(cmd)
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月23日
  • 已采纳回答 10月15日
  • 创建了问题 10月12日

悬赏问题

  • ¥15 echarts动画效果失效的问题。官网下载的例子。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加