summaryrefslogtreecommitdiff
path: root/libavformat/wtv.c
Commit message (Collapse)AuthorAge
* cosmetics: Fix spelling mistakesVittorio Giovara2016-05-04
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* 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.
* cosmetics: Drop empty comment linesDiego Biurrun2016-02-18
|
* riff: Use the correct logging contextLuca Barbato2015-07-11
|
* avformat: Don't anonymously typedef structsDiego Biurrun2015-02-14
|
* Use gmtime_r instead of gmtime and localtime_r instead of localtimeMartin Storsjö2014-10-26
| | | | | | | | | | | gmtime isn't thread safe in general. In msvcrt (which lacks gmtime_r), the buffer used by gmtime is thread specific though. One call to localtime is left in avconv_opt.c, where thread safety shouldn't matter (instead of making avconv depend on the libavutil internal header). Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: Check the return value of strftimeMartin Storsjö2014-10-26
| | | | | | | | If the buffer provided to strftime is too small, the buffer contents are indeterminate - it does not guarantee actually null terminating the buffer. Signed-off-by: Martin Storsjö <martin@martin.st>
* wtv: Avoid needlessly calling gmtime twice with the same argumentMartin Storsjö2014-10-26
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* wtv: clean memory on errorVittorio Giovara2014-10-20
| | | | | CC: libav-stable@libav.org Bug-Id: CID 718002
* wtv: check seek_by_sector return valueVittorio Giovara2014-10-20
| | | | | CC: libav-stable@libav.org Bug-Id: CID 1198258
* lavf: more correct printf format specifiersDiego Biurrun2014-03-11
|
* wtv: fix variable sign in formatVittorio Giovara2013-11-03
|
* wtv: Seek by sector properlyLuca Barbato2013-10-18
| | | | | | | | | Use an helper function to seek by sector to avoid possible mistakes due shifting by WTV_SECTOR_BITS a 32bit integer. Contrary to common intuition, a 32 bit integer left shifted by a 64 bit integer does not promote the 32 bit integer to 64 bit before shifting.
* wtv: Add more sanity checks for a length read from the fileMartin Storsjö2013-09-19
| | | | | | | | Also make sure the existing length check can't overflow. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* wtv: Drop some casts that now are unnecessaryMartin Storsjö2013-07-26
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* wtv: Make WTV_SECTOR_BITS a 64 bit constantMartin Storsjö2013-07-26
| | | | | | | | This makes sure that values that are left-shifted by this constant end up casted to 64 bit before shifting, avoiding overflow if the value ends up larger than 2 GB. Signed-off-by: Martin Storsjö <martin@martin.st>
* wtv: Mark attachment with a negative stream idLuca Barbato2013-07-07
| | | | | | | | | A sid 0 would be mismatched to the attachment. Prevent NULL pointer dereference. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* riff: Move guid structs and helper functions into riffPeter Ross2013-04-21
| | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org> Signed-off-by: Diego Biurrun <diego@biurrun.de>
* miscellaneous typo fixesDiego Biurrun2012-12-21
|
* wtv: set channel layout for mpeg audioJustin Ruggles2012-11-12
|
* Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-07
|
* wtv: Check the return value from gmtimeMartin Storsjö2012-06-25
| | | | | | | | On MSVC, gmtime returns NULL for values outside of their supported range (and these show up in our fate test). This doesn't seem to affect the actual fate test result. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: remove AVFormatParameters from AVFormatContext.read_header signatureAnton Khirnov2012-01-27
|
* wtv: fix memleaks during normal operationJanne Grunau2012-01-11
|
* lavu: replace int/float punning functionsMans Rullgard2011-12-11
| | | | | | | | | | | | | | | | | | The existing functions defined in intfloat_readwrite.[ch] are both slow and incorrect (infinities are not handled). This introduces a new header with fast, inline conversion functions using direct union punning assuming an IEEE-754 system, an assumption already made throughout the code. The one use of Intel/Motorola extended 80-bit format is replaced by simpler code sufficient under the present constraints (positive normal values). The old functions are marked deprecated and retained for compatibility. Signed-off-by: Mans Rullgard <mans@mansr.com>
* lavf: make av_set_pts_info private.Anton Khirnov2011-11-30
| | | | It's supposed to be called only from (de)muxers.
* Remove leftover includes of strings.hMartin Storsjö2011-11-06
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* mpegts: Add support for Sections in PMTAlex Converse2011-10-28
|
* mpegts: Add support for multiple mp4 descriptorsAlex Converse2011-10-28
|
* lavf: replace av_new_stream->avformat_new_stream part II.Anton Khirnov2011-10-19
| | | | | | | | Manual replacements are done in this commit. In many cases, the id is some constant made up number (e.g. 0 for video and 1 for audio), which is then not used in the demuxer for anything. Those ids are removed.
* 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)/'
* doxygen: Fix parameter names to match the function prototypes.Diego Biurrun2011-07-03
|
* Remove all uses of now deprecated metadata functions.Anton Khirnov2011-06-08
|
* handle malloc failures in ff_get_wav_headerMax Horn2011-04-14
| | | | | | | | | | | ff_get_wav_header is reading data from a WAVE file and then uses it (without validation) to malloc a buffer. It then proceeded to read data into the buffer, without verifying that the allocation succeeded. To address this, change ff_get_wav_header to return an error if allocation failed, and adapted all calling code to handle that error. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* Reemove remaining uses of deprecated AVERROR_NOTSUPP.Anton Khirnov2011-04-06
|
* lavf: replace some more avio_seek(SEEK_CUR) with avio_skipAnton Khirnov2011-03-20
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* 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: deprecate url_ferrorAnton Khirnov2011-03-15
| | | | | | AVIOContext.error should be used directly instead. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avio: deprecate url_feofAnton Khirnov2011-03-07
| | | | | | AVIOContext.eof_reached should be used directly instead. 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_ prefix for url_fseekAnton 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 av_alloc_put_byte -> avio_alloc_context for consistencyAnton Khirnov2011-02-21
| | | | 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>
* wtv: ignore empty data_guid chunksPeter Ross2011-02-13
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* wtv: mark streams intended for hearing or visual impaired personsPeter Ross2011-02-10
| | | | Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
* reindent after last commitPeter Ross2011-02-05
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* wtv: do not use flag in stream_guid chunk to determine if stream is valid, ↵Peter Ross2011-02-05
| | | | | | | | as this method is unreliable This fixes roundup issue 2556. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>