Automated release: version and notes generated from pull requests merged since 2.10.2.
Fixed
- A colour the skill draws lands in the BT.709 its output is tagged with. A
--pad-color(fit.py,export.py,join.py,broll.py),pad.py --color,straighten.py --fill-color,grid.py --background/--font-color,overlay.py --textfont/border/box colours,caption.py's burned colours,graphics.py's brand colours (boxes, bars, text),background.py --color/--gradientandwaveform.py's background and waves were turned into YUV by FFmpeg's drawing code with BT.601 under the output's BT.709 tag: pure red came out (255,24,0), pure green (0,216,0) (mean ΔRGB 6.6-33.5, max 34.9-64.0 depending on the tool, on FFmpeg 5.1.1, 6.1, 7.1.1 and 8.1.3; on 7.1+ a BT.709-tagged or converted source's pads were already right). From FFmpeg 7.1 the drawing filters follow the picture's label, so an untagged picture is labelled BT.709 (tags only); before 7.1 nothing makes them use another matrix, so the drawing runs on an RGB copy and only the pixels it touched are taken from it (the rest of the picture is bit-identical). Boxes and backgrounds are colour sources made in RGB and converted;graphics.py's translucent boxes with chroma are overlaid colour layers now, which also blend their colour at the alpha they state (drawboxblended 4:2:0 chroma four times over). The ASS filescaption.pyandgraphics.pywrite sayYCbCr Matrix: None, which FFmpeg 8.x needs to draw them in the picture's own matrix (and libass-based players read the same way). After the fix every measured colour is within 1.8 of the truth (mean 0.3-0.95), and within 3.6 for the thin graphics bars. A grey -- black and white pads and text, the default black@0.5 boxes, graphics' near-black background -- is the same under both matrices and plans the command it did; a GIF export, a prores or HDR line and a caller's own--assfile are unchanged. join.py,multicam.py,broll.pyandoverlay.py --videolabel an untagged clip BT.709 beside a converted one, asgrid.pydoes since #333: on FFmpeg 7.1+ concat/overlay converted one of the two pictures to the other's "unknown" (BT.601) matrix (7.08 mean / 25.0 max ΔRGB with the BT.601 clip first, 9.12 / 40.1 with it second, on 7.1.1 and 8.1.3). The colour tests' "untagged" clips are now untagged on FFmpeg 7.1+ too (they came out tagged bt709 there, so CI on 7.1/8.x/9.x never ran the untagged case).- fix(color): draw pad, text, box and background colours in BT.709; label untagged clips in mixed joins (#334)
What's Changed
- fix(color): draw pad, text, box and background colours in BT.709; label untagged clips in join/multicam/broll/overlay --video by @kajisho5 in #334
Full Changelog: v2.10.2...v2.10.3