avconv: call flush_encoders() from transcode() directly.

And remove now pointless parameter.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
This commit is contained in:
Anton Khirnov 2011-08-19 17:52:46 +02:00 committed by Alex Converse
parent c093150849
commit b62b5cb6fd

View File

@ -1397,7 +1397,7 @@ static void generate_silence(uint8_t* buf, enum AVSampleFormat sample_fmt, size_
memset(buf, fill_char, size);
}
static void flush_encoders(int ist_index, OutputStream *ost_table, int nb_ostreams)
static void flush_encoders(OutputStream *ost_table, int nb_ostreams)
{
int i, ret;
@ -1406,7 +1406,7 @@ static void flush_encoders(int ist_index, OutputStream *ost_table, int nb_ostrea
AVCodecContext *enc = ost->st->codec;
AVFormatContext *os = output_files[ost->file_index].ctx;
if (ost->source_index != ist_index || !ost->encoding_needed)
if (!ost->encoding_needed)
continue;
if (ost->st->codec->codec_type == AVMEDIA_TYPE_AUDIO && enc->frame_size <=1)
@ -1797,10 +1797,6 @@ static int output_packet(InputStream *ist, int ist_index,
}
}
discard_packet:
if (pkt == NULL) {
/* EOF handling */
flush_encoders(ist_index, ost_table, nb_ostreams);
}
return 0;
}
@ -2371,6 +2367,7 @@ static int transcode(OutputFile *output_files,
output_packet(ist, i, output_streams, nb_output_streams, NULL);
}
}
flush_encoders(output_streams, nb_output_streams);
term_exit();