ffmpeg:如何将视频重新编码为 H.264 视频和 AAC 音频?

Foe*_*ane 10 h.264 ffmpeg aac

我正在尝试重新编码 WinUAE 中使用“TechSmith Screen Capture Codec”制作的视频,以使用 H.264 视频和 AAC 音频,以及最新的“ffmpeg”(20200510-fc99a24) 64 位,但是当我使用使用 ffmpeg 进行以下操作,似乎编码正常,但导致视频文件无法在任何内容上播放:

"C:\Program Files\ffmpeg\bin\ffmpeg.exe" -i output.avi -vcodec libx264 -preset slow -crf 20 -acodec mp3 -b:a 160k done.mkv
Run Code Online (Sandbox Code Playgroud)

我知道音频是 MP3,但我不知道如何在 ffmpeg 中使用 AAC。

出了什么问题?

llo*_*gan 18

添加-c:a aac

ffmpeg -i input.avi -c:v libx264 -preset slow -crf 20 -c:a aac -b:a 160k -vf format=yuv420p -movflags +faststart output.mp4
Run Code Online (Sandbox Code Playgroud)
  • input.avi是输入文件。
  • -c:v libx264选择视频编码器libx264,它是 H.264 编码器。
  • -preset slow选择慢速x264 编码预设。默认预设为中等。使用您有耐心的最慢预设。
  • -crf 20选择 CRF 值 20,这将产生高质量的输出。默认值为 23。值越低,质量越高。使用提供可接受质量的最高值。
  • -c:a aac选择音频编码器aac,它是内置的 FFmpeg AAC 编码器。
  • -b:a 160k以 160k 比特率对音频进行编码。
  • -vf format=yuv420p选择 YUV 4:2:0 色度子采样,建议使用它来兼容 H.264。
  • -movflags +faststart是 MP4 输出的一个选项,在编码完成后将一些数据移动到文件的开头。如果通过渐进式下载播放方式观看视频,这使得视频可以更快地开始播放。
  • output.mp4是输出文件。

有关更多信息,请参阅FFmpeg Wiki:H.264FFmpeg Wiki:AAC 。