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 January 2021, 18:46 | #821 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
Slowly porting some function documention of Neo fork (from Japanese) to Avisynth wiki.
Achievement of January is: http://avisynth.nl/index.php/DumpFilterGraph Last edited by pinterf; 31st January 2021 at 18:52. |
1st February 2021, 19:42 | #826 | Link |
Acid fr0g
Join Date: May 2002
Location: Italy
Posts: 2,574
|
Is there any way to determine thru AVS+ the apparent and real bit depth of a video stream?
With apparent I call the number of bits (8/10/12/16), with real the non zero part of the bits itself. I am starting to play with > 8 bits scripts and sometimes I have doubts about their real effectiveness.
__________________
@turment on Telegram |
1st February 2021, 20:52 | #827 | Link |
Registered User
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 377
|
Probably ScriptClip can help with detection, but it looks obscure for me and Idk howto write proper detection with it. Vapoursynth's std.FrameEval is much easier .
With python modules we can check md5 or crc of every frame and compare hash values. For example, create few clips (8, 10, 12, 14, 16) and compare source frame's md5 with every modified clip's frame hashes, then append metrics into variable. At exit write log file from metric variable and check found values across entire clip. |
1st February 2021, 21:34 | #828 | Link |
Useful n00b
Join Date: Jul 2014
Posts: 1,667
|
Maybe you can source the 10-bit into a clip c1. Then source it again into c2 and apply ConvertBits(8) followed by ConvertBits(10) to it. Finally do Subtract(c1,c2).Levels(...) to visualize any difference in the two low bits. If the 10-bit source is not real (i.e., low bits all zero) then you won't be able to amp up any visible difference.
BTW, don't forget that high bit depth is not just about getting more resolution, it's also about dynamic range for HDR. |
2nd February 2021, 08:39 | #830 | Link | |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
Quote:
Did you expect a ready made function IsThisSourceReally8bitInFake10bitFormat()? Anyway, you can look at the histogram. e.g. Histogram("levels", bits=10), it is not that wide yet, or else you can show only the histogram part with keepsource=false. Valid histogram resolutions are bits=8,9,10,11,12. |
|
2nd February 2021, 09:28 | #831 | Link |
Acid fr0g
Join Date: May 2002
Location: Italy
Posts: 2,574
|
Given a single frame or a stream, the ability to detect bit depth and the capability to show the color bit value for a reasonable amount of pixels, to understand if all the bit depth is used or only “resized” to a deeper one, adding zeros only.
__________________
@turment on Telegram |
2nd February 2021, 09:37 | #833 | Link | |
Acid fr0g
Join Date: May 2002
Location: Italy
Posts: 2,574
|
Quote:
Will try the histogram ASAP. For Expr, unfortunately I haven’t the capabilities to do it. Thanks, anyway.
__________________
@turment on Telegram |
|
2nd February 2021, 12:57 | #834 | Link | |
Acid fr0g
Join Date: May 2002
Location: Italy
Posts: 2,574
|
Quote:
Would be of much trouble to add an option for 16 bits too?
__________________
@turment on Telegram |
|
2nd February 2021, 13:25 | #837 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
If we are talking about Histogram "bits": a 8 bit histogram has 2^8 (=256) horizontal columns for levels. A 10 bit histogram is shown in 1024 (2^10) columns. And a histogram with 16 bit resolution can be shown on 65536 columns.
|
2nd February 2021, 13:28 | #838 | Link | |
Acid fr0g
Join Date: May 2002
Location: Italy
Posts: 2,574
|
Quote:
Histogram("levels", bits=12,keepsource=false) I can find the true bitdepth of a stream just looking at histograms. That works fine for 8/10/12. How can understand if a stream is 16 bits or 10 bits without bits=16?
__________________
@turment on Telegram |
|
6th February 2021, 00:21 | #840 | Link |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,903
|
Hi Ferenc,
I have just a thing to report. The AviSynth+ 3.7.0 release installer for Windows XP has been shipped with the "wrong" version of C++ Redistributable. Let me explain. There are: - AviSynthPlus_3.7.0_20210111_vcredist_xp.exe - AviSynthPlus_3.7.0_20210111_xp.exe Both builds work just fine on Windows XP and they've been compiled to run on XP targeting v141_xp correctly, so no problem, however the "_vcredist_xp.exe" version isn't shipping the XP compatible Microsoft C++ Redistributable 2015-2019 installer, so what will happen is that the C++ Redistributable that is gonna be installed won't work on XP, hence it will make impossible to use Avisynth. In order to make it work, I've installed the "vcredist" version shipped with AviSynth+ 3.6.1 and then I installed "AviSynthPlus_3.7.0_20210111_xp.exe" without re-installing the C++ Redist and it worked like a charm. I think you should be shipping the vcredist version from AVS 3.6.1 for XP |
Thread Tools | Search this Thread |
Display Modes | |
|
|