#4444(swscale:new): Transparency gets lost when scaling pal8
#4444: Transparency gets lost when scaling pal8 --------------------------------------+------------------------------------ Reporter: cehoyos | Owner: Type: defect | Status: new Priority: normal | Component: swscale Version: git-master | Keywords: pal8 alpha Blocked By: | Blocking: Reproduced by developer: 0 | Analyzed by developer: 0 --------------------------------------+------------------------------------ {{{ $ ffmpeg -i alpha.png -s 168x168 out.png ffmpeg version N-71320-gc4b2017 Copyright (c) 2000-2015 the FFmpeg developers built with gcc 4.7 (SUSE Linux) configuration: --enable-gpl libavutil 54. 22.100 / 54. 22.100 libavcodec 56. 34.100 / 56. 34.100 libavformat 56. 29.100 / 56. 29.100 libavdevice 56. 4.100 / 56. 4.100 libavfilter 5. 13.101 / 5. 13.101 libswscale 3. 1.101 / 3. 1.101 libswresample 1. 1.100 / 1. 1.100 libpostproc 53. 3.100 / 53. 3.100 Input #0, png_pipe, from 'alpha.png': Duration: N/A, bitrate: N/A Stream #0:0: Video: png, pal8, 21x21 [SAR 5:6 DAR 5:6], 25 tbr, 25 tbn, 25 tbc Output #0, apng, to 'out.png': Metadata: encoder : Lavf56.29.100 Stream #0:0: Video: apng, pal8, 168x168 [SAR 5:6 DAR 5:6], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc Metadata: encoder : Lavc56.34.100 apng Stream mapping: Stream #0:0 -> #0:0 (png (native) -> apng (native)) Press [q] to stop, [?] for help [apng @ 0x36fd040] Only a single frame so saving as a normal PNG. frame= 1 fps=0.0 q=0.0 Lsize= 4kB time=00:00:00.04 bitrate= 823.4kbits/s video:3kB audio:0kB subtitle:0kB other streams:0kB global headers:1kB muxing overhead: 24.418253% }}} The output file is opaque. -- Ticket URL: <https://trac.ffmpeg.org/ticket/4444> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#4444: Transparency gets lost when scaling pal8 -------------------------------------+------------------------------------- Reporter: Carl Eugen | Owner: (none) Hoyos | Type: defect | Status: new Priority: normal | Component: swscale Version: git-master | Resolution: Keywords: pal8 alpha | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Comment (by Niklas Haas): So, the fundamental problem here is that swscale does not support "true" PAL8 output. Instead a hack is performed by converting instead to BGR8 and then just tagging that as PAL8 (using avpriv_set_systematic_pal2). The proper handling of paletted output would require generating a suitable palette and then dithering the image using that set of colors. (See vf_palettegen/paletteuse) With the new graph dispatch infrastructure, it would be fairly straightforward to incorporate those filters as extra output passes, although it will require moving some code around. However, I propose simply dropping the "systematic" PAL8 output hack for now, at least in the case of inputs with an alpha channel. -- Ticket URL: <https://trac.ffmpeg.org/ticket/4444#comment:1> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#4444: Transparency gets lost when scaling pal8 -------------------------------------+------------------------------------- Reporter: Carl Eugen | Owner: (none) Hoyos | Type: defect | Status: new Priority: normal | Component: swscale Version: git-master | Resolution: Keywords: pal8 alpha | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Comment (by Niklas Haas): Fix: https://ffmpeg.org//pipermail/ffmpeg-devel/2024-December/337541.html -- Ticket URL: <https://trac.ffmpeg.org/ticket/4444#comment:2> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
participants (1)
-
FFmpeg