Commit 9c069bf7 authored by Carl Eugen Hoyos's avatar Carl Eugen Hoyos

lavc/hapdec: Use correct no-transparency colour space.

Reviewed-by: Tom Butterworth
parent e06ef9aa
......@@ -383,9 +383,6 @@ static av_cold int hap_init(AVCodecContext *avctx)
avctx->coded_width = FFALIGN(avctx->width, TEXTURE_BLOCK_W);
avctx->coded_height = FFALIGN(avctx->height, TEXTURE_BLOCK_H);
/* Technically only one mode has alpha, but 32 bits are easier to handle */
avctx->pix_fmt = AV_PIX_FMT_RGBA;
ff_texturedsp_init(&ctx->dxtc);
switch (avctx->codec_tag) {
......@@ -393,16 +390,19 @@ static av_cold int hap_init(AVCodecContext *avctx)
texture_name = "DXT1";
ctx->tex_rat = 8;
ctx->tex_fun = ctx->dxtc.dxt1_block;
avctx->pix_fmt = AV_PIX_FMT_RGB0;
break;
case MKTAG('H','a','p','5'):
texture_name = "DXT5";
ctx->tex_rat = 16;
ctx->tex_fun = ctx->dxtc.dxt5_block;
avctx->pix_fmt = AV_PIX_FMT_RGBA;
break;
case MKTAG('H','a','p','Y'):
texture_name = "DXT5-YCoCg-scaled";
ctx->tex_rat = 16;
ctx->tex_fun = ctx->dxtc.dxt5ys_block;
avctx->pix_fmt = AV_PIX_FMT_RGB0;
break;
default:
return AVERROR_DECODER_NOT_FOUND;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment