Topic: Чересстрочное видео и SVP - это возможно!

Сегодня смог-таки посмотреть чересстрочное видео с качественным аппаратным VA-деинтерлейсом в полном FullHD разрешении, с повышением плавности до 60 fps и все это на лету.

http://www.svp-team.com/forum/misc.php?item=817

Картинка, доказывающая, что я это сделал! cool
Загрузка процессора 50%. Включено повышение резкости пиксельными шейдерами sharpen complex 2. Плеер MPC-HC, сплиттер MPC - Mpeg Source (Gabest), отрисовщик EVR Sync, SVP 3.0.5.
процессор: Core i7 920, видео: GeForce GTX 260.

Смотрел видео из раздачи Острова с высоты птичьего полета [HDTVRip 1080i]

Как все происходит.
1. В декодере LAV CUVID производится аппаратное декодирование потока 1920x1080 25 fsp и тут же аппаратный деинтерлейс до 1920x1080 50 fps.

Замерял загрузку ЦП: 4%
wink
2. При подключенном ffdShow на его входе уже 50 fps. Честных 50 прогрессивных кадров в сек.
3. При загрузке пакета SVP и повышении плавности до частоты монитора подбирается коэффициент повышения частоты кадров 6:5. Частота кадров 50 fps превращается в 60 fps.

При таких близких частотах артефактов вообще незаметно. И это не смотря на то, что все подавления артефактов выключены. Настройки см. на скриншоте.

Ограничения.
1. Увы. Аппаратное декодирование и деинтерлейс возможны только на nVidia-карточке.
2. Загрузку ЦП 50% показал Core i7 920. Процессоры слабее могут не потянуть: повышение плавности для видео 1920x1080 @ 50 - это достаточно ресурсоемкая задача.

Желающим получить плавность на процессорах "меньшей мощности", как вариант, можно предложить включить на мониторе режим 50 ГЦ (мой монитор, например, поддерживает. Добавлял этот режим вручную через NVIDIA Control panel). Тогда SVP можно будет исключить из цепочки, а аппаратный декодер и VA-деинтерлейс использовать тот, что доступен для вашей видеокарты.

Post's attachments

Deint&SVP_big.jpg 628.91 kb, 341 downloads since 2011-12-09 

Deint&SVP_small.jpg, 47.45 kb, 480 x 300
Deint&SVP_small.jpg 47.45 kb, 1008 downloads since 2011-12-09 

2 (edited by YlangYlang 09-12-2011 17:59:08)

Re: Чересстрочное видео и SVP - это возможно!

Спасибо за информацию!
А в MadVR последней версии в качестве рендера не пробовали включать встроенный деинтерлейс? Я включил, почему-то вполовину потерял разрешение вывода, времени не было разбираться - бросил.  sad

Post's attachments

deint.png, 15.49 kb, 518 x 128
deint.png 15.49 kb, 896 downloads since 2011-12-09 

Re: Чересстрочное видео и SVP - это возможно!

YlangYlang
Пробовали, там софтовый деинтерлейс, это не интересно.

4 (edited by Noweol 10-12-2011 06:07:44)

Re: Чересстрочное видео и SVP - это возможно!

YlangYlang
А в MadVR последней версии в качестве рендера не пробовали включать встроенный деинтерлейс?
MadVR - это рендер. Так что деинтерлейсом (даже аппаратным) он займётся уже после уплавнения, когда будет уже слишком поздно

Re: Чересстрочное видео и SVP - это возможно!

YlangYlang
Особенность описанного подхода с деинтерлейсом в декодере отличается от всех других методов деинтерлейса в отрисовщике тем, что выполняется до ffdShow и на вход SVP попадают прогрессивные кадры. С чересстрочными кадрами SVP работать не умеет и его применение к ним не имеет смысла.

повторил фразу Noweol, но своими словами big_smile

Re: Чересстрочное видео и SVP - это возможно!

Спасибо, это многое объяснило!

Re: Чересстрочное видео и SVP - это возможно!

Продолжаю тему.

Не все nVidia-видеокарты одинаково полезны. Попробовал настроить аппаратный деинтерлейс с SVP-повышением плавности на моем рабочем компьютере (i5 2300 + Quadro 600). Компьютер может отдельно аппаратно декодировать и деинтерлейсить видеокартой Quadro, так же он может отдельно повышать плавность до 60 кадров/сек. Но вместе он эти действия выполнить не может. Узкая шина данных. Эта шина не позволяет забрать 50 FullHD кадров/сек с видеокарты в оперативную память (декодер), а затем закинуть обратно на видеокарту эти 50 к/сек для интерполяции новых 50 к/сек (SVP OpenCL), отдать их в оперативку, а затем вывести собранные вместе интерполированные и часть исходных кадров (в сумме 60 к/сек) из оперативки снова через видеокарту (отрисовщик).
Если отключить OpenCL, то шины все-равно нехватает. sad
Может я что-то не учел, но упирается точно не в производительность процессора.

Не все i5 умеют QuickSync. Не смотря на то, что в процессоре есть графическое ядро и поддержка QuickSync, а также не смотря на то, что чипсет у материнки Z68, который тоже поддерживает это графическое ядро, но материнская плата Z68A-D3-B3 не позволяет его использовать. hmm
Это грабли №1. Была надежда разгрузить декодер видеокрты и тем самым освободить ее шину передачи данных, возложив функции декодирования на QuickSync. Облом.
А тут еще и грабли №2. QuickSync умеет делать деинтерлейс, но никто еще не видел как он это делает. big_smile Текущая реализация QuickSync-декодера внутри ffdShow до сих пор занимается только тем, что ставит флаг чересстрочности видеопотоку, а непосредственно деинтерлейсом занимается отрисовщик. Полноценный деинтерлейс внутри декодера нам обещают в версии 0.20. Т.е. опять облом.

Re: Чересстрочное видео и SVP - это возможно!

Bluegem wrote:

Это естественно, отрубается dxva и аппаратный деинтерлейсинг вмести с ним. Лечится это использованием CUDA декодера для владельцев карт nvidia, или задействованием аппаратного dxva деинтерлейсинга в самом madVR для владельцев карт ATI.

На данный момент аппаратный dxva деинтерлейс в madVR еще сыроват, поэтому пока этот рендер имеет смысл использовать все же для прогрессивного видео, особенно в случае, если разрешение этого видео отличается от разрешения экрана, причем не важно идет ли речь о sd или hd. По крайней мере, так на АТИ. Что касается nvidia, то тут деинтерлейсом занимается сам декодер, и это работает не зависимо от рендера.

Источник 1, 2.
Что-то я не пойму, у MadVR  на nVidia софтовый, а на ATI железный деинтерлейс? hmm

Re: Чересстрочное видео и SVP - это возможно!

sergioleon
Для SVP это неважно. Плохо то, что этот деинтерлейс выполняется в отрисовщике, а не перед ffdShow.

Re: Чересстрочное видео и SVP - это возможно!

MAG79
Тут закралась одна подозритальная мысль ....как убить двух зайцев - поиметь и деинтерлейс и плавность :
1 Имеем на входе два интерлейсных кадра ...Другими словами два разных кадра с уменьшенным вдвое вертикальным разрешением .
2 Доводим это разрешение ресайзом до полного .
Пример для pel=2: LanczosResize(width*2,height*2,src_left=0.25, src_top=0.25)
Т.е. оригинальные пикселы остаются на своих местах
3 Считаем нужное кол-во кадров , но со сдвигом - дабы не попасть в оригинальные .
Другими словами - считаем все кадры .

Конечно нагрузка от поиска векторов будет аховая , но и сам вектор будет короче - можно убавить кол-во уровней в пирамиде ...да мало ли ещё чего можно твикнуть  wink

Как-то так  smile

Re: Чересстрочное видео и SVP - это возможно!

Что-то LAV CUVID у меня в хард режиме не запустился  hmm
Что делаю не так ? В софт режиме работает ...CUVID нот авиабле пишет ...Видеокарта айти 5750 - вин7-64 ...

12 (edited by vivan 04-01-2012 12:52:00)

Re: Чересстрочное видео и SVP - это возможно!

А как CUVID (CUDA Video Decoding API) должен на атишке работать? о_О

Re: Чересстрочное видео и SVP - это возможно!

vivan
должен на атишке работать?
Ну (про кудой я как-то упустил  roll  ) ...жаль . Придётся пользоваться Пот плеером .

14 (edited by Cheburashka_bariton 27-11-2012 04:26:39)

Re: Чересстрочное видео и SVP - это возможно!

мой фотоаппарат снимает 1080i50. Есть какой нибудь путь уплавнить до 60p? Например перегнать в редакторе в 50p uncompress а потом воспользоваться svp? Может есть путь короче?

Re: Чересстрочное видео и SVP - это возможно!

Cheburashka_bariton
Есть какой нибудь путь уплавнить до 60p?
Да, описан выше.

перегнать в редакторе в 50p uncompress а потом воспользоваться svp?
Да, можно.

Может есть путь короче?
Чем не устраивает предложенный выше вариант?
Я думаю, это самый короткий: аппаратный деинтерлейс и повышение плавности в один проход. Нужна NVIDIA-видеокарта.

Re: Чересстрочное видео и SVP - это возможно!

Мой вопрос не связан с уплавлением на лету smile Я имею ввиду пересчет. Кстати ещё интересует вариант, 50i деинтерлейс до 25 в полном разрешении(как фотограф считаю интерполяцию Г) и возможно ли уплавнить до 29,94???  Ну тоесть 25p превратить в 29.94 средствами svp.

Re: Чересстрочное видео и SVP - это возможно!

Cheburashka_bariton
Мой вопрос не связан с уплавлением на лету  Я имею ввиду пересчет
Пересчет ничем принципиально не отличается от воспроизведения. Весь конвеер обработок видео вместо вывода на экран пишем в файл, сжимая нужным кодеком.

50i деинтерлейс до 25 в полном разрешении(как фотограф считаю интерполяцию Г)
А я как знающий внутренностей чересстрочки могу с уверенностью заявить, что правильный деинтерлейс - это только в 50p. Если делать в 25p, то это выкидывание половины ценной информации о движении.

возможно ли ... 25p превратить в 29.94 средствами svp.
Да. Возможно.

Re: Чересстрочное видео и SVP - это возможно!

Но ведь тогда мы теряем детализацию! И фактическое разрешение становится в 2 раза меньше. Как корректно пересчитать 50i в 50p с интерполяцией? Не могу придумать алгоритм...

Re: Чересстрочное видео и SVP - это возможно!

Ничего не теряется. Рекомендую почитать про алгоритмы деинтерлейса с компенсацией движений (MC, MA), а также о вектор-адаптивных (VA) алгоритмах. Видеокарты умеют делать VA-деинтерлейс. На выходе 50 полноразмерных кадров в секунду. Вертикальное разрешение - от прогрессива почти не отличишь.

http://www.svp-team.com/forum/misc.php?item=2002

Post's attachments

SD_576i.jpg, 62.47 kb, 600 x 444
SD_576i.jpg 62.47 kb, 835 downloads since 2012-11-27 

Re: Чересстрочное видео и SVP - это возможно!

Есть программный аналог, очень близкий по качеству к VA-алгоритмам: плагин TGMC.
Эти же картинки для сравнения.

21 (edited by Cheburashka_bariton 27-11-2012 07:42:33)

Re: Чересстрочное видео и SVP - это возможно!

Вам возможно трудно меня понять, но я читаю некоторые ваши сообщения и недоумеваю как это можно сделать smile Возможно ли использовать аппаратную часть. Если нет, Как использовать софтовый заменитель smile Я же новичок, тема для меня новая и очень интересная. Меня интересует как мне сидя дома за компом переделать мои 50i в 50p
Какой нужен инструмент Vegas? MeGui? Какая должна быть последовательность действий?

Re: Чересстрочное видео и SVP - это возможно!

Если рассматривать только 50i в 50p на системе без NVIDIA CUDA и без заморочек со скриптами, то можно использовать XviD4PSP 5. Там открыть файл, выбрать фильтрацию TGMC, сохранить файл.

23 (edited by Cheburashka_bariton 27-11-2012 08:27:29)

Re: Чересстрочное видео и SVP - это возможно!

Хороший вариант smile Там есть возможность сохранить uncompress?
Вообще меня ещё интересует финальный пересчет в 60p. При помощи SVP.
Скачал, посмотрел, нет такого режима фильтрации...Ещё он ругнулся что у меня профиля какого-то нет.

Re: Чересстрочное видео и SVP - это возможно!

Ещё такой вопрос, я спокойно загружаю, в MPC HC файл 50i создаю профиль, он думает что это 1080p25. Потом сохраняю уплавленное видео в megui по средствам скрипта в 1080p60.
Внимание вопрос ))) На каком этапе был выполнен деинтерлейсинг? Это видюха? Или в скрипт что-то записывается по этому поводу? В настройках драйвера видео-карты стоит галка автоматически убирать чересстрочную развертку...
Видео вроде нормальное, никакой гребенки нет.

Re: Чересстрочное видео и SVP - это возможно!

Пожалуйста кто-нибудь поподробнее напишите как воспользоваться вышеобозначенным скриптом? sad