summaryrefslogtreecommitdiffstats
path: root/libavformat/aiffdec.c
Commit message (Collapse)AuthorAgeFilesLines
* avformat/aiffdec: AIFF fix in case of ANNOEduard Sinelnikov2018-01-111-3/+2
| | | | | | | | | | | Apple's AIFF protocol clearly states that each chucnk which is odd sized a padding should be added. In the old version of aiffdec adding of padding was done in `get_meta`. And in case of unknown chunk name it was done in defalut case. The new version has deleted the padding in default case and added padding adding after the switch. But the new version didn't removed the padding adding in the `get_meta` function so in some cases padding was added twice which leaded to a bug. Fixes: sample.aiff Signed-off-by: Michael Niedermayer <[email protected]>
* aiff: add explicit goto got_soundMisty De Meo2018-01-061-0/+3
| | | | Signed-off-by: Michael Niedermayer <[email protected]>
* aiff: add support for XA ADPCMMisty De Meo2018-01-041-0/+7
| | | | | | | | | Certain AIFF files encode XA ADPCM compressed audio using a chunk with the tag `APCM`. Aside from this custom chunk type, they're otherwise standard AIFF files. I've only observed these files in the Sega Saturn game Sonic Jam so far. Signed-off-by: Michael Niedermayer <[email protected]>
* avformat: fix id3 chaptersLukas Stabe2017-10-051-1/+2
| | | | | | | | | | | These changes store id3 chapter data in ID3v2ExtraMeta and introduce ff_id3v2_parse_chapters to parse them into the format context if needed. Encoders using ff_id3v2_read, which previously parsed chapters into the format context automatically, were adjusted to call ff_id3v2_parse_chapters. Signed-off-by: wm4 <[email protected]>
* lavf: fix usages of av_get_codec_tag_string()Clément Bœsch2017-03-291-5/+3
|
* Merge commit '83548fe894cdb455cc127f754d09905b6d23c173'James Almer2017-03-211-2/+2
|\ | | | | | | | | | | | | * commit '83548fe894cdb455cc127f754d09905b6d23c173': lavf: fix usage of AVIOContext.seekable Merged-by: James Almer <[email protected]>
| * lavf: fix usage of AVIOContext.seekableAnton Khirnov2016-09-301-1/+1
| | | | | | | | | | | | | | | | 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.
* | Merge commit '0638b99cdba52554691fc668d9e477bc184c7a33'Matthieu Bouron2017-03-171-2/+6
|\| | | | | | | | | | | | | | | | | | | * commit '0638b99cdba52554691fc668d9e477bc184c7a33': aiff: Skip padding byte for odd-sized chunks Also removes to odd-size checks from get_aiff_header and get_meta to use the generic path introduced by the original commit. Merged-by: Matthieu Bouron <[email protected]>
| * aiff: Skip padding byte for odd-sized chunksDiego Biurrun2016-08-101-2/+6
| | | | | | | | Bug-Id: 660
* | avformat: fix overflows during bit rate calculationAndreas Cadhalpun2016-12-141-2/+2
| | | | | | | | | | | | | | | | The bit_rate field has type int64_t since commit 7404f3bdb90e6a5dcb59bc0a091e2c5c038e557d. Reviewed-by: Paul B Mahol <[email protected]> Signed-off-by: Andreas Cadhalpun <[email protected]>
* | aiff: check block_align in aiff_read_packetAndreas Cadhalpun2016-10-211-0/+5
| | | | | | | | | | | | | | | | It can be unset in avcodec_parameters_from_context and a value of 0 causes SIGFPE crashes. Reviewed-by: Michael Niedermayer <[email protected]> Signed-off-by: Andreas Cadhalpun <[email protected]>
* | aiffdec: fix division by zeroAndreas Cadhalpun2016-10-171-1/+1
| | | | | | | | | | Reviewed-by: Michael Niedermayer <[email protected]> Signed-off-by: Andreas Cadhalpun <[email protected]>
* | lavf/aiffdec: Default to full rate qcelp as QT does.Carl Eugen Hoyos2016-10-111-1/+4
| | | | | | | | Fixes decoding of the output file from ticket #4009.
* | lavf/aiffdec: Support QDMC demuxing.Carl Eugen Hoyos2016-07-031-1/+2
| |
* | avformat: add AVFormatContext to ff_get_extradata()Paul B Mahol2016-04-141-1/+1
| | | | | | | | | | | | Needed for av_log() inside that function. Signed-off-by: Paul B Mahol <[email protected]>
* | Merge commit '9200514ad8717c63f82101dc394f4378854325bf'Derek Buitenhuis2016-04-101-45/+45
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '9200514ad8717c63f82101dc394f4378854325bf': lavf: replace AVStream.codec with AVStream.codecpar This has been a HUGE effort from: - Derek Buitenhuis <[email protected]> - Hendrik Leppkes <[email protected]> - wm4 <[email protected]> - Clément Bœsch <[email protected]> - James Almer <[email protected]> - Michael Niedermayer <[email protected]> - Rostislav Pehlivanov <[email protected]> Merged-by: Derek Buitenhuis <[email protected]>
| * lavf: replace AVStream.codec with AVStream.codecparAnton Khirnov2016-02-231-34/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * aiff: Support demuxing G.722 streamsCarl Eugen Hoyos2015-11-121-0/+1
| |
| * lavc: Consistently prefix input buffer definesVittorio Giovara2015-07-271-1/+1
| | | | | | | | Signed-off-by: Vittorio Giovara <[email protected]>
* | avformat/aiff: add ADP4 DVI ADPCM supportPaul B Mahol2015-10-271-0/+1
| | | | | | | | Signed-off-by: Paul B Mahol <[email protected]>
* | avcodec: add SDX2 DPCM decoderPaul B Mahol2015-10-261-0/+1
| | | | | | | | Signed-off-by: Paul B Mahol <[email protected]>
* | avformat/aiffdec: give friendly message if compressed codec tag is unsupportedPaul B Mahol2015-10-251-0/+5
| | | | | | | | Signed-off-by: Paul B Mahol <[email protected]>
* | avformat/aiffdec: avoid double and ldexp()Michael Niedermayer2015-06-111-4/+11
| | | | | | | | | | | | | | | | There is no support for non integer sample rates, using doubles/floats currently could only lead to rounding differences between platforms Previous version Reviewed-by: Mark Harris <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat/aiffdec: do not fail if header parser hits EOFMichael Niedermayer2015-03-191-0/+5
| | | | | | | | | | Based on patch by Martin Vignali <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat/aiffdec: Stop header parsing once a non header packet is reachedMichael Niedermayer2015-03-191-0/+3
| | | | | | | | | | | | | | Fix Ticket3530 Based-on debuging work by Martin Vignali <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit 'daf8cf358a098a903d59adb6c0d0cc3262a8c93e'Michael Niedermayer2015-02-141-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'daf8cf358a098a903d59adb6c0d0cc3262a8c93e': avformat: Don't anonymously typedef structs Conflicts: libavformat/adtsenc.c libavformat/aiffenc.c libavformat/avidec.c libavformat/gif.c libavformat/iff.c libavformat/img2dec.c libavformat/jvdec.c libavformat/matroskadec.c libavformat/udp.c libavformat/wtvdec.c Merged-by: Michael Niedermayer <[email protected]>
| * avformat: Don't anonymously typedef structsDiego Biurrun2015-02-141-1/+1
| |
* | avformat/aiffdec: improve readabilityPeter Ross2015-01-091-3/+3
| | | | | | | | | | Signed-off-by: Peter Ross <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat/aiffdec: only read codec tag when there is space in headerPeter Ross2015-01-051-1/+3
| | | | | | | | | | Signed-off-by: Peter Ross <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | replace calls to url_feof() with avio_feof()James Almer2014-08-081-1/+1
| | | | | | | | | | Signed-off-by: James Almer <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | Do not limit blocksize when reading PCM from aiff.Carl Eugen Hoyos2014-06-031-2/+8
| | | | | | | | Fixes ticket #3695.
* | ff_id3v2_read: add option to limit ID3 magic number searchPeter Ross2014-04-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Several chunked formats (AIFF, IFF,DSF) store ID3 metadata within an 'ID3 ' chunk tag. If such chunks are stored sequentially, it is possible for the ID3v2 parser to confuse the chunk tag for the ID3 magic number. e.g. [1st chunk tag ('ID3 ') | chunk size] [ID3 magic number | metadata ...] [2nd chunk tag ('ID3 ') | chunk size] [ID3 magic number | metadata ...] Fixes ticket #3530. Signed-off-by: Peter Ross <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat/aiffdec: use ff_get_extradata()Michael Niedermayer2013-12-251-2/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | Fix decoding of G.726 in AIFF.Carl Eugen Hoyos2013-10-181-0/+2
| | | | | | | | Fixes ticket #1973.
* | avformat: use ff_alloc_extradata()Paul B Mahol2013-10-131-3/+1
| | | | | | | | Signed-off-by: Paul B Mahol <[email protected]>
* | Support decoding G.722 in aiff.Carl Eugen Hoyos2013-06-091-0/+1
| |
* | Read block_align from extradata when decoding qclp in aiff.Carl Eugen Hoyos2013-04-231-4/+16
| | | | | | | | Fixes ticket #1287.
* | Skip padding in an id3 tag in aiff files.Carl Eugen Hoyos2013-04-031-1/+4
| | | | | | | | | | | | Fixes ticket #2430. Reviewed-by: Matthieu Bouron
* | aiffdec: set block duration for QDM2Piotr Bandurski2013-01-011-1/+3
| | | | | | | | Fixes #1697.
* | aiffdec: read ID3 attached picturesMatthieu Bouron2012-10-261-1/+6
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | lavf/aiffdec: don't stop parsing after SSND chunkMatthieu Bouron2012-10-221-1/+1
| | | | | | | | | | | | Some file has ID3 chunk placed after SSND. Signed-off-by: Michael Niedermayer <[email protected]>
* | isom: fix redundant redeclaration of ff_mov_read_chan().Clément Bœsch2012-10-021-0/+1
| | | | | | | | | | Silence a GCC warning. A leftover of the disabled version is still available in lavf/isom.c.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-09-071-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: mov_chan: Pass a separate AVIOContext for reading af_asyncts: check return value from lavr when flushing. mss2: simplify loop in decode_rle() mss12: avoid unnecessary division in arith*_get_bit() mss2: do not try to read too many palette entries mpegvideo: set AVFrame fields to NULL after freeing the base memory configure: Set the right cc_e flags for msvc Merged-by: Michael Niedermayer <[email protected]>
* | aiffdec: support QDM2Michael Niedermayer2012-08-281-0/+3
| | | | | | | | | | | | Fixes ticket204 Signed-off-by: Michael Niedermayer <[email protected]>
* | aiffdec: try #2 to fix bpsMichael Niedermayer2012-08-271-2/+2
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | aiffdec: fix bits per sampleMichael Niedermayer2012-08-271-1/+1
| | | | | | | | | | | | Fixes Ticket1660 Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'Michael Niedermayer2012-08-071-17/+17
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '36ef5369ee9b336febc2c270f8718cec4476cb85': Replace all CODEC_ID_* with AV_CODEC_ID_* lavc: add AV prefix to codec ids. Conflicts: doc/APIchanges doc/examples/decoding_encoding.c doc/examples/muxing.c ffmpeg.c ffprobe.c ffserver.c libavcodec/8svx.c libavcodec/avcodec.h libavcodec/dnxhd_parser.c libavcodec/dvdsubdec.c libavcodec/error_resilience.c libavcodec/h263dec.c libavcodec/libvorbisenc.c libavcodec/mjpeg_parser.c libavcodec/mjpegenc.c libavcodec/mpeg12.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/pcm.c libavcodec/r210dec.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/version.h libavdevice/alsa-audio-dec.c libavdevice/bktr.c libavdevice/v4l2.c libavformat/asfdec.c libavformat/asfenc.c libavformat/avformat.h libavformat/avidec.c libavformat/caf.c libavformat/electronicarts.c libavformat/flacdec.c libavformat/flvdec.c libavformat/flvenc.c libavformat/framecrcenc.c libavformat/img2.c libavformat/img2dec.c libavformat/img2enc.c libavformat/ipmovie.c libavformat/isom.c libavformat/matroska.c libavformat/matroskadec.c libavformat/matroskaenc.c libavformat/mov.c libavformat/movenc.c libavformat/mp3dec.c libavformat/mpeg.c libavformat/mpegts.c libavformat/mxf.c libavformat/mxfdec.c libavformat/mxfenc.c libavformat/nsvdec.c libavformat/nut.c libavformat/oggenc.c libavformat/pmpdec.c libavformat/rawdec.c libavformat/rawenc.c libavformat/riff.c libavformat/sdp.c libavformat/utils.c libavformat/vocenc.c libavformat/wtv.c libavformat/xmv.c Merged-by: Michael Niedermayer <[email protected]>
| * Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-071-17/+17
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-07-191-2/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (38 commits) alac: cosmetics: general pretty-printing and comment clean up alac: calculate buffer size outside the loop in allocate_buffers() alac: change some data types to plain int alac: cosmetics: rename some variables and function names alac: multi-channel decoding support alac: split element parsing into a separate function alac: support a read sample size of up to 32 alac: output in planar sample format alac: add 32-bit decoding support alac: simplify channel interleaving alac: use AVPacket fields directly in alac_decode_frame() alac: fix check for valid max_samples_per_frame alac: use get_sbits() to read LPC coefficients instead of casting alac: move the current samples per frame to the ALACContext alac: avoid using a double-negative when checking if the frame is compressed alac: factor out output_size check in predictor_decompress_fir_adapt() alac: factor out loading of next decoded sample in LPC prediction alac: use index into buffer_out instead of incrementing the pointer alac: simplify lpc coefficient adaptation alac: reduce the number of local variables needed in lpc prediction ... Conflicts: libavcodec/alac.c libavformat/cafdec.c libavformat/mov.c Merged-by: Michael Niedermayer <[email protected]>
* | lavf/aiffdec: handle ID3 chunkMatthieu Bouron2012-07-011-0/+6
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>