Я пытаюсь написать декодер для приложения webrtc в C. Я получаю поток RTP, я анализирую каждый пакет, переупорядочиваю их и помещаю полезную нагрузку в AVPacket, как описано здесь (FFmpeg decode raw buffer with avcodec_decode_video2). Часть переупорядочения не описана в этой ссылке, но я уверен, что эта часть в порядке.декодировать необработанный буфер с ffmpeg av_codec_video_2
Вопрос в том, что я не знаю, как предоставить информацию о декодере, pix_fmt и т. Д. Нужно ли мне создать AVstream*
и заполнить его всей информацией, которую я взял из заголовка rtp?
У кого-нибудь есть код запуска, который декодирует пакет VP8, депакетированный без использования rtp_dec и т. Д.?
В этой связи, по-видимому, не посылается больше информации в декодер, может ли она декодироваться без знания разрешения и без заголовка?
Возможно, мне нужно передать Контекст Codec с разрешением, pix_fmt и т. Д. С данными из заголовков rtp или SDP перед вызовом avcodec_decode_video2, но я не знаю, как это сделать должным образом. –