Add a context to av_log() calls and extend ape_dumpinfo prototype to do that.

Originally committed as revision 17372 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Benoit Fouet 2009-02-16 14:44:31 +00:00
parent e86a14ded9
commit 76b9092f24

View File

@ -162,25 +162,25 @@ static void ape_parse_tag(AVFormatContext *s)
val = get_le32(pb); /* APE tag version */ val = get_le32(pb); /* APE tag version */
if (val > APE_TAG_VERSION) { if (val > APE_TAG_VERSION) {
av_log(NULL, AV_LOG_ERROR, "Unsupported tag version. (>=%d)\n", APE_TAG_VERSION); av_log(s, AV_LOG_ERROR, "Unsupported tag version. (>=%d)\n", APE_TAG_VERSION);
return; return;
} }
tag_bytes = get_le32(pb); /* tag size */ tag_bytes = get_le32(pb); /* tag size */
if (tag_bytes - APE_TAG_FOOTER_BYTES > (1024 * 1024 * 16)) { if (tag_bytes - APE_TAG_FOOTER_BYTES > (1024 * 1024 * 16)) {
av_log(NULL, AV_LOG_ERROR, "Tag size is way too big\n"); av_log(s, AV_LOG_ERROR, "Tag size is way too big\n");
return; return;
} }
fields = get_le32(pb); /* number of fields */ fields = get_le32(pb); /* number of fields */
if (fields > 65536) { if (fields > 65536) {
av_log(NULL, AV_LOG_ERROR, "Too many tag fields (%d)\n", fields); av_log(s, AV_LOG_ERROR, "Too many tag fields (%d)\n", fields);
return; return;
} }
val = get_le32(pb); /* flags */ val = get_le32(pb); /* flags */
if (val & APE_TAG_FLAG_IS_HEADER) { if (val & APE_TAG_FLAG_IS_HEADER) {
av_log(NULL, AV_LOG_ERROR, "APE Tag is a header\n"); av_log(s, AV_LOG_ERROR, "APE Tag is a header\n");
return; return;
} }
@ -193,15 +193,15 @@ static void ape_parse_tag(AVFormatContext *s)
ape_tag_read_field(s); ape_tag_read_field(s);
#if ENABLE_DEBUG #if ENABLE_DEBUG
av_log(NULL, AV_LOG_DEBUG, "\nAPE Tags:\n\n"); av_log(s, AV_LOG_DEBUG, "\nAPE Tags:\n\n");
av_log(NULL, AV_LOG_DEBUG, "title = %s\n", s->title); av_log(s, AV_LOG_DEBUG, "title = %s\n", s->title);
av_log(NULL, AV_LOG_DEBUG, "author = %s\n", s->author); av_log(s, AV_LOG_DEBUG, "author = %s\n", s->author);
av_log(NULL, AV_LOG_DEBUG, "copyright = %s\n", s->copyright); av_log(s, AV_LOG_DEBUG, "copyright = %s\n", s->copyright);
av_log(NULL, AV_LOG_DEBUG, "comment = %s\n", s->comment); av_log(s, AV_LOG_DEBUG, "comment = %s\n", s->comment);
av_log(NULL, AV_LOG_DEBUG, "album = %s\n", s->album); av_log(s, AV_LOG_DEBUG, "album = %s\n", s->album);
av_log(NULL, AV_LOG_DEBUG, "year = %d\n", s->year); av_log(s, AV_LOG_DEBUG, "year = %d\n", s->year);
av_log(NULL, AV_LOG_DEBUG, "track = %d\n", s->track); av_log(s, AV_LOG_DEBUG, "track = %d\n", s->track);
av_log(NULL, AV_LOG_DEBUG, "genre = %s\n", s->genre); av_log(s, AV_LOG_DEBUG, "genre = %s\n", s->genre);
#endif #endif
} }
@ -213,58 +213,58 @@ static int ape_probe(AVProbeData * p)
return 0; return 0;
} }
static void ape_dumpinfo(APEContext * ape_ctx) static void ape_dumpinfo(AVFormatContext * s, APEContext * ape_ctx)
{ {
#if ENABLE_DEBUG #if ENABLE_DEBUG
int i; int i;
av_log(NULL, AV_LOG_DEBUG, "Descriptor Block:\n\n"); av_log(s, AV_LOG_DEBUG, "Descriptor Block:\n\n");
av_log(NULL, AV_LOG_DEBUG, "magic = \"%c%c%c%c\"\n", ape_ctx->magic[0], ape_ctx->magic[1], ape_ctx->magic[2], ape_ctx->magic[3]); av_log(s, AV_LOG_DEBUG, "magic = \"%c%c%c%c\"\n", ape_ctx->magic[0], ape_ctx->magic[1], ape_ctx->magic[2], ape_ctx->magic[3]);
av_log(NULL, AV_LOG_DEBUG, "fileversion = %d\n", ape_ctx->fileversion); av_log(s, AV_LOG_DEBUG, "fileversion = %d\n", ape_ctx->fileversion);
av_log(NULL, AV_LOG_DEBUG, "descriptorlength = %d\n", ape_ctx->descriptorlength); av_log(s, AV_LOG_DEBUG, "descriptorlength = %d\n", ape_ctx->descriptorlength);
av_log(NULL, AV_LOG_DEBUG, "headerlength = %d\n", ape_ctx->headerlength); av_log(s, AV_LOG_DEBUG, "headerlength = %d\n", ape_ctx->headerlength);
av_log(NULL, AV_LOG_DEBUG, "seektablelength = %d\n", ape_ctx->seektablelength); av_log(s, AV_LOG_DEBUG, "seektablelength = %d\n", ape_ctx->seektablelength);
av_log(NULL, AV_LOG_DEBUG, "wavheaderlength = %d\n", ape_ctx->wavheaderlength); av_log(s, AV_LOG_DEBUG, "wavheaderlength = %d\n", ape_ctx->wavheaderlength);
av_log(NULL, AV_LOG_DEBUG, "audiodatalength = %d\n", ape_ctx->audiodatalength); av_log(s, AV_LOG_DEBUG, "audiodatalength = %d\n", ape_ctx->audiodatalength);
av_log(NULL, AV_LOG_DEBUG, "audiodatalength_high = %d\n", ape_ctx->audiodatalength_high); av_log(s, AV_LOG_DEBUG, "audiodatalength_high = %d\n", ape_ctx->audiodatalength_high);
av_log(NULL, AV_LOG_DEBUG, "wavtaillength = %d\n", ape_ctx->wavtaillength); av_log(s, AV_LOG_DEBUG, "wavtaillength = %d\n", ape_ctx->wavtaillength);
av_log(NULL, AV_LOG_DEBUG, "md5 = "); av_log(s, AV_LOG_DEBUG, "md5 = ");
for (i = 0; i < 16; i++) for (i = 0; i < 16; i++)
av_log(NULL, AV_LOG_DEBUG, "%02x", ape_ctx->md5[i]); av_log(s, AV_LOG_DEBUG, "%02x", ape_ctx->md5[i]);
av_log(NULL, AV_LOG_DEBUG, "\n"); av_log(s, AV_LOG_DEBUG, "\n");
av_log(NULL, AV_LOG_DEBUG, "\nHeader Block:\n\n"); av_log(s, AV_LOG_DEBUG, "\nHeader Block:\n\n");
av_log(NULL, AV_LOG_DEBUG, "compressiontype = %d\n", ape_ctx->compressiontype); av_log(s, AV_LOG_DEBUG, "compressiontype = %d\n", ape_ctx->compressiontype);
av_log(NULL, AV_LOG_DEBUG, "formatflags = %d\n", ape_ctx->formatflags); av_log(s, AV_LOG_DEBUG, "formatflags = %d\n", ape_ctx->formatflags);
av_log(NULL, AV_LOG_DEBUG, "blocksperframe = %d\n", ape_ctx->blocksperframe); av_log(s, AV_LOG_DEBUG, "blocksperframe = %d\n", ape_ctx->blocksperframe);
av_log(NULL, AV_LOG_DEBUG, "finalframeblocks = %d\n", ape_ctx->finalframeblocks); av_log(s, AV_LOG_DEBUG, "finalframeblocks = %d\n", ape_ctx->finalframeblocks);
av_log(NULL, AV_LOG_DEBUG, "totalframes = %d\n", ape_ctx->totalframes); av_log(s, AV_LOG_DEBUG, "totalframes = %d\n", ape_ctx->totalframes);
av_log(NULL, AV_LOG_DEBUG, "bps = %d\n", ape_ctx->bps); av_log(s, AV_LOG_DEBUG, "bps = %d\n", ape_ctx->bps);
av_log(NULL, AV_LOG_DEBUG, "channels = %d\n", ape_ctx->channels); av_log(s, AV_LOG_DEBUG, "channels = %d\n", ape_ctx->channels);
av_log(NULL, AV_LOG_DEBUG, "samplerate = %d\n", ape_ctx->samplerate); av_log(s, AV_LOG_DEBUG, "samplerate = %d\n", ape_ctx->samplerate);
av_log(NULL, AV_LOG_DEBUG, "\nSeektable\n\n"); av_log(s, AV_LOG_DEBUG, "\nSeektable\n\n");
if ((ape_ctx->seektablelength / sizeof(uint32_t)) != ape_ctx->totalframes) { if ((ape_ctx->seektablelength / sizeof(uint32_t)) != ape_ctx->totalframes) {
av_log(NULL, AV_LOG_DEBUG, "No seektable\n"); av_log(s, AV_LOG_DEBUG, "No seektable\n");
} else { } else {
for (i = 0; i < ape_ctx->seektablelength / sizeof(uint32_t); i++) { for (i = 0; i < ape_ctx->seektablelength / sizeof(uint32_t); i++) {
if (i < ape_ctx->totalframes - 1) { if (i < ape_ctx->totalframes - 1) {
av_log(NULL, AV_LOG_DEBUG, "%8d %d (%d bytes)\n", i, ape_ctx->seektable[i], ape_ctx->seektable[i + 1] - ape_ctx->seektable[i]); av_log(s, AV_LOG_DEBUG, "%8d %d (%d bytes)\n", i, ape_ctx->seektable[i], ape_ctx->seektable[i + 1] - ape_ctx->seektable[i]);
} else { } else {
av_log(NULL, AV_LOG_DEBUG, "%8d %d\n", i, ape_ctx->seektable[i]); av_log(s, AV_LOG_DEBUG, "%8d %d\n", i, ape_ctx->seektable[i]);
} }
} }
} }
av_log(NULL, AV_LOG_DEBUG, "\nFrames\n\n"); av_log(s, AV_LOG_DEBUG, "\nFrames\n\n");
for (i = 0; i < ape_ctx->totalframes; i++) for (i = 0; i < ape_ctx->totalframes; i++)
av_log(NULL, AV_LOG_DEBUG, "%8d %8lld %8d (%d samples)\n", i, ape_ctx->frames[i].pos, ape_ctx->frames[i].size, ape_ctx->frames[i].nblocks); av_log(s, AV_LOG_DEBUG, "%8d %8lld %8d (%d samples)\n", i, ape_ctx->frames[i].pos, ape_ctx->frames[i].size, ape_ctx->frames[i].nblocks);
av_log(NULL, AV_LOG_DEBUG, "\nCalculated information:\n\n"); av_log(s, AV_LOG_DEBUG, "\nCalculated information:\n\n");
av_log(NULL, AV_LOG_DEBUG, "junklength = %d\n", ape_ctx->junklength); av_log(s, AV_LOG_DEBUG, "junklength = %d\n", ape_ctx->junklength);
av_log(NULL, AV_LOG_DEBUG, "firstframe = %d\n", ape_ctx->firstframe); av_log(s, AV_LOG_DEBUG, "firstframe = %d\n", ape_ctx->firstframe);
av_log(NULL, AV_LOG_DEBUG, "totalsamples = %d\n", ape_ctx->totalsamples); av_log(s, AV_LOG_DEBUG, "totalsamples = %d\n", ape_ctx->totalsamples);
#endif #endif
} }
@ -403,7 +403,7 @@ static int ape_read_header(AVFormatContext * s, AVFormatParameters * ap)
} }
ape_dumpinfo(ape); ape_dumpinfo(s, ape);
/* try to read APE tags */ /* try to read APE tags */
if (!url_is_streamed(pb)) { if (!url_is_streamed(pb)) {