Use av_log_ask_for_sample() to request samples from users.

This commit is contained in:
Diego Biurrun 2011-04-22 19:41:59 +02:00
parent 44f566b79a
commit d9dee728b8
5 changed files with 11 additions and 6 deletions

View File

@ -186,7 +186,7 @@ static int decode_bytes(const uint8_t* inbuffer, uint8_t* out, int bytes){
obuf[i] = c ^ buf[i]; obuf[i] = c ^ buf[i];
if (off) if (off)
av_log(NULL,AV_LOG_DEBUG,"Offset of %d not handled, post sample on ffmpeg-dev.\n",off); av_log_ask_for_sample(NULL, "Offset of %d not handled.\n", off);
return off; return off;
} }

View File

@ -1268,7 +1268,9 @@ static av_cold int cook_decode_init(AVCodecContext *avctx)
/* Try to catch some obviously faulty streams, othervise it might be exploitable */ /* Try to catch some obviously faulty streams, othervise it might be exploitable */
if ((q->samples_per_channel == 256) || (q->samples_per_channel == 512) || (q->samples_per_channel == 1024)) { if ((q->samples_per_channel == 256) || (q->samples_per_channel == 512) || (q->samples_per_channel == 1024)) {
} else { } else {
av_log(avctx,AV_LOG_ERROR,"unknown amount of samples_per_channel = %d, report sample!\n",q->samples_per_channel); av_log_ask_for_sample(avctx,
"unknown amount of samples_per_channel = %d\n",
q->samples_per_channel);
return -1; return -1;
} }

View File

@ -248,7 +248,7 @@ static av_cold int decode_init(AVCodecContext *avctx){
break; break;
default: default:
l->lossy = AV_RL32(avctx->extradata + 8); l->lossy = AV_RL32(avctx->extradata + 8);
av_log(avctx, AV_LOG_INFO, "This is LOCO codec version %i, please upload file for study\n", version); av_log_ask_for_sample(avctx, "This is LOCO codec version %i.\n", version);
} }
l->mode = AV_RL32(avctx->extradata + 4); l->mode = AV_RL32(avctx->extradata + 4);

View File

@ -96,11 +96,13 @@ static int decode_frame(AVCodecContext *avctx,
else { else {
l->shift = 8 - (buf[2] >> 4); l->shift = 8 - (buf[2] >> 4);
if (l->shift > 4) { if (l->shift > 4) {
av_log(avctx, AV_LOG_ERROR, "Unknown WNV1 frame header value %i, please upload file for study\n", buf[2] >> 4); av_log_ask_for_sample(avctx, "Unknown WNV1 frame header value %i\n",
buf[2] >> 4);
l->shift = 4; l->shift = 4;
} }
if (l->shift < 1) { if (l->shift < 1) {
av_log(avctx, AV_LOG_ERROR, "Unknown WNV1 frame header value %i, please upload file for study\n", buf[2] >> 4); av_log_ask_for_sample(avctx, "Unknown WNV1 frame header value %i\n",
buf[2] >> 4);
l->shift = 1; l->shift = 1;
} }
} }

View File

@ -107,7 +107,8 @@ static int oma_read_header(AVFormatContext *s,
case OMA_CODECID_ATRAC3: case OMA_CODECID_ATRAC3:
samplerate = srate_tab[(codec_params >> 13) & 7]*100; samplerate = srate_tab[(codec_params >> 13) & 7]*100;
if (samplerate != 44100) if (samplerate != 44100)
av_log(s, AV_LOG_ERROR, "Unsupported sample rate, send sample file to developers: %d\n", samplerate); av_log_ask_for_sample(s, "Unsupported sample rate: %d\n",
samplerate);
framesize = (codec_params & 0x3FF) * 8; framesize = (codec_params & 0x3FF) * 8;
jsflag = (codec_params >> 17) & 1; /* get stereo coding mode, 1 for joint-stereo */ jsflag = (codec_params >> 17) & 1; /* get stereo coding mode, 1 for joint-stereo */