Log in

View Full Version : [DoVi_Scripts] Multi-Function Scripts for Dolby Vision processing and a lot more...


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 [32] 33 34 35 36 37 38 39 40 41 42

Kuler087
20th November 2025, 17:04
It’s been possible for a while: Workflow 8-2-6.
If you want to use CRF encoding, you’ll need to edit the DEE Python script as instructed and adjust the script settings; otherwise it will default to 2-pass bitrate, which is a waste of time.

en6ads
20th November 2025, 17:38
It’s been possible for a while: Workflow 8-2-6.
If you want to use CRF encoding, you’ll need to edit the DEE Python script as instructed and adjust the script settings; otherwise it will default to 2-pass bitrate, which is a waste of time.

Awesome! Last time I looked into it in September you mentioned this:


Also, script 8-2-6 uses FFmpeg ProRes, which doesn’t support 12-bit encoding, so even though the DoVi Baker output is 16-bit RGB, the 12-bit data from the FEL is lost during ProRes encoding. The solution would be to use JPEG 2000, but I haven’t found a way to produce files compatible with DEE in FFmpeg.

The encoding quality is as good as x265.exe, if you edit the Dolby Python script to use CRF and custom settings as explained in the workflow notes (their default settings are terrible: no wonder many streaming platforms have worse DV encoding than HDR10). Overall, I find DEE’s HEVC compression slower and less efficient.

When you mentioned the FEL data is lost I decided to not continue.

Does that mean you've solved the 12-bit issue since then?

Edit. My question was about bypassing the above contstraint, mentioned here:

No. Which is why I used OpenEXR in order to export the 16 bit data with the 12 bit signal inside in a lossless compression format. From there it was easy to use Mezzinator in order to create an MXF compliant file from the resulted image sequences or by just using ProRes 4444XQ.

OpenEXR is really good when it comes to compression compared to TIFF or any other formats. I reduced the file size about half using this method.


Thank you.

Kuler087
20th November 2025, 17:59
Only the 12-bit precision is lost, and that’s irrelevant in practice since consumer displays are limited to 10-bit output. All the important aspects, expanded brightness range, color volume, shadow detail, and film grain remain intact exactly as they would in any standard P8 HEVC encode with dovi_baker.
You could convert the source to EXR (roughly 2 TB) and then to JPEG 2000 (likely another 2 TB) just to keep the 12-bit depth, but it’s pointless. The comparison I posted earlier in that thread shows there’s no visible benefit.

en6ads
20th November 2025, 18:23
Only the 12-bit precision is lost, and that’s irrelevant in practice since consumer displays are limited to 10-bit output. All the important aspects, expanded brightness range, color volume, shadow detail, and film grain remain intact exactly as they would in any standard P8 HEVC encode with dovi_baker.
You could convert the source to EXR (roughly 2 TB) and then to JPEG 2000 (likely another 2 TB) just to keep the 12-bit depth, but it’s pointless. The comparison I posted earlier in that thread shows there’s no visible benefit.

OK thanks. I suppose I don't know enough about how 10-bit IPTPQc2/IPT is handled by TVs and if there's any visual benefit such as reduced banding vs 10-bit YPbPr.

https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcScfwRyYYAPBQr_DPKbATqiQgLvDM9JZffb3w&s

I get that FEL 12-bit YPbPr is 2 bits more than our TV panels, but what about 10-bit IPTPQc2/IPT when displayed on a 10-bit panel? Since 10-bit IPTPQc2/IPT is "supposed" to be more efficient than 10-bit YPbPr, doesn't that mean more of the FEL precision is rendered on the display compared to YPbPr? I don't know how LG/Dolby implements it in practice.

Edit: From Kaleidescape Owners' Forum:

By transforming the 12-bit YCbCr master image to ICtCp, Profile 5 is able to use the 10-bit video decoding engines present on current system-on-chip designs like the one used in Strato V, and it has no need for a second decoder, which these chips don’t have. Since HDMI doesn’t support ICtCp, Profile 5 players like Strato V convert the decoded ICtCp color back to 12-bit YCbCr during playback and send that 12-bit signal to the display.

The result is that Strato V’s Profile 5 playback is accomplishing the same thing as Profile 7 with FEL — it’s recovering the fidelity of the 12-bit YCbCr master image and delivering it alongside dynamic metadata. And, as a bonus, if connected to an HDR10 display, Strato V will convert that ICtCp image to an HDR10-compatible output that retains the 12-bit YCbCr. You do lose the dynamic metadata since that’s not supported by HDR10.

OK looks like HDMI does not support ICtCp, so conversion back to 12-bit YCbCr is required. OK, I see now transcoding from P7 FEL to P5 is not helpful if transmitted by HDMI.

Maybe local file playback. But I'm thinking it's still not worth the effort.

Thank you.

Kuler087
20th November 2025, 18:37
The comparison I posted (https://forum.doom9.org/showpost.php?p=2024824&postcount=1531) is in 16-bit RGB HDR and you can check it out in 12bit from an htpc.

alexmorph3us
20th November 2025, 18:50
Only the 12-bit precision is lost, and that’s irrelevant in practice since consumer displays are limited to 10-bit output. All the important aspects, expanded brightness range, color volume, shadow detail, and film grain remain intact exactly as they would in any standard P8 HEVC encode with dovi_baker.
You could convert the source to EXR (roughly 2 TB) and then to JPEG 2000 (likely another 2 TB) just to keep the 12-bit depth, but it’s pointless. The comparison I posted earlier in that thread shows there’s no visible benefit.

There's no need to convert that further to JPEG2000 for another 2tb because you can use a TIFF exported list from the DoVi Baker script using FFMPEG directly in Workflow 8-2-6 since the python script accepts that.
You can always split the movie by chapters in order to accomodate with the storage and then put it back together.

Kuler087
20th November 2025, 18:56
How large is a 2H movie in TIFF images? Probably much larger than JPEG2000 or EXR ? Like 2TB per hour ?

alexmorph3us
20th November 2025, 19:00
How large is a 2H movie in TIFF images? Probably much larger than JPEG2000 or EXR ? Like 2TB per hour ?

From my personal tests, an uncompressed TIFF frame image is around 18 MB for a 4K resolution or 9.04 MB for 1080p if you scale it in half in the Avisynth script. Then you multiply it by 23.976 frames per second for a second then another 60 seconds for a minute and then add the lengh of the movie and you get your final output.

Kuler087
20th November 2025, 19:02
18mb seems very low for uncompressed, especially for grainy 16:9 content. My script uncompressed images (7-1 / 7-2) are often in the 40mb

alexmorph3us
20th November 2025, 19:08
Anyway an option would be nice to have besides JPEG2000 which is considered a lossy format. Also, in Workflow 8-2-1 it would be great to have the option to use ProRes directly so I don't have to use StaxRip for the final encoding. The way it is now it defaults to DEE encoding no matter what.

ProRes 4444XQ can be a great alternative when it comes to reducing the file size while preserving the 12 bit essence inside.

I believe that those external tools can be used in an automated script in order to make things easier.

en6ads
20th November 2025, 19:19
The comparison I posted (https://forum.doom9.org/showpost.php?p=2024824&postcount=1531) is in 16-bit RGB HDR and you can check it out in 12bit from an htpc.

Thanks for sharing.

I think what comparison I need is this:

On a 10-bit Dolby Vision display,
With a 12-bit or greater Master,
12-bit YPbPr vs 10-bit YPbPr vs 10-bit IPTPQc2/IPT.

On a 10-bit Dolby Vision display, is there less banding with 10-bit IPTPQc2/IPT compared to 10-bit YPbPr when both are sourced from a 12-bit or greater master?

Edit: I asked some AIs this question:

On a 10-bit Dolby Vision display such as the LG G5, is there less banding with 10-bit IPTPQc2/IPT compared to 10-bit YPbPr when both are sourced from the same 12-bit or greater master? I know HDMI does not support ICtCp, so let's assume the comparison is local file playback only.

Grok 4.1:
Yes, there is less banding with 10-bit Dolby Vision using IPTPQc2 (also called ICtCp or IPT) compared to 10-bit YPbPr (YCbCr) when both come from the same 12-bit (or higher) master, assuming local file playback on a display like the LG G5 OLED.
Why ICtCp/IPTPQc2 Reduces Banding More Effectively
ICtCp (the color space behind IPTPQc2 in Dolby Vision Profile 5) is perceptually optimized for human vision in HDR. It provides better hue linearity, more constant luminance, and more uniform quantization than traditional YCbCr/YPbPr. In quantization error tests (e.g., CIEDE2000), 10-bit ICtCp delivers smoothness equivalent to about 11.5-bit YCbCr. This means fewer visible steps (banding) in gradients, skies, skin tones, and high-saturation areas, even though both are encoded at 10 bits.
Dolby Vision Profiles using ICtCp (primarily Profile 5, single-layer, no HDR10 fallback) keep the full efficiency of the color space. The dynamic metadata (RPU) and reshaping then recover the 12-bit master's detail with minimal posterization on a 10-bit panel.
In contrast, Profiles using YPbPr/YCbCr (e.g., Profile 8.x, dual-layer with HDR10 fallback, common in UHD Blu-ray and most streaming) lose some of that perceptual efficiency. Even with 12-bit-capable variants (like FEL/MEL), the underlying color encoding is less optimal, so quantization noise becomes more visible when down-converted to 10-bit display output.
LG OLED-Specific Behavior (Including G5)
LG OLEDs (from ~2017 onward, including the G5) are native 10-bit panels but accept higher-bit-depth signals for internal processing. In Dolby Vision mode:

The TV's Dolby Vision engine processes the signal at high precision (effectively 12-bit or higher internally).
For Profile 5 (ICtCp), the more efficient encoding + internal processing yields noticeably smoother gradients.
For YCbCr-based profiles, the TV still benefits from Dolby Vision tone-mapping, but the base color representation is less efficient → slightly more risk of visible banding in critical content.

Real-world reports (from high-end rips and local playback tests) consistently show Profile 5 files looking cleaner in challenging gradients than Profile 7/8 versions of the same master, even on LG OLEDs.


I then asked this question:
On a 10-bit Dolby Vision display such as the LG G5, is there less banding with 10-bit IPTPQc2/IPT compared to 12-bit YPbPr when both are sourced from the same 12-bit or greater master? I know HDMI does not support ICtCp, so let's assume the comparison is local file playback only.

Grok 4.1:
Yes, on an LG G5 (or any recent LG OLED) with local file playback, a 10-bit IPTPQc2/ICtCp-based Dolby Vision file (Profile 5 or Profile 8 MEL with ICtCp) will almost always show noticeably less banding than a 12-bit YCbCr/YPbPr-based Dolby Vision or HDR10 file from the same ≥12-bit master.
Why 10-bit ICtCp Beats 12-bit YCbCr for Banding
ICtCp (the color space used in IPTPQc2) is perceptually quantized much more uniformly than YCbCr. Independent measurements (Dolby papers, ITU reports, and real-world code-value tests) show:

10-bit ICtCp has roughly the same or lower visible quantization error as ~11.5- to 12-bit YCbCr in luminance and especially in saturated colors.
In hue-linear gradients (sunsets, skies, skin tones, colored lighting), ICtCp needs ~1.5–2 fewer bits to achieve imperceptible steps compared to YCbCr.

So even though the YCbCr version has 12 bits (4096 code values per channel) vs 10 bits (1024 code values) in ICtCp, the ICtCp version still wins on smoothness because the 1024 code values are distributed where the eye is most sensitive.
Real-World Evidence on LG OLEDs (including G-series)
AVSForum, Reddit (r/hometheater, r/OLED), and Makemkv users who compare rips regularly report:

Dolby Vision Profile 5 (single-layer, full ICtCp, 10-bit) or Profile 8 MEL with ICtCp from UHD Blu-ray → cleanest gradients, often described as “buttery smooth” or “zero banding” in problematic scenes (e.g., Dune desert skies, Oppenheimer fission cloud, dark space scenes in The Creator).
The same title in 12-bit YCbCr HDR10 or Dolby Vision Profile 7/8 (non-ICtCp) from streaming or forced YCbCr rips → visible banding or grain clumping in the same scenes, even though it’s 12-bit.

LG OLEDs (including the G5) perform high-precision internal processing (effectively >12-bit) and apply excellent dithering, but they can’t overcome fundamentally inefficient code-value distribution in YCbCr. ICtCp gives them cleaner source data to begin with.


Hmm. Maybe the absolute best possible FEL playback quality is to encode to P5 (with preserving the 12 bits before DEE encoding), and playing file on the TV either locally from USB or from an LG app such as Plex or something. Just not via HDMI source. Or does the DV tunnel (8 bit RGB) allow the ICtCp to pass through HDMI?

But I think it comes down to how each is processed / implemented internally.
So I asked this question:
In an LG G5 or C5, how is 10-bit IPTPQc2/IPT internally processed, and how does this compare to 12-bit YPbPr processing?

And got this answer:

On LG 2025 OLEDs like the G5 (with α11 AI Processor Gen2) and C5 (with α9 AI Processor Gen8), the internal processing pipeline for Dolby Vision differs significantly depending on whether the source uses 10-bit IPTPQc2/ICtCp (primarily Profile 5 single-layer files, or untouched Profile 8 MEL with ICtCp — possible only via local playback like USB/HDD or certain media servers) or 12-bit YPbPr/YCbCr (standard for HDMI-sourced Dolby Vision from streaming, UHD Blu-ray, or consoles).

Shared Aspects of Processing (Both Formats)
The panel itself is native 10-bit (all consumer OLEDs are; there are no 12-bit consumer panels).
LG's SoC (Alpha-series processor) performs high-precision internal calculations — effectively 12–16 bits or higher floating-point in the Dolby Vision tone-mapping and reshaping engine.
Dynamic metadata (RPU) is always applied frame-by-frame (or scene-by-scene) at high precision.
Final output to the panel is 10-bit + temporal/spatial dithering (FRC) to simulate extra smoothness.
The Dolby Vision hardware decoder and display management engine are the same; the difference is in the source color encoding efficiency.
10-bit IPTPQc2/ICtCp Processing (Profile 5 or native ICtCp MEL)
The TV's internal media player (or DLNA server) decodes the HEVC stream directly.
Video stays in native 10-bit ICtCp domain from decoder → Dolby Vision engine.
The processor applies the dynamic RPU (trim passes, reshaping curves) entirely in ICtCp space at very high internal precision (≥12-bit equivalent).
Only at the final stage (after tone-mapping, detail recovery, etc.) does the signal get converted to RGB 10-bit for the OLED panel.
Key advantage — No lossy color space conversion until the very end. ICtCp's perceptually uniform quantization means the 10-bit code values are already optimally distributed → minimal quantization noise even before dithering.
Result on G5/C5: Extremely smooth gradients, virtually no visible banding/posterization in critical content (skies, sunsets, smoke, skin tones under colored light). Many users describe Profile 5 files as “buttery” or “film-like” on these sets.

12-bit YPbPr/YCbCr Processing (Standard HDMI-sourced Dolby Vision or HDR10)
Signal arrives over HDMI as 10-bit or 12-bit YCbCr (4:2:2 or 4:2:0).
The Dolby Vision engine converts the base/enhancement layers from YCbCr → internal working space (effectively ICtCp-like or linear RGB at high precision).
Dynamic metadata and reshaping are applied.
Final conversion to RGB 10-bit for the panel (with dithering).
Result on G5/C5: Still excellent thanks to LG's high-precision engine and great dithering, but the original YCbCr encoding is less efficient → slightly higher risk of visible quantization steps in the same challenging scenes, even though the source has “more bits.”

Bottom Line for G5/C5 Owners
The 2025 Alpha 11 (G5) and Alpha 9 Gen8 (C5) processors do not treat 10-bit ICtCp as “lower quality” just because it’s 10-bit — they treat it as higher fidelity because it avoids the inefficiencies and extra conversion steps of YCbCr. This is why enthusiasts go out of their way to play untouched Profile 5 or full-MEL ICtCp rips via USB: the gradient performance is objectively and visibly better than even 12-bit YCbCr Dolby Vision from external sources, despite the panel being 10-bit either way.


Thoughts?

Kuler087
21st November 2025, 00:20
I think what comparison I need is this:

On a 10-bit Dolby Vision display,
With a 12-bit or greater Master,
12-bit YPbPr vs 10-bit YPbPr vs 10-bit IPTPQc2/IPT.

Try these. There's a slight improvement with P5, but not a lot. P8, P7, P5 all look miles better than HDR10 and SDR on LG TVs. And my Samsung QD-OLED monitor looks a lot better than LG.

https://mega.nz/folder/FG1X1DCK#rf7riUbSuhGF4gd8N0FyIg

https://i.ibb.co/x8mSjXV6/firefox-06-Yi-FIMHfk.png

For reference, this is how horrible it looks in HDR10 on LG: https://slow.pics/c/ij0YwKgT?canvas-mode=fit-height

https://i.ibb.co/rKfkd3KZ/chrome-LKS0w-Ph-A0v.gif

en6ads
21st November 2025, 01:16
Try these. There's a slight improvement with P5, but not a lot.

For reference, this is how horrible it looks in HDR10 on LG:

Thanks for sharing. Wow, HDR10 banding looks like 8-bit.

OK, I'd like to test 10-bit P5 playback both locally (USB) and through HDMI (with DV tunneling) with other movies. Your Green Lantern is a great example to start.

If you can find a way to update your script to enable DEE P5 encode from a 12-bit FEL (that preserves the 12-bit somehow, like with lossless tiffs or something) that would be awesome.

Much appreciated. Thank you for everything you do.

Kuler087
21st November 2025, 01:44
If you can find a way to update your script to enable DEE P5 encode from a 12-bit FEL (that preserves the 12-bit somehow, like with lossless tiffs or something) that would be awesome.
Yes I'll add TIFF sequence support later.

FYI, the green knight P5 sample was encoded from YCbCr 12-bit fel to JPEG2000 12-bit to P5 ipt, so the 12-bit essence is 100% preserved in the sample.

Also, in Workflow 8-2-1 it would be great to have the option to use ProRes directly so I don't have to use StaxRip for the final encoding..

Try this (https://drive.google.com/file/d/128gq8aDUTKA_aT7SQsM9dkjA1EP1sosR/view?usp=drive_link)

Deithwen
21st November 2025, 05:07
I can't get it to run. All the dependencies are installed and the tools are up to date. The GUI version works but it doesn't seem to have the option to convert Profile 5 to 8.

https://i.postimg.cc/90p52p1T/2025-11-2105-41-40-ezgif-com-video-to-gif-converter.gif

Kuler087
21st November 2025, 12:49
It looks like you might be running the script with administrator privileges?

alexmorph3us
21st November 2025, 16:13
Yes I'll add TIFF sequence support later.

FYI, the green knight P5 sample was encoded from YCbCr 12-bit fel to JPEG2000 12-bit to P5 ipt, so the 12-bit essence is 100% preserved in the sample.



Try this (https://drive.google.com/file/d/128gq8aDUTKA_aT7SQsM9dkjA1EP1sosR/view?usp=drive_link)

It works. Thank you, Kuler!

Only thing that is left is adding the option to export as TIFF/EXR Image Sequences in Workflows like 8-2-3 and add them directly in Workflows like : 3-1/6-2, 8-2-1, 8-2-2, 8-2-4 or 8-2-6.

en6ads
21st November 2025, 21:37
Or does the DV tunnel (8 bit RGB) allow the ICtCp to pass through HDMI?

I can't find much information about this and I'm still learning.

Dolby's ICtCp patents (https://patents.google.com/patent/WO2017184784A1/en)and IP are all about streaming. It's not part of the BD spec, nor HDMI spec.

Of the three main AIs (ChatGPT, Grok, Gemini), two say no it gets converted to YCbCr first before HDMI tunneling, and the last one says yes the ICtCp remains in tact!

Hmm. I'll keep digging.

I'd rather not have to set up a DNLA server and play back P5 encodes using an LG native app to bypass any HDMI limitations with IPTPQc2/ICtCp, but if yields the absolute best possible image (better than FEL YCbCr) I'm willing to try it.

Kuler087
21st November 2025, 22:13
I wouldn’t trust an AI chatbot for this kind of information.
For what it’s worth, I don’t see any banding/posterization difference between the Ugoos and my G5’s internal player with the Green Knight Profile 5 sample.

Kuler087
21st November 2025, 22:32
It works. Thank you, Kuler!

Only thing that is left is adding the option to export as TIFF/EXR Image Sequences in Workflows like 8-2-3 and add them directly in Workflows like : 3-1/6-2, 8-2-1, 8-2-2, 8-2-4 or 8-2-6.

Try this version. (https://drive.google.com/file/d/128gq8aDUTKA_aT7SQsM9dkjA1EP1sosR/view?usp=drive_link)

You have to enable it at line 190

:: enable uncompressed tiff in 8-2-3 and 8-2-6 for FEL input (default = NO)
set enable_uncompressed_tiff=NO

No cropping if the input is a folder with tiff images.
If input is a mkv, then cropping + tiff is possible.

In the tests I conducted, the TIFF images are 40-47 MB, so we're talking about something like 4TB per hour. I'm not sure how usable this is, and I certainly won't use it personally; ProRes 10-bit is good enough for me.

alexmorph3us
21st November 2025, 23:30
Try this version. (https://drive.google.com/file/d/128gq8aDUTKA_aT7SQsM9dkjA1EP1sosR/view?usp=drive_link)

You have to enable it at line 190

:: enable uncompressed tiff in 8-2-3 and 8-2-6 for FEL input (default = NO)
set enable_uncompressed_tiff=NO

No cropping if the input is a folder with tiff images.
If input is a mkv, then cropping + tiff is possible.

In the tests I conducted, the TIFF images are 40-47 MB, so we're talking about something like 4TB per hour. I'm not sure how usable this is, and I certainly won't use it personally; ProRes 10-bit is good enough for me.

Thank you so much! I'll give it a try.

en6ads
21st November 2025, 23:37
I wouldn’t trust an AI chatbot for this kind of information.
For what it’s worth, I don’t see any banding/posterization difference between the Ugoos and my G5’s internal player with the Green Knight Profile 5 sample.

Agree. Internally I think it's all processed in 12 or more bits, then lossy converted to RGB for each pixel. So there may not be any benefit at all here.

Deithwen
22nd November 2025, 03:19
It looks like you might be running the script with administrator privileges?

Yeah, it didn't normally run, so I thought maybe elevating it could get it to run.

TR-9970X
22nd November 2025, 04:52
Pretty basic question..

Is there any point or advantage to converting a 23.9xx fps 4K to 60fps (or higher).

Kuler087
22nd November 2025, 14:05
imo no

alexmorph3us
22nd November 2025, 15:30
Kuler087, if you don't mind I noticed that in Workflow 8-2-3 in the latest beta the Avisynth does a conversion from RGB 16 bit that DoVi Baker produces to YUV444P16 using z_ConvertFormat and then back to RGB 16 bit for the TIFF export. I think it is a mistake because it should be a direct export to RGB 16. From what I know, converting from RGB to YUV you will always loose some information in the process because it's lossy, not the other way around though. Also LZB is a lossless compression algorithm, so it's not actually uncompressed tiff like it says on line 190 in the script. Perhaps you can take a look at it:


=============================SCRIPT==============================================================================
LoadPlugin("F:\DoVi.Scripts\tools\dgdecnv_242\DGDecodeNV.dll")
LoadPlugin("F:\DoVi.Scripts\tools\DoViBaker_x64.dll")
LoadPlugin("F:\DoVi.Scripts\tools\avs_libplacebo.dll")
LoadPlugin("F:\DoVi.Scripts\tools\avsresize_r21\x64\Release\avsresize.dll")
bl = DGSource("F:\DoVi.Scripts\temp.folder31\BL.dgi")
el = DGSource("F:\DoVi.Scripts\temp.folder31\EL.dgi")
SetFilterMTMode("DoViBaker",2)
DoViBaker(bl, el, rpu="F:\DoVi.Scripts\temp.folder31\RPU_FEL.bin")
z_ConvertFormat(pixel_type="YUV444P16",colorspace_op="rgb:st2084:2020:full=>2020ncl:st2084:2020:full",dither_type="error_diffusion",resample_filter="spline36",resample_filter_uv="spline36",chromaloc_op="left=>top_left")
Prefetch(8)
Spline36Resize(Width / 2, Height / 2)
=================================================================================================================

============================COMMAND==============================================================================
INPUT: "F:\DoVi.Scripts\Movie_Original.mkv"
"F:\DoVi.Scripts\tools\ffmpeg.exe" -i "F:\DoVi.Scripts\temp.folder31\script.avs" -pix_fmt rgb48le -compression_algo lzw -color_primaries bt2020 -color_trc smpte2084 -colorspace bt2020nc -start_number 0 -y "F:\DoVi.Scripts\Movie_Original_tiff\%06d.tiff"
=================================================================================================================

alexmorph3us
22nd November 2025, 19:24
So I changed the argument in lines: 23259, 23260, 23269 and 23274 from "-compression_algo lzw" to "-compression_algo raw" and deleted lines: 23190, 23191, 23209 and 23210 entirely so that the export can be RGB 16 bits directly without unnecessary additional processing. This is the result:

_____ __ ___ _____ _ _
| __ \ \ \ / (_) / ____| (_) | |
| | | | __\ \ / / _ | (___ ___ _ __ _ _ __ | |_ ___
| | | |/ _ \ \/ / | | \___ \ / __| '__| | '_ \| __/ __|
| |__| | (_) \ / | | ____) | (__| | | | |_) | |_\__ \
|_____/ \___/ \/ |_| |_____/ \___|_| |_| .__/ \__|___/
-Author: RESET_9999--------------------------|__|-----------



1) MODE.I= INJECT / EDIT / EXTRACT / INFO / VALIDATE
2) MODE.F= VERIFY SYNC / REMOVER / TRANSFER LEVELS
3) MODE.H= DoVi MAKER from HDR10 (Dolby Algo or MadVR or HDR10+)
4) MODE.7= DoVi Profile 7 Input (MKV/BDMV)
5) MODE.B= DoVi MKV Batch Muxer
6) MODE.P= Plotter (DoVi/HDR10/HLG/SDR)
7) MODE.S= Screenshots & Player
8) MODE.E= Encoders (video and audio)
9) MODE.M= MORE

Choice? [1,2,3,4,5,6,7,8,9]?8

======================
- SELECT A MODE -
======================

1) MODE.A= AUDIO Encoding (DDP, THDAC3, DEE)
2) MODE.V= VIDEO Encoding (x265/Prores/dovi_baker/libplacebo/cm_offline)

Choice? [1,2,3]?2

=========================
- SELECT A WORKFLOW -
=========================

1) Workflow.1= X265: HDR to HDR (DVP7/DVP8/DVP5/HDR10/HLG)
2) Workflow.2= X265: HDR to SDR (DVP7/DVP8/DVP5/HDR10/HLG)
3) Workflow.3= PRORES: HDR to HDR (DVP7/DVP8/DVP5/HDR10/HLG)
4) Workflow.4= PRORES: DV to SDR (Dolby CM_Offline DV Trim Pass delivery)
5) Workflow.5= PRORES: SDR to HDR-100nits
6) Workflow.6= DoVi-P5: P8/P7/prores/MXF to Profile 5 DV HEVC (require DEE.exe)
7) Workflow.7= AQ _strength compression tool
8) Workflow8= back to main menu

Choice? [1,2,3,4,5,6,7,8]?3


============
- ENCODERS -
============

-------------------------------------------------------------------------------------
-- Can Encode any HDR source(DVP7/DVP5/DVP8/HDR10/HLG) to HDR PRORES 422 HQ
-- Require Avisynthplus https://github.com/AviSynth/AviSynthPlus/releases
-- Libplacebo SDR tone mapping and P5/HLG input require a gpu with vulkan support
-------------------------------------------------------------------------------------

Drag and drop a video and press enter...
F:\DoVi.Scripts\Movie_Original.mkv



Reading input tracks format/id/language...
Done.
Extracting track 0 with the CodecID 'V_MPEGH/ISO/HEVC' to the file 'F:\DoVi.Scripts\temp.folder31\BL.P7.hevc'. Container format: HEVC/H.265 elementary stream
Progress: 100%

Indexing the HDR10 base layer...
Project
100

Indexing the DV 12bits enhancement layer...
Project
100

Reordering metadata... Done.

=============================SCRIPT==============================================================================
LoadPlugin("F:\DoVi.Scripts\tools\dgdecnv_242\DGDecodeNV.dll")
LoadPlugin("F:\DoVi.Scripts\tools\DoViBaker_x64.dll")
LoadPlugin("F:\DoVi.Scripts\tools\avs_libplacebo.dll")
LoadPlugin("F:\DoVi.Scripts\tools\avsresize_r21\x64\Release\avsresize.dll")
bl = DGSource("F:\DoVi.Scripts\temp.folder31\BL.dgi")
el = DGSource("F:\DoVi.Scripts\temp.folder31\EL.dgi")
SetFilterMTMode("DoViBaker",2)
DoViBaker(bl, el, rpu="F:\DoVi.Scripts\temp.folder31\RPU_FEL.bin")
Prefetch(8)
Spline36Resize(Width / 2, Height / 2)
=================================================================================================================

============================COMMAND==============================================================================
INPUT: "F:\DoVi.Scripts\Movie_Original.mkv"
"F:\DoVi.Scripts\tools\ffmpeg.exe" -i "F:\DoVi.Scripts\temp.folder31\script.avs" -pix_fmt rgb48le -compression_algo raw -color_primaries bt2020 -color_trc smpte2084 -colorspace bt2020nc -start_number 0 -y "F:\DoVi.Scripts\Movie_Original_tiff\%06d.tiff"
=================================================================================================================

frame=2249 (total)
ffmpeg version 2024-02-22-git-76b2bb96b4-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --pkg-config=pkgconf --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil 58. 39.100 / 58. 39.100
libavcodec 60. 40.100 / 60. 40.100
libavformat 60. 21.101 / 60. 21.101
libavdevice 60. 4.100 / 60. 4.100
libavfilter 9. 17.100 / 9. 17.100
libswscale 7. 6.100 / 7. 6.100
libswresample 4. 13.100 / 4. 13.100
libpostproc 57. 4.100 / 57. 4.100
Input #0, avisynth, from 'F:\DoVi.Scripts\temp.folder31\script.avs':
Duration: 00:01:33.80, start: 0.000000, bitrate: 0 kb/s
Stream #0:0: Video: rawvideo (G3[0][16] / 0x10003347), gbrp16le(pc, gbr/bt2020/smpte2084, progressive), 1920x1080, 23.98 fps, 23.98 tbr, 23.98 tbn
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> tiff (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'F:\DoVi.Scripts\Movie_Original_tiff\%06d.tiff':
Metadata:
encoder : Lavf60.21.101
Stream #0:0: Video: tiff, rgb48le(pc, bt2020nc/bt2020/smpte2084, progressive), 1920x1080, q=2-31, 200 kb/s, 23.98 fps, 23.98 tbn
Metadata:
encoder : Lavc60.40.100 tiff
frame= 2249 fps=3.8 q=-0.0 Lsize=N/A time=00:01:33.80 bitrate=N/A speed=0.157x
Deleting TEMP folder...


Start time: 20:03:20.36
End time: 20:14:00.24
Time taken: 0:10:40

The script has been completed. Do you want to quit or go back to main menu (q or m default=q)?

alexmorph3us
22nd November 2025, 19:38
And this is the beginning of Workflow 8-2-6 with the changes that I've made in my previous post:

Choice? [1,2,3,4,5,6,7,8,9]?8

======================
- SELECT A MODE -
======================

1) MODE.A= AUDIO Encoding (DDP, THDAC3, DEE)
2) MODE.V= VIDEO Encoding (x265/Prores/dovi_baker/libplacebo/cm_offline)

Choice? [1,2,3]?2

=========================
- SELECT A WORKFLOW -
=========================

1) Workflow.1= X265: HDR to HDR (DVP7/DVP8/DVP5/HDR10/HLG)
2) Workflow.2= X265: HDR to SDR (DVP7/DVP8/DVP5/HDR10/HLG)
3) Workflow.3= PRORES: HDR to HDR (DVP7/DVP8/DVP5/HDR10/HLG)
4) Workflow.4= PRORES: DV to SDR (Dolby CM_Offline DV Trim Pass delivery)
5) Workflow.5= PRORES: SDR to HDR-100nits
6) Workflow.6= DoVi-P5: P8/P7/prores/MXF to Profile 5 DV HEVC (require DEE.exe)
7) Workflow.7= AQ _strength compression tool
8) Workflow8= back to main menu

Choice? [1,2,3,4,5,6,7,8]?6


============
- ENCODERS -
============

-------------------------------------------------------------------------------------
-- Encode any P8/P7/prores/IMF/HDR10/HLG source to Profile 5 Dolby Vision
-- Input can be MKV/TS/MP4/MOV/MXF
-- Support JPEG2000 MXF and MOV prores (you must provide a valid DV XML)
-- Support HDR10 and HLG (you must provide a valid DV XML)
-- Require DEE, see line 390
-- encode_dvmezz_to_dv5.py must be edited to do CRF ... see: https://justpaste.it/enibt
-- Encode settings can be configured at line 143-182
-- Require Avisynthplus https://github.com/AviSynth/AviSynthPlus/releases
-- Libplacebo SDR tone mapping and P5/HLG input require a gpu with vulkan support
-------------------------------------------------------------------------------------

Drag and drop a video and press enter...
F:\DoVi.Scripts\Movie_Original_tiff


Folder input, assuming it contains tiff list...
Drag and drop a XML file and press enter...
F:\DoVi.Scripts\Movie_RPU_DV.xml
TIFF List folder input, please provide the framerate... Default = 23.976

--> 23.976= 1
--> 24.000= 2
--> 25.000= 3
1
Parsing XML metadata...
Generating metadata: Profile 8.1 (HDR10)...
Generated metadata for 2249 frames
Done.
Parsing RPU file...
Converting RPU file...
CM v2.9 RPU found, saving as v2.0.5 XML...
Sanity check: PREPROC: F:\DoVi.Scripts\tools\DEE\dee_dv5_preproc -h
PREPROC: Sanity check successful.
Sanity check: VES_MUXER: F:\DoVi.Scripts\tools\DEE\dee_dv_vesmux -h
VES_MUXER: Sanity check successful.
Sanity check: POSTPROC: F:\DoVi.Scripts\tools\DEE\dee_dv_postproc -h
POSTPROC: Sanity check successful.
Sanity check: PARSE_MEZZ: F:\DoVi.Scripts\tools\DEE\dee_dv_parse_mezz -h
PARSE_MEZZ: Sanity check successful.
Sanity check: STREAM_SPLITTER: F:\DoVi.Scripts\tools\DEE\dee_stream_splitter -h
STREAM_SPLITTER: Sanity check successful.
Sanity check: MEDIAINFO: F:\DoVi.Scripts\tools\DEE\mediainfo -h
MEDIAINFO: Sanity check successful.
Sanity check: MP4_MUXER: F:\DoVi.Scripts\tools\DEE\mp4muxer -h --log-file F:\DoVi.Scripts\temp.folder31\tmp_0ustm_d5\mp4muxer_log_sanity_check
MP4_MUXER: Sanity check successful.
Sanity check: FFMPEG: F:\DoVi.Scripts\tools\ffmpeg.exe -version
FFMPEG: Sanity check successful.

LICENSE_CHECK: F:\DoVi.Scripts\tools\DEE\dee_dv5_preproc -l F:\DoVi.Scripts\tools\DEE\license.lic


[2025-11-22 20:29:19.738] Features enabled by the license: internal, dolby_vision, dolby_audio, hdr10, ac4, sdr_plus.

Execution time: 0.0145252 seconds
Exit code: 0
LICENSE_CHECK: Finished.

LICENSE_CHECK: F:\DoVi.Scripts\tools\DEE\dee_dv_vesmux -l F:\DoVi.Scripts\tools\DEE\license.lic


[2025-11-22 20:29:19.780] Features enabled by the license: internal, dolby_vision, dolby_audio, hdr10, ac4, sdr_plus.

Execution time: 0.0130749 seconds
Exit code: 0
LICENSE_CHECK: Finished.

LICENSE_CHECK: F:\DoVi.Scripts\tools\DEE\dee_dv_postproc -l F:\DoVi.Scripts\tools\DEE\license.lic


[2025-11-22 20:29:19.817] Features enabled by the license: internal, dolby_vision, dolby_audio, hdr10, ac4, sdr_plus.

Execution time: 0.0140086 seconds
Exit code: 0
LICENSE_CHECK: Finished.

LICENSE_CHECK: F:\DoVi.Scripts\tools\DEE\dee_dv_parse_mezz -l F:\DoVi.Scripts\tools\DEE\license.lic


[2025-11-22 20:29:19.858] Features enabled by the license: internal, dolby_vision, dolby_audio, hdr10, ac4, sdr_plus.

Execution time: 0.0130877 seconds
Exit code: 0
LICENSE_CHECK: Finished.

LICENSE_CHECK: F:\DoVi.Scripts\tools\DEE\dee_stream_splitter -l F:\DoVi.Scripts\tools\DEE\license.lic


[2025-11-22 20:29:19.897] Features enabled by the license: internal, dolby_vision, dolby_audio, hdr10, ac4, sdr_plus.

Execution time: 0.0134558 seconds
Exit code: 0
LICENSE_CHECK: Finished.

MEDIAINFO: F:\DoVi.Scripts\tools\DEE\mediainfo --Output=JSON F:\DoVi.Scripts\Movie_Original_tiff\000000.tiff

MEDIAINFO: Finished.
MEDIAINFO: Operation took 0.078111 seconds to complete.

[1920x1080] PREPROC: F:\DoVi.Scripts\tools\DEE\dee_dv5_preproc --license F:\DoVi.Scripts\tools\DEE\license.lic --input-format tiff_list:range=auto:framerate=23.976 --input F:\DoVi.Scripts\Movie_Original_tiff --input-metadata F:\DoVi.Scripts\temp.folder31\Movie_Original_tiff_DV.xml --metadata-offset 0 --start 0 --duration -1 --overwrite 1 --decoder tiff=libtiff --max-scene-frames 96 --show-frames counters --progress 1 --keep-temp 0 --temp-dir F:\DoVi.Scripts\temp.folder31\tmp_0ustm_d5 --loglevel info:timestamps=0 --output named_pipe://\\.\pipe\69fb528b60994a560_1920x1080_dv_preproc_output.yuv:buffer_size=6220800 --output-rpu named_pipe://\\.\pipe\69fb528b60994a560_1920x1080_dv_preproc_output_rpu.bin:buffer_size=196608

(PREPROC)
(PREPROC) Features enabled by the license: internal, dolby_vision, dolby_audio, hdr10, ac4, sdr_plus.
(PREPROC) CFR: 23.976000
(PREPROC) Frame range in the container: [0,2248]
(PREPROC) Requested frame range: [0,2248]
(PREPROC) Mastering display peak luminance: 1000.000000
(PREPROC) Mastering display minimum luminance: 0.000100
(PREPROC) LIBTIFF version: LIBTIFF, Version 4.0.9
(PREPROC) Copyright (c) 1988-1996 Sam Leffler
(PREPROC) Copyright (c) 1991-1996 Silicon Graphics, Inc.
(PREPROC) Resolution: 1920x1080
(PREPROC) Consumed input frames: 1/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 2/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 3/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 4/2249

[1920x1080] VES_MUXER: F:\DoVi.Scripts\tools\DEE\dee_dv_vesmux --license F:\DoVi.Scripts\tools\DEE\license.lic --overwrite 1 --input-bl named_pipe://\\.\pipe\69fb528b60994a560_1920x1080_ffmpeg_output_hevc.hevc:buffer_size=4096 --input-rpu named_pipe://\\.\pipe\69fb528b60994a560_1920x1080_dv_preproc_output_rpu.bin:buffer_size=196608:client=true --output F:\DoVi.Scripts\temp.folder31\tmp_0ustm_d5\0_1920x1080_dv_vesmux_output.hevc --loglevel info:timestamps=0

(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 5/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 6/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 7/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 8/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 9/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 10/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 11/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 12/2249
(PREPROC)
(PREPROC) [> ] 0 %

[1920x1080] ENCODER: F:\DoVi.Scripts\tools\ffmpeg.exe -y -f rawvideo -s 1920x1080 -pix_fmt yuv420p10le -loglevel error -framerate 23.976 -i \\.\pipe\69fb528b60994a560_1920x1080_dv_preproc_output.yuv -c:v libx265 -preset slow -x265-params crf=17:deblock=-2-2:aq-mode=1:aq-strength=1.0:psy-rd=2.0:psy-rdoq=1.0:no-cutree=0:min-keyint=23:keyint=250:level-idc=5.1:no-open-gop=1:aud=1:hrd=1:repeat-headers=1:sar=1:sao=0:chromaloc=0:colormatrix=2:colorprim=2:transfer=2:vbv-maxrate=160000:vbv-bufsize=160000:input-csp=i420:fps=23.976:range=full:no-info=0:log-level=0 -f hevc \\.\pipe\69fb528b60994a560_1920x1080_ffmpeg_output_hevc.hevc -nostdin

(PREPROC) Consumed input frames: 13/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 14/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 15/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 16/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 17/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 18/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 19/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 20/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 21/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 22/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 23/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 24/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 25/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 26/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 27/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 28/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 29/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 30/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 31/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 32/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 33/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 34/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 35/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 36/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 37/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 38/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 39/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 40/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 41/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 42/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 43/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 44/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 45/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 46/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 47/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 48/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 49/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 50/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 51/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 52/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 53/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 54/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 55/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 56/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 57/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 58/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 59/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 60/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 61/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 62/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 63/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 64/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 65/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 66/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 67/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 68/2249
(PREPROC)
(PREPROC) [> ] 0 %
(PREPROC) Consumed input frames: 69/2249
(PREPROC)
(PREPROC) [> ] 0 %

Kuler087
23rd November 2025, 17:11
Ok, this workflow was getting messy with all the new input, options, and encoders. I did a clean-up in this version (https://drive.google.com/file/d/128gq8aDUTKA_aT7SQsM9dkjA1EP1sosR/view?usp=drive_link); hopefully, I did not break anything else.

alexmorph3us
24th November 2025, 14:59
Ok, this workflow was getting messy with all the new input, options, and encoders. I did a clean-up in this version (https://drive.google.com/file/d/128gq8aDUTKA_aT7SQsM9dkjA1EP1sosR/view?usp=drive_link); hopefully, I did not break anything else.

It's much better now! Everything is working as expected:

_____ __ ___ _____ _ _
| __ \ \ \ / (_) / ____| (_) | |
| | | | __\ \ / / _ | (___ ___ _ __ _ _ __ | |_ ___
| | | |/ _ \ \/ / | | \___ \ / __| '__| | '_ \| __/ __|
| |__| | (_) \ / | | ____) | (__| | | | |_) | |_\__ \
|_____/ \___/ \/ |_| |_____/ \___|_| |_| .__/ \__|___/
-Author: RESET_9999--------------------------|__|-----------



1) MODE.I= INJECT / EDIT / EXTRACT / INFO / VALIDATE
2) MODE.F= VERIFY SYNC / REMOVER / TRANSFER LEVELS
3) MODE.H= DoVi MAKER from HDR10 (Dolby Algo or MadVR or HDR10+)
4) MODE.7= DoVi Profile 7 Input (MKV/BDMV)
5) MODE.B= DoVi MKV Batch Muxer
6) MODE.P= Plotter (DoVi/HDR10/HLG/SDR)
7) MODE.S= Screenshots & Player
8) MODE.E= Encoders (video and audio)
9) MODE.M= MORE

Choice? [1,2,3,4,5,6,7,8,9]?8

======================
- SELECT A MODE -
======================

1) MODE.A= AUDIO Encoding (DDP, THDAC3, DEE)
2) MODE.V= VIDEO Encoding (x265/Prores/dovi_baker/libplacebo/cm_offline)

Choice? [1,2,3]?2

=========================
- SELECT A WORKFLOW -
=========================

1) Workflow.1= X265: HDR to HDR (DVP7/DVP8/DVP5/HDR10/HLG)
2) Workflow.2= X265: HDR to SDR (DVP7/DVP8/DVP5/HDR10/HLG)
3) Workflow.3= PRORES: HDR to HDR (DVP7/DVP8/DVP5/HDR10/HLG)
4) Workflow.4= PRORES: DV to SDR (Dolby CM_Offline DV Trim Pass delivery)
5) Workflow.5= PRORES: SDR to HDR-100nits
6) Workflow.6= DoVi-P5: P8/P7/prores/MXF to Profile 5 DV HEVC (require DEE.exe)
7) Workflow.7= AQ _strength compression tool
8) Workflow8= back to main menu

Choice? [1,2,3,4,5,6,7,8]?3


============
- ENCODERS -
============

-------------------------------------------------------------------------------------
-- Can Encode any HDR source(DVP7/DVP5/DVP8/HDR10/HLG) to HDR PRORES 422 HQ
-- Require Avisynthplus https://github.com/AviSynth/AviSynthPlus/releases
-- Libplacebo SDR tone mapping and P5/HLG input require a gpu with vulkan support
-------------------------------------------------------------------------------------

Drag and drop a video and press enter...
F:\DoVi.Scripts\Movie_Original.mkv


Do you want to crop? (default=n)

--> YES= y
--> NO= n
y


Odd numbers will be rounded...

Right border pixels offset... (default=0)
0
Left border pixels offset...(default=0)
0
Top border pixels offset...(default=0)
264
Bottom border pixels offset...(default=0)
264
Extracting track 0 with the CodecID 'V_MPEGH/ISO/HEVC' to the file 'F:\DoVi.Scripts\temp.folder31\BL.P7.hevc'. Container format: HEVC/H.265 elementary stream
Progress: 100%

Indexing the HDR10 base layer...
Project
100

Indexing the DV 12bits enhancement layer...
Project
100

Reordering metadata... Done.

=============================SCRIPT==============================================================================
LoadPlugin("F:\DoVi.Scripts\tools\dgdecnv_242\DGDecodeNV.dll")
LoadPlugin("F:\DoVi.Scripts\tools\DoViBaker_x64.dll")
LoadPlugin("F:\DoVi.Scripts\tools\avs_libplacebo.dll")
LoadPlugin("F:\DoVi.Scripts\tools\avsresize_r21\x64\Release\avsresize.dll")
bl = DGSource("F:\DoVi.Scripts\temp.folder31\BL.dgi")
el = DGSource("F:\DoVi.Scripts\temp.folder31\EL.dgi")
SetFilterMTMode("DoViBaker",2)
DoViBaker(bl, el, rpu="F:\DoVi.Scripts\temp.folder31\RPU_FEL.bin")
z_ConvertFormat(pixel_type="RGBP16",colorspace_op="rgb:st2084:2020:full=>rgb:st2084:2020:full",dither_type="error_diffusion",resample_filter="spline36",resample_filter_uv="spline36",chromaloc_op="left=>top_left")
Prefetch(8)
Crop(0, 264, -0, -264)
Spline36Resize(Width / 2, Height / 2)
=================================================================================================================

============================COMMAND==============================================================================
INPUT: "F:\DoVi.Scripts\Movie_Original.mkv"
"F:\DoVi.Scripts\tools\ffmpeg.exe" -i "F:\DoVi.Scripts\temp.folder31\script.avs" -pix_fmt rgb48le -compression_algo raw -color_primaries bt2020 -color_trc smpte2084 -colorspace bt2020nc -start_number 0 -y "F:\DoVi.Scripts\Movie_Original_tiff\%06d.tiff"
=================================================================================================================

frame=2249 (total)
ffmpeg version 2024-02-22-git-76b2bb96b4-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --pkg-config=pkgconf --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil 58. 39.100 / 58. 39.100
libavcodec 60. 40.100 / 60. 40.100
libavformat 60. 21.101 / 60. 21.101
libavdevice 60. 4.100 / 60. 4.100
libavfilter 9. 17.100 / 9. 17.100
libswscale 7. 6.100 / 7. 6.100
libswresample 4. 13.100 / 4. 13.100
libpostproc 57. 4.100 / 57. 4.100
Input #0, avisynth, from 'F:\DoVi.Scripts\temp.folder31\script.avs':
Duration: 00:01:33.80, start: 0.000000, bitrate: 0 kb/s
Stream #0:0: Video: rawvideo (G3[0][16] / 0x10003347), gbrp16le(pc, gbr/bt2020/smpte2084, progressive), 1920x816, 23.98 fps, 23.98 tbr, 23.98 tbn
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> tiff (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'F:\DoVi.Scripts\Movie_Original_tiff\%06d.tiff':
Metadata:
encoder : Lavf60.21.101
Stream #0:0: Video: tiff, rgb48le(pc, bt2020nc/bt2020/smpte2084, progressive), 1920x816, q=2-31, 200 kb/s, 23.98 fps, 23.98 tbn
Metadata:
encoder : Lavc60.40.100 tiff
[out#0/image2 @ 000002b23c65a840] video:20660636KiB audio:0KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: unknown
frame= 2249 fps=3.6 q=-0.0 Lsize=N/A time=00:01:33.80 bitrate=N/A speed=0.15x
Deleting TEMP folder...


Start time: 15:41:33.28
End time: 15:55:02.12
Time taken: 0:13:29

The script has been completed. Do you want to quit or go back to main menu (q or m default=q)?

alexmorph3us
24th November 2025, 15:03
Thank you once again Kuler087 for your continuing support! I'm happy with the final results. God bless you, man.

alexmorph3us
24th November 2025, 21:18
@Kuler087: In the mean time I've tested all the workflows and everything is working. So nothing to worry about there.

I would like one more feature request: is it possible to include Workflow 8-2-4 as well at line 190 as an option when the input mkv source file has FEL inside and DoVi Baker is used in Avisynth as intermediate for CM_Offline in the scripts?

alexmorph3us
24th November 2025, 22:48
Perhaps something like this:


Microsoft Windows [Version 10.0.19045.6093]
(c) Microsoft Corporation. All rights reserved.

C:\Users\ALEX\OneDrive\Documents\Output_frames>cm_offline.exe -m "C:\Users\ALEX\OneDrive\Documents\Output_frames\Movie_RPU_DV.xml" "F:\DoVi.Scripts\Movie_Original_tiff\image_sequence_######.tiff" "F:\DoVi.Scripts\output_ProRes.mov" --output-format "1920x816 u10 interleaved 422 le lsb32rev ycbcr_bt709 gamma_bt1886 video bt709" --quicktime-codec prores_422_hq --targ 1
Copyright (c) 2013-2025 Dolby Laboratories, Inc. All Rights Reserved
11/24/2025/23:30:36.630000000 cuda: INFO initializing CUDA
11/24/2025/23:30:36.770000000 cuda: INFO using CUDA version 11.8.0
11/24/2025/23:30:36.771000000 cuda: INFO NVIDIA GeForce GTX 1070 Ti: compute 6.1, cores 2432*1683MHz, memory 8191MB
11/24/2025/23:30:36.880000000 Metadata: WARNING List of WARNINGS:
=========================
WARNING: 25 Shots contain identical Level1 values
WARNING: 25 Shots contain identical Level2 values
=========================
11/24/2025/23:30:36.883000000 cm_offline: INFO Source: 'F:\DoVi.Scripts\Movie_Original_tiff\image_sequence_######.tiff'
11/24/2025/23:30:36.884000000 cm_offline: INFO Src Info: '3840x1632x3 u16 interleaved 444 le tight 0-2248 24fps top_left pq rgb computer bt2020'
11/24/2025/23:30:36.884000000 cm_offline: INFO Source Display: 1000-nit, P3, D65, ST.2084, Full (ID 20): Bit Depth: 16bit - Diagonal: 42.00in - Application Type: ALL - Color Info: "pq(0.0001,1000) rgb computer p3d65"
11/24/2025/23:30:36.885000000 cm_offline: INFO Destination: 'F:\DoVi.Scripts\output_ProRes.mov'
11/24/2025/23:30:36.885000000 cm_offline: INFO Dst Info: '1920x816x3 u10 interleaved 422 le lsb32rev 0-2248 24fps top_left gamma_bt1886 ycbcr_bt709 video bt709'
11/24/2025/23:30:36.886000000 cm_offline: INFO Target Display: 100-nit, BT.709, BT.1886, Full (HOME) (ID 1): Bit Depth: 16bit - Diagonal: 42.00in - Application Type: ALL - Color Info: "gamma_bt1886(0.005,100) rgb computer bt709"
11/24/2025/23:30:36.887000000 cm_offline: INFO Frames: 0-2248
11/24/2025/23:44:52.921000000 processing: INFO frame 2248 completed in 0.295 seconds. ETA: 0:00:00.000
11/24/2025/23:44:52.935000000 processing: INFO completed 2249 frames in 0:13:57.740
11/24/2025/23:44:52.936000000 processing: INFO processing speed: 0.37 seconds per frame (2.68 fps)
11/24/2025/23:44:52.937000000 processing: INFO Read1 84.9% 0.32 spf 3.16 fps
11/24/2025/23:44:52.937000000 processing: INFO Crop/Resize2(1) 8.2% 0.03 spf 32.55 fps
11/24/2025/23:44:52.938000000 processing: INFO Write5(4) 3.6% 0.01 spf 73.83 fps
11/24/2025/23:44:52.938000000 processing: INFO Pad4(3) 3.1% 0.01 spf 86.90 fps
11/24/2025/23:44:52.939000000 processing: INFO ContentMap3(2) 0.1% 0.00 spf 3029.77 fps
11/24/2025/23:44:52.939000000 processing: INFO Startup 0.292 seconds
11/24/2025/23:44:52.940000000 processing: INFO Shutdown 0.000 seconds

C:\Users\ALEX\OneDrive\Documents\Output_frames>

Kuler087
25th November 2025, 15:19
I started working on this but haven’t tested it yet. The latest beta can do it, but I don’t think downscaling and cropping are functional for now, since it doesn’t seem to manage the XML level-5 relation with the video resolution the same way DEE does, so I’ll need to look into that.
I added ProRes 444 options, and I also want to integrate HEVC/AVC encoding directly into that workflow.

en6ads
25th November 2025, 18:45
Sorry for the dumb question: Circling back to 12-bit encoding. Does the latest beta enable 8-2-1 12-bit YCbCr x265 encoding? Or Do I need to 8-2-3 first with either Jpeg or TIFF, then send that to another x265 encoder? Many thanks.

alexmorph3us
25th November 2025, 18:51
I just did a test with an HEVC source file as input in the latest beta and you're right. Even though it now accepts the new workflow, cropping and resizing is not done properly. So it requires more testing.

The new ProRes options are a welcomed addition for this workflow.

Kuler087
25th November 2025, 18:52
Sorry for the dumb question: Circling back to 12-bit encoding. Does the latest beta enable 8-2-1 12-bit YCbCr x265 encoding? Or Do I need to 8-2-3 first with either Jpeg or TIFF, then send that to another x265 encoder? Many thanks.


No, this is only for Profile 5 encoding in 8-2-6.
8-2-1 targets 10-bit HDR10/DV8, and there’s no practical reason to encode 12-bit YCbCr HDR since no player can decode it anyway. The only way to achieve 12bit-ycbcr playback is with the dual 10bit decoders on bluray players and ugoos + P7 FEL.
I’ve already created a file like that before.

https://mega.nz/file/wKkD3DgZ#o9HtgEaxjpYr6ib-ZoLxxVhHrsUAE6FN1uhlDkhVPNs


Format : HEVC
Format/Info : High Efficiency Video Coding
Format profile : Format Range@L5.1@High
HDR format : Dolby Vision, Version 1.0, Profile 3.1, dvhe.03.06, BL+RPU, extended metadata compression, HDR10 compatible / SMPTE ST 2086
Codec ID : 36
Duration : 25 s 567 ms
Bit rate : 38.4 Mb/s
Width : 3 840 pixels
Height : 1 608 pixels
Display aspect ratio : 2.39:1
Frame rate : 23.976 (24000/1001) FPS
Color space : YUV
Chroma subsampling : 4:2:0 (Type 2)
Bit depth : 12 bits
Bits/(Pixel*Frame) : 0.259
Stream size : 117 MiB (95%)
Writing library : x265 3.5+100-3dae0c3cc:[Windows][GCC 13.1.0][64 bit] 12bit
Encoding settings : cpuid=1111039 / frame-threads=5 / numa-pools=32 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=1 / input-res=3840x1608 / interlace=0 / total-frames=614 / level-idc=51 / high-tier=1 / uhd-bd=0 / ref=4 / no-allow-non-conformance / repeat-headers / annexb / aud / no-eob / no-eos / hrd / info / hash=0 / temporal-layers=0 / no-open-gop / min-keyint=23 / keyint=250 / gop-lookahead=0 / bframes=4 / b-adapt=2 / b-pyramid / bframe-bias=0 / rc-lookahead=25 / lookahead-slices=4 / scenecut=40 / no-hist-scenecut / radl=0 / no-splice / no-intra-refresh / ctu=64 / min-cu-size=8 / no-rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=2 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / no-strong-intra-smoothing / max-merge=3 / limit-refs=3 / limit-modes / me=3 / subme=3 / merange=57 / temporal-mvp / no-frame-dup / no-hme / weightp / no-weightb / no-analyze-src-pics / deblock=-3:-3 / no-sao / no-sao-non-deblock / rd=4 / selective-sao=0 / no-early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / no-b-intra / no-splitrd-skip / rdpenalty=0 / psy-rd=2.00 / psy-rdoq=1.00 / no-rd-refine / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=crf / crf=15.0 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=0 / vbv-maxrate=160000 / vbv-bufsize=160000 / vbv-init=0.9 / min-vbv-fullness=50.0 / max-vbv-fullness=80.0 / crf-max=0.0 / crf-min=0.0 / ipratio=1.40 / pbratio=1.30 / aq-mode=2 / aq-strength=1.00 / no-cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / no-const-vbv / sar=1 / overscan=0 / videoformat=5 / range=0 / colorprim=9 / transfer=16 / colormatrix=9 / chromaloc=1 / chromaloc-top=2 / chromaloc-bottom=2 / display-window=0 / master-display=G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(40000000,50) / cll=0,0 / min-luma=0 / max-luma=4095 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / no-opt-qp-pps / no-opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / no-opt-cu-delta-qp / no-aq-motion / hdr10 / no-hdr10-opt / no-dhdr10-opt / no-idr-recovery-sei / analysis-reuse-level=0 / analysis-save-reuse-level=0 / analysis-load-reuse-level=0 / scale-factor=0 / refine-intra=0 / refine-inter=0 / refine-mv=1 / refine-ctu-distortion=0 / no-limit-sao / ctu-info=0 / no-lowpass-dct / refine-analysis-type=0 / copy-pic=1 / max-ausize-factor=1.0 / no-dynamic-refine / no-single-sei / no-hevc-aq / no-svt / no-field / qp-adaptation-range=1.00 / scenecut-aware-qp=0conformance-window-offsets / right=0 / bottom=0 / decoder-max-rate=0 / no-vbv-live-multi-pass / no-mcstf / no-sbrc
Color range : Limited
Color primaries : BT.2020
Transfer characteristics : PQ
Matrix coefficients : BT.2020 non-constant
Mastering display color primaries : Display P3
Mastering display luminance : min: 0.0050 cd/m2, max: 4000 cd/m2

alexmorph3us
25th November 2025, 18:56
Sorry for the dumb question: Circling back to 12-bit encoding. Does the latest beta enable 8-2-1 12-bit YCbCr x265 encoding? Or Do I need to 8-2-3 first with either Jpeg or TIFF, then send that to another x265 encoder? Many thanks.

In Workflow 8-2-1 it works with PoRes 4444XQ as direct input + your XML metadata file. I'm not sure about image sequences. I haven't tested that.

But your final output is going to be HEVC 10 bit using the x265 encoder.

What you're asking it should work in Workflow 8-2-3 (Image Sequences) + Mezzinator in order to export to a 12 bit YCbCr format using ProRes 4444.

Mezzinator is part of the Dolby tools that can be found here:
https://customer.dolby.com/content-creation-and-delivery/dolby-vision-professional-tools

en6ads
25th November 2025, 19:04
The only way to achieve 12bit-ycbcr playback is with the dual 10bit decoders on bluray players and ugoos + P7 FEL.

Got it, many thanks.

So 10-bit ICTCP would be the way to achieve a single layer FEL encode for playback on consumer devices that preserves as much of the FEL data as possible.

Thank you.

en6ads
25th November 2025, 19:34
But your final output is going to be HEVC 10 bit using the x265 encoder

Thanks. I'll stick with p5 testing for now.

en6ads
26th November 2025, 03:38
Just a heads up that OSMC have apparently got FEL playback working without dovi.ko.

https://discourse.osmc.tv/t/testing-vero-v-dolby-vision-tv-led-support/108393/359

Edit: Looks like it's still in early testing: https://forum.kodi.tv/showthread.php?tid=376035&pid=3246153#pid3246153

Edit: Also the guy that makes the CPM skins (https://discourse.coreelec.org/t/several-skins-for-cpm-builds/53514) says he'll drop support for CPM when OSMC FEL is released: https://www.avsforum.com/posts/64325433/

en6ads
26th November 2025, 19:29
Going back to P5 encoding. I've attempted 8-2-6 with v3.0.8 and I get this error, "No ProRes decoder available". Is there a DEE setting I need to change?

(PREPROC_PASS1)
(PREPROC_PASS1) Features enabled by the license: dolby_vision, dolby_audio, hdr10, ac4, sdr_plus.
(PREPROC_PASS1) Resolution: 3840x2160
(PREPROC_PASS1) CFR: 23.976000
(PREPROC_PASS1) Frame range in the container: [0,4323]
(PREPROC_PASS1) Requested frame range: [0,4323]
(PREPROC_PASS1) Mastering display peak luminance: 1000.000000
(PREPROC_PASS1) Mastering display minimum luminance: 0.000100
(PREPROC_PASS1) Total time in MOV demuxer: 0.0396304 seconds (504.663 fps)
(PREPROC_PASS1) Removing temporary directory: "A:\DoVi.Scripts-3.0.8\temp.folder31_new\tmp_sjseqzh8\eee670b2-11164"
(PREPROC_PASS1) ERROR: There is no ProRes decoder available.
(PREPROC_PASS1)
(PREPROC_PASS1) ---- Summary of errors and warnings ----
(PREPROC_PASS1) ERROR: There is no ProRes decoder available.
(PREPROC_PASS1) ----------------------------------------
(PREPROC_PASS1) Execution time: 1.01476 seconds
(PREPROC_PASS1) Exit code: 1
ERROR: [3840x2160] PREPROC_PASS1: Failed (1).

[3840x2160] ENCODER_PASS1: A:\DoVi.Scripts-3.0.8\tools\ffmpeg.exe -y -f rawvideo -s 3840x2160 -stats -pix_fmt yuv420p10le -loglevel error -framerate 23.976 -i \\.\pipe\8b4ad0a8b85f4ac70_3840x2160_dv_preproc_output.yuv -vf scale=3840:2160 -c:v libx265 -preset slow -x265-params chromaloc=0:colormatrix=2:colorprim=2:transfer=2:annexb=1:aud=1:hash=1:hrd=1:repeat-headers=1:sar=1:input-csp=i420:level-idc=0:fps=23.976:range=full:bitrate=25000:vbv-maxrate=25000:vbv-bufsize=50000:min-keyint=48:keyint=48:no-open-gop=1:rc-lookahead=48:scenecut=0:scenecut-bias=0:crqpoffs=3:min-cu-size=8:psy-rd=1.6:psy-rdoq=5.0:ctu=64:cbqpoffs=0:qg-size=32:frame-threads=0:no-info=1:log-level=0:nr-inter=400:nr-intra=100:bframes=8:no-rc-grain=1:pass=1:stats='A:\DoVi.Scripts-3.0.8\temp.folder31_new\tmp_sjseqzh8\0_3840x2160_ffmpegPassLog' -f hevc NUL -nostdin

ERROR: [3840x2160] ENCODER_PASS1: Failed (4294967294).
Last 3 messages from [3840x2160] ENCODER_PASS1:
(ENCODER_PASS1) [in#0 @ 0000020f283c2cc0] Error opening input: No such file or directory
(ENCODER_PASS1) Error opening input file \\.\pipe\8b4ad0a8b85f4ac70_3840x2160_dv_preproc_output.yuv.
(ENCODER_PASS1) Error opening input files: No such file or directory

ERROR: The process "23620" not found.
ERROR: The process "15876" not found.

--- Execution summary ---
ERROR: [3840x2160] PREPROC_PASS1: Failed (1).
ERROR: [3840x2160] ENCODER_PASS1: Failed (4294967294).
MEDIAINFO: Operation took 0.0175 seconds to complete.

Execution time: 6.939445495605469 seconds

Kuler087
26th November 2025, 19:35
your DEE folder is missing:
dee_plugin_prores_dec_apple_dlb.dll

en6ads
26th November 2025, 19:53
That was it - thank you.

I copied dee_plugin_prores_dec_apple_dlb.dll and dee_plugin_j2k_dec_kakadu_dlb.dll from the plugins folder to the main folder and it's working now.

Thank you.

your DEE folder is missing:
dee_plugin_prores_dec_apple_dlb.dll

Lucky38
27th November 2025, 11:37
Hey Kuler,

Have you seen this repo for DD+ 7.1 encode ?

https://github.com/HG3112/md71

Could it be possible to implement it in you script?

Kuler087
27th November 2025, 13:11
Hi, dovi_scripts already support 7-1 DD+ encoding via the EasyAudioEncoder.exe. You just have to configure it, see lines 425-427 (latest beta)



::Create a Folder ''EAE'' and put these files in it. Get the files from plex media server ''C:\Program Files\Plex\Plex Media Server'' https://i.ibb.co/c8sWD4p/Capture-d-cran-2024-07-20-094922.png
set EAE_path=%~dp0tools\EAE
:: https://github.com/pabloromeo/clusterplex/files/9396885/EasyAudioEncoder.zip
set EAE=%~dp0tools\EAE\EasyAudioEncoder.exe

Lucky38
27th November 2025, 17:01
Hi, dovi_scripts already support 7-1 DD+ encoding via the EasyAudioEncoder.exe. You just have to configure it, see lines 425-427 (latest beta)



::Create a Folder ''EAE'' and put these files in it. Get the files from plex media server ''C:\Program Files\Plex\Plex Media Server'' https://i.ibb.co/c8sWD4p/Capture-d-cran-2024-07-20-094922.png
set EAE_path=%~dp0tools\EAE
:: https://github.com/pabloromeo/clusterplex/files/9396885/EasyAudioEncoder.zip
set EAE=%~dp0tools\EAE\EasyAudioEncoder.exe

yes, i know that, but changing bitrate is not possible in EAE workflow...

and this could be replaced by FFMPEG...

Kuler087
27th November 2025, 17:24
I haven't used EAE in a while, but there is an option to change the bitrate:

::choose workflow 8-1-1 EC3 DD+ encoding bitrate (default= 1024) 2.0/5.1 = max 1536kbps and 7.1 = max 1024kbps.
set DDP_bitrate=1024

Lucky38
27th November 2025, 17:35
I haven't used EAE in a while, but there is an option to change the bitrate:

::choose workflow 8-1-1 EC3 DD+ encoding bitrate (default= 1024) 2.0/5.1 = max 1536kbps and 7.1 = max 1024kbps.
set DDP_bitrate=1024

in which file i need to change then?

Kuler087
27th November 2025, 17:40
I'm not sure what you mean. You just have to create the EAE folder and put these files from Plex and EasyAudioEncoder.exe in it.
then you can control the bitrate with the script bat file
set DDP_bitrate=1024


https://i.ibb.co/c8sWD4p/Capture-d-cran-2024-07-20-094922.png