MPC MP4/MOV Source - некорректное воспроизведение потоковых видео с VK-видео

Автор Evgeniy1990, 17 декабря 2024, 07:19:27

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

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

Evgeniy1990

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

Заметил, что наш встроенный фильтр-источник "MPC MP4/MOV Source" некорректно воспроизводит потоковые видео с VK-видео. Во время воспроизведения, видео кадры периодически приостанавливаются, как и звук, который также периодически пропадает. Также, во время воспроизведения, присутствуют пропуски кадров.

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

1. Скопировать эту ссылку
2. Открыть ее в плеере
3. Во время воспроизведения, обратить внимание на приостановку кадров, пропадание звука и на пропуски кадров, заглянув в статистику видео-рендерера.

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

При использовании встроенного фильтра-источника "MPC MP4/MOV Source", будут наблюдаться симптомы, описанные выше.

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

При использовании встроенного фильтра-источника "MPC MP4/MOV Source", данных симптомов, описанных выше, быть не должно.

P.S. Если в приоритеты для HTTP установить внешний фильтр-источник "LAV Splitter Source", тогда данная ссылка и ей подобные воспроизводятся нормально и корректно. 

 
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

У меня все отлично, играет стабильно, проверял на 1080 и 720. Звук есть, картинка ровная.
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

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

Обновил yt-dlp 2024.12.13.
Открываю ссылку из сообщения - не работает.
Захожу браузером по ссылке, оттуда копирую более адекватную ссылку на vkvideo, открываю - не работает.

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

MPCfan

Заменил Mozilla/5.0 на Mozilla/5.0 (Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.1 и ссылка заработала.

V0lt

Цитата: MPCfan от 17 декабря 2024, 15:46:44Заменил Mozilla/5.0 на Mozilla/5.0 (Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.1 и ссылка заработала.
Подтверждаю.
У меня заработало и воспроизводится ровно.

MPCfan

Уделив больше времени этому ролику, действительно со встроенными фильтрами при просмотре есть рывки, которые могут проявиться не сразу. C Lav рывков нет. Возможная причина в неточном определении fps, у встройки fps=49,974, тогда, как у Lav=50 fps.

Evgeniy1990

MPCfan
Цитата: MPCfan от 17 декабря 2024, 19:26:32Уделив больше времени этому ролику, действительно со встроенными фильтрами при просмотре есть рывки, которые могут проявиться не сразу. C Lav рывков нет. Возможная причина в неточном определении fps, у встройки fps=49,974, тогда, как у Lav=50 fps.
В том-то и дело, что есть рывки, да и не только они. Видео кадры, в любой произвольный момент, могут просто встать на месте, до самого конца воспроизведения. Также, при попытке перемотать поток, или нажать на какую-либо кнопку основного окна, плеер периодически подвисает с чередованием в интервал примерно 1-3 секунды. По поводу частоты кадров - согласен, она совершенно некорректная, должно быть ровно 50 FPS, а у нас только 49.974 FPS. Ведь если мы переключим видео поток на простой URL = 720p, то там частота строго 50 FPS.

Вывод такой: встроенный фильтр-источник "MPC MP4/MOV Source" некорректно определяет частоту кадров исключительно для DASH-видео, при их открытии именно с VK-видео.

17 декабря 2024, 21:22:20
MPCfan
Тут очевидно, что повлияли последние изменения, связанные с "MPC MP4/MOV Source" в плане воспроизведения DASH-видео.

Что странно и интересно - с DASH-видео, которые на YouTube, работают нормально, там всегда правильная частота кадров, а вот с DASH-видео, которые с VK-видео - вообще "рандом" какой-то творится с частотой кадров.
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

Скачал 1080 dash - https://disk.yandex.ru/i/sa_YIbxcCjVDqg и поизучал - ну на самом деле файл "кривой".
У него в первом сегменте первый же сэмпл большей длительности, из-за чего общая длительность больше "чем надо" и при расчете fps получаем не ровно 50, а 49.974
Что делать с этим - да ничего. Можно конечно переделать чтобы fps их видео-потока был в приоритете - но это тоже неверно, как минимум для VFR файлов.
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 от 18 декабря 2024, 03:30:02У него в первом сегменте первый же сэмпл большей длительности
А там есть "индекс" для первого сегмента?

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 от 24 декабря 2024, 01:50:37Не понял вопроса ?
В сегментах есть что-то типа индекса? Сколько кадров в сегменте, начальное и конечное время можно узнать?

Aleksoid1978

ffmpeg так же рапортует что fps там НЕ 50:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'vk_Место происшествия.mp4':
  Metadata:
    major_brand     : iso5
    minor_version   : 1
    compatible_brands: avc1iso5dsmsmsixdash
    encoder         : Lavf58.76.100
  Duration: 00:10:41.04, start: 0.040000, bitrate: 5410 kb/s
  Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 4673 kb/s, 49.87 fps, 50 tbr, 90k tbn (default)
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