swfenc: error out for more than 1 audio or video stream

Prevents CID602000.
This commit is contained in:
Janne Grunau 2012-10-09 14:48:08 +02:00
parent 0fb3b24ada
commit 53e122dd4a
1 changed files with 8 additions and 0 deletions

View File

@ -186,6 +186,10 @@ static int swf_write_header(AVFormatContext *s)
for(i=0;i<s->nb_streams;i++) {
AVCodecContext *enc = s->streams[i]->codec;
if (enc->codec_type == AVMEDIA_TYPE_AUDIO) {
if (swf->audio_enc) {
av_log(s, AV_LOG_ERROR, "SWF muxer only supports 1 audio stream\n");
return AVERROR_INVALIDDATA;
}
if (enc->codec_id == AV_CODEC_ID_MP3) {
swf->audio_enc = enc;
swf->audio_fifo= av_fifo_alloc(AUDIO_FIFO_SIZE);
@ -196,6 +200,10 @@ static int swf_write_header(AVFormatContext *s)
return -1;
}
} else {
if (swf->video_enc) {
av_log(s, AV_LOG_ERROR, "SWF muxer only supports 1 video stream\n");
return AVERROR_INVALIDDATA;
}
if (enc->codec_id == AV_CODEC_ID_VP6F ||
enc->codec_id == AV_CODEC_ID_FLV1 ||
enc->codec_id == AV_CODEC_ID_MJPEG) {