View Full Version : Nandub vs. Gordian Knot
Sasovics
26th January 2003, 01:45
Hi folks!
I have a few questions about encoding using Nandub, and GordianKnot as stats file editor:
1st of all, when I am making a 1st-passin Nandub: when I change something in SBC tab, It does have any influence on stats file ? Or SBC settings must be the same as in the 2nd-pass ?
After a successfull 1st-pass, I load my stats file to GKnot stats reader, then manualy adjust keyframes, calculate the bitrate curve, generate a new stats file and ecf file and then I load them back to the Nandub for 2nd-pass encodnig. As SBC settings for 2nd-pass I am using GordianKnot_default setting with stats file and ecf file generated by GK.
So it means: MBCM=0
Curve compression(symetric)=0%
High pass=0
Low pass=6000
No Lumi
Smoother=0
other setting is on default.So..
..another my queston is: After bitrate calculation in GK stats editor, need I change DRF settings in Nandub for second pass ??? Or should I leave it on default values (2-16)? (Is this DRF information already writen in my new stats file generated by GT ???)
Next thing what I found: Why is by GT Crispness modulation set to 100% ??? If I want a realy crisp result should I change it to 0 % ... or 50 % ?
.. and last thing: the resizing filter:
Mostly I am using resolutions(640x272 or 640x384 depends on source of course)
Picture on all my rips is blurry, not crisp, even if I use precise bicubic filtering. Isn't it because of 100% Crispness modulation ?
Is there any difference between filters which are in Nandub(internal or external) and internal filters of avisynth ? In most cases I am using avisynth filters. But really don't know, which are better.
At the end. I really don't know if this method (using GK as stats file reader) is the best possible way to produce really good quality ... but if u think there are solutions, which will produce better quality as mine described above, I am open for any new idea.
Best regards
SaS
Sasovics
29th January 2003, 09:56
Hi again!
I've found answers to few questions I asked above.
My biggest problem now is, that all my rips are very blurry.
I am using bilinear resize filter from avisynth, no other filters.
I've tried bicubic filter aswell, but it results in many artifacts (and blockies) in picture.
What is my solution here ? What I am doing wrong ?
I've encoded Lord of the rings 1 (extended edition) on 2 CD's with these settings:
Source: PAL
Frameserver: Avisynth with bilinear resize (640x272)
Nandub settings:
Bitrate: 780kbps
minbitrate: 320
Space KFs: 50
Encoding controls: just Antifreeze
Motion based curve modulation: 30%
Curve compression: 23% (by Calc. button) I am using crosspoint of 280
Luma: enabled, th:10 gain:30%
High-pass:270
Low-pass:1600
Smoother:3%
Moton curve parameters: Span:8 Sensitivity: 10 blocks
Crispness modulation: 30%
Enable Bits Reservoir:disabled
Playback delay: 45 seconds
Gauge: 30-35-80
Both hacks:disabled
Correction on low-bitrate conditions: both disabled
DRF Min:2 Max:8
Keyframe quality: Min:4 Max:8
..and I've got just 60% of DivX quality :(
iago
29th January 2003, 14:49
@Sasovics
Just a couple of humble opinions on improving your results:
* Set Key Frame DRF -> Min-Max: 2-4
* Set Low-pass -> 5000 or 6000
* Set curve compression and motion based curve modulation -> 0
* Set crispness modulation -> 10%
* Enable bits reservoir modulation -> enabled
* Payback delay -> 10-12 seconds
* Smoother -> 1-2%
* Disable Luma correction
regards,
iago
edit:
-----
* internal SCD -> 100
* keyframe interval -> 10-12
* options - preferences - scene -> "use alternate" ticked
edit2:
------
* Do NOT use BilinearResize ;)
Sasovics
29th January 2003, 15:03
Hi iago
Thank u for your suggestions. I will try them for sure ;)
BUT ... I have 1 question according your settings:
Shall I use any stats file editor to "adjust" bitrate curve or not ???
Sasovics
edit:
What did u mean: do NOT use blilinear filtering ?
Shall I use bicubic instead of bilinear ? I read it in several guides and articles, that we would have to use bilinear filtering if the bitrate for final movie is low 700-900 kbps (for 1 CD rip for instance) and
bicubic JUST in case of higher bitrates 1400 and so ...
manono
29th January 2003, 16:45
Hi-
You should listen to iago. He knows what he's talking about. Even with 1 CD rips you should use Neutral Bicubic (or some kind of Bicubic). Bilinear smooths quite a bit. Run the compress test before running the first pass. If the percentage is too low, then lower the resolution. You can't always use 640*xxx and have a good looking 1 CD rip. You might use a Temporal Smoother to help with compressibility (the "little noise (fast)" in GKnot when creating the .avs).
And if I may make a suggestion. Load the Default.vcf in Nandub. And you can get the benefit of iago's suggestions without changing the settings within Nandub. When you create the Modified Stats File in GKnot, hit Calculate like you did before. Then, in the top center, under Motion Correction, uncheck the box, hit Customize, and move the slider to 99%. Then in the Luma Correction box just to the right, uncheck the box, hit Customize, and move all the sliders down to zero. Hit Calculate again and watch how the curve flattens out. Save that one. And I frequently raise the F-Size Correction to 300 for 1 CD rips and 400 for 2 CD rips also. Then all you have to do in Nandub is to load your .ecf file, Encode using the Modified Stats File, and set the bit rate.
You said your previous rips were too blurry. Take one of them and load it in Nandub. Then go File-File Information and look at the DivX Quality (0-100). It will take a minute or so, but it will give you a percentage like the compress test does. I'd almost be willing to bet that the number will be less than 60, and maybe even less than 50. If that's true, then that explains why your movies don't look so good.
Sasovics
30th January 2003, 08:14
Originally posted by manono
Load the Default.vcf in Nandub. And you can get the benefit of iago's suggestions without changing the settings within Nandub.
I've loaded "Default.vcf" to Nandub as u suggested me yesterday, but I've found a few differences between settings what has iago suggested me and settings of Gordian's "Default.vcf".
iago's settings:
crispness modulation -> 10%
Enable bits reservoir modulation -> enabled
smoother -> 1-2%
GK Default settings:
crispness modulation -> 100 % ...the most strange setting for me here
Enable bits reservoir modulation -> Disabled i have read in many guides and articles that there is no point to use this feature anymore, since we have now motion based curve modulation feature there
smoother -> 0%
The queston is:
Shall I modify settings which are different to settings suggested by iago ... ?
Regards Sasovics
edit:
----
Originally posted by manono
go File-File Information and look at the DivX Quality (0-100). It will take a minute or so, but it will give you a percentage like the compress test does. I'd almost be willing to bet that the number will be less than 60, and maybe even less than 50. If that's true, then that explains why your movies don't look so good
Using bilinear filtering I've got 60% of DivX quality, but using
neutral bicubic, I've got just about 58 % :(
same resolution, same source
Sasovics
30th January 2003, 08:27
@iago
... are u also using stats file editor to modify your bitrate curve before you load it to Nandub for second-pass encoding ?
manono
30th January 2003, 11:22
Hi-
First about crispness. If we're reading from the same thing (Default VCF), then:
SetCrispness(100,0);
That means that the crispness is 100, modulated by 0. And Doom9 says this about the Crispness Modulation setting:
Crispness modulation: Crispness behaves like an unsharp filter in the DivX codec and on the compression levels being used. When motion is equal to 0 crispness will be 100, on the other hand when motion is up to 300 the value you enter under cripsness modulation will be used. In our example crispness will be 100-30 (the value entered by you in the crispness modulation box) = 70. Noisy movies could require a higher value (for instance: Papillon = 50%)
So, GKnot's default setting does no smoothing (it does it in the default Modified Stats File, or more precisely, he raises DRFs in the motion scenes), and that's the way it should be, in my opinion. But with the default of 30, as the motion increases, the picture gets progressively more smoothed. But there's not much difference between my keeping it at 0 and iago's 10%. We both agree that 30% is too high.
It doesn't matter if you make the settings in Nandub following iago's suggestions (although if you do, there's not much point in using GKnot's Modified Stats File), or use GKnot to make the settings for you. But it's definitely easier to use GKnot. I gave those suggestions about changing the Motion and Luma boxes in GKnot so you can get something like linear scaling of the stats file. That is, your 60% and 58% aren't that bad, and DivX3.11 is known for the sharpness of the picture. I probably would have put a Temporal Smoother in there, or lowered the resolution a bit to get higher numbers, though. But if you were looking in motion scenes and saw that they were blurry, it's because of the Curve Compression that default values in both Nandub and the GKnot generated Modified Stats File perform. So I was giving you an easy way to make the motion and dark and very bright scenes look better.
Sasovics
30th January 2003, 13:07
@manono
I'm afraid, now I do not understand you :(
You said:
SetCrispness(100,0);
that's the same what I have in my default vcf file.
It means, crispness is 100, modulated by 0. Right ?
BUT whed I load this setting to Nandub, I've got 100% in crispness modulation box.
U have suggested me to set it to 10% or either to 0%
which means (if I did not get u wrong) SetCrispness(10,0); or SetCrispness(0,0); in my vcf file.
So in this case ... it means that crispness is 0, modulated by 0 ???
Sasovics
iago
30th January 2003, 15:28
Originally posted by Sasovics
@iago
... are u also using stats file editor to modify your bitrate curve before you load it to Nandub for second-pass encoding ? No, because I do not modify the bitrate curve at all (and set curve compression -> 0 as well as setting motion based curve modulation -> 0 too).
Also, the reason why I prefer to not go above 10% for crispness modulation is that I suspect the codec interprets this setting as only "assigning high DRFs" to high-motion scenes rather than "smoothing" them.
iago
manono
30th January 2003, 18:55
Hi-
I'm afraid, now I do not understand you
That's because I was wrong.:) For the first time I actually loaded the Default.vcf and saw that it sets Crispness modulation to 100%. However, later in his Nandub Guide (http://www.doom9.org/nandub.htm), Doom9 says:
Motion based curve modulation: This is basically a replacement
for Crispness modulation in the above screen. If you enable this
value (set something larger than 0%) you should deactivate the Bitrate reservoir modulation.
So, evidently, MCBM overrides the Crisp. Mod. setting. But I agree, it makes no sense to have Crisp. Mod. at 100%. As iago says, I also don't believe that any actual smoothing is being done with the Crisp. Mod., but only raising DRFs. If you use GKnot's Modified Stats File, then it overrides all the settings anyway. Or you can do it yourself manually.
which means (if I did not get u wrong) SetCrispness(10,0); or SetCrispness(0,0); in my vcf file.
Yes, I just tested that, and you're right. I apologize for misleading you.
Jeffster
31st January 2003, 11:31
@ iago and manono
Hi Guys,
This is my first post, so be gentle with me :)
I have been studying doom9's SBC guide and Koepi's "Nandub options explained" to hopefully create good SBC encodes, and they both seem to be in consensus about the options they recommend.
I'm not sure if these are outdated now or not, or if they have revised their own views since then, but a couple of the options you suggest here conflict with theirs.
I was hoping you could clarify them for me please?
- Set curve compression and motion based curve modulation -> 0
The above guides suggest setting values for these 2 settings, and Koepi says about mbcm "Disable bitrate reservoir modulation, it's not needed anymore with this algo! :-) I got best results for mcFactor (that's it's name in other nandub-hacks) at 20%-30% (i prefer 30% though)."
Has opinions changed since those guides were written?
- Set Key Frame DRF -> Min-Max: 2-4
doom9 says that Nando advices leaving the max at 31, and setting it lower can cause problems?
I know that no 2 movies are alike and the settings for every encode should be tweaked, but I was hoping to at least get in my mind what are good and bad settings, if you know what I mean, and now I have this conflict :(
Hope you all can shed some light on this for me.
Thanks
Jeff
hakko504
31st January 2003, 15:53
Originally posted by Jeffster
- Set curve compression and motion based curve modulation -> 0
The above guides suggest setting values for these 2 settings, and Koepi says about mbcm "Disable bitrate reservoir modulation, it's not needed anymore with this algo! :-) I got best results for mcFactor (that's it's name in other nandub-hacks) at 20%-30% (i prefer 30% though)."
Has opinions changed since those guides were written?
No, partly because there are fewer and fewer people that uses nandub so no one have stepped forward to express a different opinion, and partly because it is a good recommendation. There will always be movies that will look better if this value is tweaked but that is on the other hand true for all settings.
- Set Key Frame DRF -> Min-Max: 2-4
doom9 says that Nando advices leaving the max at 31, and setting it lower can cause problems?
Unless you are aiming for very low bitrates you should leave this value at 2/4. For lower bitrates you can try 2/8, 3/8 or 4/16(extremely low bitrates). Since the quality of all the following frames will depend on how well you encoded the keyframe it is a good idea to use as low settings as possible for keyframe DRF, i.e. 2/4 in most cases. If you are aiming for really high bitrates you can even use 2/2.
Jeffster
31st January 2003, 21:43
Thanks hakko
That is interesting your information about keyframes DRF, it's an area where I can surely improve my encodes. I do recall now in Koepi's guide he said he got good results changing from default of 4x to 2 or 3, but there was no max value in the version of nandub he used, at the time he wrote that guide.
Jeff
(learning something new every day) :)
movmasty
31st January 2003, 22:42
Originally posted by hakko504
No, partly because there are fewer and fewer people that uses nandub
Someone should upgrade that tool, im mainly still using it.
Sasovics
31st January 2003, 23:24
Hi folks!
Right now I finished encoding of James Bond - The world is not enough (with iago's Nandub settings)
and guess what ... I've got 72% of DivX quality :)
I am really satisfied.
... but in other hand, using manono's settings (it means using GKnot's stats editor with settings of motion,luma,and f-size correction)I've got just 65%. :(
With all my respect to manono, I do not wanna say, that his suggestions was wrong. No, it really wasn't.
Because I've tried to encode LOTR1 with the same settings as James Bond and I've got much better results with manono's settings.
Conclusion? ...
After this experience I have to just agree, that every single movie, you're goin' to encode, should have its own UNIQUE settings.
Regards
Sasovics
p.s. just for your consideration, I'm attaching my Nandub setting used by 007 ;)
irtualDub.audio.SetSource(1);
VirtualDub.audio.SetMode(0);
VirtualDub.audio.SetInterleave(1,500,1,0,0);
VirtualDub.audio.SetClipMode(1,1);
VirtualDub.audio.SetConversion(0,0,0,0,0);
VirtualDub.audio.SetVolume();
VirtualDub.audio.SetCompression();
VirtualDub.audio2.SetSource(1);
VirtualDub.audio2.SetMode(0);
VirtualDub.audio2.SetInterleave(1,500,1,0,0);
VirtualDub.audio2.SetClipMode(1,1);
VirtualDub.audio2.SetConversion(0,0,0,0,0);
VirtualDub.audio2.SetVolume();
VirtualDub.audio2.SetCompression();
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetRange(0,0);
VirtualDub.video.SetDivX(820,10);
VirtualDub.video.SetQualityControl(1,0,0,0);
VirtualDub.video.SetMotionDetection(8,10,300,300);
VirtualDub.video.SetCrispness(10,1);
VirtualDub.video.SpaceKF(50);
VirtualDub.video.InternalSCD(100);
VirtualDub.video.SetMinKBPS(320);
VirtualDub.video.SetCurveFile("");
VirtualDub.video.SetCurveMcFactor(0);
VirtualDub.video.SetCurveCompression(0,1);
VirtualDub.video.SetCurveFilter(270,6000);
VirtualDub.video.SetCurveCredits(0,350);
VirtualDub.video.SetLumaCorrectionAmp(0,10,30);
VirtualDub.video.SetCurveRedist(0);
// VirtualDub.video.CalcCurveCompression();
VirtualDub.video.SetCompLevelsMain(2,8);
VirtualDub.video.SetCompLevelsA(300,3,16);
VirtualDub.video.SetCompLevelsB(300,4,16);
VirtualDub.video.SetCompLevelsC(300,5,16);
VirtualDub.video.SetCompLevelsD(300,6,16);
VirtualDub.video.SetCompLevelsE(300,7,16);
VirtualDub.video.SetCompLevelK(2,4);
source PAL 25 FPS
Avisynth TemporalSmoother(2,1)
Neutral bicubic resize (640x272)
the answer why almost all my rips were blurry, is because of bilinear filtering. I won't use it anymore ;)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.