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

У меня есть сомнения насчет необходимости такой сегментации. Причина простая. В любом случае на финальной стадии обработки (или раньше) Вам придется приводить все сегменты видео к одной частоте кадров и сохранять в единый файл (такой стандарт, чтобы видео играло на большинстве плееров). А еще стандартных частот не так уж и много: 24, 25, 30 и 60 fps. Так что в 99% случаев Вы будете преобразовывать VFR к одной из этих частот.

1,277

(8 replies, posted in Using SVP)

josephilip
Ok. Lets try to know what filters are used in your case (AVI-file with WMV-video).
Open your file in MPC-HC - menu Play - Filters - Copy filters list to clipboard - Paste that list here.
It must be like this:

Filters currently loaded:
  - Default DirectSound Device
  - Enhanced Video Renderer (custom presenter)
  - Audio Switcher
  - ffdshow raw video filter
  - LAV Audio Decoder (internal)
  - LAV Video Decoder (internal)
  - LAV Splitter Source (internal)

1,278

(8 replies, posted in Using SVP)

Looks like MPC-HC uses Microsoft DMO decoder to decode your WMV. It is not compatible to ffdShow and to SVP.
So, you need to switch to internal decoder LAV in MPC-HC.
MPC-HC - menu View - Options... - Internal Filters - enable WMV 1/2/3 - OK

1,279

(138 replies, posted in Using SVP)

Haste

SVSmoothFps: unable to init GPU-based renderer - code 255

Reinstall graphic drivers. Use DDU to completely uninstall previous corrupted drivers first.

1,280

(3 replies, posted in Using SVP)

Your video has variable frame rate (VFR) or fake VFR.

playing at 60.4408 [23.81 *33/13]
playing at 59.6 [23.84 *5/2]
...

Use constant multiplier x2,5 to get flawless playback without switching between different multipliers.

tracker35
Спасибо за предложение пособирать еще VFR записей. Мне пока для экспериментов достаточно. Но буду иметь в виду wink

Насчет замен большого количества дропов подряд (20 и более) подумаю как это универсально реализовать в скрипте. До сих пор (GameDropFix_v5) заменялись только 3 подряд идущих дропа. Все что больше - оставалось без изменений.

использование directshowsource, directshowsource2, и прочих инпутов напрямую с контейнером, иногда может дропать кадры на проблемных VFR

Я использовал DirectShowSource и DSS2 для файлов NMS и 3DMark. Длительность совпала до кадра.
И да, оба открывают видео с заполнением кадрами-дублями мест, где в VFR раполагаются кадры увеличенной продолжительности.
Для такого видео с кадрами-дублями GameDropFix использовать можно, другое дело, что в данном случае будет производиться поиск кадров дублей по внутрикадровым движениям вместо использования имеющегося файла тайм-кодов.

есть пожелания на шестую версию - прикрутить использование файла таймкодов

Это прикрутить можно, на досуге поэкспериментирую.

Спасибо за ссылку на VFRtoCFR. С первого раза не уяснил из описания, чем этот плагин может мне помочь, учитывая, что текущие версии DSS и DSS2 сами достойно преобразуют VFR в CFR, но в моих следующих экспериментых все же покручу этот плагин, познакомлюсь с ним на практике.

Видео по ссылкам оказалось не совсем с плавающей частотой кадров. Их можно приравнять к видео с постоянной частотой кадров, но с дропами в 1 или 2 кадра.

Проверял утилитой mp4dump. Эта утилита возвращает интервалы с определенной частотой кадров. Показывает межкадровые интервалы (sampleDelta):

entryCount = 371 (0x00000173)
        sampleCount = 1 (0x00000001)
        sampleDelta = 999 (0x000003e7)
        sampleCount[1] = 36 (0x00000024)
        sampleDelta[1] = 1000 (0x000003e8)
        sampleCount[2] = 1 (0x00000001)
        sampleDelta[2] = 2000 (0x000007d0)
        sampleCount[3] = 29 (0x0000001d)
        sampleDelta[3] = 1000 (0x000003e8)
        sampleCount[4] = 1 (0x00000001)
        sampleDelta[4] = 2000 (0x000007d0)
        sampleCount[5] = 25 (0x00000019)
        sampleDelta[5] = 1000 (0x000003e8)

Видно, что значения sampleDelta кратны 1000. 999 - редкое исключение, близкое к 1000. Можно пренебречь.

Конкретно по каждому ролику. Посчитал статистику при помощи excel. Получил такие межкадровые интервалы.

NMS.mp4

1000 - 1187 интервалов
2000 - 1174 интервала
3000 - 19 интервалов
4000 - 5 интервалов
999 - 2 интервала
5000 - 2 интервала
1001 - 1 интервал
3999 - 1 интервал
6000 - 1 интервал
9001 - 1 интервал
22000 - 1 интервал

3DMarkICFWorkload 2016-08-19 05-03-13-297.mp4

1000 - 185 интервалов
2000 - 184 интервала
3000 - 1 интервал
999 - 1 интервал

3DMarkICFWorkload 2016-08-19 05-03-57-801.mp4

1000 - 320 интервалрв
2000 - 319 интервалов
999 - 1 интервал

3DMarkSkyDiver 2016-08-19 05-05-41-325.mp4

1000 - 288 интервалов
2000 - 284 интервала
3000 - 2 интервала
999 - 1 интервал
35000 - 1 интервал

3DMarkSkyDiver 2016-08-19 05-06-30-212.mp4

1000 - 196 интервалов
2000 - 195 интервалов
999 - 1 интервал

3DMarkSkyDiver 2016-08-19 05-15-10-113.mp4

2000 - 663 интервала
1000 - 426 интервалов
3000 - 251 интервал
4000 - 2 интервала
999 - 1 интервал

Можно и эти файлы уплавнить, но это будет всего лишь разновидность устранения дропов.

tracker35
Разговр в начале темы был ведь про другое видео? Или именно про такое?

led9
Мы благодарны за пожертвования на развитие SVP3. Все пожелания учитываются, но не все реализовываются, и производится это последовательно.
Непосредственно по установщику - в SVP4 используется новый движок установки, который не так то просто модифицировать. Из-за более важных работ над SVP4 изменяемая ширина установщика пока не была реализована.

ReClock. Hmmm. It is interesting. Thank you for information.

What said MediaInfo about your 20 min clip?
We need it to fix the issue with wrong clip length detection

Картинки графиков посмотрел. Да. Я как раз про это и говорил. Что желательно видео не синтетическое, а приближенное к задаче: сделать плавным игровое видео, записанное с переменной частотой кадров (VFR).
Может есть кусок такого видео, чтобы именно с ним тренироваться?

1,288

(10 replies, posted in Using SVP)

Start from changing video renderer to EVR Custom with D3D Fullsreen option enabled:
MPC-HC - menu View - Options - Output

Насчет стерео-режима NVIDIA и отрисовщика madVR. Я тоже наблюдал ошибки на Windows 8 при включении Exclusive mode, но это был не синий экран, а ошибка включения madVR с красным OSD-текстом на черном кадре о невозможности активировать режим.

Спасибо за наблюдение. Буду иметь в виду, что есть такая проблема со стерео-режимом и madVR на Windows 10.

Пока это единственное обращение насчет BSOD, не считая это обращение.
У меня сборка 1511. BSOD-ов нет.

Какая информация указана в BSOD?
Смотреть в логах винды.

1,291

(10 replies, posted in Using SVP)

You can also enable Tearing Test line and look at its movements. If must moves smooth without jumps at any places of video.
Jumps of Tearing Test line means you don't see ALL FRAMES produced by SVP. In that case you need to change/customize your renderer/graphics driver first as Chainik said. If it is your case then we will need to know your renderer (madVR or another) and your graphic card with driver version. You can send us bug report. We can read this info from logs attached to it.

tracker35
vfr созданный вручную не совсем подходит, т.к. это неестественное видео. Даже с восстановлеными кадрами не получится добиться плавности и равномерности видео. Ведь в этом цель?
А вот с захватом rtmp потока поколдую. Общая задумка - подать на вход видео с дублированием кадров для соответствия времени (2-ой способ). Вот как раз эти дубли и станут исходником для замены их промежуточными кадрами. Надо будет только подготовить правильный файл с временными метками для замены.

взять файл таймкодов, взятый из mkvextract, и оперируя им добавлять необходимое кол-во кадров в временные промежутки

Решения из коробки пока "нет, такой возможности на данный момент нет" smile

Но конкретно для Ваших файлов можно написать Avisynth-скрипт. Он будет использовать библиотеки SVP и получать видео с добавленными кадрами. Можете дать ссылку на любой короткий видео-фрагмент. 20-30 сек будет вполне достаточно.

OldSchool80s wrote:

Галочка на месте

Разговор про эту настройку:
SVP меню в трее - Настройка - Показывать сообщения в OSD?

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

tracker35
Какой характер именно Ваших файлов с переменной частотой кадров?
Если это запись видеоигры, то должна быть опорная частота кадров, например 30 к/сек. Тогда такую запись вполне можно рассматривать как запись с постоянной частотой кадров и дропами.
Можете привести здесь пример таймкодов любого Вашего VFR-файла?

1,297

(2 replies, posted in Using SVP)

Just disable outer lighting: SVP tray menu - Outer lighting - Disabled

Ни чего что у меня отключен фильтр AviSyntch ?

Это нормально. SVP использует Avisynth внутри ffdShow. А эта вкладка - альтернатива от PotPlayer'а. Не используется пакетом SVP.

Скриншоты настроек субтитров посмотрел. Вспоминаю, что проблемы с памятью были на анимированных субтитрах. И на стороннем рендерере субтитров. Так что, видимо, не Ваш случай.
Для справки вот то обсуждение: High memory usage with dynamic subtitles, виновником оказался фильтр xy-VSFilter.

1,299

(21 replies, posted in Using SVP)

Did you read this wiki article: Watching anime?

Katz
Какие настройки оптимальны?