summaryrefslogtreecommitdiff
path: root/libavformat/wavdec.c
Commit message (Collapse)AuthorAge
* avformat/wavdec: Check chunk_size李赞2017-05-10
| | | | | | Fixes integer overflow and out of array access Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavf: fix usages of av_get_codec_tag_string()Clément Bœsch2017-03-29
|
* Merge commit '83548fe894cdb455cc127f754d09905b6d23c173'James Almer2017-03-21
|\ | | | | | | | | | | | | * commit '83548fe894cdb455cc127f754d09905b6d23c173': lavf: fix usage of AVIOContext.seekable Merged-by: James Almer <jamrial@gmail.com>
| * lavf: fix usage of AVIOContext.seekableAnton Khirnov2016-09-30
| | | | | | | | | | | | | | | | It is supposed to be a flag. The only currently defined value is AVIO_SEEKABLE_NORMAL, but other ones may be added in the future. However all the current lavf code treats this field as a bool (mainly for historical reasons). Change all those cases to properly check for AVIO_SEEKABLE_NORMAL.
* | avformat/wavdec: enable seeking with XMA2Paul B Mahol2017-01-20
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avcodec/wmaprodec: >2 channel support for XMAPaul B Mahol2017-01-19
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avformat/wavdec: add support for decoding 24.0 and 16.8 floating point pcm ↵Paul B Mahol2016-12-22
| | | | | | | | | | | | | | | | formats Fixes #5602 and #5603. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avformat/wavdec: Eliminate goto for clang -O0 DCEMark Harris2016-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang is not able to eliminate the reference to ff_spdif_probe() when there is a goto target in the same block and optimization is disabled. This fixes the following build failure on OS X: ./configure --disable-everything --disable-doc \ --enable-decoder=pcm_s16le --enable-demuxer=wav \ --enable-protocol=file --disable-optimizations --cc=clang make ... Undefined symbols for architecture x86_64: "_ff_spdif_probe", referenced from: _set_spdif in libavformat.a(wavdec.o) ld: symbol(s) not found for architecture x86_64 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '9200514ad8717c63f82101dc394f4378854325bf'Derek Buitenhuis2016-04-10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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-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.
* | avformat/wavdec: fix typo with lenMichael Niedermayer2016-04-03
| | | | | | | | | | Found-by: carl Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/wavdec: Remove direct s->pb->buffer accessMichael Niedermayer2016-04-03
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | wavdec: Only set the codec ID in read_headerDerek Buitenhuis2016-04-03
| | | | | | | | | | | | | | | | WAV is not a NOHEADER format, and thus should not be changing stream codec IDs and probing in read_packet. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/wavdec: allow data chunk to be before fmt/xma2 chunkPaul B Mahol2015-11-10
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avformat/wavdec: parse XMA2 tagPaul B Mahol2015-11-10
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avformat/wavdec: use AV_OPT_TYPE_BOOL for ignore_lengthPaul B Mahol2015-09-11
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avformat/wavdec: Detect wrongly interpreted specification about the sample ↵Michael Niedermayer2015-08-13
| | | | | | | | | | | | | | | | value in the fact chunk Fixes Ticket703 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/wavdec: Do not discard sample_count due to roundingMichael Niedermayer2015-08-13
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/wavdec: add extra sample count check for G.729 filesGanesh Ajjanagadde2015-07-31
| | | | | | | | | | | | | | Can be used to fix Ticket4577 Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/wavdec: Check for data_size overflowMichael Niedermayer2015-07-29
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | wavdec: make sample count check more preciseGanesh Ajjanagadde2015-07-29
| | | | | | | | | | | | | | May be used to fix Ticket4577 Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit 'd80811c94e068085aab797f9ba35790529126f85'Michael Niedermayer2015-07-12
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'd80811c94e068085aab797f9ba35790529126f85': riff: Use the correct logging context Conflicts: libavformat/asfdec_o.c libavformat/avidec.c libavformat/dxa.c libavformat/matroskadec.c libavformat/mov.c libavformat/riff.h libavformat/riffdec.c libavformat/wavdec.c libavformat/wtvdec.c libavformat/xwma.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * riff: Use the correct logging contextLuca Barbato2015-07-11
| |
* | avformat/wavdec: Increase dts packet threshold to fix more misdetectionsRodger Combs2015-05-23
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/wavdec: Increase probe_packets limitMichael Niedermayer2015-05-23
| | | | | | | | | | | | Fixes DTS detection of b2429e5ba9.dts Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/wav: Read files >4G if no smaller filesize was written.Carl Eugen Hoyos2015-05-17
| | | | | | | | Fixes second part of ticket #4543.
* | avformat/wavdec: make start_code string largerClément Bœsch2014-12-19
| | | | | | | | av_get_codec_tag_string() uses more that 1 char for unprintable characters.
* | wavdec: avoid output of arbitrary charsThomas Volkert2014-12-19
| | | | | | | | | | | | | | use av_get_codec_tag_string() in wav_read_header() for printing the faulty start code from riff header Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | wavdec: refactor wav_read_header()Thomas Volkert2014-12-19
| | | | | | | | | | | | | | | | Make it more readable and display an error message in case an invalid header is detected (the current version just returns AVERROR_INVALIDDATA) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | wavdec: RIFX file format supportThomas Volkert2014-12-18
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/wavdec: add sanity check for AVCodecContext.channelsJames Almer2014-08-18
| | | | | | | | | | | | | | | | Fixes ticket #3862. As a side effect, this also fixes aac_latm in wav. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | replace calls to url_feof() with avio_feof()James Almer2014-08-08
| | | | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/wavdec: add basic sanity check for the sample countMichael Niedermayer2014-07-14
| | | | | | | | | | | | Fixes Ticket3708 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/wavdec: enlarge probe_packets for wavcsheng2014-04-19
| | | | | | | | | | | | fix issue https://trac.ffmpeg.org/ticket/3550 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-11-24
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Add missing #includes for *INT64_MAX and *INT64_C Conflicts: ffmpeg.c ffmpeg_filter.c ffplay.c libavformat/assdec.c libavformat/avidec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Add missing #includes for *INT64_MAX and *INT64_CDiego Biurrun2013-11-23
| |
* | avformat/wavdec: Fix smv packet interleavingMichael Niedermayer2013-10-25
| | | | | | | | | | | | | | | | This strips the relative timestamp "flag" off. Fixes Ticket2849 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat: use ff_alloc_extradata()Paul B Mahol2013-10-13
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avformat/wavdec: Dont trust the fact chunk for PCMMichael Niedermayer2013-10-09
| | | | | | | | | | | | Fixes Ticket3033 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/wavdec: check smv_frames_per_jpegMichael Niedermayer2013-09-26
| | | | | | | | | | | | | | | | | | Values outside would not be possible due to limitations of jpeg itself Fixes very long running loop Fixes Ticket2977 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | w64dec: fix end position of summarylist guidPaul B Mahol2013-09-03
| | | | | | | | | | | | Noticed-by: James Almer Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | w64dec: fix skipping of unknown guidsPaul B Mahol2013-09-02
| | | | | | | | | | | | | | Regression since 14d50c1. Fixes #2932. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | lavf/wavdec: Fix seeking in files with unaligned offsetsAlexander Strasser2013-08-14
| | | | | | | | | | | | | | | | | | | | | | | | | | A file with a prepended ID3 tag of an uneven length was found in the wild. Check if the wav data starts at an uneven offset and use that information to correct the seeking calculation in wav_seek_tag, which used to only seek to even byte positions. Regression since ac87eaf856e0fb51917266b899bb15d19b907baf Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
* | avformat/wavdec: Dont rescale timestamps but use exact comparissionMichael Niedermayer2013-06-08
| | | | | | | | | | | | Fixes integer overflow Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Support playing SMV files.Ash Hughes2013-05-22
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | wav_seek_tag: fix integer overflowMichael Niedermayer2013-05-06
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-05-06
|\| | | | | | | | | | | | | | | | | | | * qatar/master: wav: Always seek to an even offset Conflicts: libavformat/wavdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * wav: Always seek to an even offsetLuca Barbato2013-05-06
| | | | | | | | | | | | | | RIFF chunks are aligned to 16bit according to the specification. Bug-Id:500 CC:libav-stable@libav.org
* | avformat: replace "AVPROBE_SCORE_MAX / X" by AVPROBE_SCORE_EXTENSION / YMichael Niedermayer2013-05-05
| | | | | | | | | | | | Demuxers where the changed code looked less readable where skiped Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-05-04
|\| | | | | | | | | | | | | | | | | | | * qatar/master: wav: return meaningful errors Conflicts: libavformat/wavdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>