summaryrefslogtreecommitdiff
path: root/ffmpeg.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2011-08-30 15:08:02 +0200
committerMichael Niedermayer <michaelni@gmx.at>2011-08-30 18:08:22 +0200
commitdd0724288ee86d487e261f23471f861ff4620d8e (patch)
tree91f55e203d33f8de9369de2fa0cd5e4f1019d695 /ffmpeg.c
parent76e48733194cc14d06541abdd2468083a41adb43 (diff)
ffmpeg: get rid of the arbitrary MAX_FILES limit.
Diffstat (limited to 'ffmpeg.c')
-rw-r--r--ffmpeg.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/ffmpeg.c b/ffmpeg.c
index 4e207a5c21..611483d62f 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -109,7 +109,6 @@ typedef struct MetadataMap {
static const OptionDef options[];
-#define MAX_FILES 100
#define MAX_STREAMS 1024 /* arbitrary sanity check value */
static const char *last_asked_format = NULL;
static AVDictionary *ts_scale;
@@ -1903,9 +1902,12 @@ static int transcode(OutputFile *output_files,
char error[1024];
int key;
int want_sdp = 1;
- uint8_t no_packet[MAX_FILES]={0};
+ uint8_t *no_packet;
int no_packet_count=0;
+ if (!(no_packet = av_mallocz(nb_input_files)))
+ exit_program(1);
+
if (rate_emu)
for (i = 0; i < nb_input_streams; i++)
input_streams[i].start = av_gettime();
@@ -2394,7 +2396,7 @@ static int transcode(OutputFile *output_files,
if (file_index < 0) {
if(no_packet_count){
no_packet_count=0;
- memset(no_packet, 0, sizeof(no_packet));
+ memset(no_packet, 0, nb_input_files);
usleep(10000);
continue;
}
@@ -2422,7 +2424,7 @@ static int transcode(OutputFile *output_files,
}
no_packet_count=0;
- memset(no_packet, 0, sizeof(no_packet));
+ memset(no_packet, 0, nb_input_files);
if (do_pkt_dump) {
av_pkt_dump_log2(NULL, AV_LOG_DEBUG, &pkt, do_hex_dump,
@@ -2531,6 +2533,7 @@ static int transcode(OutputFile *output_files,
fail:
av_freep(&bit_buffer);
+ av_freep(&no_packet);
if (output_streams) {
for (i = 0; i < nb_output_streams; i++) {
@@ -3715,8 +3718,6 @@ static int opt_output_file(const char *opt, const char *filename)
av_dict_free(&metadata);
- if (nb_output_files == MAX_FILES)
- exit_program(1); /* a temporary hack until all the other MAX_FILES-sized arrays are removed */
output_files = grow_array(output_files, sizeof(*output_files), &nb_output_files, nb_output_files + 1);
output_files[nb_output_files - 1].ctx = oc;
output_files[nb_output_files - 1].ost_index = nb_output_streams - oc->nb_streams;