Я планирую написать приложение (C / C ++ / Objective-C), которое будет воспроизводить медиа-файлы в собственном (приватном) формате контейнера.Файлы будут содержать: несколько видеопотоков, закодированных видеокодеком (предполагается, что в системе присутствуют компоненты, способные декодировать форматы видео), такие как XVid или H264;несколько аудиопотоков в некоторых сжатых форматах (предполагается, что декодирование будет выполняться системным компонентом или собственным кодом).
Итак, кажется, необходимо реализовать следующую схему:
1) Реализовать демультиплексор контейнера (может быть в форме компонента обработчика мультимедиа).
2) Передать видеокадры в компонент видеодекодера и смешать распакованные кадры (используя некоторые собственные правила).
3) Передача аудиоданных в компонент аудиодекодера или распаковка аудио по собственному коду и смешивание декодированных аудиоданных.
4) Рендеринг видеокадров в окно.
5) Передайте аудиоданные на выбранную аудиоплату.
Может ли кто-нибудь дать советы по любому из вышеперечисленных этапов, а именно: наборы инструментов, которые я должен использовать;полезные образцы;могут быть названия функций, которые будут использоваться;могут быть улучшения в схеме, ....