libavcodec/texturedspenc : add rgtc1_u_alpha encoding func

this func encode the alpha channel of the rgba input
to an rgtc1u block

Signed-off-by: Tom Butterworth <bangnoise@gmail.com>
pull/272/head
Martin Vignali 7 years ago committed by Tom Butterworth
parent d4d4629dfe
commit 50a20de6b9
  1. 17
      libavcodec/texturedspenc.c

@ -647,9 +647,26 @@ static int dxt5ys_block(uint8_t *dst, ptrdiff_t stride, const uint8_t *block)
return 16;
}
/**
* Compress one block of RGBA pixels in a RGTC1U texture and store the
* resulting bytes in 'dst'. Use the alpha channel of the input image.
*
* @param dst output buffer.
* @param stride scanline in bytes.
* @param block block to compress.
* @return how much texture data has been written.
*/
static int rgtc1u_alpha_block(uint8_t *dst, ptrdiff_t stride, const uint8_t *block)
{
compress_alpha(dst, stride, block);
return 8;
}
av_cold void ff_texturedspenc_init(TextureDSPContext *c)
{
c->dxt1_block = dxt1_block;
c->dxt5_block = dxt5_block;
c->dxt5ys_block = dxt5ys_block;
c->rgtc1u_alpha_block = rgtc1u_alpha_block;
}

Loading…
Cancel
Save