ffmpeg的常见使用

1.简介
FFMPEG堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见的数据封装格式、多媒体传输协议以及音视频编解码器,提供了录制、转换以及流化音视频的完整解决方案。

2.ffmpeg的常用方法

  • 将某文件下所有ts文件按顺序合并,转换成MP4格式存储:

    import ffmpeg
    
    def test2():
      ts_folder = 'path/ts_files/ceshi/'
      output_mp4 = "path/video/ceshi/output.mp4"
      concat_file = "path/video/ceshi/concat.txt"
      with open(concat_file, 'w') as f:
          for ts in sorted(os.listdir(ts_folder), key=lambda x: int(x.split('.')[0])):
              if ts.endswith('.ts'):
                  f.write(f"file '{os.path.join(ts_folder, ts)}'" + '\n')
      ffmpeg.input(concat_file, format='concat', safe=0).output(output_mp4, c='copy').run()
      print(f"合并完成,输出文件: {output_mp4}")
  • 视频剪辑

    import ffmpeg
    
    # 剪辑视频,保留从第10秒到第20秒的部分
    input_video = 'path/to/your/video.mp4'
    output_video = 'path/to/save/your/video.mp4'
    start_time = '00:00:10'
    end_time = '00:00:20'
    
    ffmpeg.input(input_video).filter('trim', start=start_time, end=end_time).output(output_video).run()
  • 调整视频速度

    import ffmpeg
    
    # 调整视频速度为原来的2倍
    input_video = 'path/to/your/video.mp4'
    output_video = 'path/to/save/speedup.mp4'
    
    ffmpeg.input(input_video).filter('setpts', '1.0*PTS').output(output_video).run()
    
  • 添加音频到视频

    import ffmpeg
    
    # 加载视频和音频文件
    video = 'path/to/your/video.mp4'
    audio = 'path/to/your/audio.mp3'
    
    # 将音频添加到视频中
    output_video = 'path/to/save/audio_added.mp4'
    
    ffmpeg.input(video).audio.addinput(ffmpeg.input(audio)).output(output_video).run()

你可能感兴趣的:(pythonffmpeg)