[FFmpeg-cvslog] avcodec/hq: Include alpha in cbp VLC table
Andreas Rheinhardt
git at videolan.org
Sun Apr 13 10:00:58 EEST 2025
ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Wed Apr 9 16:30:57 2025 +0200| [12c9ffa569a026081453234d58a636a6d7e34d57] | committer: Andreas Rheinhardt
avcodec/hq: Include alpha in cbp VLC table
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=12c9ffa569a026081453234d58a636a6d7e34d57
---
libavcodec/hq_common.c | 2 +-
libavcodec/hq_hqa.c | 1 -
libavcodec/hqx.c | 2 --
3 files changed, 1 insertion(+), 4 deletions(-)
diff --git a/libavcodec/hq_common.c b/libavcodec/hq_common.c
index 7235dcb63f..9f56c819f3 100644
--- a/libavcodec/hq_common.c
+++ b/libavcodec/hq_common.c
@@ -19,7 +19,7 @@
#include "hq_common.h"
#define REPEAT(x) x x
-#define ELEM(_sym, _len) {.sym = _sym, .len = _len },
+#define ELEM(_sym, _len) {.sym = _sym << 4 | _sym, .len = _len },
#define LEN5(sym) ELEM(sym, 5)
#define LEN4(sym) REPEAT(ELEM(sym, 4))
#define LEN2(sym) REPEAT(REPEAT(REPEAT(ELEM(sym, 2))))
diff --git a/libavcodec/hq_hqa.c b/libavcodec/hq_hqa.c
index 76af754115..48fc4896ee 100644
--- a/libavcodec/hq_hqa.c
+++ b/libavcodec/hq_hqa.c
@@ -206,7 +206,6 @@ static int hqa_decode_mb(HQContext *c, AVFrame *pic, int qgroup,
if (cbp) {
flag = get_bits1(gb);
- cbp |= cbp << 4;
if (cbp & 0x3)
cbp |= 0x500;
if (cbp & 0xC)
diff --git a/libavcodec/hqx.c b/libavcodec/hqx.c
index 0819575aa4..9ec6672580 100644
--- a/libavcodec/hqx.c
+++ b/libavcodec/hqx.c
@@ -234,7 +234,6 @@ static int hqx_decode_422a(HQXContext *ctx, int slice_no, int x, int y)
quants = hqx_quants[get_bits(gb, 4)];
- cbp |= cbp << 4; // alpha CBP
if (cbp & 0x3) // chroma CBP - top
cbp |= 0x500;
if (cbp & 0xC) // chroma CBP - bottom
@@ -319,7 +318,6 @@ static int hqx_decode_444a(HQXContext *ctx, int slice_no, int x, int y)
quants = hqx_quants[get_bits(gb, 4)];
- cbp |= cbp << 4; // alpha CBP
cbp |= cbp << 8; // chroma CBP
for (i = 0; i < 16; i++) {
if (!(i & 3))
More information about the ffmpeg-cvslog
mailing list