Handbrake: как сохранить резкость при понижении разрешения видео во время кодирования?

Handbrake: как сохранить резкость при понижении разрешения видео во время кодирования?

У меня есть куча видео с разрешением 1280x720, но мне на самом деле не нужно такое высокое разрешение, поэтому я подумал о том, чтобы перекодировать их и изменить размер до 852x480, чтобы сэкономить место. Но я заметил, что кодирование Handbrake приводит к немного более размытому видео, чем оно выглядит в моем видеоплеере VLC, когда я просто изменяю размер окна.

Итак, я ищу способ изменить размер видео точно так же, как это делает VLC, потому что это на самом деле дает лучшее качество, чем обычный алгоритм изменения размера или алгоритмы изменения размера + резкости, которые я даже не смог найти в Handbrake. Однако, есть ли способ увеличить резкость видео с помощью Handbrake?

решение1

Вы не предоставили никаких подробностей о версии Handbrake или параметрах, ни о кодеках и битрейтах ваших источников или результатах перекодирования, но я собираюсь попробовать. То, что вы называете потерей «резкости», является результатом трех поколений кодирования видео с потерями. Короче говоря, все стало размытым, потому что вы урезали качество исходного источника.

Во-первых, давайте управлять ожиданиями. Переход от 1280x720 к 852x480 означает сокращение количества пикселей >50%, но это, скорее всего, не приведет к получению файла на 50% меньшего размера И того, который соответствует вашим стандартам качества. Возможно, если вы кодировали два файла из одного и того же исходного источника, но вы не должны удивляться, что файл с более высоким разрешением/битрейтом может дать лучшую картинку (проецируемую в окно любого размера), чем версия с уменьшенным битрейтом/масштабированием/пересжатием.

Я предполагаю, что ваше видео перешло из высококачественного источника 720p/1080p (высокий битрейт h264 или VC-1, скорее всего BluRay) в ваш файл (720p средний битрейт h264) в эту попытку перекодирования (480p низкий битрейт h264). Этот файл уже дважды прошел через алгоритм сжатия с потерями, и вы удивлены, когда третий раунд сжатия в сочетании с уменьшением битрейта и масштабированием сделал файл менее резким? Это просто здравый смысл.

Если у вас есть доступ к исходному источнику, то рип оттуда определенно даст вам наименьший файл, который соответствует вашим стандартам качества. Удаление всего лишь одного поколения с потерями даст значительно более четкие результаты. Если файл гораздо меньшего размера действительно важен (например, потому что вы купили iPad на 16 ГБ и хотите максимизировать количество видео, а не качество каждого), смело устанавливайте произвольно средний битрейт видео и тратьте время на двухпроходное кодирование, пытаясь приблизить файл к целевому размеру.

Но если вы действительно обеспокоены качеством, вам следует установить настройки x264 на «Постоянное качество» и выполнить рендеринг 30-секундного клипа несколько раз, используя различные значения CRF (Constant Rate Factor — произвольная единица), чтобы эмпирически найти, какое значение CRF соответствует вашим потребностям. Хотя HandBrake дает вам огромный ползунок от 0 до 51 для CRF, разумные значения находятся в диапазоне 19-24 (по умолчанию 20). После выбора источника вы можете переключить переключатель с глав на секунды и выбрать любой диапазон 20-30 секунд, который вы хотите сравнить. Переименуйте файл назначения (например, «test-crf20.m4v» или как-то так), нажмите «Добавить в очередь», немного измените CRF, переименуйте и повторите. Выполните пакетный рендеринг полудюжины и сравните каждый из них с измененным окном VLC. Выберите файл наименьшего размера, который не выглядит ухудшенным, и попробуйте закодировать все видео с помощью этого CRF. Посмотрите, получите ли вы искомую экономию размера файла, сохранив при этом «достаточно четкое» видео.

Связанный контент