mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
dxv: Print texture information after header parsing
This commit is contained in:
parent
fb2889691c
commit
bbf71d46db
@ -321,6 +321,7 @@ static int dxv_decode(AVCodecContext *avctx, void *data,
|
||||
ThreadFrame tframe;
|
||||
GetByteContext *gbc = &ctx->gbc;
|
||||
int (*decompress_tex)(AVCodecContext *avctx);
|
||||
const char *msgcomp, *msgtext;
|
||||
uint32_t tag;
|
||||
int version_major, version_minor = 0;
|
||||
int size = 0, old_type = 0;
|
||||
@ -335,14 +336,16 @@ static int dxv_decode(AVCodecContext *avctx, void *data,
|
||||
ctx->tex_funct = ctx->texdsp.dxt1_block;
|
||||
ctx->tex_rat = 8;
|
||||
ctx->tex_step = 8;
|
||||
av_log(avctx, AV_LOG_DEBUG, "DXTR1 compression and DXT1 texture ");
|
||||
msgcomp = "DXTR1";
|
||||
msgtext = "DXT1";
|
||||
break;
|
||||
case MKBETAG('D', 'X', 'T', '5'):
|
||||
decompress_tex = dxv_decompress_dxt5;
|
||||
ctx->tex_funct = ctx->texdsp.dxt5_block;
|
||||
ctx->tex_rat = 4;
|
||||
ctx->tex_step = 16;
|
||||
av_log(avctx, AV_LOG_DEBUG, "DXTR5 compression and DXT5 texture ");
|
||||
msgcomp = "DXTR5";
|
||||
msgtext = "DXT5";
|
||||
break;
|
||||
case MKBETAG('Y', 'C', 'G', '6'):
|
||||
case MKBETAG('Y', 'G', '1', '0'):
|
||||
@ -353,13 +356,16 @@ static int dxv_decode(AVCodecContext *avctx, void *data,
|
||||
size = tag & 0x00FFFFFF;
|
||||
old_type = tag >> 24;
|
||||
version_major = (old_type & 0x0F) - 1;
|
||||
msgcomp = "LZF";
|
||||
|
||||
if (old_type & 0x40) {
|
||||
av_log(avctx, AV_LOG_DEBUG, "LZF compression and DXT5 texture ");
|
||||
msgtext = "DXT5";
|
||||
|
||||
ctx->tex_funct = ctx->texdsp.dxt5_block;
|
||||
ctx->tex_step = 16;
|
||||
} else if (old_type & 0x20 || version_major == 1) {
|
||||
av_log(avctx, AV_LOG_DEBUG, "LZF compression and DXT1 texture ");
|
||||
msgtext = "DXT1";
|
||||
|
||||
ctx->tex_funct = ctx->texdsp.dxt1_block;
|
||||
ctx->tex_step = 8;
|
||||
} else {
|
||||
@ -379,7 +385,9 @@ static int dxv_decode(AVCodecContext *avctx, void *data,
|
||||
bytestream2_skip(gbc, 2); // unknown
|
||||
size = bytestream2_get_le32(gbc);
|
||||
}
|
||||
av_log(avctx, AV_LOG_DEBUG, "(version %d.%d)\n", version_major, version_minor);
|
||||
av_log(avctx, AV_LOG_DEBUG,
|
||||
"%s compression with %s texture (version %d.%d)\n",
|
||||
msgcomp, msgtext, version_major, version_minor);
|
||||
|
||||
if (size != bytestream2_get_bytes_left(gbc)) {
|
||||
av_log(avctx, AV_LOG_ERROR, "Incomplete or invalid file (%u > %u)\n.",
|
||||
|
Loading…
Reference in New Issue
Block a user