Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Hardware & Software > Software players

Reply
 
Thread Tools Search this Thread Display Modes
Old 16th January 2013, 17:38   #16941  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by Jong View Post
what I was trying to do was compare the Reclcock resampler, which is at least a defined formula, calculated to high internal accuracy, with the option to upsample, with pitch correction, which involves chopping audio up into time slices and the processing those 2-channels at a time with loads of potential for both audible artefacts at slice boundaries and loss of phase coherence between each channel pair, e.g. Fronts and rears. IMO the resampling in Reclock has the potential to be inaudible, if not precise(!). Pitch correction, not so much.

And the point about 0.01% was that the temp change of this small adjustment should be in audible (possible artefacts aside). Not that the artefacts, such as they exist, would be less because the adjustment was small.
Ok, fair points, I have to agree.

Quote:
Originally Posted by DragonQ View Post
If that was deinterlaced in "video mode", as long as it was correctly detected as BFF, it'd just be output as 50p with every other frame being a repeat of the previous one, surely? In the same way that playing 25p content on a normal TV would actually be 50p/75p/100p with repeated frames. If not, then I've never seen that.
Quote:
Originally Posted by nevcairiel View Post
Video Mode deinterlacing of telecined PAL just results in 50p, even if it would be supposed to only be 25p, so usually we never notice any such problems.
Yes, running this through a video mode deinterlacer (e.g. YADIF) should produce acceptable image quality with 50 different progressive frames being the result, but image quality would not be as good as properly done IVTC, of course.
madshi is offline   Reply With Quote
Old 16th January 2013, 17:39   #16942  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Hardware Deinterlacers can detect the cadence if you're lucky and produce proper quality, just with duplicate frames.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is online now   Reply With Quote
Old 16th January 2013, 17:43   #16943  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Yes, but at least my AMD card doesn't handle PAL film content well at all. It very often switches to video mode deinterlacing.
madshi is offline   Reply With Quote
Old 16th January 2013, 18:14   #16944  |  Link
glc650
Registered User
 
Join Date: May 2003
Posts: 77
Quote:
Originally Posted by madshi View Post
I disagree. If you have managed to get the refresh rate close enough, there shouldn't be frame drops/repeats long enough to play the longest movie out there, rendering Reclock's resampling/sync corrections useless. In that case it does make a lot of sense to enable the "slave reference clock to audio" option, so that you can get kernel mode streaming without having to resample audio.
What's the threshold for "close enough"?

Quote:
Originally Posted by madshi View Post
Currently madVR can not find out itself which mode it should use. So the "auto" mode always uses DXVA deinterlacing. If your sitcoms are native film content (24p), forcing madVR into "film" mode would allow you to output true 24p to your display, which would result in smoother motion. This is not possible when using DXVA deinterlacing. However, if your sitcoms are native interlaced recordings, film mode would produce visible combing artifacts. If your display can't do 24p, anyway, I'd stick with "auto". If you want 24p output then you can try film mode. I guess most newer sitcoms are 24p based. But some older sitcoms are native interlaced, I think.
And if you force video mode it also uses DXVA deinterlacing? What does it does when you force film mode?

Quote:
Originally Posted by madshi View Post
No. At least not for hard-telecined content.
What's the best way to determine if content is natively interlaced vs telecined?
glc650 is offline   Reply With Quote
Old 16th January 2013, 18:23   #16945  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by glc650 View Post
What's the threshold for "close enough"?
When you can playback a full long movie without frame drops/repeats.

Quote:
Originally Posted by glc650 View Post
And if you force video mode it also uses DXVA deinterlacing? What does it does when you force film mode?
Yes, force video = auto = DXVA deinterlacing at the moment. Film mode uses madVR's own IVTC algorithm, which currently runs on the CPU, which means it isn't compatible to native DXVA decoding at the moment.

Quote:
Originally Posted by glc650 View Post
What's the best way to determine if content is natively interlaced vs telecined?
There are more variations than just natively interlaced and telecined. E.g. there's content which was telecined and then overlayed with natively interlaced content. Or there's field blended film content. This is a really complicated topic. What you could do is enable madVR's film mode and then check if playback quality is good. If it is, then you very likely have a telecined film source. If you see combing then you have one of the other variants, for which at the moment you should better use DXVA deinterlacing.
madshi is offline   Reply With Quote
Old 16th January 2013, 18:32   #16946  |  Link
truexfan81
Registered User
 
truexfan81's Avatar
 
Join Date: Nov 2012
Posts: 138
Quote:
Originally Posted by madshi View Post
Nobody else reported this problem. Which GPU and OS are you using? What happens if you change the zoom factor a bit (e.g. NumPad 1 in MPC-HC)? Does the problem go away then or is it still there?
win7 64bit and nvidia gt430 gpu
yes NumPad 1 does make the problem go away

Last edited by truexfan81; 16th January 2013 at 18:34.
truexfan81 is offline   Reply With Quote
Old 16th January 2013, 18:36   #16947  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by truexfan81 View Post
win7 64bit and nvidia gt430 gpu
yes NumPad 1 does make the problem go away
Then it seems to be a problem with the relatively new fixed zoom factor resamplers. Which movie resolution and target rectangle does the madVR OSD (Ctrl+J) show when the problem occurs? Are you totally sure you're really using v0.85.7? I'm asking because there was a problem with some older builds. So if you're still using an older build that may eventually explain the problem.
madshi is offline   Reply With Quote
Old 16th January 2013, 18:42   #16948  |  Link
Jong
Registered User
 
Join Date: Mar 2007
Location: London, UK
Posts: 576
Quote:
Originally Posted by madshi View Post
When you can playback a full long movie without frame drops/repeats.
Surely that's the problem. Even 23.977 vs 23.976 (far more accurate than most GPUs out of the box) results in a drop every 17mins. To guarantee no drops in a movie you would need almost 10 times that accuracy, which is pretty hard even with custom timings. I know because I tried really hard about 5-6 years ago. I'd say it is close to impossible for most people! Now it's true most people, in most movies, might not notice one or two frames drops depending on when they happen (especially because of all the good work you have done in MadVR to eliminate repeated judder when a frame needs to be dropped), but if that is your standard something like Reclock (or Videoclock in JRiver MC) is just about essential.

Last edited by Jong; 16th January 2013 at 18:45.
Jong is offline   Reply With Quote
Old 16th January 2013, 18:42   #16949  |  Link
glc650
Registered User
 
Join Date: May 2003
Posts: 77
Quote:
Originally Posted by madshi View Post
When you can playback a full long movie without frame drops/repeats.
But since the madVR counters are not that accurate, just how much deviation between refresh/frame rates can there be before having to resort to resampling audio with reclock to prevent frame drops/repeats?

Quote:
Originally Posted by madshi View Post
Film mode uses madVR's own IVTC algorithm, which currently runs on the CPU, which means it isn't compatible to native DXVA decoding at the moment.
So what is the alternative here, implementing DXVA IVTC? Isn't madVR's own IVTC the best way to go (for quality) anyway?
glc650 is offline   Reply With Quote
Old 16th January 2013, 18:47   #16950  |  Link
truexfan81
Registered User
 
truexfan81's Avatar
 
Join Date: Nov 2012
Posts: 138
Quote:
Originally Posted by madshi View Post
Then it seems to be a problem with the relatively new fixed zoom factor resamplers. Which movie resolution and target rectangle does the madVR OSD (Ctrl+J) show when the problem occurs? Are you totally sure you're really using v0.85.7? I'm asking because there was a problem with some older builds. So if you're still using an older build that may eventually explain the problem.
movie resolution 640,360
target rectangle 0, 0, 1920, 1080

and madVR reports v0.85.7
tomorrow i can post a sample vid if needed

Last edited by truexfan81; 16th January 2013 at 19:06.
truexfan81 is offline   Reply With Quote
Old 16th January 2013, 19:06   #16951  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by Jong View Post
Surely that's the problem. Even 23.977 vs 23.976 (far more accurate than most GPUs out of the box) results in a drop every 17mins. To guarantee no drops in a movie you would need almost 10 times that accuracy, which is pretty hard even with custom timings.
Maybe you're right. At the moment it's hard to be sure because madVR doesn't report frame repeats. I'm planning to add that soon, probably already in the next build. That should allow us to more reliably check how many frame drops/repeats there really are per movie, and to then maybe tweak the custom resolution more.

Quote:
Originally Posted by glc650 View Post
just how much deviation between refresh/frame rates can there be before having to resort to resampling audio with reclock to prevent frame drops/repeats?
The problem is that audio deviation makes everything more complicated. You can't just try to make the madVR measured refresh rate be equal to 24.000/1.001. The best way to create a "perfect" refresh rate should be to first aim for 24.000/1.001, then in the next step watch a movie and check how many frame drops/repeats occurred. If you had frame repeats, your refresh rate is too high. If you had frame drops, your refresh rate is too low. So you can adjust accordingly.

Quote:
Originally Posted by glc650 View Post
So what is the alternative here, implementing DXVA IVTC? Isn't madVR's own IVTC the best way to go (for quality) anyway?
"implementing DXVA IVTC"? I don't know what you mean. DXVA is a fixed algorithm of the GPU/driver. Yes, madVR's own IVTC should be the "best" solution for playing back telecined content. So basically that means you just can't use native DXVA decoding at the moment, if you want to use madVR's IVTC algorithm. You can still use DXVA copyback (LAV Video Decoder), CUVID decoding or software decoding.

Everything is "at the moment". madVR has not reached v1.0 yet.

Quote:
Originally Posted by truexfan81 View Post
movie resolution 640,360
target rectangle 0, 0, 1920, 1080

and madVR reports v0.85.7
Can I have a small sample, please? I don't think I have a video in this exact resolution.
madshi is offline   Reply With Quote
Old 16th January 2013, 19:14   #16952  |  Link
truexfan81
Registered User
 
truexfan81's Avatar
 
Join Date: Nov 2012
Posts: 138
Quote:
Originally Posted by madshi View Post
Can I have a small sample, please? I don't think I have a video in this exact resolution.
sample vid
truexfan81 is offline   Reply With Quote
Old 16th January 2013, 19:38   #16953  |  Link
mark0077
Registered User
 
Join Date: Apr 2008
Posts: 1,106
Quote:
Originally Posted by madshi View Post
Actually matching rates *should* be good enough. Audio clock deviation should be constant, so it's not like at some point in time suddenly the clock deviates and madVR has to drop a frame. madVR drops frames to keep audio and video in sync when there's a constant drift between audio and video clocks. If you match clocks reasonably well, there should not be frame drops/repeats for several hours at least.
Thanks madshi. For me this isn't the case though. Exactly matching the rate down to 0.0001 with SVP I get frame drops. Adjusting slightly below it (59.950XX playback rate vs 60.001XX reported display rate), I was able to prevent frame drops, but maybe now I'm getting frame repeats but can't see them. Maybe I'll see those repeats reported in future madVR versions. Exactly matching rates definitely didn't prevent drops for me I could almost guarantee to see 1 drop every half an hour at the very least. 0 drops with the playback rate lower than display rate reported by madVR. I really don't know what to do..
mark0077 is offline   Reply With Quote
Old 16th January 2013, 19:45   #16954  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by truexfan81 View Post
Thx, will have a look at that later.

Quote:
Originally Posted by mark0077 View Post
For me this isn't the case though. Exactly matching the rate down to 0.0001 with SVP I get frame drops.
Matching what to what, though? Please read my previous comment in this thread (about audio clock deviation).
madshi is offline   Reply With Quote
Old 16th January 2013, 20:01   #16955  |  Link
mark0077
Registered User
 
Join Date: Apr 2008
Posts: 1,106
Matching the display rate reported by madVR OSD, to the rate output by SVP. Is this what should be matched exactly?

EDIT: Yes I see your post, very interesting indeed, thanks very much. Seems slight adjustments are needed. Thank you.

EDIT2: Is there any way that you can think of, of figuring out from the audio clock deviation and display rate, a playback rate that should produce no drops? Or is it always a matter of trial and error to find a value that doesn't produce drops / repeats. I'm just concerned how long it might take to get a good calibration (although I personally don't mind putting in that effort to get 0 drops , 0 repeats ).

Last edited by mark0077; 16th January 2013 at 20:24.
mark0077 is offline   Reply With Quote
Old 16th January 2013, 20:13   #16956  |  Link
Jong
Registered User
 
Join Date: Mar 2007
Location: London, UK
Posts: 576
Quote:
Originally Posted by madshi View Post
Actually matching rates *should* be good enough. Audio clock deviation should be constant.
Whilst this might be true on any given day, I'd be concerned that to the very high accuracy we are talking about here it would deviate over weeks/months/years and need constant recalibration.
Jong is offline   Reply With Quote
Old 16th January 2013, 20:24   #16957  |  Link
glc650
Registered User
 
Join Date: May 2003
Posts: 77
Quote:
Originally Posted by madshi View Post
The problem is that audio deviation makes everything more complicated. You can't just try to make the madVR measured refresh rate be equal to 24.000/1.001. The best way to create a "perfect" refresh rate should be to first aim for 24.000/1.001, then in the next step watch a movie and check how many frame drops/repeats occurred. If you had frame repeats, your refresh rate is too high. If you had frame drops, your refresh rate is too low. So you can adjust accordingly.
Almost all of the 23/24 fps content I play is actually 23.976. Should I still be aiming for 24Hz? My TV/video card can do both 23.976 (madVR reports 23.977) and 24.000 (madVR reports 24.001). So what I've been doing is using madVR's display mode switcher to switch to either 23 or 24 based on the fps of the media.


Quote:
Originally Posted by madshi View Post
"implementing DXVA IVTC"? I don't know what you mean.
Sorry I was just wondering what the alternative was to madVR's own IVTC. I figured it wouldn't be as good as madVR's implementation.
glc650 is offline   Reply With Quote
Old 16th January 2013, 21:02   #16958  |  Link
yok833
Registered User
 
Join Date: Aug 2012
Posts: 73
Hello guys,
I have to change my old graphic card, a HD6850, and i would like to know if there is a card or a brand better than an other...
Do you think that it is possible to see an improvement and have a better picture quality with the last generation ???
I know that Nvidia has CUDA but it doesn't give a better picture, it only helps to decode more quickly...
yok833 is offline   Reply With Quote
Old 16th January 2013, 21:04   #16959  |  Link
Jong
Registered User
 
Join Date: Mar 2007
Location: London, UK
Posts: 576
Quote:
Originally Posted by mark0077 View Post
I'm just concerned how long it might take to get a good calibration (although I personally don't mind putting in that effort to get 0 drops , 0 repeats ).
This is exactly what I did around 2007 when I had to bitstream my audio - Leaving whole movies to run, noting if there were any skips (at one stage I had to do this by eye! At least MadVR has a reliable OSD you can just leave running ) it was a labour of love, but I was never sure it would be consistently accurate. Due to my incompetence, the limitation of the tools of the time or maybe natural variability (not sure, see post above) I was constantly recalibrating. Trying to get accuracy to 1/240,000 (ish) is not easy
Jong is offline   Reply With Quote
Old 16th January 2013, 21:04   #16960  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by truexfan81 View Post
I can reproduce it. It should be fixed in the next build.

Quote:
Originally Posted by mark0077 View Post
Is there any way that you can think of, of figuring out from the audio clock deviation and display rate, a playback rate that should produce no drops?
The key problem is that the audio clock is very jittery, which makes it hard to measure the exact audio clock deviation correctly. If we knew the exact audio clock deviation, calculating the "perfect" refresh rate would be easy.

Quote:
Originally Posted by Jong View Post
Whilst this might be true on any given day, I'd be concerned that to the very high accuracy we are talking about here it would deviate over weeks/months/years and need constant recalibration.
Maybe you're right, but I'm not sure. I don't know if hardware clocks drift (in any meaningful way) over weeks/months/years, when configured the same way.

Quote:
Originally Posted by glc650 View Post
Almost all of the 23/24 fps content I play is actually 23.976. Should I still be aiming for 24Hz? My TV/video card can do both 23.976 (madVR reports 23.977) and 24.000 (madVR reports 24.001). So what I've been doing is using madVR's display mode switcher to switch to either 23 or 24 based on the fps of the media.
Switching between 23.976 and 24.000 depending on the fps of the media is perfectly fine. When I say "24.000/1.001" then that's the proper way to calculate the 23.976 refresh rate. 23.976 is not actually correct. It's 24.000/1.001 = 23.976023976[...]. But again, we have to take audio/video clock deviation into account, too.

Quote:
Originally Posted by glc650 View Post
Sorry I was just wondering what the alternative was to madVR's own IVTC. I figured it wouldn't be as good as madVR's implementation.
When using native DXVA decoding, there is no good alternative. I might eventually move madVR's IVTC algorithm to the GPU sooner or later, then it will also work together with native DXVA decoding. But that's future talk...
madshi is offline   Reply With Quote
Reply

Tags
direct compute, dithering, error diffusion, madvr, ngu, nnedi3, quality, renderer, scaling, uhd upscaling, upsampling

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 14:11.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.