Ffmpeg RTP/MJPEG流的默认量化表是什么?
我在解码来自ip摄像机的RTP/MJPEG流时遇到了一个问题Ffmpeg RTP/MJPEG流的默认量化表是什么?,ffmpeg,video-streaming,jpeg,rtp,mjpeg,Ffmpeg,Video Streaming,Jpeg,Rtp,Mjpeg,我在解码来自ip摄像机的RTP/MJPEG流时遇到了一个问题 如rfc2435所述,量化表(对于Q值1不同的表对于不同的内容效果更好。随着时间的推移,也会找到更好的表。找到最好的表实际上是在质量上使用人工判断的反复试验,然后权衡您希望优化的内容类型。ffmpeg也可能会生成更大的文件。而更大的文件可能不是一个好主意最初编写jpeg规范时可接受。默认值是预先计算的,但您也可以包括自己的Q=100, 请参阅我的实现@问题在于,在RTP/MJPEG流中(对于Q值1,我不确定为什么会这样。我对JPEG的
如rfc2435所述,量化表(对于Q值1不同的表对于不同的内容效果更好。随着时间的推移,也会找到更好的表。找到最好的表实际上是在质量上使用人工判断的反复试验,然后权衡您希望优化的内容类型。ffmpeg也可能会生成更大的文件。而更大的文件可能不是一个好主意最初编写jpeg规范时可接受。默认值是预先计算的,但您也可以包括自己的Q=100,
请参阅我的实现@问题在于,在RTP/MJPEG流中(对于Q值1,我不确定为什么会这样。我对JPEG的了解还不多。对不起,祝你好运!–Rfc2435现在有勘误表,指示在Q值为1时使用类似的表
/*
* Table K.1 from JPEG spec.
*/
static const int jpeg_luma_quantizer[64] = {
16, 11, 10, 16, 24, 40, 51, 61,
12, 12, 14, 19, 26, 58, 60, 55,
14, 13, 16, 24, 40, 57, 69, 56,
14, 17, 22, 29, 51, 87, 80, 62,
18, 22, 37, 56, 68, 109, 103, 77,
24, 35, 55, 64, 81, 104, 113, 92,
49, 64, 78, 87, 103, 121, 120, 101,
72, 92, 95, 98, 112, 100, 103, 99
};
/*
* Table K.2 from JPEG spec.
*/
static const int jpeg_chroma_quantizer[64] = {
17, 18, 24, 47, 99, 99, 99, 99,
18, 21, 26, 66, 99, 99, 99, 99,
24, 26, 56, 99, 99, 99, 99, 99,
47, 66, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99
};
static const uint8_t default_quantizers[128] = {
/* luma table */
16, 11, 12, 14, 12, 10, 16, 14,
13, 14, 18, 17, 16, 19, 24, 40,
26, 24, 22, 22, 24, 49, 35, 37,
29, 40, 58, 51, 61, 60, 57, 51,
56, 55, 64, 72, 92, 78, 64, 68,
87, 69, 55, 56, 80, 109, 81, 87,
95, 98, 103, 104, 103, 62, 77, 113,
121, 112, 100, 120, 92, 101, 103, 99,
/* chroma table */
17, 18, 18, 24, 21, 24, 47, 26,
26, 47, 99, 66, 56, 66, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99
};