summaryrefslogtreecommitdiff
path: root/libavformat/rawdec.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.
* avpacket: Replace av_free_packet with av_packet_unrefLuca Barbato2015-10-26
| | | | | | | `av_packet_unref` matches the AVFrame ref-counted API and can be used as a drop in replacement. Deprecate `av_free_packet`.
* lavc: Consistently prefix input buffer definesVittorio Giovara2015-07-27
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* latm: Do not give a score for a single instanceLuca Barbato2014-12-07
| | | | | Bug-Id: 773 CC: libav-stable@libav.org
* latm: Add a probe functionLuca Barbato2014-05-03
|
* lavf: remove disabled FF_API_R_FRAME_RATE cruftAnton Khirnov2013-03-11
|
* raw demuxer: initialize end of partial packetsJanne Grunau2012-12-05
|
* rawdec: remove ff_raw_read_headerLuca Barbato2012-10-25
| | | | It is not used anymore and is a kludge.
* g722: refactor out of rawdec.cLuca Barbato2012-10-25
|
* Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormatAnton Khirnov2012-10-08
|
* Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-07
|
* lavf: deprecate r_frame_rate.Anton Khirnov2012-07-29
| | | | | | | | | | | | | | | | | | | | According to its description, it is supposed to be the LCM of all the frame durations. The usability of such a thing is vanishingly small, especially since we cannot determine it with any amount of reliability. Therefore get rid of it after the next bump. Replace it with the average framerate where it makes sense. FATE results for the wtv and xmv demux tests change. In the wtv case this is caused by the file being corrupted (or possibly badly cut) and containing invalid timestamps. This results in lavf estimating the framerate wrong and making up wrong frame durations. In the xmv case the file contains pts jumps, so again the estimated framerate is far from anything sane and lavf again makes up different frame durations. In some other tests lavf starts making up frame durations from different frame.
* 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>
* rawdec: set timebase to 1/fps.Anton Khirnov2012-02-26
|
* lavf: rename AVInputFormat.value to raw_codec_id.Anton Khirnov2012-01-31
| | | | It's only used by raw demuxers for storing the codec id.
* lavf: remove AVFormatParameters from AVFormatContext.read_header signatureAnton Khirnov2012-01-27
|
* rawdec: Set start_time to 0 for raw audio files.Reimar Döffinger2012-01-01
| | | | | | | None of the raw audio files have timestamps, thus setting start_time to 0 should be reasonable. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* rawdec: don't set codec timebase.Anton Khirnov2011-12-10
| | | | | It's not supposed to be set outside of lavc. Set r_frame_rate and avg_frame_rate instead.
* lavf: make av_set_pts_info private.Anton Khirnov2011-11-30
| | | | It's supposed to be called only from (de)muxers.
* Create separate functions for the raw GSM demuxer.Justin Ruggles2011-11-02
| | | | | Put the new raw GSM demuxer in its own file. Fixes raw GSM demuxing.
* 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)/'
* shn: do not allow seeking in the raw shn demuxer.Justin Ruggles2011-10-13
| | | | | | The demuxer does not read the seektable, a parser is not possible without a full decode, and no shorten decoder can handle random seeking because it needs side info from the seektable.
* AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_*Anton Khirnov2011-10-12
|
* Add LATM demuxerJanne Grunau2011-09-22
| | | | | This is a raw demuxer for the AAC LATM decoder and thus limited to single stream LOAS.
* rawdec: refactor private option for raw video demuxersAnton Khirnov2011-09-17
| | | | | | | | pixel_format/video_size only apply to 'rawvideo' (==uncompressed) demuxer and make no sense for the other raw (== containerless) demuxers. Keep only the framerate option for those. Also use unique classes for all raw video demuxers
* pcmdec: use unique classes for all pcm demuxers.Anton Khirnov2011-09-17
|
* rawdec: g722 is always 1 channel/16kHzAnton Khirnov2011-09-17
|
* lavf,lavd: remove all usage of AVFormatParameters from demuxers.Anton Khirnov2011-08-15
| | | | | | AVFormatParameters are converted into corresponding private options in av_open_input_file/stream() compat wrappers, so accessing them from demuxers is redundant.
* lavf: use designated initialisers for all (de)muxers.Anton Khirnov2011-07-17
| | | | It's more readable and less prone to breakage.
* lavf,lavc: free avoptions in a generic way.Anton Khirnov2011-06-05
| | | | | | It's simpler and less error-prone. Fixes some memleaks along the way.
* rawdec: add framerate private option.Anton Khirnov2011-06-04
|
* rawdec: initialize return value to 0.Anton Khirnov2011-06-03
|
* rawdec: don't leak option strings.Anton Khirnov2011-06-03
|
* rawdec: add a pixel_format private option.Anton Khirnov2011-05-27
|
* rawdec: factor video demuxer definitions into a macro.Anton Khirnov2011-05-27
|
* rawdec: add video_size private option.Anton Khirnov2011-05-27
|
* lavf: deprecate AVFormatParameters.{channels,sample_rate}.Anton Khirnov2011-05-25
|
* rawdec: add sample_rate/channels private options.Anton Khirnov2011-05-25
|
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* avio: add avio_tell macro as a replacement for url_ftellAnton Khirnov2011-03-04
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avio: make get_partial_buffer internal.Anton Khirnov2011-02-21
| | | | 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.
* Add a muxer and demuxer for raw G.722Martin Storsjö2010-09-09
| | | | Originally committed as revision 25087 to svn://svn.ffmpeg.org/ffmpeg/trunk
* split raw.c into rawdec.c and rawenc.cAurelien Jacobs2010-08-30
Originally committed as revision 24997 to svn://svn.ffmpeg.org/ffmpeg/trunk