Merge branch 'release/0.7' into oldabi
* release/0.7: (296 commits) Update version numbers for 0.7.5 vp6: partially propagate huffman tree building errors during coeff model parsing and fix misspelling Check for huffman tree building error in vp6 decoder. Release old pictures after a resolution change in vp5/6 decoder Check for missing reference in vp5/6 decoder. Check for invalid slices offsets in RV30/40 decoder. Check output buffer size in nellymoser decoder. Hack around gcc 4.6 breaking asm using call. Hack around gcc 4.6 breaking asm using call. Fix dxva2 decoding for some H264 samples. (cherry picked from commitbf7dc6b29d
) Fix dxva2 decoding for some H264 samples. mp3demux: pass on error code on packet read. Check for invalid slice offsets in real decoder. rmdec: Reject invalid deinterleaving parameters Use deinterleavers for demangling audio packets in RealMedia. rv10: Reject slices that does not have the same type as the first one rmdec: use the deinterleaving mode and not the codec when creating audio packets. MAINTAINERS: add my GPG fingerprint. (cherry picked from commit7882dc10f8
) Support 3IVD in isom, produced by 3ivx DivX Doctor. mpegpsdec: fix reading first mpegps packet (cherry picked from commitb2f230e23d
) ... Conflicts: Changelog Doxyfile Makefile RELEASE configure doc/general.texi ffmpeg.c ffplay.c libavcodec/dxva2_h264.c libavcodec/h264.c libavcodec/h264_loopfilter.c libavcodec/h264idct_template.c libavcodec/kgv1dec.c libavcodec/mpegvideo.c libavcodec/tableprint.h libavcodec/vp3.c libavdevice/alsa-audio.h libavformat/gxf.c libavformat/mpegts.c libavformat/segafilm.c libavformat/utils.c libavutil/dict.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -540,6 +540,7 @@ int av_open_input_stream(AVFormatContext **ic_ptr,
|
||||
|
||||
if ((err = avformat_open_input(&ic, filename, fmt, &opts)) < 0)
|
||||
goto fail;
|
||||
|
||||
ic->pb = ic->pb ? ic->pb : pb; // don't leak custom pb if it wasn't set above
|
||||
|
||||
#if FF_API_OLD_METADATA
|
||||
@@ -547,6 +548,7 @@ int av_open_input_stream(AVFormatContext **ic_ptr,
|
||||
#endif
|
||||
*ic_ptr = ic;
|
||||
fail:
|
||||
*ic_ptr = ic;
|
||||
av_dict_free(&opts);
|
||||
return err;
|
||||
}
|
||||
@@ -1074,7 +1076,7 @@ static void compute_pkt_fields(AVFormatContext *s, AVStream *st,
|
||||
// we take the conservative approach and discard both
|
||||
// Note, if this is misbehaving for a H.264 file then possibly presentation_delayed is not set correctly.
|
||||
if(delay==1 && pkt->dts == pkt->pts && pkt->dts != AV_NOPTS_VALUE && presentation_delayed){
|
||||
av_log(s, AV_LOG_DEBUG, "invalid dts/pts combination\n");
|
||||
av_log(s, AV_LOG_DEBUG, "invalid dts/pts combination %Ld\n", pkt->dts);
|
||||
pkt->dts= pkt->pts= AV_NOPTS_VALUE;
|
||||
}
|
||||
|
||||
@@ -1212,7 +1214,8 @@ static int read_frame_internal(AVFormatContext *s, AVPacket *pkt)
|
||||
if (!st->need_parsing || !st->parser) {
|
||||
/* no parsing needed: we just output the packet as is */
|
||||
/* raw data support */
|
||||
*pkt = st->cur_pkt; st->cur_pkt.data= NULL;
|
||||
*pkt = st->cur_pkt;
|
||||
st->cur_pkt.data= NULL;
|
||||
compute_pkt_fields(s, st, NULL, pkt);
|
||||
s->cur_st = NULL;
|
||||
if ((s->iformat->flags & AVFMT_GENERIC_INDEX) &&
|
||||
|
Reference in New Issue
Block a user