|
|
|
@ -31,6 +31,7 @@ |
|
|
|
|
#include "libavutil/avutil.h" |
|
|
|
|
|
|
|
|
|
#include "avcodec.h" |
|
|
|
|
#include "h264.h" |
|
|
|
|
#include "h264data.h" |
|
|
|
|
|
|
|
|
|
const uint8_t ff_h264_golomb_to_pict_type[5] = { |
|
|
|
@ -181,3 +182,25 @@ const uint8_t ff_h264_quant_div6[QP_MAX_NUM + 1] = { |
|
|
|
|
3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, |
|
|
|
|
7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
#define QP(qP, depth) ((qP) + 6 * ((depth) - 8)) |
|
|
|
|
|
|
|
|
|
#define CHROMA_QP_TABLE_END(d) \ |
|
|
|
|
QP(0, d), QP(1, d), QP(2, d), QP(3, d), QP(4, d), QP(5, d), \
|
|
|
|
|
QP(6, d), QP(7, d), QP(8, d), QP(9, d), QP(10, d), QP(11, d), \
|
|
|
|
|
QP(12, d), QP(13, d), QP(14, d), QP(15, d), QP(16, d), QP(17, d), \
|
|
|
|
|
QP(18, d), QP(19, d), QP(20, d), QP(21, d), QP(22, d), QP(23, d), \
|
|
|
|
|
QP(24, d), QP(25, d), QP(26, d), QP(27, d), QP(28, d), QP(29, d), \
|
|
|
|
|
QP(29, d), QP(30, d), QP(31, d), QP(32, d), QP(32, d), QP(33, d), \
|
|
|
|
|
QP(34, d), QP(34, d), QP(35, d), QP(35, d), QP(36, d), QP(36, d), \
|
|
|
|
|
QP(37, d), QP(37, d), QP(37, d), QP(38, d), QP(38, d), QP(38, d), \
|
|
|
|
|
QP(39, d), QP(39, d), QP(39, d), QP(39, d) |
|
|
|
|
|
|
|
|
|
const uint8_t ff_h264_chroma_qp[3][QP_MAX_NUM + 1] = { |
|
|
|
|
{ CHROMA_QP_TABLE_END(8) }, |
|
|
|
|
{ 0, 1, 2, 3, 4, 5, |
|
|
|
|
CHROMA_QP_TABLE_END(9) }, |
|
|
|
|
{ 0, 1, 2, 3, 4, 5, |
|
|
|
|
6, 7, 8, 9, 10, 11, |
|
|
|
|
CHROMA_QP_TABLE_END(10) }, |
|
|
|
|
}; |
|
|
|
|