Концепция мультимедийных кодеков (Контейнер, Формат, Кодек, Muxer, Demuxer) [закрыто]

На прошлой неделе я просмотрел множество мультимедийных материалов и теперь запутался в нескольких вопросах. Они связаны с моей работой над разработкой медиаплеера. Мои вопросы ниже основаны только на этом. Я также ищу книгу / ресурс по мультимедийным кодекам?

Я ищу следующую информацию?

В чем разница между контейнером, форматом, кодеком, пакетом, фреймом? Я считаю, что это Контейнер -> Аудио (потоки) + Видео (потоки)

Потоки кодируются / декодируются с использованием кодеков Streams -> Packets Packets -> Frames

(2) Как работает лестница муксера, демультиплексора, кодера, декодера? На какой стороне лежит?

(3) Когда мы говорим новый кодек - что это значит? - Кодер / декодер или новый формат файла. AVI - это кодек или формат? Существует ли какая-либо связь между используемым кодеком и форматом файла.

(4) В чем смысл одного кодека отличается от другого кодека? Играя битрейт, размер, качество, fps?

(5) Если мы разрабатываем новый кодек, что должно отличаться? - Алгоритм для кодера и декодера?

(6) Blu-ray и DVD рип? Что они нового формата? Или новые кодеки?

(7) Если я хочу обеспечить поддержку вышеуказанных кодеков в моем медиаплеере, как я буду интегрировать различные кодеки? В виде некоторых библиотек или прямой ссылки на исходный код?

(8) Чем отличается мультимедийный фреймворк (Gstremaer, ffmpeg, stagefright, OpenCore) по отношению к кодеку.

Ниже приведены ссылки, по которым я прошел:

http://dranger.com/ffmpeg/tutorial01.html

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

Решение Вопроса

я управляю сайтом :-)):на страницах проекта, Кроме того, вот документ, который я написал давным-давно, который может помочь с большинством ваших вопросов:Основы мультимедийных технологий, Я постараюсь ответить на ваши вопросы здесь.

1) Контейнерный формат (например, AVI или QuickTime / MOV) обычно содержит (содержит) различные потоки, обычно, по меньшей мере, один видеопоток и один аудиопоток. Эти видео и аудио потоки обычно кодируются с использованием кодека, который представляет собой алгоритм, который описывает более эффективный способ кодирования данных. Пакеты и кадры. Иногда порции видео или аудиоданных разбиваются на пакеты или кадры в соответствии с их спецификациями кодеков, но это приводит к семантике - пакеты, кадры, порции - все это просто кусочки.

2) Когда вы создаете мультимедийный файл, вы используете алгоритмы кодера для кодирования видео и аудио данных, затем вы используете мультиплексор для объединения потоков в файл (контейнер). Для воспроизведения файла демультиплексор разбирает потоки и подает их в декодеры для получения видео и аудио данных.

3) Кодек означает кодер / декодер и является отдельной концепцией от формата контейнера. Многие форматы контейнеров могут содержать много разных типов форматов (AVI и QuickTime / MOV очень распространены). Другие форматы ограничены одним или двумя типами носителей.

4) Кодеки конкурируют по многим факторам и предназначены для многих целей. Одно большое различие - потери и потери. Если вам нужно сохранить всю исходную информацию, вы выбираете формат без потерь, но вы не получите лучшее сжатие. Если вы можете позволить себе потерять некоторые данные, вы можете выбрать формат с потерями, который принесет в жертву (надеюсь, незаметно для людей) информацию в обмен на большее сжатие. Некоторые кодеки оптимизированы для различных типов данных, таких как речевые кодеки, которые предполагают, что входные данные являются разговорами людей, или экранные видеокодеки, которые предполагают, что входное видео является относительно статическими сеансами рабочего стола компьютера.

5) Создание нового кодека подразумевало бы новый алгоритм, который потребовал бы нового кодера И декодера.

6) Я думаю, что они будут считаться контейнерами. DVD-рип, скорее всего, будет тем, что называется потоком программ MPEG (MPEG-PS), который, вероятно, будет содержать видеоданные MPEG-2 и один из нескольких различных типов аудио.

7) Есть много библиотек для воспроизведения этого материала. Прежде всего, вы должны рассмотреть вашу платформу (Windows, Mac OS X, Linux, iOS, Android и т. Д.). Есть соответствующие библиотеки и фреймворки на каждой.

8) Опять же, многие из этих структур и библиотек, вероятно, будут служить вашим потребностям. Это зависит от вашей платформы и потребностей в лицензировании.

Надеюсь, это дало вам возможность поработать. Как вы можете видеть из моей ручки, я люблю говорить об этом. :-)

 learner10 янв. 2014 г., 14:58
@Multimedia Mike Не могли бы вы помочь с моим вопросом по адресу:ссылка Заранее спасибо!
 Raulp05 апр. 2012 г., 13:14
очень информативно ... Я пойду до конца. Спасибо.
 sam29 нояб. 2013 г., 07:16
@Multimedia Mike: Спасибо за этот пост.

Книга в основном сосредоточены на мультимедийных концепциях, включая качество, сжатие, производительность и т. д. Эта книга охватывает общие концепции мультимедиа.

Publihser предоставляет разрешение открыть доступ к PDF-версии этой книги. ссылка:https://www.apress.com/gp/book/9781430267126

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