mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-29 22:00:58 +02:00
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>
This commit is contained in:
parent
d4d4629dfe
commit
50a20de6b9
@ -647,9 +647,26 @@ static int dxt5ys_block(uint8_t *dst, ptrdiff_t stride, const uint8_t *block)
|
|||||||
return 16;
|
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)
|
av_cold void ff_texturedspenc_init(TextureDSPContext *c)
|
||||||
{
|
{
|
||||||
c->dxt1_block = dxt1_block;
|
c->dxt1_block = dxt1_block;
|
||||||
c->dxt5_block = dxt5_block;
|
c->dxt5_block = dxt5_block;
|
||||||
c->dxt5ys_block = dxt5ys_block;
|
c->dxt5ys_block = dxt5ys_block;
|
||||||
|
c->rgtc1u_alpha_block = rgtc1u_alpha_block;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user