Допустим, вы решили закодировать своё хоум видео (не от алкоголизма, а в h264). И энкодер просит выбрать количество пассов (pass). Давайте разберёмся, что эти пассы из себя представляют.
Немного о терминологии, необходимой для понимания темы. Пасс — в данном случае «проход». Энкодер спрашивает, за сколько проходов видео будет кодироваться. Битрейт — количество памяти, затраченной для хранения секунды видео. CBR (constant bitrate) — постоянный битрейт. VBR (variable bitrate) — переменный битрейт.
1 pass — видео кодируется на «лету». Быстро и сердито. Плюсы режима: это единственный возможный вариант кодирования live-стриминга. Без затрат времени на дополнительный анализ файла. В этом режиме энкодер тратит одинаковое количество бит на хранение каждой секунды видео.
2 pass — кодирование производится в два этапа. Первый проход — анализирует видео. Миссия первопроходца — оставить заметки в своем бортовом журнале, прикинуть, сколько бит имеет смысл потратить на каждый кадр. Например, для качественного хранения статичного кадра с «Полностью Чёрным Квадратом» Казимира Малевича необходимо меньше бит, чем для пёстрого, динамичного кадра с нового клипа PSY. Целью первопроходимца как раз и является задача обнаружить и порешать. А уже второй проход, следуя подсказкам первого, делает конечный файл. Логично, что этот режим эффективен только при VBR. Время на кодировку видео при этом режиме увеличивается вдвое.
3 and more pass — все то же, что и при двухпроходном режиме, только каждый дополнительный проход производит более тщательный анализ. А последний проход всегда отвечает за производство файла.
Поговаривают, что один проход вытягивает лишь 60% потенциального качества результирующего видео. При двух проходах можно вытянуть 90% потенциального качества, а при трех — 98%. Я лично не придумал как проверить эти цифры. На самом деле, «набитый глаз» без труда заметит превосходство двухпроходного кодирования над однопроходным при аналогичном битрейте.
Автор: danyvin