DGCube
From Avisynth wiki
(Difference between revisions)
(version 2022/08/19) |
(→Examples) |
||
(3 intermediate revisions by one user not shown) | |||
Line 2: | Line 2: | ||
{{Filter3 | {{Filter3 | ||
|{{Author/Donald Graft}} | |{{Author/Donald Graft}} | ||
− | |2022/08/ | + | |2022/08/20 |
|3=[https://rationalqm.us/misc/DGCube.zip DGCube.zip] | |3=[https://rationalqm.us/misc/DGCube.zip DGCube.zip] | ||
|4=Adjustment Filters | |4=Adjustment Filters | ||
Line 19: | Line 19: | ||
== [[Script variables|Syntax and Parameters]] == | == [[Script variables|Syntax and Parameters]] == | ||
− | :{{Template:FuncDef|DGCube (clip, string "cube | + | :{{Template:FuncDef|DGCube (clip, string "cube", bool "expand_in", bool "compress_out", string "interp", int "device")}} |
<br> | <br> | ||
::{{Par2| |clip| }} | ::{{Par2| |clip| }} | ||
Line 26: | Line 26: | ||
::{{Par2|cube|string|""}} | ::{{Par2|cube|string|""}} | ||
:::Full path of the 3D LUT file. This must be an Adobe *.cube file. | :::Full path of the 3D LUT file. This must be an Adobe *.cube file. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
<br> | <br> | ||
::{{Par2|expand_in|bool|false}} | ::{{Par2|expand_in|bool|false}} | ||
Line 63: | Line 58: | ||
DGSource("THE GREAT WALL.dgi")<br> | DGSource("THE GREAT WALL.dgi")<br> | ||
# From 4:2:0 10bit planar Limited Range to RGB Planar 16bit Full Range | # From 4:2:0 10bit planar Limited Range to RGB Planar 16bit Full Range | ||
− | [[Avsresize#z_ConvertFormat|z_ConvertFormat]](pixel_type="RGBP16", colorspace_op="2020:st2084:2020:limited=>rgb:st2084:2020:full", dither_type="error_diffusion")<br> | + | [[Avsresize#z_ConvertFormat|z_ConvertFormat]](pixel_type="RGBP16", colorspace_op="2020:st2084:2020:limited=>rgb:st2084:2020:full", resample_filter_uv="Spline64", dither_type="error_diffusion", use_props=0)<br> |
# Load and apply [https://github.com/FranceBB/LinearTransformation "PQ_to_BT709_slope" cube] | # Load and apply [https://github.com/FranceBB/LinearTransformation "PQ_to_BT709_slope" cube] | ||
− | DGCube("PQ_to_BT709_v1.cube", | + | DGCube("PQ_to_BT709_v1.cube", in="full", out="full", lut="full", interp="tetrahedral")<br> |
# From RGB 16bit planar Full Range to YUV420 10bit planar Limited Range with dithering | # From RGB 16bit planar Full Range to YUV420 10bit planar Limited Range with dithering | ||
− | [[Avsresize#z_ConvertFormat|z_ConvertFormat]](pixel_type="YUV420P10", colorspace_op="rgb: | + | [[Avsresize#z_ConvertFormat|z_ConvertFormat]](pixel_type="YUV420P10", colorspace_op="rgb:709:709:full=>709:709:709:limited", resample_filter_uv="Spline64", dither_type="error_diffusion", use_props=0) |
<br> | <br> | ||
== Changelog == | == Changelog == | ||
Version Date Changes | Version Date Changes | ||
+ | 2022/08/20 - "full_range" parameter removed. | ||
+ | - Faster cube loading. | ||
2022/08/19 - Added "expand_in" and "compress_out" parameters. | 2022/08/19 - Added "expand_in" and "compress_out" parameters. | ||
- "full_range" parameter ignored. | - "full_range" parameter ignored. | ||
Line 90: | Line 87: | ||
!!width="150px"| Mirror | !!width="150px"| Mirror | ||
|- | |- | ||
− | !2022/08/ | + | !2022/08/20 |
− | |[https://web.archive.org/web/ | + | |[https://web.archive.org/web/20220821161252if_/https://www.rationalqm.us/misc/DGCube.zip DGCube.zip] |
| | | | ||
|- | |- |
Latest revision as of 15:55, 13 June 2023
Abstract | |
---|---|
Author | Donald Graft |
Version | 2022/08/20 |
Download | DGCube.zip |
Category | Adjustment Filters |
License | Closed source |
Discussion | DG Tools Support Forum |
Contents |
[edit] Description
AviSynth+ plugin to load and apply Adobe 3D LUTs to a clip. DGCube is a CUDA version of the AVSCube filter.
[edit] Requirements
[edit] Syntax and Parameters
- DGCube (clip, string "cube", bool "expand_in", bool "compress_out", string "interp", int "device")
- clip =
- Input clip; the filter receives and delivers either RGBP16 or YUV420P16 color space.
- clip =
- string cube = ""
- Full path of the 3D LUT file. This must be an Adobe *.cube file.
- string cube = ""
- bool expand_in = false
- Expand the input from limited range to full range. Default is false.
- bool expand_in = false
- bool compress_out = false
- Compress the output from full range to limited range. Default is false.
- bool compress_out = false
- string interp = "tetrahedral"
- String specifying the interpolation method: "tetrahedral" (default) or "trilinear".
- string interp = "tetrahedral"
- int device = 255
- GPU device number to use. If device is 255 (default), then the GPU device will be automatically selected.
- int device = 255
[edit] Examples
Apply 3D LUT to clip obtained from BlankClip:
BlankClip(pixel_type="RGBP16", color=$ff0000) DGCube("...\test.cube") ConvertToYUV420()
Apply 3D LUT to HDR10 PQ clip obtained from DGSource using internal YUV<->RGB conversions:
# Source DGSource("THE GREAT WALL.dgi")
# Load and apply "PQ_to_BT709_slope" cube. Input and output is Limited Range YUV420P16 DGCube("PQ_to_BT709_v1.cube", expand_in=true, compress_out=true, interp="tetrahedral")
Apply 3D LUT to HDR10 PQ clip obtained from DGSource using external conversions to RGBP16:
# Source DGSource("THE GREAT WALL.dgi")
# From 4:2:0 10bit planar Limited Range to RGB Planar 16bit Full Range z_ConvertFormat(pixel_type="RGBP16", colorspace_op="2020:st2084:2020:limited=>rgb:st2084:2020:full", resample_filter_uv="Spline64", dither_type="error_diffusion", use_props=0)
# Load and apply "PQ_to_BT709_slope" cube DGCube("PQ_to_BT709_v1.cube", in="full", out="full", lut="full", interp="tetrahedral")
# From RGB 16bit planar Full Range to YUV420 10bit planar Limited Range with dithering z_ConvertFormat(pixel_type="YUV420P10", colorspace_op="rgb:709:709:full=>709:709:709:limited", resample_filter_uv="Spline64", dither_type="error_diffusion", use_props=0)
[edit] Changelog
Version Date Changes 2022/08/20 - "full_range" parameter removed. - Faster cube loading. 2022/08/19 - Added "expand_in" and "compress_out" parameters. - "full_range" parameter ignored. 2022/08/17 - Add support for YUV420P16. 2022/08/11 - VapourSynth support. - 'device' parameter to select GPU device. - Updated user manual. 2022/08/10 - Added tetrahedral interpolation. 2022/08/08 - Ability to open any size cube file, no longer limited to 65. 2022/08/07 - Initial release
[edit] Archived Downloads
Version | Download | Mirror |
---|---|---|
2022/08/20 | DGCube.zip | |
2022/08/11 | DGCube.zip |
[edit] External Links
- Doom9 Forum - FranceBB LUT Collection
- GitHub - ColorMatch3D - tool that creates a .cube 3D LUT that matches colors of a reference image with a different grading. Discussion thread
- GitHub - hlg-tools - this tool suite consists of the basics needed to generate 3D LUTs that will convert video streams from Perceptual Quantizer (PQ) HDR into Hybrid-Log Gamma (HLG) HDR. Discussion thread, original discussion thread
Back to External Filters ←