aboutsummaryrefslogtreecommitdiff
path: root/libavformat/aiffdec.c
AgeCommit message (Collapse)Author
2015-10-27avformat/aiff: add ADP4 DVI ADPCM supportPaul B Mahol
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-26avcodec: add SDX2 DPCM decoderPaul B Mahol
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-25avformat/aiffdec: give friendly message if compressed codec tag is unsupportedPaul B Mahol
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-06-11avformat/aiffdec: avoid double and ldexp()Michael Niedermayer
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 <mark.hsj@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-19avformat/aiffdec: do not fail if header parser hits EOFMichael Niedermayer
Based on patch by Martin Vignali <martin.vignali@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-19avformat/aiffdec: Stop header parsing once a non header packet is reachedMichael Niedermayer
Fix Ticket3530 Based-on debuging work by Martin Vignali <martin.vignali@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-14Merge commit 'daf8cf358a098a903d59adb6c0d0cc3262a8c93e'Michael Niedermayer
* 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 <michaelni@gmx.at>
2015-02-14avformat: Don't anonymously typedef structsDiego Biurrun
2015-01-09avformat/aiffdec: improve readabilityPeter Ross
Signed-off-by: Peter Ross <pross@xvid.org> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-05avformat/aiffdec: only read codec tag when there is space in headerPeter Ross
Signed-off-by: Peter Ross <pross@xvid.org> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08replace calls to url_feof() with avio_feof()James Almer
Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-03Do not limit blocksize when reading PCM from aiff.Carl Eugen Hoyos
Fixes ticket #3695.
2014-04-19ff_id3v2_read: add option to limit ID3 magic number searchPeter Ross
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 <pross@xvid.org> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-25avformat/aiffdec: use ff_get_extradata()Michael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-18Fix decoding of G.726 in AIFF.Carl Eugen Hoyos
Fixes ticket #1973.
2013-10-13avformat: use ff_alloc_extradata()Paul B Mahol
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-06-09Support decoding G.722 in aiff.Carl Eugen Hoyos
2013-04-23Read block_align from extradata when decoding qclp in aiff.Carl Eugen Hoyos
Fixes ticket #1287.
2013-04-03Skip padding in an id3 tag in aiff files.Carl Eugen Hoyos
Fixes ticket #2430. Reviewed-by: Matthieu Bouron
2013-01-01aiffdec: set block duration for QDM2Piotr Bandurski
Fixes #1697.
2012-10-26aiffdec: read ID3 attached picturesMatthieu Bouron
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-22lavf/aiffdec: don't stop parsing after SSND chunkMatthieu Bouron
Some file has ID3 chunk placed after SSND. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-02isom: fix redundant redeclaration of ff_mov_read_chan().Clément Bœsch
Silence a GCC warning. A leftover of the disabled version is still available in lavf/isom.c.
2012-09-07Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* 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 <michaelni@gmx.at>
2012-08-28aiffdec: support QDM2Michael Niedermayer
Fixes ticket204 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-27aiffdec: try #2 to fix bpsMichael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-27aiffdec: fix bits per sampleMichael Niedermayer
Fixes Ticket1660 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'Michael Niedermayer
* 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 <michaelni@gmx.at>
2012-08-07Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov
2012-07-19Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* 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 <michaelni@gmx.at>
2012-07-01lavf/aiffdec: handle ID3 chunkMatthieu Bouron
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-01Mark truncated packets as corrupt in av_get_packet.Reimar Döffinger
Manually remove that flag again for formats that read an arbitrary amount of data and thus truncation is not an error. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-06Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: cosmetics: Align muxer/demuxer declarations mpeg12: Do not change frame_pred_frame_dct flag and demote error into a warning avcodec: remove avcodec_guess_channel_layout() avutil: Add av_get_default_channel_layout() Conflicts: doc/APIchanges libavcodec/mpeg12.c libavformat/cdg.c libavformat/matroskaenc.c libavformat/mpegts.c libavformat/nuv.c libavformat/wav.c libavutil/audioconvert.c libavutil/audioconvert.h libavutil/avutil.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-06cosmetics: Align muxer/demuxer declarationsMartin Storsjö
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>
2012-03-22Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: FATE: Add ZeroCodec test oggparseogm: fix order of arguments of avpriv_set_pts_info(). pngenc: better upper bound for encoded frame size. aiffdec: set block_duration to 1 for PCM codecs that are supported in AIFF-C aiffdec: factor out handling of integer PCM for AIFF-C and plain AIFF aiffdec: use av_get_audio_frame_duration() to set block_duration for AIFF-C aiffdec: do not set bit rate if block duration is unknown wmall: output packet only if we have decoded some samples Conflicts: libavcodec/pngenc.c tests/fate/lossless-video.mak Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-22aiffdec: set block_duration to 1 for PCM codecs that are supported in AIFF-CJustin Ruggles
2012-03-22aiffdec: factor out handling of integer PCM for AIFF-C and plain AIFFJustin Ruggles
2012-03-22aiffdec: use av_get_audio_frame_duration() to set block_duration for AIFF-CJustin Ruggles
2012-03-22aiffdec: do not set bit rate if block duration is unknownJustin Ruggles
CC: libav-stable@libav.org
2012-03-21aiffdec: Fix SIGFPE on pcm_f32beTomas Härdin
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-06Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (31 commits) cdxl demux: do not create packets with uninitialized data at EOF. Replace computations of remaining bits with calls to get_bits_left(). amrnb/amrwb: Remove get_bits usage. cosmetics: reindent avformat: do not require a pixel/sample format if there is no decoder avformat: do not fill-in audio packet duration in compute_pkt_fields() lavf: Use av_get_audio_frame_duration() in get_audio_frame_size() dca_parser: parse the sample rate and frame durations libspeexdec: do not set AVCodecContext.frame_size libopencore-amr: do not set AVCodecContext.frame_size alsdec: do not set AVCodecContext.frame_size siff: do not set AVCodecContext.frame_size amr demuxer: do not set AVCodecContext.frame_size. aiffdec: do not set AVCodecContext.frame_size mov: do not set AVCodecContext.frame_size ape: do not set AVCodecContext.frame_size. rdt: remove workaround for infinite loop with aac avformat: do not require frame_size in avformat_find_stream_info() for CELT avformat: do not require frame_size in avformat_find_stream_info() for MP1/2/3 avformat: do not require frame_size in avformat_find_stream_info() for AAC ... Conflicts: doc/APIchanges libavcodec/Makefile libavcodec/avcodec.h libavcodec/h264.c libavcodec/h264_ps.c libavcodec/utils.c libavcodec/version.h libavcodec/x86/dsputil_mmx.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-05aiffdec: do not set AVCodecContext.frame_sizeJustin Ruggles
It is unnecessary. Also, for some codecs we're reading more than 1 frame per packet. Instead we use a private context variable to calculate the bit rate, stream duration, and packet durations. Updated FATE seek test, which has slightly different timestamps due to a more accurate bit rate calculation.
2012-02-19Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: mov: Use defines for sample flags in fragments mov: Use defines for trun flags mov: Use defines for tfhd flags proresenc: force bitrate not to exceed given limit vc1parse: call vc1_init_common(). wma: don't return 0 on invalid packets. asf: prevent packet_size_left from going negative if hdrlen > pktlen. mjpegb: don't return 0 at the end of frame decoding. rtpdec: Identify incorrectly signalled H263 vp8dsp: split long line. aiff: don't skip block_align==0 check on COMM-after-SSND files. dpcm: ignore extra unpaired bytes in stereo streams. mp3on4: require a minimum framesize. mpc7: assign an error level + context to av_log() msg. huffyuv: error out on bit overrun. dct-test: Add the missing ff_ prefix to the altivec functions dct-test: Remove a stray declaration of a nonexistent function movenc: Write the unknown duration as 64 bit fields in ismv movenc: Write track durations with all bits set if duration is unknown Conflicts: libavcodec/dct-test.c libavcodec/wmadec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-17aiff: don't skip block_align==0 check on COMM-after-SSND files.Ronald S. Bultje
This prevents SIGFPEs when using block_align for divisions. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
2012-02-16Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (27 commits) ppc: Add ff_ prefix to nonstatic symbols sh4: Add ff_ prefix to nonstatic symbols mpegvideo: Add ff_ prefix to nonstatic functions rtjpeg: Add ff_ prefix to nonstatic symbols rv: Add ff_ prefix to nonstatic symbols vp56: Add ff_ prefix to nonstatic symbols vorbis: Add ff_ prefix to nonstatic symbols msmpeg4: Add ff_ prefix to nonstatic symbols vc1: Add ff_ prefix to nonstatic symbols msmpeg4: Add ff_ prefixes to nonstatic symbols snow: Add ff_ prefix to nonstatic symbols mpeg12: Add ff_ prefix to nonstatic symbols mpeg4: Add ff_ prefixes to nonstatic symbols lagarith: Add ff_ prefix to lag_rac_init libavcodec: Add ff_ prefix to j_rev_dct* dsputil: Add ff_ prefix to inv_zigzag_direct16 libavcodec: Prefix fdct_ifast, fdct_ifast248 dsputil: Add ff_ prefix to the dsputil*_init* functions libavcodec: Add ff_ prefix to some nonstatic symbols vlc/rl: Add ff_ prefix to the nonstatic symbols ... Conflicts: libavcodec/Makefile libavcodec/allcodecs.c libavcodec/dnxhddec.c libavcodec/ffv1.c libavcodec/h263.h libavcodec/h263dec.c libavcodec/h264.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/nuv.c libavcodec/ppc/dsputil_ppc.c libavcodec/proresdsp.c libavcodec/svq3.c libavcodec/version.h libavformat/dv.h libavformat/dvenc.c libavformat/matroskadec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-15libavformat: Add an ff_ prefix to some lavf internal symbolsMartin Storsjö
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>
2012-01-28Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (71 commits) movenc: Allow writing to a non-seekable output if using empty moov movenc: Support adding isml (smooth streaming live) metadata libavcodec: Don't crash in avcodec_encode_audio if time_base isn't set sunrast: Document the different Sun Raster file format types. sunrast: Add a check for experimental type. libspeexenc: use AVSampleFormat instead of deprecated/removed SampleFormat lavf: remove disabled FF_API_SET_PTS_INFO cruft lavf: remove disabled FF_API_OLD_INTERRUPT_CB cruft lavf: remove disabled FF_API_REORDER_PRIVATE cruft lavf: remove disabled FF_API_SEEK_PUBLIC cruft lavf: remove disabled FF_API_STREAM_COPY cruft lavf: remove disabled FF_API_PRELOAD cruft lavf: remove disabled FF_API_NEW_STREAM cruft lavf: remove disabled FF_API_RTSP_URL_OPTIONS cruft lavf: remove disabled FF_API_MUXRATE cruft lavf: remove disabled FF_API_FILESIZE cruft lavf: remove disabled FF_API_TIMESTAMP cruft lavf: remove disabled FF_API_LOOP_OUTPUT cruft lavf: remove disabled FF_API_LOOP_INPUT cruft lavf: remove disabled FF_API_AVSTREAM_QUALITY cruft ... Conflicts: doc/APIchanges libavcodec/8bps.c libavcodec/avcodec.h libavcodec/libx264.c libavcodec/mjpegbdec.c libavcodec/options.c libavcodec/sunrast.c libavcodec/utils.c libavcodec/version.h libavcodec/x86/h264_deblock.asm libavdevice/libdc1394.c libavdevice/v4l2.c libavformat/avformat.h libavformat/avio.c libavformat/avio.h libavformat/aviobuf.c libavformat/dv.c libavformat/mov.c libavformat/utils.c libavformat/version.h libavformat/wtv.c libavutil/Makefile libavutil/file.c libswscale/x86/input.asm libswscale/x86/swscale_mmx.c libswscale/x86/swscale_template.c tests/ref/lavf/ffm Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-27lavf: remove AVFormatParameters from AVFormatContext.read_header signatureAnton Khirnov
2011-12-12Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: x86: cabac: replace explicit memory references with "m" operands avplay: don't request a stereo downmix wmapro: use av_float2int() lavc: avoid invalid memcpy() in avcodec_default_release_buffer() lavu: replace int/float punning functions lavfi: install libavfilter/vsrc_buffer.h Remove extraneous semicolons sdp: Restore the original mp4 format h264 extradata if converted rtpenc: Add support for mp4 format h264 rtpenc: Simplify code by introducing a separate end pointer movenc: Use the actual converted sample for RTP hinting Fix a bunch of common typos. Conflicts: doc/developer.texi doc/eval.texi doc/filters.texi doc/protocols.texi ffmpeg.c ffplay.c libavcodec/mpegvideo.h libavcodec/x86/cabac.h libavfilter/Makefile libavformat/avformat.h libavformat/cafdec.c libavformat/flvdec.c libavformat/flvenc.c libavformat/gxfenc.c libavformat/img2.c libavformat/movenc.c libavformat/mpegts.c libavformat/rtpenc_h264.c libavformat/utils.c libavformat/wtv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-11lavu: replace int/float punning functionsMans Rullgard
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>