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 > Capturing and Editing Video > Avisynth Usage
Register FAQ Calendar Today's Posts Search

Closed Thread
 
Thread Tools Search this Thread Display Modes
Old 1st July 2011, 12:29   #741  |  Link
Dogway
Registered User
 
Join Date: Nov 2009
Posts: 2,361
I observed chroma smears too much. In a similar way mdegrain does when plane=4 with high SAD. Can I disable chroma in some way?

edit: it was MY BAD, cropping before QTGMC, just to save a few 0.xx fps
__________________
i7-4790K@Stock::GTX 1070] AviSynth+ filters and mods on GitHub + Discussion thread

Last edited by Dogway; 3rd July 2011 at 18:05.
Dogway is offline  
Old 1st July 2011, 18:33   #742  |  Link
-Vit-
Registered User
 
Join Date: Jul 2010
Posts: 448
Quote:
Originally Posted by kypec View Post
Mind to tell what new exciting improvements can we look forward to in this next version?
I didn't mean to suggest a new version was imminent. I have been very busy on a different project, but that has reached a stable point now, so I will be turning my attention back to QTGMC soon.

I have been working on a number of additions. In no particular order:
- Various motion vector tweaks for speed up or quality improvements: use of vectors derived from downsized clip (faster for HD); refinement of vectors through MRecalculate and a new plugin of mine; some vector mask trickery to help with areas of bad match
- Change output frame rate, i.e. use MFlowFPS with the refined vectors noted above. Allows 50i->60p or 60i->50p or whatever.
- Resizing of output, including an attempt to find extra detail from neighbors for upscales.
- Some denoising improvements (related to the above)
- Standalone functions (no deinterlacing): QDenoise, QMotionBlur, QVectors
- Some defaults automatically adjust based on input resolution
- Bug fixes (as ever)...

Most of these are still in progress and I dunno in what order they will appear. Also now would be a good time for requests.
____

Quote:
Originally Posted by aegisofrime View Post
...the latest MVTools...
QTGMC will still work with MVTools 2.5.11.1. It's just that version's MCompensate is unstable when there is edge motion on certain resolutions. Doesn't affect most typically used resolutions at all, so it may not affect you.

____

Quote:
Originally Posted by Dogway View Post
I observed chroma smears too much. In a similar way mdegrain does when plane=4 with high SAD. Can I disable chroma in some way?
Code:
src    = whatever
luma   = src.QTGMC()
chroma = src.YourFavoriteChromaDeinterlacer()
MergeChroma(luma, chroma)
Can't switch off chroma processing entirely in QTGMC, but can speed it up by setting RepChroma=false and ChromaEdi="Bob"

Last edited by -Vit-; 1st July 2011 at 18:49.
-Vit- is offline  
Old 2nd July 2011, 11:17   #743  |  Link
nhope
partially-informed layman
 
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
Quote:
Originally Posted by -Vit- View Post
Also now would be a good time for requests.
Well, if you are going to build in options for frame-rate changes (which I think is a great idea), maybe you could build in options for rescaling? Under the covers it would do something like a width-before/height-after Spline36Resize. Or maybe there is other stuff you can do in the script to optimize rescaling quality.
nhope is offline  
Old 2nd July 2011, 11:20   #744  |  Link
nhope
partially-informed layman
 
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
Further to that you could put in shortcut options to effectively make it a format-converter. e.g. "PAL2NTSC", "NTSC2PAL"
nhope is offline  
Old 2nd July 2011, 11:27   #745  |  Link
nhope
partially-informed layman
 
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
Also re-interlacing of double-rate video with choice of field dominance handled as options. e.g. reint="TFF", reint="BFF".
nhope is offline  
Old 2nd July 2011, 23:15   #746  |  Link
-Vit-
Registered User
 
Join Date: Jul 2010
Posts: 448
Lol, anything else?

PAL<->NTSC:
- I already mentioned that rescaling will be added. My primary interest is high quality upscaling, rather than rescaling for PAL<->NTSC conversion, but I guess any rescaling will be supported.
- Frame-rate change (flow) has always been an obvious add-on since QTGMC already calculates motion vectors (also slow-mo / speeded-up output).
- Reinterlacing is the step that gets no benefit from being inside the QTGMC script, but I guess I'll add it for convenience. I'll provide some alternative approaches.

So although it wasn't explicitly my intent, I expect a future QTGMC to be able to do PAL<->NTSC conversions, and yes I'll make some easy settings for it. It will do InterFrame-like work too. Both these will probably support progressive or interlaced input or output.

Don't ask about ETA though, as I said my main interest is some upscaling experiments, which are only tangentially related to QTGMC. Conversion support will just be a beneficial side effect.
-Vit- is offline  
Old 3rd July 2011, 00:16   #747  |  Link
Robert Martens
Registered User
 
Join Date: Feb 2010
Location: New York
Posts: 116
Quote:
Originally Posted by nhope View Post
Well, if you are going to build in options for frame-rate changes (which I think is a great idea), maybe you could build in options for rescaling? Under the covers it would do something like a width-before/height-after Spline36Resize. Or maybe there is other stuff you can do in the script to optimize rescaling quality.
Quote:
Originally Posted by nhope View Post
Also re-interlacing of double-rate video with choice of field dominance handled as options. e.g. reint="TFF", reint="BFF".
You may have some fun playing with this thing, a script I've been revising since early last year. No framerate conversions, as I don't feel confident in my ability to do that well, but the width-before/height-after rescaling is already present (for interlaced input that's being downscaled; there's no sense resizing horizontally before deinterlacing if you're upscaling), as is re-interlacing with choice of field order. There's a variety of presets that should make usage a bit easier, taking proper pixel aspect into account to crop the input as necessary for different shaped output, pillar/letter/windowboxing, and some other features that may prove useful for some applications.

Mind you, with no background in math, signal processing, computer science, or any related field (and insufficient intellect to pick up the subjects in less than a lifetime), I've long since reached my limit with regard to quality improvements, so I certainly look forward to whatever Vit cooks up for rescaling.
Robert Martens is offline  
Old 3rd July 2011, 07:19   #748  |  Link
nhope
partially-informed layman
 
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
@-Vit- & Robert Martens - Thanks a lot. I have a ton of interlaced 4:3 PAL DV to upscale to 960x720-25p for YouTube. Was going to just use QTGMC + Lanczos4 on it but I'll check out SimpleSlugUpscale and eagerly await QTGMC upscaling developments. If you want any PAL DV test footage, just say so.
nhope is offline  
Old 3rd July 2011, 08:04   #749  |  Link
Yellow_
Registered User
 
Join Date: Sep 2009
Posts: 378
If now is a good time for feature requests would there be any benefit in considering gamma aware resizing and 16bit msb/lsb stacked?
Yellow_ is offline  
Old 3rd July 2011, 15:46   #750  |  Link
-Vit-
Registered User
 
Join Date: Jul 2010
Posts: 448
Adding resizing at all is rather pushing the feature envelope of QTGMC and gamma-aware resizing has never really caught my interest, but I'll make a note to have a look.
16-bit stacked does interest me and is similar in some ways to what I am looking at for resizing. I will look into it, but I expect speed / script complexity problems.
-Vit- is offline  
Old 3rd July 2011, 17:25   #751  |  Link
aegisofrime
Registered User
 
Join Date: Apr 2009
Posts: 478
For my part, any quality or/and speed improvement would be welcome. Are they possible though, or have you pushed the coding envelope as far as possible?
aegisofrime is offline  
Old 5th July 2011, 11:26   #752  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
Done some testing- can run 8 instances until my CPU goes to 100% for real 12 cores. It looks like more optimal is 6 instances- combined speed is bigger than with 8. With 6 instances memory usage is 8.5GB.

Combined speed about 14 fps for 50i HD wit slow presset.

Also tried 64bit- managed to make it working but speed was crap and also it was crashing. Memory usage was jumping to 12GB, but even if I have 24GB it was crashing.


Andrew

Last edited by kolak; 5th July 2011 at 11:29.
kolak is offline  
Old 5th July 2011, 21:27   #753  |  Link
Overdrive80
Anime addict
 
Overdrive80's Avatar
 
Join Date: Feb 2009
Location: Spain
Posts: 673
@Vit, would be possible use QTMGC for restoring framerate of video PAL to original rate NTSC. This case is for a lot PAL DVDs that I got. Thanks.

With this script obtein PAL video progressive:

Code:
QTGMC(preset="fast",FPSDivisor=2)
EDITO: With this script obtein effect ghosting...XS
__________________
Intel i7-6700K + Noctua NH-D15 + Z170A XPower G. Titanium + Kingston HyperX Savage DDR4 2x8GB + Radeon RX580 8GB DDR5 + ADATA SX8200 Pro 1 TB + Antec EDG750 80 Plus Gold Mod + Corsair 780T Graphite

Last edited by Overdrive80; 5th July 2011 at 21:50.
Overdrive80 is offline  
Old 6th July 2011, 20:41   #754  |  Link
Revgen
Registered User
 
Join Date: Sep 2004
Location: Near LA, California, USA
Posts: 1,545
^Use SRestore for that.
__________________
Pirate: Now how would you like to die? Would you like to have your head chopped off or be burned at the stake?

Curly: Burned at the stake!

Moe: Why?

Curly: A hot steak is always better than a cold chop.
Revgen is offline  
Old 6th July 2011, 21:21   #755  |  Link
Boulder
Pig on the wing
 
Boulder's Avatar
 
Join Date: Mar 2002
Location: Finland
Posts: 5,733
Quote:
Originally Posted by -Vit- View Post
Also now would be a good time for requests.
Well, a bobbing method for field-blended sources to feed to SRestore (for both detection clip and final result)..I don't know if there is a proper way to bob such sources but there's at least one soft bobber script by Didée which can be used for the detection clip. (some discussion here: http://forum.doom9.org/showthread.ph...69#post1413769) I promised to get you a sample clip but it seems that I forgot that. I'll try to come up with a few good ones to see if there's anything interesting to you.

It would be nice to hear your thoughts regarding MRecalculate. It seems that it is not widely used (and the documentation really doesn't help much, at least didn't do that for me ) and I am not sure whether there is anything to gain from utilizing it. The hypothesis is interesting though.
__________________
And if the band you're in starts playing different tunes
I'll see you on the dark side of the Moon...
Boulder is offline  
Old 7th July 2011, 03:50   #756  |  Link
-Vit-
Registered User
 
Join Date: Jul 2010
Posts: 448
MRecalculate is already used for motion blur refinement. In the next version it is an option for the main motion analysis. It can help to more precisely track around the edges of moving objects and hence reduce the blurring that can occur there. However, MRecalulate needs to be used with care as it can easily break good matches elsewhere, especially where there is faster motion. Part of my work to do is to determine best settings and write some custom masking/selection of MRecalculated vectors vs the original vectors.

I recall the discussions on deinterlacing field blended sources. Not sure if the appropriate approach will fit naturally into QTGMC - motion analysis of blended frames is not so effective; but I could have a look.
-Vit- is offline  
Old 7th July 2011, 11:44   #757  |  Link
bob6779
Registered User
 
Join Date: Jul 2011
Posts: 3
Hi everyone. Could somebody help me with this clip. It's a PAL to NTSC transfer which I want to bring back to PAL.

http://www.mediafire.com/?w8axzsq55em8joo

It's my first try with encoding and avisynth and I've managed to clear up some of the shimmering with qtgmc and was able to get good motion playback with Didee's bob script, but I'm unable to remove the strange strobing seen on the roof tiles. Here's the script I'm using.

Quote:
t = crop( 0, 44, 0, -44)
tgmc = t.QTGMC( Preset="placebo", SourceMatch=3, Lossless=2, Sharpness=0.5, blocksize=16, SLMode=1,SVthin=1.25,truemotion=true, MatchEnhance=0.75,TR2=3,NoiseProcess=2, GrainRestore=1.0, NoiseRestore=0.2, Sigma=2.2, NoiseDeint="Generate", StabilizeNoise=true )


bob1 = t.bob(0,0.5)
bob2 = bob1.clense(reduceflicker=false).merge(bob1,0.5)
bob3 = bob2.mt_adddiff(mt_makediff(bob2,bob2.clense(reduceflicker=false),U=3,V=3),U=3,V=3)

tgmc.vinverse.Srestore(frate=25.0,dclip=bob3)
Are there anymore parameters that I can use to retain more detail and grain or is this the best that I can achieve with this source?

Thanks in advance.
bob6779 is offline  
Old 7th July 2011, 12:26   #758  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,391
Instead of SLmode=1 (spatial), try SLMode=2 (temporal) with SLrad=3.

It (might) bring up ghosting problems again, but potentially should help with the roof strobings.
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)
Didée is offline  
Old 7th July 2011, 12:51   #759  |  Link
Overdrive80
Anime addict
 
Overdrive80's Avatar
 
Join Date: Feb 2009
Location: Spain
Posts: 673
Quote:
Originally Posted by bob6779 View Post
Hi everyone. Could somebody help me with this clip. It's a PAL to NTSC transfer which I want to bring back to PAL.
Not recommended to crop after the deinterlacing?
__________________
Intel i7-6700K + Noctua NH-D15 + Z170A XPower G. Titanium + Kingston HyperX Savage DDR4 2x8GB + Radeon RX580 8GB DDR5 + ADATA SX8200 Pro 1 TB + Antec EDG750 80 Plus Gold Mod + Corsair 780T Graphite
Overdrive80 is offline  
Old 7th July 2011, 19:02   #760  |  Link
Mini-Me
Registered User
 
Join Date: Jan 2011
Posts: 121
-Vit-, I'm currently experiencing crashes trying to reuse motion vectors from QTGMC. I'm using Avisynth 2.6 Alpha 3, QTGMC 3.32, and MVTools 2.5.11.2 beta.

Here is a pretty simple script that exhibits the behavior. If I load it up and scroll through a few dozen frames, it crashes pretty predictably for me (Virtualdub mentions an Access Violation, and AvsPMod gets a rapidly scrolling error window). If I calculate the motion vectors again myself instead of reusing the ones from QTGMC, no such crash occurs. Note that I'm transcribing my script by eye from another computer, so it might have typos.

Code:
orig = Avisource("whatever.avi").AssumeTFF()
deint = orig.QTGMC(preset = "super fast")
deintmcsoft = deint.MTemporalSoften1(QTGMC_bvec1, QTGMC_fvec1)
return deintmcsoft

function MTemporalSoften1(clip base, clip mvbw, clip mvfw)
{
	super = base.MSuper(pel = 1)
	backward = base.MCompensate(super, mvbw)
	forward = base.MCompensate(super, mvfw)
	interleaved = Interleave(forward, base, backward)
	return interleaved.TemporalSoften(1, 255, 255, 28, 2).SelectEvery(3, 1)
}
(In case anyone's wondering why I'd use MTemporalSoften1 over MDegrain1 for anything, the actual use is to remove heavy flicker from parts of a helper clip in a script I'm writing. )

Last edited by Mini-Me; 7th July 2011 at 19:44.
Mini-Me is offline  
Closed Thread


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 20:05.


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