Есть мрачный старинный анекдот про нѣкотораго книгоиздателя, к которому прибѣжалъ встрёпанный автор одной из изданных книг и умолял немедля отозвать всё изданіе и выпустить другое — с исправлением допущенной ошибки. Книгоиздатель поинтересовался, отчего же такъ спѣшно: разве поступали жалобы от читателей? На это автор ѿвѣчалъ ему, что жалоб никаких не поступало, но это-то как раз и может быть признаком наиболѣе зловѣщимъ — и тогда только книгоиздатель с ужасом вспомнил, что книга та была справочником по опознанию ядовитых грибов. (Правда, с развитием воздухоплавания въ XX вѣкѣ популярным сдѣлался и другой варіантъ анекдота, в котором она была справочником по вѣрному укладыванію парашюта.)
Очень хорошо поэтому, что в моём случае обошлось без угрожающих послѣдствій для жизни и здоровья, однако и я также обнаружил себя сегодня жертвою ошибки, допущенной в одном таком справочнике, который я давненько один раз прочёл с безоговорочным довѣріемъ и с той поры долгие годы безпрерывно руководился прочитанным — причём ошибку ту я также нипочём обнаружить не мог бы самостоятельно, а оттого не подавал о ней никакой жалобы ни авторам справочника, ни просто у себя во блоге, ни ещё гдѣ-нибудь.
Создавать видеозаписи в формате AV1 я начал в 2020 году (первою из выложенных на этом канале, а не в других мѣстахъ, стала вон та), создавать видеоцитаты из аниме я начал ещё раньше (помнится, побудило меня к этому появление возможности выкладывать видеофайлы на Ычан в 2018 году), достаточно быстро этот процесс распался на два шага: сперва я создаю копию цитаты в большом видеофайле, кодированном без внесения потерь, затѣмъ переужимаю его с различными настройками качества, стремясь уложиться в ограничения объёма файла, налагаемыя имиджбордом или Телеграмом. И если второй из этих шагов совершенствуется по нескольку раз в год (напримѣръ, на днях в кодировщике SVT-AV1 появился параметр «enable-kf-tf» для отключения того фильтра, который вносит в ключевые видеокадры такія измѣненія, которыя искажают сами кадры, но которыя усиливают предсказательную силу их в группе кадров и тѣмъ способствуют видеосжатию), то первый я считал совершенно неизмѣннымъ.
И что же? — оказывается, въ предпослѣдній день 2021 года (30 декабря) в ту страницу вики FFmpeg, которая посвящена кодированию видеофайлов в формате AVC (он же H.264), внесены были измѣненія, указывающія на то, что значение параметра «-crf 0» не всегда включает сжатие без потерь, так что лучше использовать значение параметра «-qp 0», особенно для пикселов с большею глубиною цвѣта, нежели TrueColor (24 бита). А въ послѣдній день 2021 года (31 декабря) аналогичный по смыслу отклик (но нѣсколько менѣе подробный) появился и под одним из вопросов на сайте Stack Overflow.
Ну вот я на это наконец наткнулся, пусть и почти на 4½ года позже — что же теперь?
Понимаю ли я, отчего прежде не замѣчалъ вносимых потерь? — понимаю, что они с высокою вѣроятностью были столь малыми, что не были замѣтны на фоне плодов послѣдующаго видеосжатия.
Буду ли я и впредь пренебрегать потерями, или же пройдусь по коду всѣхъ тѣхъ моих бáтников (пакетных файлов), которые предназначены для создания несжатых видеоцитат, повсюду замѣняя «-crf 0» на «-qp 0»?
Ни то, ни другое.
Кто обжёгся на молоке, тот дует и на воду. Я собираюсь вообще отказаться от использования формата AVC (он же H.264) даже в том его режиме, который теперича ну уж точно без потерь, правда-правда, никакой ошибки не может быть. (Ну или всё же может, а я опять выясню это черезъ N лѣтъ.) Вмѣсто него я собираюсь использовать тот видеоформат, в котором вродѣ бы любой режим работы обходится без внесения потерь в видеокадры: видеоформат FFV1.
В качестве дополнительнаго преимущества я получаю объёмъ файла на пару десятков процентов поменьше, нежели получался бы в формате AVC (он же H.264) даже в режиме работы «veryslow». В качестве недостатка получаю документацию опять же небезошибочную: прямо сейчас по адресу https://ffmpeg.org/ffmpeg-all.html#ffv1-1 упомянут параметр «remap_optimizer», но попытка использовать его порождает сообщение «Unrecognized option 'remap_optimizer'».
Очень хорошо поэтому, что в моём случае обошлось без угрожающих послѣдствій для жизни и здоровья, однако и я также обнаружил себя сегодня жертвою ошибки, допущенной в одном таком справочнике, который я давненько один раз прочёл с безоговорочным довѣріемъ и с той поры долгие годы безпрерывно руководился прочитанным — причём ошибку ту я также нипочём обнаружить не мог бы самостоятельно, а оттого не подавал о ней никакой жалобы ни авторам справочника, ни просто у себя во блоге, ни ещё гдѣ-нибудь.
Создавать видеозаписи в формате AV1 я начал в 2020 году (первою из выложенных на этом канале, а не в других мѣстахъ, стала вон та), создавать видеоцитаты из аниме я начал ещё раньше (помнится, побудило меня к этому появление возможности выкладывать видеофайлы на Ычан в 2018 году), достаточно быстро этот процесс распался на два шага: сперва я создаю копию цитаты в большом видеофайле, кодированном без внесения потерь, затѣмъ переужимаю его с различными настройками качества, стремясь уложиться в ограничения объёма файла, налагаемыя имиджбордом или Телеграмом. И если второй из этих шагов совершенствуется по нескольку раз в год (напримѣръ, на днях в кодировщике SVT-AV1 появился параметр «enable-kf-tf» для отключения того фильтра, который вносит в ключевые видеокадры такія измѣненія, которыя искажают сами кадры, но которыя усиливают предсказательную силу их в группе кадров и тѣмъ способствуют видеосжатию), то первый я считал совершенно неизмѣннымъ.
И что же? — оказывается, въ предпослѣдній день 2021 года (30 декабря) в ту страницу вики FFmpeg, которая посвящена кодированию видеофайлов в формате AVC (он же H.264), внесены были измѣненія, указывающія на то, что значение параметра «-crf 0» не всегда включает сжатие без потерь, так что лучше использовать значение параметра «-qp 0», особенно для пикселов с большею глубиною цвѣта, нежели TrueColor (24 бита). А въ послѣдній день 2021 года (31 декабря) аналогичный по смыслу отклик (но нѣсколько менѣе подробный) появился и под одним из вопросов на сайте Stack Overflow.
Ну вот я на это наконец наткнулся, пусть и почти на 4½ года позже — что же теперь?
Понимаю ли я, отчего прежде не замѣчалъ вносимых потерь? — понимаю, что они с высокою вѣроятностью были столь малыми, что не были замѣтны на фоне плодов послѣдующаго видеосжатия.
Буду ли я и впредь пренебрегать потерями, или же пройдусь по коду всѣхъ тѣхъ моих бáтников (пакетных файлов), которые предназначены для создания несжатых видеоцитат, повсюду замѣняя «-crf 0» на «-qp 0»?
Ни то, ни другое.
Кто обжёгся на молоке, тот дует и на воду. Я собираюсь вообще отказаться от использования формата AVC (он же H.264) даже в том его режиме, который теперича ну уж точно без потерь, правда-правда, никакой ошибки не может быть. (Ну или всё же может, а я опять выясню это черезъ N лѣтъ.) Вмѣсто него я собираюсь использовать тот видеоформат, в котором вродѣ бы любой режим работы обходится без внесения потерь в видеокадры: видеоформат FFV1.
В качестве дополнительнаго преимущества я получаю объёмъ файла на пару десятков процентов поменьше, нежели получался бы в формате AVC (он же H.264) даже в режиме работы «veryslow». В качестве недостатка получаю документацию опять же небезошибочную: прямо сейчас по адресу https://ffmpeg.org/ffmpeg-all.html#ffv1-1 упомянут параметр «remap_optimizer», но попытка использовать его порождает сообщение «Unrecognized option 'remap_optimizer'».