С тз потребителя на моем компе фуллхд на пару мегабит жмётся vp8 со скоростью 12фпс, а vp9 со скоростью 4фпс.
У vp9 в большинстве случаев качество заметно лучше, но тем не менее иногда он сильно сливает.
В интернетах пишут, что есть быстрый декодер ffvp9, примерно сопоставимый по скорости с ffvp8. https://yadi.sk/d/tXxr8oxuKYHdBA
Что VP8 что VP9 это внутренний формат чисто для видео. Звук по прежнему идёт отдельно. Значит опять проблема синхронизации при сикинге.
У этих форматов есть нормальная покадровая навигация? Или опять бинарным поиском? Что-то я там не заметил функций для прыжка.
Добавлено 25-03-2020 в 10:06:
А вот на хабре было сравнение: https://habr.com/ru/post/96888/
говорят vp8 адски долго кодирует, по сравнению с x264. Правда это было давно.
Дядя Миша писал: Что VP8 что VP9 это внутренний формат чисто для видео. Звук по прежнему идёт отдельно. Значит опять проблема синхронизации при сикинге.
У этих форматов есть нормальная покадровая навигация? Или опять бинарным поиском? Что-то я там не заметил функций для прыжка.
Такое вообще где-то бывает? Мне кажется, что даже в бинке, который вроде как стандарт индустрии, этого нет.
Цитата:
Дядя Миша писал: говорят vp8 адски долго кодирует, по сравнению с x264. Правда это было давно.
По моим тестам на сегодняшний день vp8 кодируется на одном уровне со slower пресетом х264. Примерно в 2 раза медленнее medium пресета.
Ну я как рассуждаю. Для чего в движке нужно видео в наше время?
1. показать логотип
2. внутри-игровые видео на текстуре
Теора худо-бедно справляется и с первым и со вторым. Плюс её в том, что к ней уже у меня написана имплементация, осталось только починить рассинхрон звука при сикинге, там какой-то бред на 0.3 секунды рассогласование идет. В 15-м году я так и не разобрался с этим. Я бы мог конечно выбрать новый кодек, VP8 или VP9, но сразу встаёт несколько вопросов:
1. чем в него кодировать? Для OGV у меня есть утилитка ffmpeg2theora. А чем собирать в webM со звуком я не имею ни малейшего понятия. То есть без звука наверное тем же ffmpeg, но мне-то со звуком надо. Есть ли какой-то общепринятый стандарт для webM со звуком?
2. Ну вот мы закодировали, какой у него будет контейнер? Ogg? Или нечто иное? Или он сам в себе контейнер? Теора спецом для огга делалась. Т.е. это формат из трёх частей - огг - контейнер, ворбис - звук, теора - видео. Как тут обстоят дела?
3. Долбаная навигация. Мне очень нравится как это сделано в том же ворбисе - раз и встал куда надо. Но то звук, а то видео. Спровидливозти ради на авишках со сжатым аудиоканалом я тоже какой-то рассинхрон ловил, так что это скорее проблема у меня, но как пользователю мне бы вот хотелось иметь вменяемый сикинг уже изкаропки. Неужели я хочу чего-то невозможного?
Кстати говоря в бинке должна быть навигация уже в API, почитай на сайте ихнем.
Дядя Миша писал: 1. чем в него кодировать? Для OGV у меня есть утилитка ffmpeg2theora. А чем собирать в webM со звуком я не имею ни малейшего понятия. То есть без звука наверное тем же ffmpeg, но мне-то со звуком надо. Есть ли какой-то общепринятый стандарт для webM со звуком?
Все видео и аудио вместе и по отдельности стоит сжимать только ффмпегом, остальное от лукавого. У ffmpeg2theora есть только 2 плюса - оно меньше весит, и существует версия с экспериментальной версии теоры, у которой качество получше (у тебя кстати не она).
Цитата:
Дядя Миша писал: 2. Ну вот мы закодировали, какой у него будет контейнер? Ogg? Или нечто иное? Или он сам в себе контейнер? Теора спецом для огга делалась. Т.е. это формат из трёх частей - огг - контейнер, ворбис - звук, теора - видео. Как тут обстоят дела?
Какой хочешь. Хочешь ogg, хочешь webm. Контейнер на то и контейнер, что без разницы, что в него засунешь.
Цитата:
Дядя Миша писал: Кстати говоря в бинке должна быть навигация уже в API, почитай на сайте ихнем.
Не знаю, что там на сайте, но когда проигрываю видео через рад видео тулз, то когда тыкаю в произвольное место таймлайна, он пробегает все кадры от начала видео
Вообщем вот тепичный минус открытого софта - возьми кучу кирпичей и сам из них что-то сконструируй.
Цитата:
ncuxonaT писал: и существует версия с экспериментальной версии теоры, у которой качество получше (у тебя кстати не она).
теора справляется с ксашевой заставкой, в принципе этого уже достаточно, я ж говорю.
Добавлено 25-03-2020 в 21:53:
Забавно как порой всё же действуют стереотипы на подсознание.
Вот в старом ксаше в меню, когда не выбран ни один сейв - рисовалась какая-то декалька из вада. Die Freeman или типа того. Хотя по уму надо было рисовать анимированный шум. Но когда я об этом задумывался, то просто приходил к мысли, что я не хочу с собой таскать текстуры шума. И тут же меня отвлекали какие-то другие задачи. А теперь я плотно занялся меню (но правда уже в XashNT), и опять встал этот вопрос. И я подумал - а какого собственно чёрта? Я щас рандом-лонгом нагенерю этих текстур белого шума сколько угодно. 3 минуты - и всё готово. А раньше мне это абсолютно в голову не приходило.
Я несколько удивлён, если честно. MPEG была основана в 1990-м году ЕМНИП.
В плане сжатия аудио и видео за 30 лет были испробованы абсолютно все возможные варианты, ничего более там изобрести просто невозможно, да вообщем-то и не нужно. Так казалось бы - ну сделайте какой-то общеупотребимый стандарт и вася кот. Но нет, там попрежнему зоопарк.
H264, H265, VP8, VP9. Щас еще что-нибудь выдумают. Хотя все эти пляски идут вокруг одного и того же набора алгоритмов. Фурье, дельта, ряд Тейлора и арифметическое кодирование.