2012-05-01 67 views
1

使用h264無損編碼需要什麼設置?我不是在談論ffmpeg命令行工具,而是關於c api。FFMPEG API:如何使用無損h264編碼?

我設法使用有損h264編碼視頻,但我不知道如何將編碼器設置爲無損。

我在MSVC++中編寫代碼並使用預編譯庫。在線我找到了一些.ffpreset文件(例如libx264-lossless_max.ffpreset),這些文件似乎不是我使用的預編譯版本的一部分(至少它們不在預設文件夾中)。我不確定ffpreset文件是否以某種方式編譯到庫中,或者它們是否可以以某種方式加載到編碼器中?如果是這樣,我將如何使用這樣的預設文件?

回答

3

需要設置的恆定質量模式,並且設置所需的質量爲0 在X264命令行,這是通過X264 --crf 0

--crf基於質量的VBR(0- 51,0 =無損)[23.0]

在ffmpeg的命令行,這是類似地進行

具有恆定的質量(但一個可變比特率),使用的選項 '-qscale n',當'n'在1(優秀質量)和31(質量最差的 質量)之間時。

,如果你想以編程方式做到這一點,只是閱讀源代碼,看看我outlned如何具體選項會影響AVCodecContext結構中的

+0

還有更多的比剛纔路過--crf 0:HTTP:/ /stackoverflow.com/a/18506577/763355 – MoDJ