I don't know, with ffdshow development pretty much stopped, I don't know how these issues will ever get resolved properly. There should be absolutely no need for the user to ever have to compensate for any of these delays. Putting workarounds in of adjusting audio delay to compensate isn't really a proper solution in my opinion. I hope you agree.

I guess theres no way to get SVP working outside of avisynth / ffdshow, its completely dependent on avisynth at the moment?

Thats what I assume is happening. I'm hoping someone like Chainik or Mag79 might have tools to be able to see if this is happening or if SVP is in control of the timestamps. (I assume it is if its creating new frames).

hmm, what ties it all together at the end into the final output, I guess its that components job to take audio / video and sync them together. Is it saving their timestamps in the captured output? If so again it will be up to the player to understand those and it will keep them in sync if the timestamps are right.

Thats my understanding anyways. I might try to see can I find an application that outputs timestamps of frames without avisynth / svp, and with, and see what happens to them, ie are they all offset by a certain amount depending on the buffering / threads.

No I don't think audio has to be touch, just if video gets delayed, the video frames timestamps should be updated to indicate that. The splitter like LAV splitter should be able to handle any delay in audio / video and still sync them together, once the timestamps are correct.

I assume in this case the video timestamps are being broken somewhere.

This is something I have also battled with in my setup. Its difficult to get a svp threads + ffdshow buffer value that doesn't cause video desync. In my opinion because SVP is adding frames and can cause these delays, it should have the potential to correct any delay it adds by changing the frames timestamps. Or do you think its ffdshow / avisynth itself thats at fault?

Things like LAV filters will sync audio to video no matter how much the video gets delayed, once the video timestamps are correct coming out of svp / avisynth / ffdshow, but in some situations as described above, the video timestamps must be getting set very very badly wrong? Is this correct Chainik, MAG79? Is it possible to see on your end of things whether situations like desribed above produces timestamps that are forward or backward from where they should be?

Anyone interested in trying to reproduce audio sync problems with different buffer sizes, even though buffer sizes doesn't effect smoothness anymore (when using LAV at least). Hope this can be figured out and explained as it seems to indicate an issue in there somewhere.

Regarding DVD Menus. I know its very difficult to get interpolation to behave correctly in these scenarios. My issue is that some DVD menus, I think maybe 30% of the time when using mpc-hc / lav / madVR / SVP, the player will hang when moving the mouse over some items in the menus.

With SVP disabled the hangs never happen. Wondering can anyone reproduce these hangs?

33

(7 replies, posted in Using SVP)

When I use yadif in lav of ffdshow, with double frame rate, the Input.Framerate variable in my avisynth scripts seem to still pick up the old undoubled frame rate. For this reason, logic in my avisynth scripts like this (to interpolate 25fps content to 60hz)

(Input.Framerate > 24 && Input.Framerate <= 26) ? Eval("""
    NewNum=12
    NewDen=5
    abs="false"
""")

will still gets run for 25i content thats been deinterlaced to 50fps (ffdshow input even shows 50fps coming in when using lav decoder and its yadif double frame rate), and because of this issue, the output frame rate is 120fps instead of 60fps... Is anyone able to get around this issue? Is there a more reliable method of reading the actual frame rate in avisynth instead of the Input.Framerate variable? Its fine if I just set the output to be 60.000fps with abs="true" but I want to try to use multiples of the original where possible to maximize quality.

Hi travolter. I'm using InterFrame scripts, slightly modified for my own system. For these I have this as my initial setup of the svp dlls and loading of ffdshow_source.

SetMTMode(3,16)
LoadPlugin("C:\Program Files (x86)\MPC-BE\SVP\svpflow1.dll")
LoadPlugin("C:\Program Files (x86)\MPC-BE\SVP\svpflow2.dll")
Input=ffdshow_source()
SetMTMode(2)

In ffdshow avisynth settings I therefore have "Add ffdshow video source" disabled also. At the end of the script I have this. Not sure if all of this matters.

smooth_video = SVSmoothFps(Input, Super, Vectors, SmoothString, url="www.svp-team.com", mt=Cores)
smooth_video
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last

I hope someone can reproduce the audio sync differences to nail it down to something.

Just posted a quick question about this on the avisynth usage area of the doom9 forums to see if anyone there has experience with not needing the ffdshow buffers, and the audio sync differences between various settings. (enabled vs disabled, vs enabled with different values)

http://forum.doom9.org/showthread.php?p … ost1622878

EDIT: Guys, looks like fdshow osd is saying no buffered frames are being requested at all by avisynth. I can't explain that. Still getting audio desync with it buffers being disabled. OSD says none being requested.

MAG79 wrote:

mark007
SetMTMode(3,16)
It is mean that Avisynth does calculating in 16 threads simultaneously. First thread need current frame and one next frame to calculate motion vectors. Second thread need calculate motion vectors between next two frames. So 16 threads need buffer 16 frames ahead. It is if in two words.

Audio sync problem was only is case 1:1 smoothing coefficient and was resolved in SVP 3.1.3.

What your case? Tell us more details about audio sync problem please.

I'm interpolating for example 23.976 to 59.94 ( 5/2 ). Even if I select 1 frame ahead in avisynth, smoothness is perfect, absolutely perfect! Even in really obvious scenes like the panning scene Death.and.Life.of.Bobby.Z.mkv its so perfectly smooth panning no jumps or glitches at all. How can this be so perfectly smooth if SVP really does need more than 1 frame ahead? Does SVP have its own way of still waiting for the correct frame to be available in this case?

With 1 frame ahead I get perfect smoothness but very bad audio desync. This baffles me. I'm just afraid even 16 frames ahead might still have a problem with audio desync, but that its just not so noticible.

This post seems to indicate the buffer ahead is only a workaround in avisynth for filters that don't support being asked for a particular frame?
http://ffdshow-tryout.sourceforge.net/w … back_ahead

"To work around this somewhat, the ffdshow AviSynth filter allows the user to specify a number of frames to buffer ahead and a number of frames to keep in a back-history. "

Maybe my setup of mpc-hc + lav filters actually supports this request for a particular frame and so I don't need the buffer ahead at all to keep smoothness. Even with buffers completely unticked I get perfectly smooth playback so I assume this setup doesn't require the avisynth buffer workaround at all. If thats the case the audio desync is still an issue. Is there any chance you can try to reproduce the lack of need for buffers with mpc-hc + lav filters and see can you reproduce the audio desync in that case?

FYI I have "Add ffdshow video source" disabled also during these tests. I use the code below to get the frames.

SetMTMode(3,16)
LoadPlugin("C:\Program Files (x86)\MPC-BE\SVP\svpflow1.dll")
LoadPlugin("C:\Program Files (x86)\MPC-BE\SVP\svpflow2.dll")
Input=ffdshow_source()
SetMTMode(2)

Mag79 and all. I use interframe scripts and am using the latest SVP dlls very very happily. All is fine but I'm always tweaking things to get the most quality without dropping frames.

I'm also interested in the ffdshow buffer back / ahead figures. If I use a low value like 0/1 just to see how much of an impact it has on performance, I lose audio sync, I assume because SVP is requesting further than 1 frame ahead and avisynth is therefore giving it only 1 frame ahead as thats all it has?

Is this what causes audio delay? I'm confused though if this is the case because even with 0/1 motion is perfectly smooth. If SVP is actually looking for further than 1 frame ahead, and if I have buffers set to 0/1 shouldn't I also therefore have audio sync problems AND stuttery playback? I only get audio sync problems and no stutters though.  hmm Is this an indication of some issue with timestamp handling in SVP with low buffer settings causing sync problems?

I use SetMTMode(3,16) in my initial script setup, and this works great on core i7 920 performance wise no matter what buffer settings I use. Audio sync problems is the biggest effect of changing the buffers so I really want to get a clear picture of what is going wrong.

38

(4 replies, posted in Using SVP)

Hi devs,

Do you ever see svp being usable outside of avisynth scripts, as perhaps a DS filter like LAV Filters / ffdshow etc?

I can see it being much easier to use / configure and obviously less prone to breaking / crashing due to avisynth issues and the need for ffdshow?

Regards,
Mark

39

(1 replies, posted in Using SVP)

Hi,

I was in the middle of watching a Blu-Ray and mpc-be suddenly crashed with this error message. Not sure if its any use pasting it here. I can play over the same point in the movie again and its fine...

Problem signature:
  Problem Event Name:    APPCRASH
  Application Name:    mpc-be.exe
  Application Version:    1.1.0.0
  Application Timestamp:    50dc1c24
  Fault Module Name:    svpflow1.dll
  Fault Module Version:    1.3.0.0
  Fault Module Timestamp:    50d30d18
  Exception Code:    c0000005
  Exception Offset:    0000f8d2
  OS Version:    6.2.9200.2.0.0.256.48
  Locale ID:    6153
  Additional Information 1:    5861
  Additional Information 2:    5861822e1919d7c014bbb064c64908b2
  Additional Information 3:    f3d5
  Additional Information 4:    f3d5be0cad2787556264647dc02181c3

Read our privacy statement online:
  http://go.microsoft.com/fwlink/?linkid=190175

If the online privacy statement is not available, please read our privacy statement offline:
  C:\Windows\system32\en-GB\erofflps.txt

40

(11 replies, posted in Using SVP)

Its the whole point of reclocks pal speed down :S I doubt it was created for nobody. Doesn't matter to me anyways, just saying its not just me that wants the original rate of playback. Because you don't doesn't mean it should be a default setting.... ie assume your needs are what everyone wants.

As I say it doesn't matter to me, I'm just trying to help.

EDIT: Check the first line, in the reclock main forum post and the hundreds / thousands? of posts in their forums thanking reclock for pal speed down so I don't know how you don't know even 1 other person that wants the correct rate.........  roll
http://forum.slysoft.com/showthread.php?t=52203
http://sandbox.slysoft.com/palspeedup/index.html

Anyone else care about playing back at the same rate, or anyone here not notice the 4% speed up, I certainly do  neutral

41

(11 replies, posted in Using SVP)

Thanks Mag, thanks for your explanation. I guess theres lots of people like me who don't want any speed up / slow down of audio / video so will have reclock settings like mine, ie just using reclock perhaps for wasapi output.

Do you think SVP can read the users reclock settings in a future version so that it doesn't have to assume any specific reclock settings like your ones for example? Or perhaps make UseReClockToFixFPS somehow configurable for users in the gui? For the moment I'm happy to have found the workaround

UseReClockToFixFPS=0

42

(11 replies, posted in Using SVP)

Hi, thanks for the replies. Maybe its how I have reclock setup thats causing the problem?

So its not tied to any type of video, its common to all. This is playing back a blu-ray, on 50hz screen with UseReClockToFixFPS=1. Screenshot shows reclock is still only receiving the original frame rate. SVP printout on image shows detected rate of 50.35. madVR and Reclock show it to be more like 50.00 so I don't know where 50.35 comes from. SVP doesn't seem to actually use 50.35 anyways, it keeps original frame rate.

http://imageshack.us/photo/my-images/196/50png.png/

With UseReClockToFixFPS=0 everything works perfectly again, 50.00fps output from SVP.

Here is output from additional information. Perhaps SVP assumes reclock is being used to change frame rate? In my case I only use it to get WASAPI out, nothing else.

Last processed file parameters:
Filename: 00802.mpls
Frame size and frame rate: 1920x1080 pixels, 23.976 fps

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

Video smoothing info
Smooth factor: 21:10
Resulting video frame rate: 50.35 fps
Drop 1 frame every 2.9 sec (without ReClock)

Selected profile: 1920x1080@24

Profile settings of video processing
[ExMethod=MSmoothFps_0]        Frames interpolation mode: Uniform (max smoothenss)
[ExAlgo=13]            SVP shader: 13. Standart (default)
[ExMulti=MON]            Target frame rate: To screen refresh rate (default)
[ExBlockSize=16x16:2]        Motion vectors grid: 12 px. Average 2 (default)
[ExRecalc=0:0]            Decrease grid step: Disabled (default)
[TypeDist=Exh:-10:SATD]        Search radius: Average (default)
[ExPel=2]            Motion vectors precision: Half pixel (default)
[Badsad=1000:-24]        Wide search: Average (default)
[ExSadml=0]            Artifacts masking: Disabled (default)
[ExBlend=false]            Processing of scene changes: Repeat frame (default)
[ExDwnResize=MON]        Decrease frame size: To screen size
[ExConvertFps=false]        Blend frames to screen refresh rate:false

Settings by menu
[svp_libflowgpu=1]        GPU-acceleration (OpenCL): true
[ExThreads=0]            Processing threads: Auto
[HandCrop=None]            Frame crop: Disabled
[Borderlight=None]        Black bars lighting: Disabled
[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

43

(11 replies, posted in Using SVP)

Hi guys,

I have been having fun trying out SVP 3.1, thanks very much. In the past I used to use custom interframe scripts. I'm using SVPs own interface now and its own settings and have one major problem.

My screen is running at 50.002hz. When I choose "Target frame rate" -> "To screen refresh rate", the frame rate doesn't change at all. (checking using both fraps and reclock)

I can choose things like "Source multiplied by 3 (3x)" and I can see in reclock and fraps, the rate change to 71.928fps, but changing then to anything relating "To screen refresh...", the output rate then doesn't change.

The SVP gui flashes up "21:10 50.35" on the video player image, but the actual resulting frame rate doesn't change.

I have tried using "screen selection " -> "force" and manually entering my screens refresh rate in there as 50.002, but this doesn't seem to get used... In essence, SVP seems to almost get my frame rate exact, when printed to the player output (ie 50.35) but doesn't actually make this change to the resulting output.

Any ideas what I can check? I'm using Windows 8 CP, Nvidia GTX 295.

EDIT: I notice changing UseReClockToFixFPS=0 then the SVP gui shows its using my hard coded value of 50.002fps and reclock indicates the same, so I guess reclock may be at fault, giving bad refresh rate information to SVP, ie 50.35, which SVP doesn't actually seem to use.

-----

I guess seperate to this, the only issue I'm seeing that I didn't get with SVP 3.0.7 is the following error from time to time. eg just now I selected a different target frame rate and got the following error in the log, and the player closed.

19:32:16.807; T1T: SVPMgr main. Duration: 27 ms
19:32:16.834; T1T: Playback
23.976 * (12 : 5) = 57.542 fps
19:32:16.835; SetPriorityPlayer: 2. Duration: 385 ms
19:32:17.220; Error: Error preparing smooth playback! Script error:
SVSmoothFps: unable to init FlowLib [code 0x3FFFB]
(C:\Users\Mark\AppData\Roaming\SVP 3.1\AVS\ffdshow.avs, line 18)
(ffdshow_filter_avisynth_script, line 4)
. Duration: 9747 ms

44

(18 replies, posted in Using SVP)

I own these PAL DVDs myself. I ripped using makemkv keeping original mpeg2 stream so the mpeg2 must have been encoded wrong on the source DVDs I guess, as I don't think makemkv does anything to the original stream. Each episode comes to about 1.5gb mkv.

45

(18 replies, posted in Using SVP)

Thats great, thanks Mag. They were ripped from the original dvds. I might have to invest in the blu-ray versions of these DVDs smile Thanks again.

46

(18 replies, posted in Using SVP)

Thanks!

EDIT: What would you suggest I could use to fix this material? I assume its some telicine flag thats not set correctly? Should the LAV decoder do the IVTC based on this flag, even if deinterlacing is set to off?

Of course I'd love to fix the material so that I don't need any manual settings changes per content, ie switching from 50p to 25p in LAVs settings etc.

47

(18 replies, posted in Using SVP)

Wow thanks very much Mag!!! Out of interest how did you check that content of the sample. I might try to fix these sources so that I dont need specific settings for them.

48

(18 replies, posted in Using SVP)

Hi Mag, thanks for you're post. Perhaps I am mixed up smile I have made a 1 minute sample of one of these files for you to see.

When using LAV Video adaptive deinterlacing setting, it comes out at 50fps progressive and looks great BUT compared to the NTSC version of the same DVD for example, it does play faster, and is higher pitched.

Are you saying pal speed down shouldn't be needed here? I think it is still needed and therefore still think I need to use svp to change the rate to 52.08~fps before reclock slows it down.

How do you suggest I play back this file and achieve my goal of playing at 50hz and slowed down or would you play differently?

http://www.mediafire.com/?4nooolb16arplvi

49

(18 replies, posted in Using SVP)

I have just gotten so used to playing 25fps material at 24 fps (increased then to 50 by svp) that it's very noticeable to me when not doing the pal speed down ie the voices are noticibly too high pitched and movement is too fast. smile

Svp output after changing from 24 to 50 is so good that I think this process gives me a better playback experience as at least it sounds correct and is playing back at the correct rate.

50

(18 replies, posted in Using SVP)

I use 50hz on my Samsung HDTV, as other rates don't behave very well and don't display as accurate colors as 50hz. So my aim is to have all my content run at 50hz.

So for example, many of the Star Trek TNG Pal DVDs are

1) 25 Interlaced, so need to be deinterlaced (deinterlaced to 50p using LAV Video hardware deinterlacing)
2) Need to be slowed down by 4% by ReClock so they play at the correct rate (achieved with ffdshow), which would slow 50fps down to 48fps.

So to both deinterlace, and slowdown by 4%, aswell as achieve 50fps output I must add an intermediate step between deinterlacing, and reclock slowing the rate down, that is

1b) Use SVP to speed up the 50fps deinterlaced content, to 52.08fps, which when slowed down by reclock by 4% gives exactly 50.00000 fps.

So I don't see any frame drops at all, BUT the rate change from 50 to 52.08 seems to add a judder of some sort, I assume due to the fact that the two rates are so close together.