Videorip.info

Учимся кодировать видео и делимся опытом

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Bookmark and Share
Обсуждаем настройки, проблемы и особенности кодирования.
  • Страница:
  • 1
  • 2

ТЕМА: Как найти оптимальные настройки кодирования для ультра-динамичных видео. Мой метод.

Как найти оптимальные настройки кодирования для ультра-динамичных видео. Мой метод. 4 года 10 мес. назад #3811

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
I. Определение вторичных настроек:

1) --direct spatial - ставить всегда при кодировании по CRF, а при кодировании в 2 или 3 прохода --direct auto
2) --b-adapt 2 - даёт наилучшее соотношение качества на вес
3) --trellis 2 - даёт наилучшее соотношение качества на вес, жертвуя скоростью
4) --me tesa - максимально долгая, но и максимально эффективная схема для получения наилучшего качества на наименьший вес
5) --subme 11 - максимум качества, минимум артефактов кодирования
6) --partitions all - актуальная настройка для SD и HD, которая полностью отменяет всякую необходимость в жёстком указании --level 4.1
7) --no-dct-decimate - отменяет пропуск dct-блоков, что позволяет выжать больше качества
8) --merange 16 - кол-во соседних точек для отслеживания векторов движения. Данное значение стоит по умолчанию и наиболее нейтрально, т.к. повышение замедлит кодирования лишь незначительно снизив вес файла, но при этом может привести к небольшому увеличению числа артефактов. Для HD можно на свой страх и риск повысить до 24, для Full HD до 32.
9) --ratetol 100 - следует добавлять при кодировании в 2 или 3 прохода, при кодировании же по CRF на результат никак не влияет.
10) --no-mbtree - отменяет систему "дерева" - снижения качества на сложных сценах и в пользу простых
11) --aq-mode 2 - метод AQ - алгоритм, использующий размытие сложных и высокодетализированных сцен. Метод 2 более эффективен, нежели стоящий по умолчанию метод 1.
12) --qcomp - баланс между постоянным битрейтом (--qcomp 0.0) и постоянным квантайзером (--qcomp 1.0). Постоянный битрейт даёт высокое качество на простых сценах и низкое на сложных, а постоянный квантайзер одинаковое. По умолчанию qcomp=0.6. Как правило часто повышается до 0.7 или 0.8, причём как совместно с понижением aq-strength до 0.9-0.6, так и без него.
13) --aq-strength - регулятор силы AQ. Схожий эффект с qcomp, но в основе другой принцип (см. --aq-mode). Снижение этого параметра повышает детализацию сложных и высокодетализированных сцен, повышение же их рамывает. Крутить на глаз по надобности и с осторожностью, желательно подбирая наиболее эффективную комбинацию с --qcomp. В подавляющем большинстве случаев это либо значения по умолчанию, либо --qcomp 0.7 --aq-strength 0.9, но всё зависит от отдельно взятого видео, поэтому расслабляться не стоит.
14) --thread-input --threads 1 - способ улучшить качество, но также и значительно ухудшить скорость за счёт кодирования в один поток (не путать с проходом) и более эффективного использования reframes. По умолчанию threads рассчитывается как кол-во ядер процессора умноженное на 1.5, т.е. если у вас 4-ядерный процессор, то threads будет равно 6-и, если 2-х, то 3-м. Данная настройка снижает кол-во потоков до одного. Использовать на свой страх и риск.
Остальное - лучше оставить по умолчаниям x264 и не трогать.

II. Определение ключевых настроек:

1) --CRF - степень качества. Положительной стороной является способность в один проход выдерживать на всём видео определённую степень качества, которая не характеризуется определённым битрейтом. Т.е. сколько надо для выдержки заданного качества, столько битрейта и будет потрачено: хоть 10, хоть 30000. Благодаря этому можно в десятки раз быстрее и проще определить ту степень, которая даст оптимальное соотношение зрительно приемлемого качества на вес, чем искать её в 2 прохода по битрейту. Отрицательной стороной является то, что кодирование по битрейту в 2 прохода всё-таки даёт на выходе более лучшее качество, а вес меньше, но нет худа без добра: благодаря CRF можно определить тот битрейт, на который можно опираться для дальнейшего кодирования уже в 2 прохода по этому самому битрейту.
Для кодирования качественных и детализированных BD-исходников в подавляющем большинстве случаев достаточным бывает CRF 18-16 для 8бит и 17-15 для 10бит. Для низкокачественных или очень статичных (запись рабочего стола, например) исходников подойдёт значение из диапазона 22-18.

2) --deblock - этот параметр/фильтр служит для подавления возникающей при кодировании блочности, влияет на чёткость изображения и является решающим для определения таких параметров как --ref, --bframes и --psy-rd.
Какой выбрать? Искренне не рекомендую использовать значения выше 0:0 для BD-исходников, в остальном можно опираться на планируемое вами качество видео и этическими ограничениями на вес. На мой взгляд если исходник качественный и чёткий, то для CRF18 и 17 вполне подойдут значения 0:0, для 17-16 - -1:-1, для 16-15 - -2:-2. Для изначально низкодетализированного исходника плохого качества, прошедшего через фильтрацию от интерлейса и прочих артефактов присущих старым DVD, не имеет особого смысла пытаться пиксель в пиксель передать картинку и тут уже можно поднять и CRF и deblock.

3) --psy-rd - это систематизированный повторяющийся шум, служащий для исправления градиентов и имитации детализированности изображения, т.е. фактически это дизеринг.
В 8 бит выглядит не очень хорошо, а вот в 10бит уже куда более естественно и неприметно.
Степень сохраняемости этого дизеринга зависит от степени качества и ему тоже нужен битрейт. Т.е. нет смысла ставить высокие значения, если выбранного CRF для этого недостаточно, а уж с повышенным deblock и подавно. Например набор CRF=20 + deblock=1:1 + psy-rd=1.0:0.0 - это как минимум просто глупо.
Как писалось выше: оптимальное значение psy-rd в первую очередь зависит от deblock, а то как хорошо он будет сохранён - от CRF. Так как же найти оптимальное значение? На глаз! Я это уже сделал за вас в таблице ниже, значения в которой если даже и не универсальны, то как минимум могут послужить вам точкой опоры для нахождения более, как вам покажется, правильных значений, дело ваше.
Как определить нужно ли использовать psy-rd или нет? При высоких CRF (низких битрейтах) для онлайн-версий и PSP точно не нужен. Однако бывают видео с очень высокой степенью шума и(или) зернистости, которые при кодировании сохраняется довольно хорошо и сами по себе служат дизерингом. Такое бывает в игровых видео по хоррорам и в старых фильмах 80-х годов и ранее. Эти случаи надо рассматривать в индивидуальном порядке и принимать решение по результату от кодирования "с" и "без" какого-нибудь отрезка или нарезки из видео (для этого достаточно 1-5 минут, а также крайне желательно наличие в этом отрезке очень ярких и очень тёмных сцен).

4)
a)--ref - настройка, чьё оптимальное значение зависит только от самого видео и не зависит от разрешения, фпс или CRF. К сожалению для "железных" плееров по стандарту 4.1 имеет ограничения. Для SD даже в 60fps их нет, для HD в 30 и 60fps не больше 9, а для FullHD 30fps не больше 4-х. Однако, практика показывает, что для HD, а также для FullHD и промежуточных разрешений 23.976 и 25fps можно и больше. Возможно просто прогресс не стоит на месте и более новые модели без труда жуют больший --ref, нежели предписанный по стандартам.
b) --bframes - настройка, чьё оптимальное значение как правило больше --ref и опять же зависит напрямую от самого видео. Если не хотите заморачиваться на долгий и мучительный поиск оптимального значения bframes, то просто приравняйте его к найденному по логу ref.
Так как же найти оптимальные ref и bframes самостоятельно? Для этого нужно вести лог кодирования, в его конце есть информация о том с какими результатами завершилось кодирование. Выглядит это примерно так:
[info]: frame I:1     Avg QP:31.18  size: 10679x264 
[info]: frame P:11    Avg QP:34.65  size:  4462x264 
[info]: frame B:16    Avg QP:34.27  size:  2279x264 
[info]: consecutive B-frames: 10.7% 14.3% 75.0%x264 
[info]: mb I  I16..4:  5.2% 23.0% 71.7%x264 
[info]: mb P  I16..4:  0.7%  2.3%  7.2%  P16..4: 10.0% 10.2% 10.0%  8.1%  0.8%    skip:50.6%x264 
[info]: mb B  I16..4:  0.2%  0.4%  1.0%  B16..8: 15.8% 16.4%  7.0%  direct: 0.7%  skip:58.6%  L0:38.9% L1:50.7% BI:10.4%x264 
[info]: 8x8 transform intra:22.8% inter:8.5%x264 
[info]: direct mvs  spatial:81.3% temporal:18.8%x264 
[info]: coded y,uvDC,uvAC intra: 36.8% 37.8% 16.5% inter: 12.2% 2.7% 0.6%x264 
[info]: i16 v,h,dc,p: 36% 22% 41%  1%x264 
[info]: i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 36%  7% 45%  2%  1%  2%  1%  2%  3%x264 
[info]: i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 35% 10% 36%  3%  3%  4%  2%  4%  2%x264 
[info]: i8c dc,h,v,p: 25% 35% 28% 12%x264 
[info]: Weighted P-Frames: Y:9.1% UV:0.0%x264 
[info]: ref P L0: 87.4%  2.2% 10.4%x264 
[info]: ref B L0: 86.0% 14.0%x264 
[info]: ref B L1: 93.6%  6.4%x264 
[info]: kb/s:659.10
encoded 28 frames, 3.66 fps, 659.10 kb/s

done encoding video
а нас интересуют только эти строки
[info]: consecutive B-frames:
[info]: ref P L0: 
[info]: ref B L0: 
[info]: ref B L1:
"Consecutive B-frames" отвечает за bframes, а остальные за ref. Оптимальным ref будет тогда, когда одно из значений хотя бы в одной из строк ref P L0/ref B L0/ref B L1 станет равным 0.0 или 0.1. Аналогично с bframes: если одно значение стало равным 0.0 или 0.1, значит мы нашли оптимальное bframes. Начинать следует с малого, т.е. с ref и bframes равных 2 и 2 соответственно, а затем добавляем по единице к каждому до тех пор, пока не найдём оптимальное ref. После этого смотрим на строку "Consecutive B-frames": если есть одно значение равное 0.0 или 0.1 - то и bframes мы тоже нашли; если таких значений 2 и более - перепрыгнули и надо не меняя ref снижать bframes; если ни одного - значит недопрыгнули и теперь не меняя ref надо повышать bframes.
Внимание! Брать для поиска оптимального ref следует кусок видео не менее 1-й минуты, а для bframes чем больше - тем лучше. Быстрый способ: ищем значения по вырезке из видео продолжительностью ровно 1 минута, затем проверяем их правильность по вырезке из видео продолжительностью 5 минут, а затем и на всём видео. Для ещё большего ускорения процесса поиска можно снизить разрешение до 360p или 270p
Также бывают случаи, когда по логу оптимальных комбинаций может быть несколько, например ref=3 bframes=8, ref=4 bframes=8 и ref=5 bframes=8. В таких случаях наилучшей будет пара с наименьшим ref, т.е. ref=3 bframes=8. А бывают случаи когда найти по логу оптимальные значения невозможно. Также попадаются случаи, когда находим оптимальный ref, например, 6, затем bframes, например, 12, а после этого снижаем ref до 5 и видим по логу, что это значение тоже оптимально, хотя в комбинации ref=5 bframes=5 оно таковым не являлось.
При явном недостатке битрейта, например, при кодировании версий для онлайн-просмотра или для PSP лучше всего подойдут значения, найденные не по логу, а ref=2 bframes=2, т.к. они дадут меньше всего артефактов.

ТАБЛИЦА РЕКОМЕНДУЕМЫХ ЗНАЧЕНИЙ ОТНОСИТЕЛЬНО ВЫБРАННОГО ПАРАМЕТРА DEBLOCK
Пояснение к таблице: лично я советую придерживаться рекомендуемых psy-rd относительно выбранного deblock, а вот рекомендуемый CRF взят среднестатистическим для видео повышенной сложности, поэтому вам всё-таки для каждого отдельно взятого видео придётся подбирать CRF самостоятельно на глаз или по PSNR.

Пример настроек для 8бит, которые у вас могут получиться:
--crf 16.0 --direct spatial --deblock -1:-1 --ref 6 --bframes 8 --b-adapt 2 --trellis 2 --me tesa 
--subme 11 --partitions all --no-mbtree --aq-mode 2 --no-dct-decimate --psy-rd 0.90:0.00
или
--crf 16.0 --direct spatial --deblock -1:-1 --ref 6 --bframes 8 --b-adapt 2 --trellis 2 --me tesa 
--subme 11 --partitions all --no-mbtree --aq-mode 2 --no-dct-decimate --psy-rd 0.90:0.00 --thread-input --threads 1

III. 2- и 3-проходное кодирование:

1) Теперь у нас есть все нужные нам настройки и закодированное видео по CRF, но душа просит закодировать ещё лучше и снизить вес? И тут на сцену выходит 2-проходное кодирование! Меняем --direct spatial на --direct auto, добавляем --ratetol 100, ставим 2 pass и берём тот битрейт, deblock, ref, bframes и psy-rd, которые у нас получились от кодирования по CRF. После кодирования на выходе получим качество ещё лучше, но если качество лучше вам не нужно, то можно смело снижать битрейт на глаз до тех пор пока визуально не получим такое же качество каким оно было при CRF. Подбирать можно по 5-минутной нарезке из разнообразных сцен, где одна версия будет закодирована по CRF, а вторая в 2 прохода будет с ней сравниваться.
Однако у 2-проходного есть минус, а именно в некоторых случаях может значительно упасть качество на сложных сценах и если при кодировании по CRF не пришлось, то вот тут уже точно придётся регулировать --qcomp и --aq-strength.

Пример настроек для 8бит, которые у вас могут получиться:
--bitrate 4000 --direct auto --deblock -1:-1 --ref 6 --bframes 8 --b-adapt 2 --trellis 2 --me tesa 
--subme 11 --partitions all --no-mbtree --aq-mode 2 --no-dct-decimate --psy-rd 0.90:0.00 --ratetol 100

2) А как же 3-проходное? 3-проходное значительно снижает пиковый битрейт, из-за чего мажет, но в тоже время сильно снижает вес, что в сочетании с deblock=0:0, no-psy, ref=2 и bframes=2 идеально подходит для кодирования онлайн-версий и версий для PSP. Недостатка значительного снижения качества на сложных сценах в отличии от 2-проходного лишён, но всё же может уступить в этом отношении CRF. В действительности 3-проходное лучше применять именно для кодирования версий для онлайн-воспроизведения и PSP. Кроме ref=2 и bframes=2 также можно использовать куда более долгую, но более лучшую по конечному качеству комбинацию threads=1 ref=3 bframes=0.

Пример настроек для 8бит, которые у вас могут получиться:
--bitrate 500 --direct auto --deblock +0:+0 --ref 2 --bframes 2 --b-adapt 2 --trellis 2 --me tesa 
--subme 11 --partitions all --no-mbtree --aq-mode 2 --no-dct-decimate --no-psy --ratetol 100
или
--bitrate 500 --direct auto --deblock +0:+0 --ref 3 --bframes 0 --b-adapt 2 --trellis 2 --me tesa 
--subme 11 --partitions all --no-mbtree --aq-mode 2 --no-dct-decimate --no-psy --ratetol 100 
--thread-input --threads 1
Последнее редактирование: 3 года 6 мес. назад от Bill_Ein.
Гостям запрещено создавать сообщения!
Спасибо сказали: admin, maxmister, Zikfrid3000

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3812

  • yazev70
  • yazev70 аватар
  • Не в сети
  • Новичок
  • Сообщений: 22
  • Спасибо получено: 4
11) --ratetol 100 - следует добавлять при кодировании в 2 или 3 прохода, при кодировании же по CRF на результат никак не влияет.

Где можно найти этот пункт в XviD4PSP 5?
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3813

  • Zikfrid3000
  • Zikfrid3000 аватар
  • Не в сети
  • Модератор
  • Век живи, век учись!
  • Сообщений: 292
  • Спасибо получено: 161
Некоторые параметры не вынесены в граф.интр. поэтому их нужно прописывать в CLI.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3814

  • yazev70
  • yazev70 аватар
  • Не в сети
  • Новичок
  • Сообщений: 22
  • Спасибо получено: 4
Подробнее можно описать?
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3815

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
yazev70 пишет:
Подробнее можно описать?
Всего один запрос в гугле "XviD4PSP 5 CLI" и вот результат:

Последнее редактирование: 4 года 10 мес. назад от Bill_Ein.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3816

  • yazev70
  • yazev70 аватар
  • Не в сети
  • Новичок
  • Сообщений: 22
  • Спасибо получено: 4
Это я знаю. Я хотел узнать куда, после какой строчки, нужно вписывать ratetol 100.
Гостям запрещено создавать сообщения!
Спасибо сказали: videoDVDkhv

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3817

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
yazev70 пишет:
Это я знаю. Я хотел узнать куда, после какой строчки, нужно вписывать ratetol 100.
Там в посте же есть пример:
--bitrate 500 --direct auto --deblock 0:0 --ref 2 --bframes 2 --b-adapt 2 --trellis 2 --me tesa --subme 11 --partitions all --no-mbtree --aq-mode 2 --no-dct-decimate --psy-rd 0.90:0.00 --ratetol 100
Да и по большому счёту в каком порядке вы укажете настройки значения не имеет. Или что вы имеете ввиду? Добавлять только в конкретный pass или во все? Во все. У всех pass должны быть аутентичные настройки.
Последнее редактирование: 4 года 10 мес. назад от Bill_Ein.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3818

  • yazev70
  • yazev70 аватар
  • Не в сети
  • Новичок
  • Сообщений: 22
  • Спасибо получено: 4
У меня одинаковые настройки:
--pass 1 --crf 16.0 --preset veryslow --profile high --level 4.1 --ref 9 --aq-mode 2 --deblock -1:-1 --merange 32 --bframes 9 --no-dct-decimate --psy-rd 1.00:0.15 --subme 11 --me tesa --no-mbtree --extra:
Гостям запрещено создавать сообщения!
Спасибо сказали: videoDVDkhv

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3819

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
yazev70 пишет:
У меня одинаковые настройки:
Тогда я не понимаю сути вопроса
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3820

  • yazev70
  • yazev70 аватар
  • Не в сети
  • Новичок
  • Сообщений: 22
  • Спасибо получено: 4
Я хотел узнать куда, после какой строчки, нужно вписывать ratetol 100.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3821

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
yazev70 пишет:
Я хотел узнать куда, после какой строчки, нужно вписывать ratetol 100.
Я же сказал: во все pass. Что непонятного?
Так понятнее?
--pass 1 --бла-бла-бла --ratetol 100 --extra:

--pass 2 --бла-бла-бла --ratetol 100 --extra:

--pass 3 --бла-бла-бла --ratetol 100 --extra:
Последнее редактирование: 4 года 10 мес. назад от Bill_Ein.
Гостям запрещено создавать сообщения!
Спасибо сказали: yazev70

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3822

  • yazev70
  • yazev70 аватар
  • Не в сети
  • Новичок
  • Сообщений: 22
  • Спасибо получено: 4
Да. Так понятнее.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3827

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
Статья доработана и обновлена.
Добавлена информация по ключам qcomp, aq-strength и threads.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3828

  • Zikfrid3000
  • Zikfrid3000 аватар
  • Не в сети
  • Модератор
  • Век живи, век учись!
  • Сообщений: 292
  • Спасибо получено: 161
Думаю не хватает инфы по ключу Psy-Trellis...сам я про него ничего дельного сказать не могу, разве что включение этой штуки на 1.0 может аукнуться полуторным повышением битрейта по всему видео (относительно ко значению 0.0), профита я не замечаю от него.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3829

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
Zikfrid3000 пишет:
Думаю не хватает инфы по ключу Psy-Trellis...сам я про него ничего дельного сказать не могу, разве что включение этой штуки на 1.0 может аукнуться полуторным повышением битрейта по всему видео (относительно ко значению 0.0), профита я не замечаю от него.
На мой взгляд psy-rd=1.0:0.0 - это тоже самое что psy-rd=X:Y.
X - несёт шумок и диструкцию по горизонтали влево, а Y - по вертикали вверх. Если исходник не слишком пестрит детализацией и битрейта вполне хватает, то использование только X вполне достаточно. Если же исходник сверх детализированный или чрезмерно шумный, из-за чего требует слишком много битрейта, а нам его жалко, то можно можно покрутить Y. Результат по скриншотам будет выглядеть более, так сказать, песочным, особенно если это анимация с чёткими контурами, но в динамике неискушённый человек решит что это оригинальный шум. Теоретически использование обоих параметров в значении 1 или 2 должно создавать эффект тетради в клеточку.
Но никакой толковой более-менее наглядной или официальной информации, подтверждающей или опровергающей мою теорию, нет.
Последнее редактирование: 4 года 10 мес. назад от Bill_Ein.
Гостям запрещено создавать сообщения!
Спасибо сказали: videoDVDkhv

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3830

  • maxmister
  • maxmister аватар
  • Не в сети
  • Знаток
  • Сообщений: 389
  • Спасибо получено: 86
вот немного не понятно про: --ref, --bframes. разве чем больше значение (в данном случае 16), не лучше?!
кодировал к примеру файл: 1) -ref = 4, --bframes =6, 2)- ref=16, --bframes=16. разница в 200b, тем самым файл весит меньше и качество норм.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3831

  • Zikfrid3000
  • Zikfrid3000 аватар
  • Не в сети
  • Модератор
  • Век живи, век учись!
  • Сообщений: 292
  • Спасибо получено: 161
maxmister пишет:
вот немного не понятно про: --ref, --bframes. разве чем больше значение (в данном случае 16), не лучше?!
кодировал к примеру файл: 1) -ref = 4, --bframes =6, 2)- ref=16, --bframes=16. разница в 200b, тем самым файл весит меньше и качество норм.
Вы точно внимательно читали 1ый пост 2ую часть 4ый пункт?
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 10 мес. назад #3832

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
maxmister пишет:
вот немного не понятно про: --ref, --bframes. разве чем больше значение (в данном случае 16), не лучше?!
У некоторых ключей по отношению к отдельно взятому видео и комбинации прочих настроек есть так называемый пик оптимальности или максимальный коэффициент полезного действия (КПД). Грубо говоря это тот момент когда мы получаем наилучшее соотношение сохранения основных деталей и минимум артефактов по отношению к весу файла и скорости кодирования.
Значение ref и bframes выше оптимальных по логу для отдельно взятого видео будут лишь тормозить кодирование, внесут артефакты и при том лишь незначительно уменьшат вес.
Более того у неполнокадровой анимации и в динамичных сценах прогнозирующие ссылочные кадры bframes могут порождать блендинг из-за чего на этих моментах не только не сэкономят битрейт, а даже в точности до наоборот.
Проще говоря, везде надо знать меру. Если вам лень заморачиваться на поиск оптимальных значений, то лучше пользуйтесь таблицей для ref и приравнивайте bframes к нему.
P.S. Возможно я внесу в таблицу по аналогии с ref среднестатистические bframes, которые будут соответствовать или наиболее близки к оптимальным в большинстве экспериментов. В частности для deblock 0:0 no-psy очень часто по логу у меня получается ref=7 и bframes=13.
Последнее редактирование: 4 года 10 мес. назад от Bill_Ein.
Гостям запрещено создавать сообщения!
Спасибо сказали: admin, maxmister, Zikfrid3000, videoDVDkhv

Как найти оптимальные настройки кодирования. Мой метод. 4 года 9 мес. назад #3834

  • Bill_Ein
  • Bill_Ein аватар
  • Не в сети
  • Вникает
  • Сообщений: 91
  • Спасибо получено: 46
Статья вновь доработана.
Ранее я забыл добавить, что для поиска оптимальных ref и bframes можно снизить разрешение вплоть до 360 или 270p, что значительно экономит время. Также выяснилось, что зависимости между deblock и ref всё-таки нет, а пытаться найти и указать в таблице "ДЛЯ ЛЕНИВЫХ" некие средние значения bframes ещё более бессмысленно чем ref, так что увы и ах, остаётся только подбор по логу :(
Последнее редактирование: 4 года 9 мес. назад от Bill_Ein.
Гостям запрещено создавать сообщения!

Как найти оптимальные настройки кодирования. Мой метод. 4 года 8 мес. назад #3845

  • maxmister
  • maxmister аватар
  • Не в сети
  • Знаток
  • Сообщений: 389
  • Спасибо получено: 86
расскажите про вкладку Rate, особенно про VBV maxrate / Buffer.
VBV maxrate / Buffer: какие параметры выставлять?! - иногда при изменение настроек можно сохранить качество и уменьшить файл в 4раза. т.к. правильно подобрать параметры?
Гостям запрещено создавать сообщения!
  • Страница:
  • 1
  • 2
Время создания страницы: 0.111 секунд