Я студент информатики и работаю над кодировщиком и декодером h264.
Я решил использовать x264 и libavcodec и скачал код этих открытых библиотек. Затем я искал месяц, как это сделать. Я думаю, что количественные преобразованные коэффициенты находятся в h->dct.luma8x8
и h->dct.luma4x4
, но они не luma16x16
, поэтому я разочарован.
Теперь я предполагаю, что макроблоки Intra 16x16 имеют свои коэффициенты в luma4x4 или luma8x8, но я не уверен. Есть ли кто-то, кто знает об этом и может дать ответы?
Кроме того, я должен найти те же коэффициенты в декодере, и я подумал, что они находятся в sl->mb
, но коэффициенты в sl->mb
странные (есть много нулей и значений> 100 в отличие от кодера, где значения близки к 1-10 ..) Я заблудился, поэтому я надеюсь, что у кого-то есть совет, который поможет мне продолжить мой проект.
РЕДАКТИРОВАТЬ:
Я думаю, что коэффициенты, когда макроблок кодируется в 16x16IntraPrediction
, находятся в luma4x4
. Мне всегда нужна помощь, чтобы понять, как работает декодер.
РЕДАКТИРОВАТЬ:
Я думаю, что коэффициенты, которые в sl->mb
всегда деквантованы, возможно, есть переменная, которая имеет правильный коэффициент в decode_cabac_residual_internal
, но я не нашел его ..