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 Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 31st January 2021, 18:46   #821  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 1,853
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.
pinterf is offline   Reply With Quote
Old 31st January 2021, 19:32   #822  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
Quote:
Originally Posted by DJATOM View Post
I'll consider it based on my local prices and availability. Literally I need it for filters like eedi3/nnedi3 where 10G memory isn't really a problem. In fact, 2070 with 8G is enough for it, but eedi3 is slow.
Can you process HDR 4k material within 8GB? How many threads? Which GPU based filters do you use?
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 31st January 2021, 20:01   #823  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 311
Yes, it's enough for 4k tonemap or eedi3/nnedi3 upscaling.
__________________
Me on GitHub
PC Specs: Ryzen 3900X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 31st January 2021, 20:24   #824  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
Quote:
Originally Posted by DJATOM View Post
Yes, it's enough for 4k tonemap or eedi3/nnedi3 upscaling.
Do you use any GPU based filter?
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 31st January 2021, 20:35   #825  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 311
All of those filters uses GPU (tonemap is cuda-based and edi stuff is OpenCL).
__________________
Me on GitHub
PC Specs: Ryzen 3900X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 1st February 2021, 19:42   #826  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
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
tormento is offline   Reply With Quote
Old 1st February 2021, 20:52   #827  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 311
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.
__________________
Me on GitHub
PC Specs: Ryzen 3900X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 1st February 2021, 21:34   #828  |  Link
videoh
Useful n00b
 
Join Date: Jul 2014
Posts: 1,442
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.
videoh is offline   Reply With Quote
Old 1st February 2021, 22:11   #829  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
I thank you both for the reply. I find a bit strange that a frame server hasn't functions to analyze the frame properties.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 2nd February 2021, 08:39   #830  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 1,853
Quote:
Originally Posted by tormento View Post
I thank you both for the reply. I find a bit strange that a frame server hasn't functions to analyze the frame properties.
Extremely strange. Specify "analyze", specify "frame properties".
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.
pinterf is offline   Reply With Quote
Old 2nd February 2021, 09:28   #831  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
Quote:
Originally Posted by pinterf View Post
Extremely strange. Specify "analyze", specify "frame properties".
Did you expect a ready made function IsThisSourceReally8bitInFake10bitFormat()?
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
tormento is offline   Reply With Quote
Old 2nd February 2021, 09:36   #832  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 1,853
Besides the above mentioned 10 bit Histogram you can write an expression for that in Expr.
pinterf is offline   Reply With Quote
Old 2nd February 2021, 09:37   #833  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
Quote:
Originally Posted by pinterf View Post
Besides the above mentioned 10 bit Histogram you can write an expression for that in Expr.

Will try the histogram ASAP. For Expr, unfortunately I haven’t the capabilities to do it. Thanks, anyway.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 2nd February 2021, 12:57   #834  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
Quote:
Originally Posted by pinterf View Post
Anyway, you can look at the histogram. e.g. Histogram("levels", bits=10)
I made a simple AVS script and, opening it in VirtualDub2, I can see that, when a video stream has a bit depth minor than the bits parameter, I can see "gaps" in the graph of levels.

Would be of much trouble to add an option for 16 bits too?
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 2nd February 2021, 13:10   #835  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 1,853
For practical reasons the option is disabled. I hope that no one wants to display a clip with width=65536.
pinterf is offline   Reply With Quote
Old 2nd February 2021, 13:11   #836  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
Quote:
Originally Posted by pinterf View Post
For practical reasons the option is disabled. I hope that no one wants to display a clip with width=65536.
Wait... what has bits to do with width?
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 2nd February 2021, 13:25   #837  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 1,853
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.
pinterf is offline   Reply With Quote
Old 2nd February 2021, 13:28   #838  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,704
Quote:
Originally Posted by pinterf View Post
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.
I am talking about "bits" parameter, i.e.

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
tormento is offline   Reply With Quote
Old 2nd February 2021, 13:36   #839  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 1,853
Quote:
Originally Posted by tormento View Post
I am talking about "bits" parameter, i.e.

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?
Then you have to learn Avisynth, especially Expr or masktools lut expressions, or think about other techniques. Or ask your stream sources where they obtained a 16 bit master from.
pinterf is offline   Reply With Quote
Old 6th February 2021, 00:21   #840  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Metropolitan City of Milan, Italy
Posts: 1,411
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
FranceBB is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

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 00:52.


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