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. |
31st May 2012, 15:41 | #521 | Link | |
Registered User
Join Date: Jul 2010
Posts: 448
|
Quote:
In QTGMC, adding DCT=5 sometimes helps with fades. Last edited by -Vit-; 31st May 2012 at 16:03. |
|
31st May 2012, 16:59 | #522 | Link | |||
partially-informed layman
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
|
Thanks. Now fixed.
Quote:
Quote:
Quote:
Notwithstanding -Vit-'s suggestions, which of the following scripts makes more sense for avoiding banding in this scenario? Or something else? And should I be looking at using a "coarser" dither? Code:
... QTGMC() Spline36Resize(1920,1080) dfttest (lsb=true) DitherPost () Code:
... QTGMC() Spline36Resize(1920,1080) GradFun3 () |
|||
1st June 2012, 10:40 | #523 | Link |
partially-informed layman
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
|
Well, I'm getting a pretty good result with this...
Code:
QTGMC( Preset="Slower" ) Spline36Resize(1920,1080) dfttest GradFun3 (radius=16) Now I'm wondering if all I should be doing to avoid this banding in the fade on YouTube is just to add noise with AddGrainC? Or if it's simply unavoidable no matter what I do due to YouTube's encoder and the Flash Player? I'm also interested in what the code might be for implementing a mask that would make the filter only operate on the blue water and not the darker areas of the diver and near-black cave. Here's a link to a frame grab after QTGMC and resizing, but without any denoising or debanding/dithering. And here's a link direct to the part of the video with the "radiating" banding. Obviously it behaves differently at different resolutions. |
1st June 2012, 14:14 | #524 | Link |
͡҉҉ ̵̡̢̛̗̘̙̜̝̞̟̠͇̊̋̌̍̎̏̿̿
Join Date: Feb 2009
Location: No support in PM
Posts: 712
|
It will be very difficult to get rid of the band crawling in a Youtube video. Maybe you can try GradFun3 (mode=6, ampn=4, staticnoise=true) on this fade, but I doubt it will be of any use.
You could also give a try to the LumaDB script.
__________________
dither 1.28.1 for AviSynth | avstp 1.0.4 for AviSynth development | fmtconv r30 for Vapoursynth & Avs+ | trimx264opt segmented encoding |
1st June 2012, 15:42 | #525 | Link |
Registered User
Join Date: Mar 2012
Location: Texas
Posts: 1,664
|
Hi nhope, for the most part I usually use DGIndexNV and sometimes FFMS2. I use them on my Canon DSLR files with the Cinestyle profile and the colors do not get expanded nor squeezed.
Maybe it would be best if you upload a sample from the original file. |
1st June 2012, 16:08 | #526 | Link | |
Registered User
Join Date: Sep 2007
Posts: 5,346
|
Probably not much you can do. Even if you "fix" it on your end before uploading, by the time YT re-encodes it - the "banding" will come back . You need lots of bitrate to retain dither and noise, and 10bit helps but that's not applicable here
Quote:
|
|
1st June 2012, 20:38 | #527 | Link |
partially-informed layman
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
|
Thanks for the replies. LumaDB at default settings is very bandy. GradFun3 (mode=6, ampn=4, staticnoise=true) is looking very promising! It previews more nicely than everything else I've tried. When I went to encode in MeGUI so I could upload some further tests to YouTube I was mysteriously struck by this problem so I'll report back about the colorspace stuff after I've sorted that out.
|
3rd June 2012, 15:13 | #528 | Link |
Registered User
Join Date: May 2012
Posts: 23
|
I've been using...
Code:
zzz_denoise () DitherPost (mode=2) |
3rd June 2012, 19:55 | #529 | Link | |
Registered User
Join Date: Sep 2004
Location: Near LA, California, USA
Posts: 1,545
|
Quote:
EDIT Link works now. Thank You.
__________________
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. Last edited by Revgen; 4th June 2012 at 13:17. |
|
7th June 2012, 16:01 | #530 | Link |
Registered User
Join Date: Nov 2005
Location: Russia
Posts: 62
|
Code:
Dither_convert_yuv_to_rgb (lsb_in=true) Dither_convert_rgb_to_yuv (SelectEvery (3, 0), SelectEvery (3, 1), SelectEvery (3, 2), \ lsb=true, output="YV24") |
14th June 2012, 19:25 | #531 | Link |
͡҉҉ ̵̡̢̛̗̘̙̜̝̞̟̠͇̊̋̌̍̎̏̿̿
Join Date: Feb 2009
Location: No support in PM
Posts: 712
|
Dither 1.18.0:
Lenchik: Here is another solution to go from YV12 to YV24, assuming progressive frames and MPEG-2 chroma placement: Code:
# Stack16 clip on input w = Width () h = Height () / 2 u = UToY8 ().Dither_resize16 (w, h, kernel="spline36", src_left=0.25, u=1, v=1) v = VToY8 ().Dither_resize16 (w, h, kernel="spline36", src_left=0.25, u=1, v=1) YToUV (u, v, last) # Stack16 clip on output
__________________
dither 1.28.1 for AviSynth | avstp 1.0.4 for AviSynth development | fmtconv r30 for Vapoursynth & Avs+ | trimx264opt segmented encoding Last edited by cretindesalpes; 14th June 2012 at 19:51. Reason: what bug in MVTools |
14th June 2012, 19:48 | #533 | Link |
͡҉҉ ̵̡̢̛̗̘̙̜̝̞̟̠͇̊̋̌̍̎̏̿̿
Join Date: Feb 2009
Location: No support in PM
Posts: 712
|
I was referring to this function, which works as expected.
__________________
dither 1.28.1 for AviSynth | avstp 1.0.4 for AviSynth development | fmtconv r30 for Vapoursynth & Avs+ | trimx264opt segmented encoding |
14th June 2012, 20:13 | #535 | Link |
͡҉҉ ̵̡̢̛̗̘̙̜̝̞̟̠͇̊̋̌̍̎̏̿̿
Join Date: Feb 2009
Location: No support in PM
Posts: 712
|
You're right, I forgot it…
You can redownload the archive, I've just fixed it without changing the version number.
__________________
dither 1.28.1 for AviSynth | avstp 1.0.4 for AviSynth development | fmtconv r30 for Vapoursynth & Avs+ | trimx264opt segmented encoding |
15th June 2012, 13:15 | #536 | Link |
Registered User
Join Date: Mar 2012
Location: Texas
Posts: 1,664
|
Thanks for the update cretindesalpes! I noticed that avstp is still v.1.0.0 instead of v.1.0.1. I don't know if this is by mistake or not.
Last edited by Reel.Deel; 16th June 2012 at 02:46. Reason: spelling |
15th June 2012, 19:37 | #538 | Link |
͡҉҉ ̵̡̢̛̗̘̙̜̝̞̟̠͇̊̋̌̍̎̏̿̿
Join Date: Feb 2009
Location: No support in PM
Posts: 712
|
Reel.Deel:
Yes, a mistake again, shame on me. The package is updated to v1.18.1 with the right dll version. I hope I got everything right this time. Tempter57: Use reducerange=true only if you want to encode with --input-depth 10. In this example, the bitdepth was still 16. But it wasn't very clear actually, so I elaborated a bit more.
__________________
dither 1.28.1 for AviSynth | avstp 1.0.4 for AviSynth development | fmtconv r30 for Vapoursynth & Avs+ | trimx264opt segmented encoding |
17th June 2012, 11:46 | #539 | Link |
Real Harper's Mockingbird
Join Date: Mar 2012
Posts: 14
|
cretindesalpes, hi!
Thank you very much for the great tools that for last years stay to be revolutionary from a technical point of view. It seems, if we use Code:
Dither_convert_8_to_16() Dither_quantize(8, mode=6, reducerange=false) In the above example the reducerange=true variant just flips the MSB and LSB, no other changes also. May be the Crop() is enough here to go back to the natural 8 bits? Thanx Last edited by shark000X; 17th June 2012 at 12:05. |
17th June 2012, 21:21 | #540 | Link |
Registered User
Join Date: Jan 2007
Posts: 729
|
The first command sets LSB part to zeros. Therefore, the second command dithers those zeros into the unchanged MSB. It's sorta logical for the MSB part (8-bit) to be unchanged after that. And since the LSB was zeros too, nothing changed there too.
|
Tags |
color banding, deblocking, noise reduction |
Thread Tools | Search this Thread |
Display Modes | |
|
|