Michael Niedermayer
2f9903f662
Merge commit '418693bdc5edad72b0d055f741931612d797eb05'
...
* commit '418693bdc5edad72b0d055f741931612d797eb05':
lavc: rewrite and extend AVFrame doxy
opt: avoid segfault in av_opt_next() if the class does not have an option list
ttadec: fix last frame handling when seeking
alacdec: do not be too strict about the extradata size
Conflicts:
libavcodec/alac.c
libavcodec/avcodec.h
libavcodec/tta.c
libavutil/opt.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-23 13:32:40 +01:00
Justin Ruggles
68a04b0cce
alacdec: do not be too strict about the extradata size
...
Sometimes the extradata has duplicate atoms, but that shouldn't prevent
decoding. Just ensure that it is at least 36 bytes as a sanity check.
CC: libav-stable@libav.org
2012-12-22 12:18:41 -05:00
Michael Niedermayer
71949ef715
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
h264: slice-mt: check master context for valid current_picture_ptr
h264: slice-mt: get last_pic_dropable from master context
alacenc: add support for multi-channel encoding
Conflicts:
Changelog
libavcodec/alac.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-06 16:14:38 +01:00
Justin Ruggles
5e1bbb8c7e
alacenc: add support for multi-channel encoding
2012-12-05 16:13:37 -05:00
Michael Niedermayer
874c5b02c4
Merge commit '594d4d5df3c70404168701dd5c90b7e6e5587793'
...
* commit '594d4d5df3c70404168701dd5c90b7e6e5587793':
lavc: add a wrapper for AVCodecContext.get_buffer().
Conflicts:
libavcodec/4xm.c
libavcodec/8svx.c
libavcodec/bmv.c
libavcodec/cljr.c
libavcodec/cscd.c
libavcodec/dnxhddec.c
libavcodec/dpcm.c
libavcodec/dpx.c
libavcodec/eacmv.c
libavcodec/eamad.c
libavcodec/frwu.c
libavcodec/g723_1.c
libavcodec/gifdec.c
libavcodec/idcinvideo.c
libavcodec/iff.c
libavcodec/indeo3.c
libavcodec/internal.h
libavcodec/interplayvideo.c
libavcodec/kmvc.c
libavcodec/mpc7.c
libavcodec/mpegaudiodec.c
libavcodec/pcx.c
libavcodec/pngdec.c
libavcodec/pnmdec.c
libavcodec/rl2.c
libavcodec/snow.c
libavcodec/targa.c
libavcodec/tscc.c
libavcodec/txd.c
libavcodec/utils.c
libavcodec/v210dec.c
libavcodec/vb.c
libavcodec/vmdav.c
libavcodec/vp56.c
libavcodec/vqavideo.c
libavcodec/wavpack.c
libavcodec/wnv1.c
libavcodec/xl.c
libavcodec/yop.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-05 15:18:12 +01:00
Anton Khirnov
594d4d5df3
lavc: add a wrapper for AVCodecContext.get_buffer().
...
It will be useful in the upcoming transition to refcounted AVFrames.
2012-12-04 21:41:59 +01:00
Michael Niedermayer
001af703c6
alac: check channel count more completely, fix out of array read
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-13 22:08:09 +01:00
Michael Niedermayer
03b078721c
Merge commit '97bf7c03b1338a867da52c159a2afecbdedcfa88'
...
* commit '97bf7c03b1338a867da52c159a2afecbdedcfa88':
doc: git-howto: Leave reviewers time to react before pushing patches
Include libavutil/channel_layout.h instead of libavutil/audioconvert.h
lavu: rename audioconvert.* to channel_layout.* and deprecate audioconvert.h
Conflicts:
doc/APIchanges
doc/examples/decoding_encoding.c
doc/git-howto.texi
ffmpeg_filter.c
libavcodec/flacdec.c
libavcodec/imc.c
libavcodec/mpegaudiodec.c
libavcodec/utils.c
libavfilter/asrc_anullsrc.c
libavfilter/audio.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/avfiltergraph.c
libavfilter/buffer.c
libavutil/Makefile
libavutil/audioconvert.h
libavutil/channel_layout.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-12 11:32:11 +01:00
Justin Ruggles
a903f8f087
Include libavutil/channel_layout.h instead of libavutil/audioconvert.h
...
Also reorder some other #include when applicable.
2012-11-11 13:35:12 -05:00
Michael Niedermayer
a1e093a6fb
alac: fix bps check
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-10 21:54:30 +01:00
Michael Niedermayer
b53f89710b
alac: Check channel indexes more completely, fix out of array accesses.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-10 18:22:47 +01:00
Michael Niedermayer
3920d13878
alac: fix integer overflow leading to subsequent out of array accesses.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-10 17:42:35 +01:00
Michael Niedermayer
fd4f4923cc
alac: fix nb_samples < order case
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-10 17:14:04 +01:00
Michael Niedermayer
f9cf14c8da
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
riff: remove a write-only variable
lavc: extend frame_size doxy.
alacdec: set bits_per_raw_sample
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-22 14:50:06 +02:00
Justin Ruggles
46a86c6194
alacdec: set bits_per_raw_sample
2012-10-21 23:54:51 -04:00
Piotr Bandurski
53241b5dc7
lavc: add missing new line to some messages
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 15:59:30 +02:00
Michael Niedermayer
7a72695c05
Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'
...
* 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-07 22:45:46 +02:00
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
2012-08-07 16:00:24 +02:00
Paul B Mahol
c2502b7b34
alac: remove redundant "alac: " from log messages
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-01 20:17:25 +00:00
Michael Niedermayer
c6963a220d
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
proresdsp: port x86 assembly to cpuflags.
lavr: x86: improve non-SSE4 version of S16_TO_S32_SX macro
lavfi: better channel layout negotiation
alac: check for truncated packets
alac: reverse lpc coeff order, simplify filter
lavr: add x86-optimized mixing functions
x86: add support for fmaddps fma4 instruction with abstraction to avx/sse
tscc2: fix typo in array index
build: use COMPILE template for HOSTOBJS
build: do full flag handling for all compiler-type tools
eval: fix printing of NaN in eval fate test.
build: Rename aandct component to more descriptive aandcttables
mpegaudio: bury inline asm under HAVE_INLINE_ASM.
x86inc: automatically insert vzeroupper for YMM functions.
rtmp: Check the buffer length of ping packets
rtmp: Allow having more unknown data at the end of a chunk size packet without failing
rtmp: Prevent reading outside of an allocate buffer when receiving server bandwidth packets
Conflicts:
Makefile
configure
libavcodec/x86/proresdsp.asm
libavutil/eval.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-27 23:42:19 +02:00
Justin Ruggles
81f548de57
alac: check for truncated packets
...
This will give a clearer error message when the error is caused by a
truncated packet.
2012-07-27 13:52:20 -04:00
Justin Ruggles
fb57e913e1
alac: reverse lpc coeff order, simplify filter
...
Reversing the lpc coefficient order simplifies indexing in the filter.
2012-07-27 13:52:19 -04:00
Michael Niedermayer
17352ad315
alacdec: fix packed sample output with 5.1
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-21 06:39:01 +02:00
Michael Niedermayer
3c033d00f5
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
libopenjpeg: introduce lowres and lowqual private options
FATE: add a test for flac cover art.
cafdec: allow larger ALAC magic cookie
alac: fix channel pointer assignment for 24 and 32-bit
Conflicts:
libavcodec/alac.c
libavcodec/libopenjpegdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-21 04:25:11 +02:00
Michael Niedermayer
7c6ebe2b97
alac: drop packed sample output support with the next major bump
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-20 14:11:09 +02:00
Michael Niedermayer
5e99df019a
alacdec: several players have problems with planar audio still thus temporary put packed output back by default
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-20 04:48:25 +02:00
Justin Ruggles
4cd22b7738
alac: fix channel pointer assignment for 24 and 32-bit
...
Needs to be done separately for each element.
2012-07-19 20:14:29 -04:00
Michael Niedermayer
e4c00aca96
Merge remote-tracking branch 'qatar/master'
...
* 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-19 23:31:04 +02:00
Justin Ruggles
eeb55f5f2f
alac: cosmetics: general pretty-printing and comment clean up
2012-07-19 13:26:48 -04:00
Justin Ruggles
f3e5a7844b
alac: calculate buffer size outside the loop in allocate_buffers()
2012-07-19 13:26:48 -04:00
Justin Ruggles
bae83f2c74
alac: change some data types to plain int
2012-07-19 13:26:48 -04:00
Justin Ruggles
2aebac6918
alac: cosmetics: rename some variables and function names
2012-07-19 13:26:48 -04:00
Andrew D'Addesio
1b3ef155d7
alac: multi-channel decoding support
...
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-07-19 13:26:48 -04:00
Justin Ruggles
81c9e2e6d0
alac: split element parsing into a separate function
...
This will make multi-channel implementation simpler.
Based partially on a patch by Andrew D'Addesio <modchipv12@gmail.com>.
2012-07-19 13:26:48 -04:00
Justin Ruggles
cd632619d9
alac: support a read sample size of up to 32
...
Use get_bits_long() in decode_scalar().
Use unsigned int for decoded value.
2012-07-19 13:26:48 -04:00
Justin Ruggles
73dc0db486
alac: output in planar sample format
...
Avoids unneeded interleaving and allows for reusing the AVFrame output buffer
as the internal buffer for 24-bit and 32-bit sample size.
2012-07-19 13:26:48 -04:00
Justin Ruggles
6482bd8831
alac: add 32-bit decoding support
2012-07-19 13:26:48 -04:00
Andrew D'Addesio
6cda74c155
alac: simplify channel interleaving
...
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-07-19 13:26:48 -04:00
Justin Ruggles
5138ff143f
alac: use AVPacket fields directly in alac_decode_frame()
2012-07-19 13:26:47 -04:00
Justin Ruggles
7a206eb32f
alac: fix check for valid max_samples_per_frame
2012-07-19 13:26:47 -04:00
Justin Ruggles
1193d3fedd
alac: use get_sbits() to read LPC coefficients instead of casting
2012-07-19 13:26:47 -04:00
Justin Ruggles
7a50ec6799
alac: move the current samples per frame to the ALACContext
...
This will simplify the multi-channel implementation.
2012-07-19 13:26:47 -04:00
Justin Ruggles
46043962ea
alac: avoid using a double-negative when checking if the frame is compressed
2012-07-19 13:26:47 -04:00
Justin Ruggles
9a6c528e08
alac: factor out output_size check in predictor_decompress_fir_adapt()
2012-07-19 13:26:47 -04:00
Justin Ruggles
ebd4c3add1
alac: factor out loading of next decoded sample in LPC prediction
2012-07-19 13:26:47 -04:00
Justin Ruggles
a4ecd41442
alac: use index into buffer_out instead of incrementing the pointer
2012-07-19 13:26:47 -04:00
Justin Ruggles
f2515cd629
alac: simplify lpc coefficient adaptation
2012-07-19 13:26:47 -04:00
Justin Ruggles
abc4376b31
alac: reduce the number of local variables needed in lpc prediction
2012-07-19 13:26:47 -04:00
Justin Ruggles
01880d287b
alac: simplify 1st order prediction and reading of warm-up samples
2012-07-19 13:26:46 -04:00
Justin Ruggles
d0c0bf0d3e
alac: cosmetics: reindent after last commit
2012-07-19 13:26:46 -04:00