aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2011-04-27 00:11:58 +0200
committerMichael Niedermayer <michaelni@gmx.at>2011-04-27 00:11:58 +0200
commit73a502dd436425875fae1305d47cf0c1fbf24d68 (patch)
tree4a3d3f0c1f52f1146b889272ea135bb97d00646d /libavformat
parentea189b77eb89134a9d3928631c579ca0a28e1a3a (diff)
parent075933a0687974fca74d6d4ac388d24766d8dc78 (diff)
downloadffmpeg-73a502dd436425875fae1305d47cf0c1fbf24d68.tar.gz
Merge branch 'master' into oldabi
* master: (37 commits) vsrc_buffer: 10l mixed up input & output sizes. (funnily this worked 99% of the time) Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Add MxPEG decoder Add support for picture_ptr field in MJpegDecodeContext Move MJPEG's input buffer preprocessing in separate public function Support reference picture defined by bitmask in MJPEG's SOS decoder DCA/DTA encoder vsrc_buffer: Reinit scale filter when an existing filter is used. Signed-off-by: Michael Niedermayer <michaelni@gmx.at> vsrc_buffer: set output timebase when output equalization is done Signed-off-by: Michael Niedermayer <michaelni@gmx.at> vsrc_buffer: Set output size Signed-off-by: Michael Niedermayer <michaelni@gmx.at> vsrc_buffer: fix NULL dereference Signed-off-by: Michael Niedermayer <michaelni@gmx.at> bfi: store palette data in the context Fix issue1503, this fix may be incomplete we need more samples to know for sure. Signed-off-by: Michael Niedermayer <michaelni@gmx.at> wmadec: prevent null pointer call. Signed-off-by: Michael Niedermayer <michaelni@gmx.at> fraps: do not set avctx->pix_fmt to none in decode_init() graphparser: add a NULL check on the argument passed to strstr setdar: prefer "sar" over "par" in log info message fade: fix draw_slice() check on fade->factor value fade: make draw_slice() chroma check against planes 1 and 2 lsws: prevent overflow in sws_init_context() ffplay: fix logic for selecting the show mode in case of missing video ... Conflicts: libavformat/avidec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/avidec.c4
-rw-r--r--libavformat/eacdata.c6
-rw-r--r--libavformat/rawdec.c1
3 files changed, 9 insertions, 2 deletions
diff --git a/libavformat/avidec.c b/libavformat/avidec.c
index e6b3aeb469..82916a1156 100644
--- a/libavformat/avidec.c
+++ b/libavformat/avidec.c
@@ -735,6 +735,10 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
if(st->nb_index_entries)
break;
}
+ // DV-in-AVI cannot be non-interleaved, if set this must be
+ // a mis-detection.
+ if(avi->dv_demux)
+ avi->non_interleaved=0;
if(i==s->nb_streams && avi->non_interleaved) {
av_log(s, AV_LOG_WARNING, "non-interleaved AVI without index, switching to interleaved\n");
avi->non_interleaved=0;
diff --git a/libavformat/eacdata.c b/libavformat/eacdata.c
index c8999c6b23..ef474b3604 100644
--- a/libavformat/eacdata.c
+++ b/libavformat/eacdata.c
@@ -50,13 +50,14 @@ static int cdata_read_header(AVFormatContext *s, AVFormatParameters *ap)
AVIOContext *pb = s->pb;
unsigned int sample_rate, header;
AVStream *st;
+ int64_t channel_layout = 0;
header = avio_rb16(pb);
switch (header) {
case 0x0400: cdata->channels = 1; break;
case 0x0404: cdata->channels = 2; break;
- case 0x040C: cdata->channels = 4; break;
- case 0x0414: cdata->channels = 6; break;
+ case 0x040C: cdata->channels = 4; channel_layout = AV_CH_LAYOUT_QUAD; break;
+ case 0x0414: cdata->channels = 6; channel_layout = AV_CH_LAYOUT_5POINT1_BACK; break;
default:
av_log(s, AV_LOG_INFO, "unknown header 0x%04x\n", header);
return -1;
@@ -72,6 +73,7 @@ static int cdata_read_header(AVFormatContext *s, AVFormatParameters *ap)
st->codec->codec_tag = 0; /* no fourcc */
st->codec->codec_id = CODEC_ID_ADPCM_EA_XAS;
st->codec->channels = cdata->channels;
+ st->codec->channel_layout = channel_layout;
st->codec->sample_rate = sample_rate;
st->codec->sample_fmt = AV_SAMPLE_FMT_S16;
av_set_pts_info(st, 64, 1, sample_rate);
diff --git a/libavformat/rawdec.c b/libavformat/rawdec.c
index 02718e79c0..0387e3d266 100644
--- a/libavformat/rawdec.c
+++ b/libavformat/rawdec.c
@@ -100,6 +100,7 @@ int ff_raw_audio_read_header(AVFormatContext *s,
st->codec->codec_type = AVMEDIA_TYPE_AUDIO;
st->codec->codec_id = s->iformat->value;
st->need_parsing = AVSTREAM_PARSE_FULL;
+ st->start_time = 0;
/* the parameters will be extracted from the compressed bitstream */
return 0;