Встроенный рендерер субтитров (ISR) - проблема с буферизацией сложных субтитров

Автор Evgeniy1990, 28 июня 2021, 23:38:03

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

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

Evgeniy1990

Описание проблемы:

Субтитры со сложной анимацией, например всплывающие блоки, при появлении следующего блока или обычного текста,  всегда на долю секунды, или секунду остается предыдущий блок. Т.е. происходит так называемое "мерцание" предыдущих элементов субтитров, после появления следующих (новых). Также, проблема проявляется независимо от того, встроен файл субтитров в сам контейнер, или же загружается как внешний файл. Если использовать внешние фильтры, такие как XySubFilter или xy-VSFilter, то проблемы (бага) нет.

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

Алгоритм воспроизведения:

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

Фактический результат:

После появления следующего всплывающего блока, можно увидеть на долю секунды, или же секунду остаток предыдущего всплывающего блока.

Ожидаемый результат:

После появления следующего всплывающего блока, не должен отображаться уже пройденный всплывающий блок.

P.S.

Данную проблему можно обойти, установив в настройках отрисовки субтитров число фрагментов в буфере = 0.
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.

Evgeniy1990

Итак, было выяснено, что данная проблема является поломкой, поскольку начала проявляется именно с версии 1.5.6. В более ранних версиях, например в 1.5.5 ее не было. Исходя из этого, были проведены поиски проблемного коммита в SVN на основе некоторых имеющихся SVN-билдов.

Поиск проблемного коммита...

Были проверены следующие SVN-билды в выборочном порядке и в данный момент отсортированы по алфавиту:

1.5.5 5432 - норм
1.5.6 5434 - норм
1.5.6.5435 - норм

1.5.6.5436 - плохо
1.5.6.5438 - плохо
1.5.6.5447 - плохо
1.5.6.5463 - плохо
1.5.6.5531 - плохо
1.5.6.5687 - плохо


Исходя из данных тестов, был найден итоговый диапазон поиска.

Итоговый диапазон поиска: [1.5.6.5435 -> 1.5.6.5436]

5435- нормально
5436 - плохо

Вывод:

Найден проблемный коммит - это SVN r5436! (https://sourceforge.net/p/mpcbe/code/5436/)
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

Исправил ссылку на субтитры (была временная ссылка).
Убрал нравоучения, которые тут не к месту.