1 (edited by panni 03-10-2013 04:23:53)

Topic: Upscaling doesn't seem to kick in?

Looking at the current generate.js and the generate.XXX file it produces, aswell as ffdshow.avs this code block seems to never kick in when having ExDwnResize set to MON or something else than 0 for example:

//resize input
resizeString="";
if(    valueProfile("ExDwnResize")!==0 &&
    (mediaInfo.main.cbhwidth != mediaInfo.main.reswidth ||
    mediaInfo.main.cbhheight != mediaInfo.main.resheight))
{
    //downsize
    if(    mediaInfo.main.reswidth>mediaInfo.main.cbhwidth ||
        mediaInfo.main.resheight>mediaInfo.main.cbhheight)
        resizeString="BicubicResize("+mediaInfo.main.reswidth+", "+mediaInfo.main.resheight+", b=0, c=0.75)";
    else //upsize
        resizeString="LanczosResize("+mediaInfo.main.reswidth+","+mediaInfo.main.resheight+")";
}
avs.WriteLine('global resize_string="'+resizeString+'"');

As mediaInfo.main.cbhwidth/height always seems to be the exact same of mediaInfo.main.reswidth/height.


Is this a bug? I was trying to play around with the resizing filters, to name some of them sinc, lanczos, bilinear. After some research none of them were used when playing a file which was meant to be upscaled.

Is there another method to enable upscaling and its filters?


Thanks in advance!

Re: Upscaling doesn't seem to kick in?

panni
Did you try madVR renderer with its detailed setting of scaling algorithms?

madVR - edit madVR settings... - scaling algorithms >
- chroma upscaling
- image upscaling
- image downscaling

--
Resize in SVP is for downscale purposes only. Not for upscale.

3 (edited by panni 03-10-2013 05:04:19)

Re: Upscaling doesn't seem to kick in?

Nope, I'm using XBMC DSPlayer build with FFDShow RAW to pass it to SVP and I don't think MadVR is supported in the DSPlayer filter chain. I tried using the resizing options of FFDShow but that results in very weird behaviour. It seems that when having SVP enabled the every frame gets resized twice with about 2 frames per second which results in a very choppy picture. I've posted the same at http://forum.xbmc.org/showthread.php?ti … mp;page=38.

When I turn off, back on, then SVP off again, I can enable FFDShow resizing features without problems (but without smoothing either).

Re: Upscaling doesn't seem to kick in?

panni
You can try undocumented feature. Upscale inside SVP script.
You need to do for this:
1. SVP - Information - Hidden settings - change value AllowUpsize=1 - save and close.
2. Go to SVP folder - open file ProfileCfgAll\MVAll in notepad - add your favourite value one to one line after ExDwnResize line:

-150;150% of original size
-200;200% of original size

3. Reopen profile settings window in SVP and you will see new values in Decrease frame size option.

Re: Upscaling doesn't seem to kick in?

Thanks for  the advice! This still limits me in terms of which filter is being used, doesn't it? Do you perhaps know why there are problems with XBMC DSPlayer in conjunction with FFDShow RAW, SVP and resizing?

Re: Upscaling doesn't seem to kick in?

I see some problems with resizing in ffdShow inside MPC-HC. But not such as you described.
It is wrong SVP profile detected while ffdShow resize is enabled. But resize works fine.

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

Post's attachments

ffdShow_Resize_problem.gif 271.62 kb, 146 downloads since 2013-10-03 

Re: Upscaling doesn't seem to kick in?

panni
which filter is being used
You can select any resize fuction as you wish from available: http://avisynth.nl/index.php/Resize
Just open generate.js, find these lines and change there LanczosResize to your favorite function:

    else //upsize
        resizeString="LanczosResize("+mediaInfo.main.reswidth+","+mediaInfo.main.resheight+")";

Re: Upscaling doesn't seem to kick in?

That's somewhat different from what I experience with XBMC DSPlayer+SVP+FFDShow RAW.
When playing a video with the resizing of FFDShow RAW on, I see one frame per 3 seconds and the SVP icon constantly shows the paused state. After about 30 seconds the player crashes and SVP tells me about a memory leak.

Re: Upscaling doesn't seem to kick in?

panni
Does XBMC DSPlayer support dynamic frame resolution changes?
If you change resize in ffdShow without SVP does it work correctly?

Re: Upscaling doesn't seem to kick in?

Yes it does work with SVP disabled and FFDShow RAW + resizing and with changing resolutions.

Re: Upscaling doesn't seem to kick in?

panni
When playing a video with the resizing of FFDShow RAW on, I see one frame per 3 seconds and the SVP icon constantly shows the paused state. After about 30 seconds the player crashes and SVP tells me about a memory leak.
It looks like very hard settings for such video. You need to lower profile settings values.
1. Can you show your additional information: SVP tray menu - Information - Additional information? Do it just after player crush.
2. What configuration of PC are you using? I can't find your results in SVPmark online database and no information about it in your profile.

12 (edited by panni 04-10-2013 16:18:12)

Re: Upscaling doesn't seem to kick in?

I've just posted my current SVPMark result,

Edit:

Additional information:

Last processed file parameters:
Filename: xxxxxxxxxxxxx.avi
Frame size and frame rate: 624x352 pixels, 25 fps

Detected screen parameters
Screen size and refresh rate: 1920x1080 pixels, 60.005 Hz

Video smoothing info
Smooth factor: 12:5
Resulting video frame rate: 60 fps
Ïîñëå ñìåøèâàíèÿ êàäðîâ: 60.005 fps

Selected profile: 720x576@25

Profile settings of video processing
[ExMethod=MSmoothFps_3]        Frames interpolation mode: Adaptive (default)
[ExAlgo=23]            SVP shader: 23. Complicated
[ExMulti=MON]            Target frame rate: To screen refresh rate (default)
[ExBlockSize=8x8:2]        Motion vectors grid: 6 px. Small 2
[ExRecalc=65000:4]        Decrease grid step: To smallest step 3-4 px.
[TypeDist=Exh:-10:SATD]        Search radius: Average (default)
[ExPel=2]            Motion vectors precision: Half pixel (default)
[Badsad=2000:-24]        Wide search: Strongest
[ExSadml=100]            Artifacts masking: Average
[ExBlend=false]            Processing of scene changes: Repeat frame (default)
[ExDwnResize=MON]        Decrease frame size: To screen size
[ExConvertFps=true]        Blend frames to screen refresh rate:true

Settings by menu
[svp_libflowgpu=1]        GPU-acceleration (OpenCL): true
[ExThreads=0]            Processing threads: Auto
[StereoMode=0]            Stereo mode (3D): Plain 2D
[HandCrop=None]            Frame crop: Disabled
[Borderlight=None]        Outer lighting: Disabled
[EnableHWBorderlight=0]        Use SVPlight: false
[HWBorderlightSettings=0]    SVPlight settings...: false
[VDelay=0]            Video delay: 0 ms
[ExDemo=0]            Demonstration mode: false
[ExTearingTest=0]        Tearing test: false
[EFrameDoubling=0]        Variable frame rate repair: false
[StopSmoothDelayOnRewind=1]    Turn off on seek: Turn off by 1 sec

Error log:

18:05:30.772; ===== Detected playback with ffdShow. AppName: XBMC.exe PID: 3576
18:05:30.774; GetDimensionAndFPS_fromOSD start. Duration: 123 ms
18:05:30.897; GetDimensionAndFPS_fromOSD result: 624x352 25 1/1
18:05:30.898; T1T: begin
18:05:30.899; T1T: GetAllMediaParams
18:05:30.900; ### CorrectStereoModeByAppAndFilename: xxxxxxxxxxxxxxxxxxxxx.avi
18:05:30.900; T1T: SettingsPrepare
18:05:30.903; T1T: Preparing smooth playback...
18:05:30.905; T1T: WriteAllMediaParamsToIni
18:05:30.905; SVPMgr: main "C:\ProgramData\SVP 3.1\" 624 352 25 624 352 12 5. Duration: 161 ms
18:05:31.066; ===== Playback
25 * (12 : 5) = 60 fps -(CF)-> 60.005 fps
18:05:31.066; SetPriorityPlayer: 2. Duration: 1296 ms
18:05:32.362; this is changing FalseVFR_Dwn. ffdShow-framerate: 17.619
18:05:33.296; this is changing FalseVFR_Up. ffdShow-framerate: 18.526
18:05:34.232; this is changing FalseVFR_Up. ffdShow-framerate: 23.726
18:05:35.168; this is changing FalseVFR_Up. ffdShow-framerate: 24.879
18:05:36.104; this is changing FalseVFR_Up. ffdShow-framerate: 25
18:05:36.104; express clear interval
18:05:36.105; stabilized ffdShow-framerate: 25 fps. SVP Index:1.09/1.13
18:05:42.751; Error: Warning: there's a memory leak in the video player: 1226 MB
To prevent the closing of the player due to lack of memory a script restarted improve smoothness.. Duration: 1910 ms
18:05:44.661; at start:0 at end:1229 growth:1276 MB/sec. Duration: 8025 ms
18:05:52.686; RefreshSVP
18:05:52.689; ===== Waiting for ffdshow video

Lowering the SVP settings doesn't do much. Normally I can watch anything with full SVP and complicated filter.

13 (edited by panni 05-10-2013 03:36:05)

Re: Upscaling doesn't seem to kick in?

OK trying that out using only SVP and the resizing features you gave me to try out, the screen size of 1080p with the SVP settings I used doesn't play well with my setup. Still the behaviour (and the crashing) of DSPlayer with FFDShow RAW and resizing is completely different from the slowdown experienced with SVP upscaling to 1080p.

Is it possible to add the resizing after the SVP shader kicks in? Would it make any sense? I don't need the smoothness on 1080p, I'd rather use SVP on the original resolution and then resize the resulting frames afterwards with lanczos or something equivalent.

I may have gotten something wrong here. Is resizing after the smooth operation really that consuming? I mean sure, it's logical that the performance impact of the smoothing operation of SVP is extraordinarily higher when using a multiple of the original resolution. But that shouldn't be the case if I'd be resizing the frame after that, or am I wrong?


Edit:
OK, I may be totally mistaken here. When resizing to 720p using FFDShow RAW nothing crashes. I guess I just confirmed my guesses from above. The 1080p upscale was just too much for my system.

Re: Upscaling doesn't seem to kick in?

panni
resize before or after avisynth?

Re: Upscaling doesn't seem to kick in?

panni
Is it possible to add the resizing after the SVP shader kicks in?

you could add call to LanczosResize() into generate.js...

Would it make any sense?

i've no idea  big_smile
but upsizing 60 frames per second will kill performance