summaryrefslogtreecommitdiff
path: root/libavformat/vocdec.c
Commit message (Collapse)AuthorAge
* lavf: replace AVStream.codec with AVStream.codecparAnton Khirnov2016-02-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* voc: Split ff_voc_get_packet into a separate fileDiego Biurrun2016-02-18
|
* vocdec: do not create the stream in read_header()Anton Khirnov2015-12-12
| | | | | The stream parameters are not known until we read a packet, so postpone creating it until then.
* vocdec: put the code not shared with other demuxers under appropriate ifdefAnton Khirnov2015-12-12
|
* vocdec: Don't update codec parameters mid-streamMartin Storsjö2013-09-16
| | | | | | | | | | | | | | | | | | If we really want to support parameter changes, they need to be signalled along with the AVPackets as parameter change side data, not just changing the AVCodecContext parameters when a packet is demuxed (since there may be other earlier packets yet undecoded). Something similar was already done for the sample rate in 0883109b2, but some parameters were left changeable. This avoids having to recheck the channel count for validity for each decoded frame in (ad)pcm decoders, unless the decoders explicitly say that they accept parameter changes. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-07
|
* avformat: Drop pointless "format" from container long namesDiego Biurrun2012-07-30
|
* cosmetics: Align muxer/demuxer declarationsMartin Storsjö2012-04-06
| | | | | | | Also add missing trailing commas, break long codec_tag lines and add spaces in codec_tag declarations. Signed-off-by: Martin Storsjö <martin@martin.st>
* voc/avs: Do not change the sample rate mid-stream.Justin Ruggles2012-03-03
| | | | | Also, set the time base based on the sample rate. lavf-voc seek test updated to reflect slightly different seek points.
* libavformat: Add an ff_ prefix to some lavf internal symbolsMartin Storsjö2012-02-15
| | | | | | | | | | Prefix the functions/tables brktimegm, pcm_read_seek, dv_offset_reset, voc_get_packet, codec_movaudio_tags, codec_movvideo_tags. After this, lavf has no global symbols without the proper prefix. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: remove AVFormatParameters from AVFormatContext.read_header signatureAnton Khirnov2012-01-27
|
* lavf,lavd: replace av_new_stream->avformat_new_stream part I.Anton Khirnov2011-10-19
| | | | | Trivial replacements with sed are done in this commit: sed 's/av_new_stream(\([^)]*\), 0)/avformat_new_stream(\1, NULL)/'
* lavf: use designated initialisers for all (de)muxers.Anton Khirnov2011-07-17
| | | | It's more readable and less prone to breakage.
* avio: introduce an AVIOContext.seekable fieldAnton Khirnov2011-04-03
| | | | Use it instead of url_is_streamed and AVIOContext.is_streamed.
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* lavf: replace avio_seek(SEEK_CUR) with avio_skip where it makes senseAnton Khirnov2011-03-16
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avio: avio_ prefix for url_fsizeAnton Khirnov2011-03-07
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avio: add avio_tell macro as a replacement for url_ftellAnton Khirnov2011-03-04
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* lavf: replace all uses of url_fskip with avio_seekAnton Khirnov2011-03-01
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avio: avio_ prefixes for get_* functionsAnton Khirnov2011-02-21
| | | | | | | | | | | | | | In the name of consistency: get_byte -> avio_r8 get_<type> -> avio_r<type> get_buffer -> avio_read get_partial_buffer will be made private later get_strz is left out becase I want to change it later to return something useful. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avio: rename ByteIOContext to AVIOContext.Anton Khirnov2011-02-20
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.Diego Elio Pettenò2011-01-26
| | | | | This also lists the objects from those two libraries as internal (by adding the ff_ prefix) so that they can then be hidden via linker scripts.
* Revise check for codec id in voc demuxer.Justin Ruggles2011-01-18
| | | | This fixes demuxing of packets that do not contain a codec tag and come before the codec_id has been set.
* Fix bug in voc demuxer that was introduced in SVN r26309.Justin Ruggles2011-01-18
| | | | Fixes issue 2560.
* Do not crash for illegal sample size, fixes issue 2502.Daniel Kang2011-01-11
| | | | | | Patch by Daniel Kang, daniel.d.kang at gmail Originally committed as revision 26309 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move AVCodecTag from riff.h into internal.h.Francesco Lavra2010-05-22
| | | | | | Patch by Francesco Lavra, francescolavra interfree it Originally committed as revision 23250 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Define AVMediaType enum, and use it instead of enum CodecType, whichStefano Sabatini2010-03-30
| | | | | | is deprecated and will be dropped at the next major bump. Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Determine VOC block length when length field is zero, fixes issue1538.Peter Ross2009-11-24
| | | | Originally committed as revision 20596 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add ff_ prefixes to exported symbols in libavformat/riff.h.Daniel Verkamp2009-06-22
| | | | | | patch by Daniel Verkamp, aniel drv nu Originally committed as revision 19254 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix build: Add intreadwrite.h and bswap.h #includes where necessary.Diego Biurrun2009-01-11
| | | | Originally committed as revision 16556 to svn://svn.ffmpeg.org/ffmpeg/trunk
* avoid POSIX reserved _t suffixAurelien Jacobs2008-12-11
| | | | Originally committed as revision 16067 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Bump Major version, this commit is almost just renaming bits_per_sample toLuca Abeni2008-09-08
| | | | | | | | | | | bits_per_coded_sample but that cannot be done seperately. Patch by Luca Abeni Also reset the minor version and fix the forgotton change to libfaad. Note: The API/ABI should not be considered stable yet, there still may be a change done here or there if some developer has some cleanup ideas and patches! Originally committed as revision 15262 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change codec_tag type from const struct AVCodecTag ** to const struct ↵Reimar Döffinger2008-08-24
| | | | | | AVCodecTag * const * Originally committed as revision 14947 to svn://svn.ffmpeg.org/ffmpeg/trunk
* voc: add ff_ prefix to some global const dataAurelien Jacobs2008-08-24
| | | | Originally committed as revision 14945 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make long_names in lavf/lavdev optional depending on CONFIG_SMALL.Stefano Sabatini2008-06-03
| | | | | | | patch by Stefano Sabatini, stefano.sabatini-lala poste.it along with some spelling/consistency fixes for the long names by me Originally committed as revision 13649 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use dynamically allocated ByteIOContext in AVFormatContextBjörn Axelsson2007-11-21
| | | | | | | patch by: Björn Axelsson, bjorn d axelsson a intinor d se thread: [PATCH] Remove static ByteIOContexts, 06 nov 2007 Originally committed as revision 11071 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace all occurrences of AVERROR_NOTSUPP with AVERROR(ENOSYS).Panagiotis Issaris2007-07-19
| | | | Originally committed as revision 9763 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace all occurrences of AVERROR_IO with AVERROR(EIO).Panagiotis Issaris2007-07-19
| | | | Originally committed as revision 9760 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace all occurrences of AVERROR_NOMEM with AVERROR(ENOMEM).Panagiotis Issaris2007-07-19
| | | | Originally committed as revision 9759 to svn://svn.ffmpeg.org/ffmpeg/trunk
* license header consistency cosmeticsDiego Biurrun2007-07-05
| | | | Originally committed as revision 9484 to svn://svn.ffmpeg.org/ffmpeg/trunk
* remove useless empty functionAurelien Jacobs2007-06-23
| | | | Originally committed as revision 9398 to svn://svn.ffmpeg.org/ffmpeg/trunk
* cosmetics: too much blank linesAurelien Jacobs2007-06-23
| | | | Originally committed as revision 9397 to svn://svn.ffmpeg.org/ffmpeg/trunk
* use intreadwrite functions in vocdecAurelien Jacobs2007-06-23
| | | | Originally committed as revision 9395 to svn://svn.ffmpeg.org/ffmpeg/trunk
* allocate 32 extra bytes at the end of the probe buffer and remove most probe ↵Michael Niedermayer2007-04-08
| | | | | | buf_size checks Originally committed as revision 8677 to svn://svn.ffmpeg.org/ffmpeg/trunk
* simplificationAlex Beregszaszi2007-03-07
| | | | Originally committed as revision 8275 to svn://svn.ffmpeg.org/ffmpeg/trunk
* typo: unkown->unknownAlex Beregszaszi2007-03-07
| | | | Originally committed as revision 8274 to svn://svn.ffmpeg.org/ffmpeg/trunk
* get rid of the [4] limitation of codec tag listsMichael Niedermayer2007-01-21
| | | | Originally committed as revision 7596 to svn://svn.ffmpeg.org/ffmpeg/trunk
* export a few more codec_tag-codec_id tablesMichael Niedermayer2007-01-21
| | | | Originally committed as revision 7594 to svn://svn.ffmpeg.org/ffmpeg/trunk
* move common voc muxer and demuxer data to voc.cAurelien Jacobs2006-11-21
| | | | Originally committed as revision 7146 to svn://svn.ffmpeg.org/ffmpeg/trunk
* split voc.c into vocdec.c and vocenc.cAurelien Jacobs2006-11-21
Originally committed as revision 7145 to svn://svn.ffmpeg.org/ffmpeg/trunk