From: Ramiro Polla <ramiro.polla@gmail.com> To: ffmpeg-devel@ffmpeg.org Subject: [FFmpeg-devel] [PATCH 2/3] swscale/swscale_unscaled: fix packed30togbra10() for formats with bpc between 9-14 bits Date: Sun, 18 May 2025 22:52:08 +0200 Message-ID: <20250518205209.30343-2-ramiro.polla@gmail.com> (raw) In-Reply-To: <20250518205209.30343-1-ramiro.polla@gmail.com> Currently, packed30togbra10() always sets the alpha value to 0xFFFF, without taking the bit depth into consideration. This commit restricts the alpha value to the bit depth. --- libswscale/swscale_unscaled.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libswscale/swscale_unscaled.c b/libswscale/swscale_unscaled.c index 307e5471a9..8d71a88c23 100644 --- a/libswscale/swscale_unscaled.c +++ b/libswscale/swscale_unscaled.c @@ -818,6 +818,7 @@ static void packed30togbra10(const uint8_t *src, int srcStride, int x, h, i; int dst_alpha = dst[3] != NULL; int scale_high = bpc - 10, scale_low = 10 - scale_high; + uint16_t alpha_val = (1U << bpc) - 1; for (h = 0; h < srcSliceH; h++) { uint32_t *src_line = (uint32_t *)(src + srcStride * h); unsigned component; @@ -834,7 +835,7 @@ static void packed30togbra10(const uint8_t *src, int srcStride, dst[1][x] = av_bswap16(component << scale_high | component >> scale_low); component = p & 0x3FF; dst[2][x] = av_bswap16(component << scale_high | component >> scale_low); - dst[3][x] = 0xFFFF; + dst[3][x] = av_bswap16(alpha_val); src_line++; } } else { @@ -860,7 +861,7 @@ static void packed30togbra10(const uint8_t *src, int srcStride, dst[1][x] = component << scale_high | component >> scale_low; component = p & 0x3FF; dst[2][x] = component << scale_high | component >> scale_low; - dst[3][x] = 0xFFFF; + dst[3][x] = alpha_val; src_line++; } } else { -- 2.30.2 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2025-05-18 20:52 UTC|newest] Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top 2025-05-18 20:52 [FFmpeg-devel] [PATCH 1/3] swscale/swscale_unscaled: fix planarCopyWrapper() for yuv444p => yuva444p Ramiro Polla 2025-05-18 20:52 ` Ramiro Polla [this message] 2025-05-18 20:52 ` [FFmpeg-devel] [PATCH 3/3] swscale/swscale_unscaled: fix packed16togbra16() for formats with bpc between 9-14 bits Ramiro Polla 2025-05-18 21:14 ` James Almer 2025-05-18 21:17 ` James Almer 2025-05-18 22:02 ` Ramiro Polla 2025-05-21 22:23 ` Ramiro Polla
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20250518205209.30343-2-ramiro.polla@gmail.com \ --to=ramiro.polla@gmail.com \ --cc=ffmpeg-devel@ffmpeg.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel This inbox may be cloned and mirrored by anyone: git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \ ffmpegdev@gitmailbox.com public-inbox-index ffmpegdev Example config snippet for mirrors. AGPL code for this site: git clone https://public-inbox.org/public-inbox.git