www.lr.kr wrote:

Попробуй всё перевести в "don't flush". Не поможет, так хотя бы дропов будет куда меньше в видео(в эксклюзивном режиме).

Ограничить фпс этим не вышло, но вот производительность улучшилась (меньше дропает).

fakel wrote:

Cryptor давно не использую, но насколько помню, уберите галочку здесь и в эксклюзиве, POT будет отображать корректно... 
http://images.vfl.ru/ii/1557865292/bbdf9d5c/26536683_s.png

Нет не помогло.

LordMerlin wrote:

То вы уплавлялку в Маде не выключили))

какую ещё уплавнялку? Если вы про smooth motion, то оно выключено.

MAG79 wrote:
Cryptor wrote:

120 гц монитор, соответственно madvr при просмотре обычного фильма (24 кадров) выдаёт частоту в 120 фпс под частоту монитора

Без SVP? madVR, как и другие отрисовщики отрисовывает столько кадров/сек, сколько ему подали. Если фильм 24 к/сек, то откуда тогда 120 fps берется?

madVR не обычный отрисовщик. Наложите на плеер любой overlay который отображает FPS. (например msi afterburner) и вы увидите что fps у вас с этим рендером под частоту монитора. Если моник 60 герц, то будет 60 fps показывать. Выше человек тут уже всё правильно написал. "костыль".

https://i110.fastpic.ru/thumb/2019/0514/5e/_88b41a2b28d0bff4306160e27151825e.jpeg

dlr5668 wrote:
Cryptor wrote:

Вопрос к знатокам madvr.

Кто нибудь знает как ограничить фпс в madvr? У меня 120 гц монитор, соответственно madvr при просмотре обычного фильма (24 кадров) выдаёт частоту в 120 фпс под частоту монитора. Я конечно могу переключить монитор в 60 герц, но переключать туда сюда не хочется.

профиль в свп фиксированный 60 не спасет ?

SVP никак не влияет на фпс madvr. Да и мне бы хотелось без всяких svp просто понять как ограничить...

Вопрос к знатокам madvr.

Кто нибудь знает как ограничить фпс в madvr? У меня 120 гц монитор, соответственно madvr при просмотре обычного фильма (24 кадров) выдаёт частоту в 120 фпс под частоту монитора. Я конечно могу переключить монитор в 60 герц, но переключать туда сюда не хочется.

nemoW wrote:

Wasily
Извините, у меня не хватит терпения разжевывать вам все.

Cryptor wrote:

У кого нибудь получилось с помощью madVR преобразовать фильм HDR в SDR ? Там ведь есть такая функция, но я не пойму как её использовать...

Конечно. Выбираете в его настройках "convert or process HDR content by using pixel shader math", отключаете ffdshow_raw и конвертация HDR > SDR работает, можно проверить в OSD madVR (Ctrl+J).

Спасибо разобрался.

У кого нибудь получилось с помощью madVR преобразовать фильм HDR в SDR ? Там ведь есть такая функция, но я не пойму как её использовать...

Chainik wrote:

с HDR есть надежда только с mpv
надо пробовать!

перекодирование происходит тоже через mpv, сохраняет ли он при этом мета-данные HDR - никто не знает, тоже надо пробовать
перекодировать в 10 бит можно только через NVENC/HEVC

Не сохраняет! Если перекодировать, то картинка тусклая. Только при воспроизведение корректные цвета и яркость.

10

(30 replies, posted in Эксплуатация SVP)

Сегодня почти все фильмы 4k с HDR. Вопрос, как смотреть HDR на обычном мониторе? Просто в PotPlayer и MPC-HC, hdr фильм выглядит тускло, кадры затемнённые какие то блеклые. А если в mpv открыть такой фильм, то там полный порядок с цветами. В чём секрет mpv и как мне так же сделать в potplayer или MPC-HC ?

p.s. нашёл ответ в другой ветке. Верней понял что никак. Только если в mpv.

Тадам...

А почему в avisynth не робит? Я создаю скрипт для кодирования.
И сразу ругается, что должно быть только в 8 бит. А вот у mvtools последней версии с этим проблем теперь нет.

И не 10, а 16 бит.

Что бы было понятно, в начале ресайза и интерполяции делаем:

ConvertBits(16)
ConvertToYUV444()

А в конце скрипта возвращаем:

ConvertBits(8)
ConvertToYV12()

Далее уже кодек сжимает готовые кадры.

Последняя версия mvtools умеет интерполировать в глубине 16 бит. SVP же пока не умеет... При попытке такое сделать сразу ругается на то что должно быть YV12 (8 бит). Может сделаете возможность работы в более глубой глубине?

>>Странным образом, близкое к квадрату изображение уплавняется более качественно.

Уточните, что имеется ввиду под "более качественно". Плавней становится или меньше артефактов ? Я в данный момент при кодировании видео увеличиваю его по вертикали а после возвращаю к исходным, пока не знаю есть ли в этом действии смысл.

upd: Подтверждаю, смысл есть. (плавней).

Тема хорошая, сюда например можно выложить какие нибудь фильтры для кодирования видео с SVP. Мне например очень не хватает какого нибудь фильтра который бы помог уменьшить видимость белых контуров вокруг быстро движущихся объектов. (людей в основном которые фоном проходят или пробегают).

Блин я пока ещё чайник в таких хитростях. Почти ничего не понял, понял что нужно где то включить что бы кадр увеличивался а потом уже "уплавнялся". К квадрату это всмысле 4:3? В общем можно конкретно с примером где чё писать и включать что бы заработало? Спасибо.

Вопрос. Почему такой ограниченный размер выбора блоков? Работают 8-16-32 если выбрать в override.js, где 24-12 ? Я извиняюсь, может конечно это уже где писалось, но хочу я с экономить время если мне просто кто то скажет как можно выбрать блоки 24х12 если можно.

Kolinee wrote:

Прикупил лицензию ради такого! Спасибо, работает отлично, но http://newstudio.tv/viewtopic.php?t=26403
с этим релизом возникла проблемка, думаю косяк где-то на стадии сведения звука.
1-4 серии нет звука,
5-6 не играет видео и звук, глючит перемотка, застывает на кадре
В логе ошибок не было
В обоих случаях через mkvtoolnix вручную прикрутил аудиодорожку из оригинала и серии стали рабочие

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

p.s. Я уже давно заметил, что автомуксинг может быть кривой и некоторые видео файлы (mkv) потом проблемно воспроизводятся. В чём именно проблема хз, но лучше собирать в ручную с нужными дорожками и проблем не будет.

Вот этот SharpenComplex2. Если бы этот фильтр прикрутить к встроенному конвертеру (вкл/выкл), то мы бы получали ещё более чёткую и детализированную картинку при конвертации.

// SharpenComplex2=ps_2_0
// Code from MPC

/* Sharpen complex v2 (requires ps >= 2) */

sampler s0 : register(s0);
float4 p0 :  register(c0);
float4 p1 :  register(c1);

#define width  (p0[0])
#define height (p0[1])

// pixel "width"
#define px (p1[0])
#define py (p1[1])

/* Parameters */

// for the blur filter
#define mean 0.6
#define dx (mean * px)
#define dy (mean * py)

#define CoefBlur 2
#define CoefOrig (1 + CoefBlur)

// for the sharpen filter
#define SharpenEdge  0.2
#define Sharpen_val0 2
#define Sharpen_val1 ((Sharpen_val0 - 1) / 8.0)

float4 main(float2 tex : TEXCOORD0) : COLOR {
    // get original pixel
    float4 orig = tex2D(s0, tex);

    // compute blurred image (gaussian filter)
    float4 c1 = tex2D(s0, tex + float2(-dx, -dy));
    float4 c2 = tex2D(s0, tex + float2(  0, -dy));
    float4 c3 = tex2D(s0, tex + float2( dx, -dy));
    float4 c4 = tex2D(s0, tex + float2(-dx,   0));
    float4 c5 = tex2D(s0, tex + float2( dx,   0));
    float4 c6 = tex2D(s0, tex + float2(-dx,  dy));
    float4 c7 = tex2D(s0, tex + float2(  0,  dy));
    float4 c8 = tex2D(s0, tex + float2( dx,  dy));

    // gaussian filter
    // [ 1, 2, 1 ]
    // [ 2, 4, 2 ]
    // [ 1, 2, 1 ]
    // to normalize the values, we need to divide by the coeff sum
    // 1 / (1+2+1+2+4+2+1+2+1) = 1 / 16 = 0.0625
    float4 flou = (c1 + c3 + c6 + c8 + 2 * (c2 + c4 + c5 + c7) + 4 * orig) * 0.0625;

    // substract blurred image from original image
    float4 corrected = CoefOrig * orig - CoefBlur * flou;

    // edge detection
    // Get neighbor points
    // [ c1,   c2, c3 ]
    // [ c4, orig, c5 ]
    // [ c6,   c7, c8 ]
    c1 = tex2D(s0, tex + float2(-px, -py));
    c2 = tex2D(s0, tex + float2(  0, -py));
    c3 = tex2D(s0, tex + float2( px, -py));
    c4 = tex2D(s0, tex + float2(-px,   0));
    c5 = tex2D(s0, tex + float2( px,   0));
    c6 = tex2D(s0, tex + float2(-px,  py));
    c7 = tex2D(s0, tex + float2(  0,  py));
    c8 = tex2D(s0, tex + float2( px,  py));

    // using Sobel filter
    // horizontal gradient
    // [ -1, 0, 1 ]
    // [ -2, 0, 2 ]
    // [ -1, 0, 1 ]
    float delta1 = (c3 + 2 * c5 + c8) - (c1 + 2 * c4 + c6);

    // Save some arithmetic operations to ensure PS2 compatibility
    c1 += c3;
    c6 += c8;
    // vertical gradient
    // [ -1, - 2, -1 ]
    // [  0,   0,  0 ]
    // [  1,   2,  1 ]
    float delta2 = (c6 + 2 * c7 /*+ c8*/) - (c1 + 2 * c2 /*+ c3*/);

    // computation
    if (sqrt(mul(delta1, delta1) + mul(delta2, delta2)) > SharpenEdge) {
        // if we have an edge, use sharpen
        //return  float4(1,0,0,0);
        return orig * Sharpen_val0 - (c1 + c2 /*+ c3*/ + c4 + c5 + c6 + c7 /*+ c8*/) * Sharpen_val1;
    } else {
        // else return corrected image
        return corrected;
    }
}

Назрел в общем такой вопрос. Встроенный конвертер использует mpv, а в этом плеере можно использовать какие нибудь фильтры как например в PotPlayer ? В PotPlayer есть чудесный фильтр который делает картинку более детализированной и чёткой: пиксельные шейдеры > sharpencomplex2. С ним и смотрю фильмы, но хочется конвертнуть видео используя этот шарп, и я не знаю как это сделать в mpv. Кто нибудь подскажите можно ли как то? Или может есть для этого плеере аналогичный какой нить плагин шарпен...

Спасибо, получилось! Что бы получить нужные 1920x804 пришлось указать значение 2.385. Теперь конвертер топчик! ) Но правда это не совсем удобно так каждый раз корректировать, желательно бы кнопка автокроп для конвертера было бы идеально, как для проигрывания автокроп. Режит точно, даже не знаю зачем нужна тонкая настройка обрезки ввиде рамки которую можно двигать.

Уважаемые разработчики, добавьте пожалуйста поля для ввода тонкой настройки кропа (обрезки кадра), да так что бы это действовало и на конвертер (svp_code)!

Вот смотрите, есть фильм (remux), нужно конвертировать его с обрезкой полей, правильной обрезкой! При проигрывании автокроп правильно режит поля, конкретно в данном случае получается 1920x804 (0,0,138,138) по вертикали. Но когда данный файл открываешь в svp_code, то эти настройки обрезки кадра не переносятся, и предлагается конвертировать в 1920x1080, без обрезки. А с чёрными полями конвертить не комильфо, артефачит снизу.

Есть кнопки для обрезки которые так же влияют и на конвертер (svp_code), но обрезка тогда может быть не точной, если нажать кнопку 2.40:1, то кадр будет обрезан до 1920x800 (0,0,140,140) по вертикали. И конкретно для этого фильма получается мы обрезаем немножко "полезной части кадра", что тоже не комильфо.

Собственно вопрос, каким макаром можно получить 1920x804 для вашего встроенного конвертера?

p.s. Сделайте кнопку обрезки CUSTOM с возможностью самому указать кроп в цифрах, например 0,0,138,138. Вроде такая мелочь, но очень нужная! Без этого конвертер какой то не полноценный.

Если у кого нибудь получилось открыть avs скрипт в Hybrid, напишите здесь как это сделать. Потому что я так и не смог решить эту проблему.

DS2902 wrote:
Cryptor wrote:

В бесплатной я не нашёл. ))

А у меня и в платной нет этого меню для кодирования. Что за дела?

Такого быть не может! ) Ну либо у тебя версии SVP старая и надо обновиться.

Я пришёл к выводу что такого качества в реал-тайме настройками скрипта не добиться на текущей версии Svp. Автор рипов скорей всего во время кодирования применяет дополнительные фильтры обработки кадров для устранения артефактов.