FFmpeg命令转封装

FFmpeg命令转封装

  • 保持编码格式

    ffmpeg -i test_video.mp4 -vcodec copy -acodec copy test_video_copy.ts
    
    • -i test_video.mp4:指定输入文件为 test_video.mp4
    • -vcodec copy:指定视频编解码器为 copy,表示将视频流直接复制到输出文件中,而不进行重新编码。
    • -acodec copy:指定音频编解码器为 copy,表示将音频流直接复制到输出文件中,而不进行重新编码。
    • test_video_copy.ts:指定输出文件名为 test_video_copy.ts,即将复制后的视频保存为 MPEG Transport Stream (TS) 格式文件。

    这个命令将输入的视频文件复制为 MPEG Transport Stream (TS) 格式的视频文件,保持视频流和音频流不变。

    ffmpeg -i test_video.mp4 -codec copy test_video_copy_ts.ts
    
    • -i test_video.mp4:指定输入文件为 test_video.mp4
    • -codec copy:指定视频和音频编解码器都为 copy,表示将视频流和音频流直接复制到输出文件中,而不进行重新编码。
    • test_video_copy_ts.ts:指定输出文件名为 test_video_copy_ts.ts,即将复制后的视频保存为 MPEG Transport Stream (TS) 格式文件。

    这个命令将输入的视频文件复制为 MPEG Transport Stream (TS) 格式的视频文件,保持视频流和音频流不变。

  • 改变编码格式:

    ffmpeg -i test_video.mp4 -vcodec libx265 -acodec libmp3lame out_test_video_h265_mp3.mkv
    
    • -i test_video.mp4:指定输入文件为 test_video.mp4
    • -vcodec libx265:指定视频编码器为 libx265,即使用 H.265 编码器进行视频压缩。
    • -acodec libmp3lame:指定音频编码器为 libmp3lame,即使用 MP3 编码器进行音频压缩。
    • out_test_video_h265_mp3.mkv:指定输出文件名为 out_test_video_h265_mp3.mkv,即将转码后的视频保存为 Matroska (MKV) 容器格式文件。

    这个命令将输入的视频文件转码为 H.265 视频编码和 MP3 音频编码的 Matroska (MKV) 容器格式文件。

  • 修改帧率:

    ffmpeg -i test_video.mp4 -r 15 -codec copy out_test_video.mp4 #错误命令
    
    • 在这个命令中, -r 15 参数用于设置输出视频的帧率,但由于 -codec copy 参数,FFmpeg会尝试直接复制输入文件的视频流,而不会重新编码。因此,如果输入文件的帧率不是 15fps,这个命令将无法正确地修改输出文件的帧率为 15fps。

      如果要将输出文件的帧率设置为 15fps,正确的命令应该是:

      ffmpeg -i test_video.mp4 -r 15 out_test_video.mp4
      
      • -i test_video.mp4:指定输入文件为 test_video.mp4
      • -r 15:设置输出视频的帧率为 15fps,即每秒钟显示 15 帧。
      • out_test_video.mp4:指定输出文件名为 out_test_video.mp4,即将重新设置帧率后的视频保存为 MP4 格式文件。

      这个命令将输入的视频文件的帧率重新设置为 15fps,并输出为新的 MP4 格式文件。

  • 修改视频码率:

    ffmpeg -i test_video.mp4 -b 400k output_test_video.mkv	#此时音频也被重新编码
    
    • -i test_video.mp4:指定输入文件为 test_video.mp4
    • -b 400k:设置输出视频的比特率为 400k,即视频的平均比特率为 400 kbps。
    • output_test_video.mkv:指定输出文件名为 output_test_video.mkv,即将转码后的视频保存为 MKV 格式文件。

    这个命令将输入的视频文件转码为 MKV 格式的视频文件,并设置了视频的比特率为 400k。MKV 格式是一种容器格式,可以容纳各种不同编码格式的视频和音频流。

    ffmpeg -i test_video.mp4 -b:v 400k output_test_video_bv.mkv
    
    • -i test_video.mp4:指定输入文件为 test_video.mp4
    • -b:v 400k:设置输出视频的平均比特率为 400k,即视频的视频比特率为 400 kbps。
    • output_test_video_bv.mkv:指定输出文件名为 output_test_video_bv.mkv,即将转码后的视频保存为 MKV 格式文件。

    这个命令将输入的视频文件转码为 MKV 格式的视频文件,并设置了视频的平均比特率为 400k。MKV 格式是一种容器格式,可以容纳各种不同编码格式的视频和音频流。

猜你喜欢

转载自blog.csdn.net/qq_41682323/article/details/138112195