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. |
![]() |
#3501 | Link |
Registered User
Join Date: May 2016
Posts: 197
|
Are you telling me I should use MaskTools instead of Levels (I have already thought about it, but I wanted to know whether this is a bug in Levels or not first)? Or are you thinking that Levels is part of MaskTools?
Anyway, thanks for answering. |
![]() |
![]() |
#3503 | Link |
Excessively jovial fellow
Join Date: Jun 2004
Location: rude
Posts: 1,100
|
Levels always uses a LUT currently. There's a comment in the code that says runtime evaluation is todo for 32-bit float input.
The reason it eats so much memory with dithering enabled is that enabling dithering multiplies the LUT size by 256; see line 179 and the subsequent allocation on line 195. |
![]() |
![]() |
#3504 | Link |
Registered User
Join Date: May 2016
Posts: 197
|
Thanks for pointing to the source. And what's the logic that makes a 10bit LUT use the same memory as a 16bit LUT? Is it because of the "garbage" mentioned here? (Garbage means that the most significant bits aren't necessarily zero, although they should be, or?)
And because IsYUV is true for Y8-Y16, line 193 and line 203 imply that a chroma LUT is created for monochrome formats. |
![]() |
![]() |
#3505 | Link |
Moderator
![]() Join Date: Feb 2005
Location: Spain
Posts: 6,732
|
I found a difference between Avs+ and AviSynth 2.60 behaviour.
This script with Avs+: Code:
WavSource("16-bit-int.wav") SSRC(44100) Work fine with AviSynth 2.60 and output a Float wav like be expected by documentation : "Audio is always converted to Float." Please, instead show the error, do the conversion automatically.
__________________
BeHappy, AviSynth audio transcoder. |
![]() |
![]() |
#3506 | Link | |
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,397
|
Quote:
This should instead be mentioned in the AviSynth+ page on the wiki, since you can't expect other AviSynth+ changes to be true for 2.6's doc entries either, save for Plus revisions to be explicitly noted (there are some places it is, right?). I thought the 'no implicit conversions' decision was mentioned on the AviSynth+ page at some point, but may have gotten lost in the updates and that page getting split up. |
|
![]() |
![]() |
#3507 | Link |
Moderator
![]() Join Date: Feb 2005
Location: Spain
Posts: 6,732
|
I can't understand for what introduce unnecesary differences with the standard Avisynth behavior.
Is only a way to obtain bug reports, like mine. I think I read all Avs+ docs and don't see nothing about it.
__________________
BeHappy, AviSynth audio transcoder. |
![]() |
![]() |
#3508 | Link |
Registered User
Join Date: Sep 2003
Location: Berlin, Germany
Posts: 3,062
|
I totally agree with tebasuna. The "+" in AVS+ stands for "Everything which standard AVS has, and then plus a lot of other things". At least this is how it should be.
Breaking backward compatibility is a BAD thing, and it's even worse if it is not a bug, but a deliberate design decision. Even if you think that the standard AVS design is wrong, you cannot just change it because of the huge installed standard AVS user base. If you want to change the design then do something completely different like VapourSynth. Cheers manolito Last edited by manolito; 3rd July 2017 at 22:53. |
![]() |
![]() |
#3510 | Link | |
Excessively jovial fellow
Join Date: Jun 2004
Location: rude
Posts: 1,100
|
If you want bug-for-bug compatibility with Avisynth 2.5.8 until the heat death of the universe, then maybe what you want to use is... Avisynth 2.5.8? But then again, adding an explicit ConvertToFloat call is hardly back-breaking labor for any of you, now is it? In fact, I'd wager it's less work than downgrading to 2.5.8. I mean, yeah, it should be documented that it doesn't implicitly convert anymore, but the presence of implicit conversions has a far greater potential for Surprise and Confusion than removing them does. Yes I know you're used to the old behavior but that doesn't mean it's any less confusing for new users.
Quote:
Either way though, "once you've got a design that a lot of people use you can't ever change it" is a fundamentally brain damaged position to take in software design. Last edited by TheFluff; 4th July 2017 at 00:07. |
|
![]() |
![]() |
#3511 | Link |
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,802
|
There is always something between black and white..., like a option both on system and file level.
__________________
https://github.com/stax76/software-list https://www.youtube.com/@stax76/playlists |
![]() |
![]() |
#3514 | Link | |
Retried Guesser
Join Date: Jun 2012
Posts: 1,373
|
Quote:
|
|
![]() |
![]() |
#3516 | Link | |
Soul Architect
Join Date: Apr 2014
Posts: 2,559
|
Quote:
Same as here. I see no difference. In both cases you need to do explicit conversion. |
|
![]() |
![]() |
#3517 | Link |
German doom9/Gleitz SuMo
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,688
|
I just meant, you don't need explicit for one version and implicit for the other; only explicit for all. Be a good example, be verbose.
![]() |
![]() |
![]() |
#3518 | Link |
Registered User
Join Date: Sep 2003
Location: Berlin, Germany
Posts: 3,062
|
Sorry I do not understand this whole fuss about explicit converttoflow or do it automatically..
SSRC is a filter which is integrated into AviSynth, but which is basically separate code which is not related to AviSynth. SSRC happens to require float input. If the input is not float then it must be converted to float somehow, I don't care if Avisynth does the conversion or if SSRC does it. Since the user obviously wants SSRC, it is safe to assume that he just forgot to do the conversion explicitly. Instead of throwing an error (which is the equivalent of telling the user that he is stupid), why can't SSRC (or AviSynth) do this conversion automatically? It has worked this way for many years, nothing about it is confusing, it just makes my life easier AND IT WORKS! The most important principle for software development is to make it easy to get working results, not to teach the developer about correct programming habits. If Fluffy calls this a "brain damaged approach", I couldn't care less. He can apply his principles when he does Bible studies, there is no room for such principles in the real word. Cheers manolito |
![]() |
![]() |
#3519 | Link | |
HeartlessS Usurer
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,812
|
Quote:
not of type float is just a nuisance and of zero benefit at all, but will for sure break some scripts. EDIT: I cannot think of any positive result coming from being pernickety here.
__________________
I sometimes post sober. StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace "Some infinities are bigger than other infinities", but how many of them are infinitely bigger ??? Last edited by StainlessS; 5th July 2017 at 03:57. |
|
![]() |
![]() |
#3520 | Link | |
Retried Guesser
Join Date: Jun 2012
Posts: 1,373
|
Quote:
EDIT correction, SuperEQ does not accept 16-bit. Last edited by raffriff42; 6th July 2017 at 13:35. |
|
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|