[Cin] Two links on ICC in MP4
Andrew Randrianasulu
randrianasulu at gmail.com
Sun Apr 13 16:37:53 CEST 2025
вс, 13 апр. 2025 г., 16:05 Georgy Salnikov <sge at nmr.nioch.nsc.ru>:
> On Fri, 11 Apr 2025, Andrew Randrianasulu wrote:
>
> > > I think we hit crudest form of this limitation when we try to fade
> > > titler's text over png image. It sort of flashes, due to missing
> > > (unapplied) 2.4 gamma step?
>
> No, the reason for "flashes" for fading in titles and dissolve transitions
> in transparent PNGs is totally other.
>
Hm, so we invented wrong solution then, because I recall for some reason
doing inter-track mixing as sRGB with provided equation visually fixed that
flash ....
+//#define LINEAR2SRGB(in) (in <= 0.0031308 ? 12.92 * in : 1.055 *
mpow(in, 1.0/GAMMA) - 0.055)
+//#define SRGB2LINEAR(in) (in <= 0.04045 ? in / 12.92 : mpow((in +
0.055) / 1.055, GAMMA))
+
+#define A_BLEND(top, bottom, alpha, max) \
+ max * linear_to_srgb(srgb_to_linear(1. * top / max)+
srgb_to_linear(1. * bottom / max)*(1.0 - (1. * alpha / max)))
+
+// Change lines:
+// #define ALPHA_NORMAL(mx, Sa, Da) (Sa + (Da * (mx - Sa)) / mx)
+// #define COLOR_NORMAL(mx, Sc, Sa, Dc, Da) ((Sc * Sa + Dc * (mx - Sa)) / mx)
+// To:
+#define ALPHA_NORMALS(mx, Sa, Da) ((Sa + (mx - Sa)*(mx - Sa)) / mx)
+#define COLOR_NORMALS(mx, Sc, Sa, Dc, Da) A_BLEND(Sc, Dc, Sa, mx)
+#define CHROMA_NORMALS COLOR_NORMALS
This makes me wonder about time when researchers just played around with
equations to see if any of them make interesting visual results .....
> Take and unpack the small archive in attachment.
>
> unwanted_black_flash.xml is a small demo project, IgorBeg has created it a
> few years ago to demonstrate the quirks. There are a white title over
> violet
> background with 5 sec fade in, and two white PNGs with transparent
> background with 5 sec Dissolve transition in between. Try to play it,
> focusing on the fading and the transition, it is not so easy to figure out,
> what is not correct.
>
> And yes, what we have now, is Blend Program. You can load now ubf1.xml, it
> uses two simple programs which print the values of R, G, B, A (the
> project's
> color model is RGBA-8bit) inside some letter in the title, and inside each
> of the two PNGs.
>
> What do we see? For the title:
> Title RGBA: 0.00 / 0.00 / 0.00 / 0.00
> Title RGBA: 0.00 / 0.00 / 0.00 / 0.00
> Title RGBA: 0.01 / 0.01 / 0.01 / 0.01
> Title RGBA: 0.02 / 0.02 / 0.02 / 0.02
> Title RGBA: 0.02 / 0.02 / 0.02 / 0.02
> Title RGBA: 0.03 / 0.03 / 0.03 / 0.03
> .....................................
> Title RGBA: 0.97 / 0.97 / 0.97 / 0.97
> Title RGBA: 0.98 / 0.98 / 0.98 / 0.98
> Title RGBA: 0.98 / 0.98 / 0.98 / 0.98
> Title RGBA: 0.99 / 0.99 / 0.99 / 0.99
> Title RGBA: 1.00 / 1.00 / 1.00 / 1.00
>
> Pay attention on these numbers! What do you see? A smooth increase of white
> title opacity over the background? No, you see here a smooth transition
> from
> the transparent black letters (RBG=0.00/0.00/0.00 is black, not white) to
> the opaque white, with some semi-transparent grey in the middle.
>
> The Dissolve transition does the similar:
> 1 RGBA: 1.00 / 1.00 / 1.00 / 1.00
> 2 RGBA: 0.00 / 0.00 / 0.00 / 0.00
> 1 RGBA: 1.00 / 1.00 / 1.00 / 1.00
> 2 RGBA: 0.00 / 0.00 / 0.00 / 0.00
> 1 RGBA: 0.99 / 0.99 / 0.99 / 0.99
> 2 RGBA: 0.01 / 0.01 / 0.01 / 0.01
> .................................
> 1 RGBA: 0.01 / 0.01 / 0.01 / 0.01
> 2 RGBA: 0.99 / 0.99 / 0.99 / 0.99
> 1 RGBA: 0.00 / 0.00 / 0.00 / 0.00
> 2 RGBA: 1.00 / 1.00 / 1.00 / 1.00
>
> The first PNG gradually changes from opaque white to transparent black, the
> second one does the same in the backward direction, both being
> semi-transparent grey in the middle.
>
> Although one can imagine a case where exactly such behaviour (fading from
> white to black) could be desired, here it is definitely not that what is
> wanted, as the background track has some other color.
>
> Load the third example, ubf2.xml. It tries to demonstrate how this all
> should look, were it all consistent. I removed the title fading from the
> titler plugin and configured fading in the Fade Autos for the track. Now
> the
> letters gradually come from transparent white to opaque white, not from
> black to white. The transition is not so easy to imitate, so I added one
> more track and put the second PNG there with 5 sec overlap with the first
> one, and made the same transition from white to transparent white via the
> Fade Autos. This all looks quite different now!
>
> It is obvious: fading in titler and in Dissolve is to be done solely on the
> Alpha channel, not touching colors, provided that the track where it takes
> place has no transparent areas. Alternatively, it can be done in the RGB
> channels, without touching Alpha channel, actually it is what takes place
> if
> the project is pure RGB, without transparency. But what must Dissolve do,
> if
> there is also a controlled transparency in the track, perhaps different in
> the two parts between which Dissolve is played, seems not to be obvious...
>
> _______________________________________________________________________________
>
> Georgy Salnikov
> NMR Group
> Novosibirsk Institute of Organic Chemistry
> Lavrentjeva, 9, 630090 Novosibirsk, Russia
> Phone +7-383-3307864
> Email sge at nmr.nioch.nsc.ru
>
> _______________________________________________________________________________
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20250413/256bef7f/attachment.htm>
More information about the Cin
mailing list