Ответы пользователя по тегу Кодеки
  • Какой кодек нужен для воспроизведение FLV (КодекПаки, плееры со встроенными кодеками а также ffdshow не интересует) ?

    xn__p2a
    @xn__p2a
    Вопрос некорректен.
    FLV — это не компрессия, а лишь контейнерный формат медиафайлов (Flash Video), внутри которого могут содержаться аудио/видеопотоки с различной компрессией.

    Если на пальцах: Медиафайл — это набор сжатых потоков (аудио, видео, тектосвых) упакованных особым образом в некий контейнерный формат. Итого, для воспроизведения медиафайлов нужны:
    1. Демультиплексор (демуксер) [в виде сплиттера или парсера] — для извлечения из конкретного контейнерного формата (например, AVI, ASF, MKV, OGM, MPEG-PS, MP4, MOV, FLV) непосредственно самих голых но при этом сжатых медиапотоков.
    2. Декодер для видеопотока — для декодирования извлечённого сжатого видеопотока (например, декодер для MPEG-4 ASP, MPEG-4 AVC (H.264), Theora, VP8 и др.)
    3. Декодер для аудиопотока — для декодирования извлечённого сжатого аудиопотока (например, декодер для MPEG Layer-3, AAC, AC3, Vorbis, FLAC и др.)

    Но в вопросе фигурирует только контейнерный формат медиафайла (по которому можно назвать только нужный демуксер) и не указаны компрессии аудиопотока и видеопотока, поэтому нельзя предложить нужные декодеры для них.

    В контейнер FLV бывают упакованы видеопотоки: FLV1 (Sorenson Spark), VP6, H.264, а аудиопотоки: MPEG Layer-3 или HE-AAC.
    В зависимости от конкретной компрессии потока и нужно выбирать соответствующий декодер.

    Если воспроизводить под Windows с помощью DirectShow-based медиаплееров, то хороший вариант — это использовать DirectShow для декодирования аудио/видео и какой-нибудь DirectShow FLV Splitter для демультиплексирования.

    Впрочем, я и под Windows, и под Linux для демукса и декода предпочитаю использовать библиотеки ffmpeg (libavformat, libavcodec), которые используются в mplayer, VLC media player и др. опенсорсных проектах.
    Ответ написан
    Комментировать