Merge commit 'b5849f77095439e994b11c25e6063d443b36c228'

* commit 'b5849f77095439e994b11c25e6063d443b36c228': (21 commits)
  ac3enc: merge AC3MDCTContext with AC3EncodeContext.
  ac3enc: prefer passing AC3EncodeContext rather than AVCodecContext
  ac3enc: fix memleak
  mpeg1video: add CODEC_CAP_SLICE_THREADS.
  lavf: fix segfault in av_open_input_stream()
  mpegtsenc: set Random Access indicator on keyframe start packets
  lavf: Cleanup try_decode_frame() logic.
  Replace some gotos that lead to single return statements by direct return.
  build: move tests/seek_test.c to libavformat and reuse generic build rules
  mxfenc: include needed header for ff_iso8601_to_unix_time() prototype
  Add a check for strptime().
  lavf: factor out conversion of ISO8601 string to unix time
  wav: parse 'bext' metadata
  wav: keep parsing until EOF if the input is seekable and we know the size of the data tag
  wav: Refactor the tag checking into a switch statement
  wav: make sure neither data_size nor sample_count is negative.
  wav: refactor the 'fmt ' tag search and parsing.
  wav: add an option for writing BEXT chunk
  ffmpeg: get rid of a pointless limit on number of streams.
  ffmpeg: remove an unused define.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer
2011-07-14 02:22:48 +02:00
27 changed files with 252 additions and 259 deletions

View File

@@ -115,7 +115,6 @@ static const OptionDef options[];
#define MAX_FILES 100
#define MAX_STREAMS 1024 /* arbitrary sanity check value */
static const char *last_asked_format = NULL;
static double *ts_scale;
static int nb_ts_scale;
@@ -1575,7 +1574,7 @@ static int output_packet(InputStream *ist, int ist_index,
ret = avcodec_decode_audio3(ist->st->codec, samples, &decoded_data_size,
&avpkt);
if (ret < 0)
goto fail_decode;
return ret;
avpkt.data += ret;
avpkt.size -= ret;
data_size = ret;
@@ -1602,7 +1601,7 @@ static int output_packet(InputStream *ist, int ist_index,
&picture, &got_output, &avpkt);
quality = same_quality ? picture.quality : 0;
if (ret < 0)
goto fail_decode;
return ret;
if (!got_output) {
/* no picture yet */
goto discard_packet;
@@ -1622,7 +1621,7 @@ static int output_packet(InputStream *ist, int ist_index,
ret = avcodec_decode_subtitle2(ist->st->codec,
&subtitle, &got_output, &avpkt);
if (ret < 0)
goto fail_decode;
return ret;
if (!got_output) {
goto discard_packet;
}
@@ -1630,7 +1629,7 @@ static int output_packet(InputStream *ist, int ist_index,
avpkt.size = 0;
break;
default:
goto fail_decode;
return -1;
}
} else {
switch(ist->st->codec->codec_type) {
@@ -1910,8 +1909,6 @@ static int output_packet(InputStream *ist, int ist_index,
}
return 0;
fail_decode:
return -1;
}
static void print_sdp(AVFormatContext **avc, int n)
@@ -3197,9 +3194,6 @@ static int opt_input_ts_scale(const char *opt, const char *arg)
p++;
scale= strtod(p, &p);
if(stream >= MAX_STREAMS)
ffmpeg_exit(1);
ts_scale = grow_array(ts_scale, sizeof(*ts_scale), &nb_ts_scale, stream + 1);
ts_scale[stream] = scale;
return 0;
@@ -3851,7 +3845,7 @@ static int opt_streamid(const char *opt, const char *arg)
ffmpeg_exit(1);
}
*p++ = '\0';
idx = parse_number_or_die(opt, idx_str, OPT_INT, 0, MAX_STREAMS-1);
idx = parse_number_or_die(opt, idx_str, OPT_INT, 0, INT_MAX);
streamid_map = grow_array(streamid_map, sizeof(*streamid_map), &nb_streamid_map, idx+1);
streamid_map[idx] = parse_number_or_die(opt, p, OPT_INT, 0, INT_MAX);
return 0;