Как можно использовать libavformat без использования других библиотек libav?

Я хотел бы простой рабочий пример использования просто libavformat для мультиплексирования видео. Есть хорошие примеры (DOC / примеры / muxing.c), которые показывают кодирование с помощью libavcodec, мультиплексирование с помощью libavformat и сохранение данных с помощью libavio. Однако я не знаю ни одного примера, который бы использовал libavformat сам по себе, подавая закодированные данные в буфер и получая мультиплексированные данные в буфер.

Сложность двоякая: во-первых, добавление потока сavformat_new_stream(AVFormatContext *s, const AVCodec *c) требуется ссылка на кодек; и два, выход из мультиплексирования передаетсяAVFormatContext->pb который являетсяAVIOContext*, Таким образом, кажется, нет никакого (очевидного) способа вывести libavformat из других библиотек libav.

Смотрите также: В этом вопросе упоминается способ не использовать libavio:Получить пакеты TS в буфер из libavformat

Ответы на вопрос(1)

Ваш ответ на вопрос