Сумасшедший джиттер во время воспроизведения видео файлов [не баг]

Автор Evgeniy1990, 04 февраля 2016, 16:54:11

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Evgeniy1990

В нашем проекте существует одно из необъяснимых явлений - это "сбойный джиттер".

Оно представляет собой некие задержки, во время воспроизведения видео файлов, в результате чего, джиттер становится то больше, то наоборот - меньше и так чередуется до конца их воспроизведения.

Любому человеку, в здравом уме, становится ясно, что если плеер и его видео движок работают совершенно нормально, то таких чередований и всплесков джиттера быть не должно. Если они есть и проявляются очень часто, буквально во время воспроизведения видео файлов, значит что-то работает не так и с этим необходимо (желательно) разобраться.

Рассмотрим следующий пример:

Во время его нормального воспроизведения, постоянное значение джиттера = 1 мс, начинает постепенно возрастать.

Вот примерный список возрастания джиттера: https://yadi.sk/i/Iy88IuIaoHgnf

1. От 1 мс до 9 мс
2. От 1 мс до 15 мс
3. От 1 мс до 7 мс
4. От 1 мс до 2 мс
5. От 2 мс до 7 мс

В зависимости от операционных систем и видео-рендереров значения возрастания джиттера могут быть и будут естественно разными.

Даже посмотрев на данный список периодического возрастания джиттера, можно смело сказать, что это просто ненормальность какая-то, иными словами - просто безумие.

Но это еще далеко не самое страшное и критическое.

Самый ужас творится примерно в самом конце воспроизведения данного примера видео файла.

После 00:03:48, джиттер возрастает еще сильнее и сильнее.

Вот примерный список возрастания, после 00:03:48:

1. От 1 мс до 27 мс
2. От 27 мс до 76 мс
3. От 76 мс до 107 мс
4. От 107 мс до 176 мс

! Обратите внимание, что в конце воспроизведения данного примера видео файла, джиттер даже не уменьшается до 1 мс, а все больше и больше продолжает возрастать, в конечном итоге, чуть ли не до 200 мс.

Вывод очевиден - просто "эпический кошмар" творится.

И сразу вопрос: что у нас стало с джиттером, а точнее с его работой, после его переделки в свое время?

P.S. Данный баг-репорт был создан с целью разобраться, что случилось с работой джиттера, понять, почему происходят и наблюдаются периодически его всплески, как в большую, так и в меньшую стороны а также разобраться, почему происходят такие сумасшедшие и чудовищные возрастания вплоть до 200 мс.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Aleksoid1978

Так - у меня в течении всего файла все с джиттером отлично. Ничего не скачет и не прыгает.

А то что после 00:03:48 происходит такое - спасибо создателям файла, там видео идет на с частотой 29.97 - а со всем другой, намного меньше да еще и прыгает.
[merge_posts_bbcode]Добавлено: 2016-02-05 00:26:07[/merge_posts_bbcode]

И на будущее - блин, не надо писать такие "портянки", реально читать устаешь. Особенно когда по факту и проблемы нет(в данном случае дело в самом источнике - а никак не в проигрывателе).
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

Цитата: Evgeniy1990просто "эпический кошмар" творится
Да пусть хоть на голове цифры стоят, значит так надо. Вообще пофиг, если картинка нормально показывает. Не надо выдумывать проблему из ничего.

Evgeniy1990

Цитата: Aleksoid1978Так - у меня в течении всего файла все с джиттером отлично. Ничего не скачет и не прыгает.
Ясно, заслуга вашего высокопроизводительного компьютера.

Цитата: Aleksoid1978И на будущее - блин, не надо писать такие "портянки", реально читать устаешь. Особенно когда по факту и проблемы нет(в данном случае дело в самом источнике - а никак не в проигрывателе).

"Портянки"... Мда, как грубо, в очередной раз получаю замечание по поводу составления баг-репортов.
У вас как всегда все просто - проблемы нет ну и пофиг.

Вы даже представить себе не можете, насколько иногда непросто составить достаточно подробный и грамотный баг-репорт. Насколько нужно быть внимательным.
[merge_posts_bbcode]Добавлено: 2016-02-04 20:59:08[/merge_posts_bbcode]

Цитата: V0lt
Цитата: Evgeniy1990просто "эпический кошмар" творится
Да пусть хоть на голове цифры стоят, значит так надо. Вообще пофиг, если картинка нормально показывает. Не надо выдумывать проблему из ничего.
Во-первых, я проблемы не выдумываю.
Во-вторых,  ваши ключевые слова - "нормально показывает". В каком это интересно месте показывает нормально? Только у вас?

Вот еще один пример: https://yadi.sk/i/A5g6hY2yoJVFm

На нем, как минимум в трех местах видео кадры просто скачут, а точнее просто трясутся.

1 место - после 00:00:03
2 место - после опенинга и спонсора
3 место - в начале эндинга

Трясущиеся видео кадры - это явно ненормальное поведение.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

V0lt

Цитата: Aleksoid1978А то что после 00:03:48 происходит такое - спасибо создателям файла, там видео идет на с частотой 29.97 - а со всем другой, намного меньше да еще и прыгает.
Думаю там что-то другое, т.к. на AVI частота кадров всегда постоянна. Возможно связано с тем, что склеили из двух разных файлов.
[merge_posts_bbcode]Добавлено: 2016-02-04 21:42:55[/merge_posts_bbcode]

Цитата: Evgeniy1990Вот еще один пример: https://yadi.sk/i/A5g6hY2yoJVFm

На нем, как минимум в трех местах видео кадры просто скачут, а точнее просто трясутся.
Типичный видеофайл с переменной частотой кадров.
Frame rate mode                : VariableТам частота кадров скачет, то 23,976, то 29,97. Если смотреть на высоких частотах (хотя бы 59 Гц), то дерготню можно даже и не заметить.

Aleksoid1978

Ну как я и говорил - при нормальном источнике все хорошо.

По поводу портянок - это я к тому что не стоит СРАЗУ расписывать кучу текста, можно саму проблему более кратко излагать.
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

Aleksoid1978
Второй файл (mp4) вполне себе нормальный и на EVR, EVR-Custom играет без проблем. Возможно на других настройках будет проблемы, но никто не обещал, что с VFR будет легко. :)

Авишка, конечно странная, но если не смотреть на статистику, то играет на тех же EVR-ах вполне корректно.

Aleksoid1978

Полностью согласен, изображение нормальное,  даже на авишке.
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

По поводу AVI-файла. Я оставил только видео и посмотрел структуру. А там "пустышки" на 7 и 8 байт.

Странно, т.к. в AVI обычно используют дроп-кадры, но софт, которым кодировали эти титры, поступил иначе.
Думаю FFmpeg просто не понял, что с этими пустышками делать и просто игнорировал их (что в принципе правильно для таких псевдоVFR). Если хочется ровного графика на этом файле, то нужно подключить Mpeg4s Decoder DMO.

Evgeniy1990

V0lt

Что-то уж больно много (достаточно) авишек у нас с подобным поведением. И что-то не верится мне, что все они кривые.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

V0lt


Evgeniy1990

Цитата: V0ltОни не кривые, они специфичные.
Да уж, через чур специфичные...

Согласно вашим словам, AVI-видео файлы всегда имеет только постоянную частоту кадров, но когда смотришь на такое, сразу возникают сомнения, по поводу частоты на любых авишках.

Я могу вам привести пример, подтверждающий тот факт, что с AVI явно что-то не так.

Пример следующий: мне дали задание - наложить определенную конкретную аудио дорожку на конкретный видео файл. Оригинал данного видео файла был в формате MP4. Я убрал из него его родную аудио дорожку и переконвертировал его в формат AVI.

В результате, получил AVI-видео файл без аудио дорожки.
Далее, выполнил наложение определенной конкретной аудио дорожки на данный AVI-видео файл.

В результате, получил AVI-видео файл с конкретной аудио дорожкой.

Вопрос: Что не так и в чем тут отличие?

Ответ:

1. Чистый AVI-видео файл, без аудио дорожки, воспроизводится нормально, в его статистике видео-рендерера нормальные показатели.
2. А вот готовый (итоговый) AVI-видео файл, с аудио дорожкой, воспроизводится почти нормально, в его статистике видео-рендерера ненормальные показатели, как будто у меня AVI с переменной частотой кадров.

Скажу сразу, что никакие такие спецификации и настройки форматов в видео конвертере я не менял.
Следовательно, AVI-видео файл на выходе не должен быть "особо специфичным". Он должен быть обыкновенным, как все, с постоянной частотой кадров.

Условие: все строго по умолчанию! Факт!

Несмотря на дефолт, получил совсем не то, что хотел. По крайней мере, так говорит мне статистика видео-рендерера.

P.S. Прилагаю скриншоты: https://yadi.sk/d/NqWPwn8PomVkP

И напоследок скажу вам, что выполнив тоже самое, но только с другими форматами, я получил совершенно нормальные показатели в статистике видео-рендерера.

Исключение составляет только формат AVI - с ним все никак у других. На скриншотах это показано.

Ну и у себя нашел один AVI-видео файл - всем известный давнишний старый видео клип:
https://yadi.sk/d/EG8BgPyromWpx На нем те же симптомы, что и у меня на скриншотах.

Я пришел к такому заключению:

1. Чем выше значение кадров, тем меньше джиттер.
2. Чем меньше значение кадров, тем выше джиттер.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

V0lt

Цитата: Evgeniy1990Ну и у себя нашел один AVI-видео файл - всем известный давнишний старый видео клип:
https://yadi.sk/d/EG8BgPyromWpx На нем те же симптомы, что и у меня на скриншотах.
Это вообще обычный AVI с дроп-кадрами (VirtualDub помечает их буквой D). На нем даже с системным фильтрами (AVI Splitter + Mpeg43 Decoder DMO) будет частота плясать. А все почему? Потому, что пустые кадры пропускаются уже на уровне сплиттера.
[merge_posts_bbcode]Добавлено: 2016-02-13 16:51:43[/merge_posts_bbcode]

В общем Я не увидел никакого бага. Имеем обычные случаи с псевдопеременной (avi) и переменной (mp4) частотой кадров. То что график и джиттер скачет - это нормальное поведение для такого случая.
Тему считаю закрытой.

Evgeniy1990

V0lt, подождите тему закрывать. Вот лишь бы взять и сразу забить и закрыть... Ладно, не обращайте внимание.

Что вы можете сказать по поводу моего AVI_файла с наложенной аудио дорожкой?

Я точно уверен, что там нет никаких дроп-кадров. Дело точно в чем-то другом...
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

V0lt

Цитата: Evgeniy1990Что вы можете сказать по поводу моего AVI_файла с наложенной аудио дорожкой?
Я не понял о каком файле идет речь. Как называется?