Что представляет из себя кодек

Для того чтоб полностью разобраться в устройстве решения на базе VideoLAN, вам надо понять разницу между кодеком и контейнером.

    - Кодек - это алгоритм сжатия, который уменьшает объем данных. Существуют кодеки для видео- и аудио-данных. MPEG-1, MPEG-2, MPEG-4, Vorbis, DivX, ... - это кодеки.
    - Контейнер содержит один или несколько потоков, уже обработанных кодеками. В большинстве случаев контейнер содержит потоки звука и изображения. AVI, Ogg, MOV, ASF, ... - это контейнеры. Содержащиеся в них потоки могут быть сжаты различными кодеками. В идеале в любой контейнер можно было бы поместить данные, обработанные любым кодеком. Но, к несчастью, некоторые форматы несовместимы друг с другом. Таблицу допустимых комбинаций кодеков и контейнеров можно найти на странице списка возможностей.

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

Кратко о формате MPEG:

    - MPEG является кодеком. Существует несколько версий данного кодека: MPEG-1, MPEG-2, MPEG-4, ...
    - MPEG тоже является контейнером, который иногда называют MPEG System. Существует несколько типов контейнера MPEG: ES, PS и TS

К примеру, при проигрывании видео с DVD-диска, MPEG-поток состоит из нескольких отдельных потоков называемых элементарными потоками, Elementary Streams — ES: один поток содержит видео, иной — звук, третий — субтитры и так далее. Эти потоки совмещены в один Программный поток (Program Stream — PS). То есть файлы с расширением .VOB, которые находятся на DVD, являются файлами формата MPEG-PS. Однако данный  формат не предназначен для трансляции потокового видео по сети или, к примеру, через спутник. Следовательно для передачи MPEG-видео по таким каналам был разработан формат Транспортного потока (Transport Stream — TS).