ffmpeg: доступ к остаточным коэффициентам DCT сжатого видеокадра - PullRequest
0 голосов
/ 10 января 2019

Для видео MPEG-4, используя исходный код ffmpeg, я хочу получить доступ к остаточным коэффициентам DCT сжатого видеокадра как во время кодирования, так и при декодировании.

Я вижу, что структура AVPacket имеет поле uint8_t* data, и я обнаружил, что это поле состоит из массива переменной длины. Тем не менее, я не нашел документации о том, что это за массив, кроме того, что это «сжатые данные».

Содержит ли этот массив остаточные коэффициенты DCT?

Если это так, как коэффициенты организованы в массиве? Учитывая, что большинство коэффициентов отбрасываются в сжатом кадре и что массив имеет переменную длину, кажется, что этот массив является неким разреженным представлением?

Если нет, какие данные содержит этот массив? Кроме того, кто-то может указать мне на функцию в исходном коде ffmpeg, где можно получить доступ к коэффициентам DCT? Я пытался отследить от функций более высокого уровня, таких как avcodec_send_packet() и avcodec_receive_frame(), но мне было очень трудно найти правильную функцию для доступа к коэффициентам DCT.

Редактировать: В частности, я использую MPEG-4, часть 2.

...