summaryrefslogtreecommitdiffstats
path: root/libavformat/oggparseskeleton.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit '9200514ad8717c63f82101dc394f4378854325bf'Derek Buitenhuis2016-04-101-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '9200514ad8717c63f82101dc394f4378854325bf': lavf: replace AVStream.codec with AVStream.codecpar This has been a HUGE effort from: - Derek Buitenhuis <derek.buitenhuis@gmail.com> - Hendrik Leppkes <h.leppkes@gmail.com> - wm4 <nfxjfg@googlemail.com> - Clément Bœsch <clement@stupeflix.com> - James Almer <jamrial@gmail.com> - Michael Niedermayer <michael@niedermayer.cc> - Rostislav Pehlivanov <atomnuker@gmail.com> Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * lavf: replace AVStream.codec with AVStream.codecparAnton Khirnov2016-02-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, AVStream contains an embedded AVCodecContext instance, which is used by demuxers to export stream parameters to the caller and by muxers to receive stream parameters from the caller. It is also used internally as the codec context that is passed to parsers. In addition, it is also widely used by the callers as the decoding (when demuxer) or encoding (when muxing) context, though this has been officially discouraged since Libav 11. There are multiple important problems with this approach: - the fields in AVCodecContext are in general one of * stream parameters * codec options * codec state However, it's not clear which ones are which. It is consequently unclear which fields are a demuxer allowed to set or a muxer allowed to read. This leads to erratic behaviour depending on whether decoding or encoding is being performed or not (and whether it uses the AVStream embedded codec context). - various synchronization issues arising from the fact that the same context is used by several different APIs (muxers/demuxers, parsers, bitstream filters and encoders/decoders) simultaneously, with there being no clear rules for who can modify what and the different processes being typically delayed with respect to each other. - avformat_find_stream_info() making it necessary to support opening and closing a single codec context multiple times, thus complicating the semantics of freeing various allocated objects in the codec context. Those problems are resolved by replacing the AVStream embedded codec context with a newly added AVCodecParameters instance, which stores only the stream parameters exported by the demuxers or read by the muxers.
* | Merge commit '92e4b643dfdafdb6528f1baffdbea2b9a028d7c0'Michael Niedermayer2014-05-011-1/+0
|\ \ | |/ | | | | | | | | | | * commit '92e4b643dfdafdb6528f1baffdbea2b9a028d7c0': oggparseskeleton: do not use AVCodecContext.codec_name Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * oggparseskeleton: do not use AVCodecContext.codec_nameAnton Khirnov2014-05-011-1/+0
| | | | | | | | That field is undocumented, of dubious use, and will be deprecated.
* | oggparseskeleton: avoid header parsing failureMichael Niedermayer2013-07-061-0/+3
| | | | | | | | | | | | Based on description by James Almer and the xiph wiki Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | oggparseskeleton: Replace avpriv_report_missing_feature() with a normal ↵James Almer2013-07-061-2/+1
| | | | | | | | | | | | | | | | av_log() call since there should not be more than one fisbone for a given stream. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | oggparseskeleton: Fix fisbone header parsingJames Almer2013-07-061-1/+6
| | | | | | | | | | | | | | | | | | start_granule should be applied to the stream referenced in the fisbone packet, not to the Skeleton stream. This was broken in d1f05dd18375f2f8e68372edee11436927e43ba8 and produced bogus warnings about multiple fisbone in the same stream on files with more than one stream. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '63d744e2be39466e3a734c2987cd713e0bac101e'Michael Niedermayer2013-03-141-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | * commit '63d744e2be39466e3a734c2987cd713e0bac101e': av_log_missing_feature() ---> avpriv_report_missing_feature() Conflicts: libavcodec/aacdec.c libavcodec/tta.c libavformat/mpegts.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * av_log_missing_feature() ---> avpriv_report_missing_feature()Diego Biurrun2013-03-131-2/+2
| |
* | oggparseskeleton: Check the overall start time before using it.Michael Niedermayer2013-01-081-1/+1
| | | | | | | | | | | | | | Fixes division by zero Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '8b8899ac3233b4f7af83ded0dc032fad8902d714'Michael Niedermayer2012-10-231-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | * commit '8b8899ac3233b4f7af83ded0dc032fad8902d714': fate: Declare avcodec/avformat deps in the respective Makefile snippets fate: Add dependencies for WMA and WavPack tests Improve wording and spelling of av_log_missing_feature messages. lavu: remove disabled FF_API_AV_FIFO_PEEK cruft Conflicts: libavcodec/aacsbr.c libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Improve wording and spelling of av_log_missing_feature messages.Diego Biurrun2012-10-231-1/+1
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-10-091-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: mingw/cygwin: Stop adding -fno-common to gcc CFLAGS Restructure av_log_missing_feature message rtp: Support packetization/depacketization of opus file: Set the return value type for lseek to int64_t. ppc: fix Altivec build with old compilers build: add LTO support for PGI compiler build: add -Mdse to PGI optimisation flags rtpenc_vp8: Update the packetizer to the latest spec version rtpdec_vp8: Make the depacketizer implement the latest spec draft doc: allow building with old texi2html versions avutil: skip old_pix_fmts.h since it is just a list Conflicts: libavcodec/aacdec.c libavcodec/h264.c libavcodec/ppc/fmtconvert_altivec.c libavcodec/utils.c libavformat/file.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Restructure av_log_missing_feature messageDiego Biurrun2012-10-091-2/+2
| | | | | | | | | | | | | | | | Some invocations include a verb in the log message, others do not. Yet av_log_missing_feature expects callers to provide a verb. Change the function to include a verb instead and update the callers accordingly. The result is a more natural function API and correct English in the function invocations.
* | Merge commit 'd1f05dd18375f2f8e68372edee11436927e43ba8'Michael Niedermayer2012-09-251-7/+9
|\ \ | |/ | | | | | | | | | | | | | | | | | | * commit 'd1f05dd18375f2f8e68372edee11436927e43ba8': ogg: calculate the start position once all the headers are parsed Conflicts: libavformat/oggdec.c libavformat/oggparseskeleton.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * ogg: calculate the start position once all the headers are parsedLuca Barbato2012-09-241-4/+9
| | | | | | | | | | The fisbone packets can be muxed in any order as long the last one comes before the first data packet.
* | Merge commit '7751e4693dd10ec98c20fbd9887233b575034272'Michael Niedermayer2012-09-251-0/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '7751e4693dd10ec98c20fbd9887233b575034272': ogg: check that the expected number of headers had been parsed libx264: change default to closed gop to match x264cli Use avcodec_free_frame() to free AVFrames. lavf: use a malloced AVFrame in try_decode_frame(). lavc: add avcodec_free_frame(). lavc: ensure extended_data is set properly on decoding lavc: initialize AVFrame.extended_data in avcodec_get_frame_defaults() lavc: use av_mallocz to allocate AVFrames. lavc: rename the argument of avcodec_alloc_frame/get_frame_defaults Conflicts: doc/APIchanges doc/examples/decoding_encoding.c libavcodec/utils.c libavcodec/version.h libavfilter/src_movie.c libavformat/oggdec.c libavformat/oggdec.h libavformat/oggparsetheora.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * ogg: check that the expected number of headers had been parsedLuca Barbato2012-09-241-0/+1
| | | | | | | | Not having the header for a codec is a tell-tale of a broken file.
* | vorbisdemux: Check private context in theoras gtopts.Michael Niedermayer2012-03-231-1/+4
| | | | | | | | | | | | | | | | | | This prevents a null ptr dereference. It could be checked differently but this way it should be possible to return some data. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Remove warning about Ogg skeleton v4.Reimar Döffinger2012-02-041-1/+1
| | | | | | | | | | | | | | | | | | We can handle v4 just fine, the parts we currently use are the same for v3 and v4. v4 can in addition contain an index which we so far do not use though. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-12-011-1/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: rtpdec: Templatize the code for different g726 bitrate variants rv40: move loop filter to rv34dsp context lavf: make av_set_pts_info private. rtpdec: Add support for G726 audio rtpdec: Add an init function that can do custom codec context initialization avconv: make copy_tb on by default. matroskadec: don't set codec timebase. rmdec: don't set codec timebase. avconv: compute next_pts from input packet duration when possible. lavf: estimate frame duration from r_frame_rate. avconv: update InputStream.pts in the streamcopy case. Conflicts: avconv.c libavdevice/alsa-audio-dec.c libavdevice/bktr.c libavdevice/fbdev.c libavdevice/libdc1394.c libavdevice/oss_audio.c libavdevice/v4l.c libavdevice/v4l2.c libavdevice/vfwcap.c libavdevice/x11grab.c libavformat/au.c libavformat/eacdata.c libavformat/flvdec.c libavformat/mpegts.c libavformat/mxfenc.c libavformat/rtpdec_g726.c libavformat/wtv.c libavformat/xmv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavf: make av_set_pts_info private.Anton Khirnov2011-11-301-1/+2
| | | | | | | | It's supposed to be called only from (de)muxers.
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-191-4/+4
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Fix compile warning.Ronald S. Bultje2011-02-061-1/+1
| | | | | | | | | | Change int64_t into a int, which caused this compiler warning: libavformat/oggparseskeleton.c:64: warning: passing argument 2 of ‘av_reduce’ from incompatible pointer type
| * Always use av_set_pts_info to set the stream time base.Reimar Döffinger2011-02-061-2/+3
| | | | | | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* | Fix compile warning.Ronald S. Bultje2011-02-091-1/+1
| | | | | | | | | | | | Change int64_t into a int, which caused this compiler warning: libavformat/oggparseskeleton.c:64: warning: passing argument 2 of ‘av_reduce’ from incompatible pointer type (cherry picked from commit 69ff14920429c9e128a8bcf65ce3f4b4aa93f3d1)
* | Always use av_set_pts_info to set the stream time base.Reimar Döffinger2011-02-051-2/+3
|/
* Define AVMediaType enum, and use it instead of enum CodecType, whichStefano Sabatini2010-03-301-1/+1
| | | | | | is deprecated and will be dropped at the next major bump. Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
* correct first pts for ogg skeletonAurelien Jacobs2010-03-281-0/+2
| | | | Originally committed as revision 22705 to svn://svn.ffmpeg.org/ffmpeg/trunk
* oggdec: Parse skeleton to determine the start time of each streamDavid Conrad2010-03-111-0/+85
Originally committed as revision 22457 to svn://svn.ffmpeg.org/ffmpeg/trunk
OpenPOWER on IntegriCloud