Медиа.маги Документация

Last updated

pcm

pcm между цепочкой аудиофильтров и мультиплексором.

1. Сводка

Записывает несжатое аудио PCM. Создаёт поток импульсно-кодовой модуляции без потерь — данные на ленте и на диске, которых не касался ни один перцептивный кодек, — пригодный для монтажных интермедиатов, вещательных мезонинов, архивных мастеров и любой поставки, чьи требования запрещают сжатие.

2. Когда использовать

  • Кодируете аудиодорожку монтажного интермедиата или мезонина (MXF, MOV, вещательные контрибуционные файлы), где требования поставки предписывают несжатое аудио.
  • Архивируете мастер-копию программы, где каждый цикл декодирования и кодирования ниже по потоку должен начинаться с аудио без потерь.
  • Несёте аудиосторону вещательного контрибуционного файла, такого как AVC-Intra MXF или XDCAM HD MXF, где соответствующий аудиокодек — PCM с фиксированной разрядностью.
  • Готовите высококачественную опорную дорожку для контроля качества на слух, A/B-сравнения со сжатым кодированием или измерения громкости ниже по потоку, которому нужен чистый сигнал.

3. Входы

  • Audio[]filtergraph.AudioTransform. Один или несколько аудиопотоков или цепочек фильтров. Обязателен.

    Совместимые узлы выше по потоку:

    • af/aformat — приводит аудио к заданному формату сэмплов.
    • af/aresample — пересэмплирует аудио к целевой частоте дискретизации.
    • af/join — объединяет несколько аудиопотоков в один.
    • af/stereo — приводит аудио к стерео или фиксирует стереораскладку.
    • map/audio — выбирает, какие аудиопотоки источника идут на кодер.

4. Выходы

  • Audio[]core.AudioTrack. Несжатая аудиодорожка PCM, готовая к мультиплексированию в контейнер.

    Совместимые узлы ниже по потоку:

    • mp4 — упаковывает потоки в файл MP4 (ISO-BMFF).
    • mov — упаковывает потоки в контейнер QuickTime MOV — канонический контейнер для аудио PCM в монтажных конвейерах.
    • mxf — упаковывает потоки в контейнер MXF — канонический контейнер для PCM в вещательных контрибуционных и мезонинных конвейерах.
    • dash — упаковывает выход для потоковой передачи MPEG-DASH.
    • hls3 — упаковывает выход для HLS с плейлистами v3.
    • hls5 — упаковывает выход для HLS с плейлистами v5.

5. Параметры

Форма «Настройки» узла pcm.

Форма «Настройки» — один столбец с двумя полями. Описаны в порядке их следования в форме.

  • Node Label (string, по умолчанию пусто)

    Произвольное имя, отображаемое на плитке узла на холсте.

    • Что задаёт. Подпись над плиткой; на кодирование не влияет.
    • Когда менять. Задавайте, когда в одном графе несколько узлов pcm (например, отдельные стерео- и объёмные дорожки pcm для одного мезонина), чтобы каждый был узнаваем с одного взгляда.
  • Codec (enum, по умолчанию pcm_s16le)

    Конкретный вариант PCM: разрядность вместе с порядком байтов.

    • Что задаёт. Ширину сэмпла и порядок байтов записываемого потока PCM. Названия следуют именованию FFmpeg: s означает знаковые целочисленные сэмплы, число — разрядность, le — порядок байтов little-endian, be — big-endian. pcm_s16le записывает 16-битные знаковые сэмплы little-endian, pcm_s24be — 24-битные знаковые сэмплы big-endian и т. д.
    • Когда менять. Выбирайте вариант под требования поставки и соглашения её контейнера. Оставайтесь на pcm_s16le для обычных 16-битных стереомастеров и поставок MP4 / MOV. Переходите на pcm_s24le для интермедиатов высокого разрешения и 24-битных аудиомастеров в MOV. Используйте варианты big-endian (pcm_s16be, pcm_s24be) при работе с контрибуционными файлами MXF и другими вещательными обёртками, хранящими сэмплы PCM в порядке big-endian.
    • Допустимые значения. pcm_s16le, pcm_s16be, pcm_s24le, pcm_s24be.
    • Обязательно. да.

Соответствие JSON-ключей и названий полей

JSON-ключ Название поля
codec Codec

6. Пример

Вещательный мезонин AVC-Intra MXF на холсте

Полный разбор — переменные, настройка каждого узла и ожидаемый результат — смотрите в AVC-Intra MXF broadcast mezzanine.

7. Где используется

  • AVC-Intra MXF broadcast mezzanine — кодирует аудиодорожку как 24-битный PCM big-endian (pcm_s24be) внутри поставки MXF, в паре с видеопотоком AVC-Intra, приведённым к вещательной частоте кадров, порядку полей и соотношению сторон пикселя.

8. Антипаттерны

  • Поставка PCM там, где требования предписывают сжатый кодек. Файлы PCM на порядок крупнее эквивалентного потока AAC или AC-3. Использование этого узла для стриминговой OTT-поставки или общего веб-скачивания тратит хранилище и полосу и может превысить лимит размера файла платформы. Переходите на aac, ac3 или eac3 для сжатой доставки.
  • Несовпадение порядка байтов и контейнера. Выбор варианта PCM little-endian для обёртки MXF или варианта big-endian для поставки MP4 даёт файл, который принимающая система может отвергнуть или декодировать как шум. Выбирайте порядок байтов под соглашения контейнера: little-endian для MP4 и MOV, big-endian для контрибуции MXF.
  • Пропуск стадии частоты дискретизации. PCM кодирует ту частоту дискретизации, которая до него доходит. Источник 44,1 кГц, записанный как есть в вещательный MXF, ожидающий 48 кГц, не проходит проверку ниже по потоку. Пересэмплируйте узлом af/aresample выше по потоку.
  • Смешение 16- и 24-битных дорожек PCM в одной поставке. Контейнер, несущий обе разрядности, сбивает с толку некоторые монтажные системы и инструменты контроля качества. Выберите одну разрядность на выход и применяйте её последовательно к каждой дорожке PCM в мультиплексоре.

9. Заметки

Выпадающий список кодека перечисляет варианты little-endian и big-endian для 16- и 24-битного знакового PCM. Порядок байтов определяют соглашения контейнера: MP4 и MOV ожидают сэмплы little-endian, а контрибуционные файлы MXF — обычно big-endian. Отдельных регуляторов частоты дискретизации или раскладки каналов у этого узла нет — они приходят из цепочки фильтров выше по потоку (af/aresample, af/aformat, af/join).

Медиа.маги Документация