拼接合并yuv序列转成mp4

 ffmpeg需要用支持libx264的版本,如果需要,可以从这个网站下载编译支持libx264\x265的ffmpeg

https://www.gyan.dev/ffmpeg/builds/packages/ffmpeg-6.1-essentials_build.7z

#-*- coding:utf-8-*-
import os


if __name__ == "__main__":
    # 1 输入想要合并序列,按顺序放
    input_w = 2560
    input_h = 1440
    input_seqs = [
                r"D:\input\\2_2k_420.yuv",
                r"D:\input\\4_2k_420.yuv", 
                r"D:\input\\10_2K_420.yuv", ]
    # 2 每个yuv转码成mp44
    ffmpeg_trans_param = "ffmpeg -y -f rawvideo -video_size %sx%s -pixel_format yuv420p -i %s \
                            -c:v libx264 -q 10 %d_out.mp4"
    if os.path.exists("concat_list.txt"):
        os.remove("concat_list.txt")
    f_concat = open("concat_list.txt","a")

    for i in range(0,len(input_seqs)):
        cur_cmd = ffmpeg_trans_param %( input_w, input_h, input_seqs[i], i)
        os.system(cur_cmd)
        write_info = "file %d_out.mp4\n" % ( i)
        f_concat.write(write_info)
    f_concat.close()
    
    # 3 按顺序合并所有mp4文件
    
    cur_cmd = "ffmpeg -y -hide_banner -f concat -i concat_list.txt -c:v copy  concat_total.mp4"
    os.system(cur_cmd)
        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值