使用h264无损编码需要什么设置?我不是在谈论ffmpeg命令行工具,而是关于c api。
我设法使用有损h264编码视频,但我不知道如何将编码器设置为无损。?
我在MSVC ++中编码并使用预编译库。在网上我找到了一些.ffpreset文件(例如libx264-lossless_max.ffpreset),它们似乎不是我使用的预编译版本的一部分(至少它们不在presets文件夹中)。我不确定ffpreset文件是否以某种方式编译到库中,或者它们是否可以以某种方式加载到编码器中?如果是这样,我将如何使用这样的预设文件?
答案 0 :(得分:3)
您需要设置恒定质量模式,并将所需质量设置为0。 在x264命令行中,这是x264 --crf 0。
- crf基于质量的VBR(0-51,0 =无损)[23.0]
要获得恒定质量(但可变比特率),请使用该选项 当'n'介于1(优质)和31(最差)之间时,'-qscale n' 质量)。
如果你想以编程方式执行此操作,只需阅读源代码以了解我所遇到的特定选项如何影响AVCodecContext结构