Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-03-30avcodec/ac3: fix out of array access introduced previouslyPaul B Mahol
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-03-29avcodec/eac3: add support for dependent streamPaul B Mahol
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-05-13avcodec/ac3dec: Keep track of band structureMichael Niedermayer
It is needed in some corner cases that seem not to be forbidden Fixes: out of array index Fixes: 1538/clusterfuzz-testcase-minimized-4696904925446144 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-22Merge commit '43717469f9daa402f6acb48997255827a56034e9'Clément Bœsch
* commit '43717469f9daa402f6acb48997255827a56034e9': ac3dsp: Reverse matrix in/out order in downmix() Merged-by: Clément Bœsch <u@pkh.me>
2017-01-22avcodec/ac3dec: add consistent noise generation option.Jonathan Campbell
use av_lfg_init_from_data() to seed AC-3 dithering from the AC-3 frame data to make it consistent given the same AC-3 frame, if option is set. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-01ac3dsp: Reverse matrix in/out order in downmix()Justin Ruggles
Also use (float **) instead of (float (*)[2]). This matches the matrix layout in libavresample so we can reuse assembly code between the two. Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-09-15avcodec/(e)ac3: Fix target_level for EAC3.Nikolas Bowe
Currently when using target_level with EAC3 it produces silence. This small patch fixes target_level for decoding EAC3. Example: ffmpeg -y -i /tmp/test.wav -acodec eac3 -dialnorm -14 -ac 6 -b:a 384000 /tmp/test.m2ts ffmpeg -y -target_level -24 -i /tmp/test.m2ts -acodec pcm_s16le -f matroska /tmp/out.mkv ffplay /tmp/out.mkv Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-09Merge commit 'fef2147b7a689b80d716c3edb9d4a18904865275'Derek Buitenhuis
* commit 'fef2147b7a689b80d716c3edb9d4a18904865275': eac3dec: don't call avpriv_request_sample every frame. Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-02eac3dec: don't call avpriv_request_sample every frame.Tim Walker
These errors neither prevent nor stop successful decoding of the E-AC-3 stream's "core", causing avpriv_request_sample to be called for every single frame in the bitstream. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-28Merge commit '059a934806d61f7af9ab3fd9f74994b838ea5eba'Michael Niedermayer
* commit '059a934806d61f7af9ab3fd9f74994b838ea5eba': lavc: Consistently prefix input buffer defines Conflicts: doc/examples/decoding_encoding.c libavcodec/4xm.c libavcodec/aac_adtstoasc_bsf.c libavcodec/aacdec.c libavcodec/aacenc.c libavcodec/ac3dec.h libavcodec/asvenc.c libavcodec/avcodec.h libavcodec/avpacket.c libavcodec/dvdec.c libavcodec/ffv1enc.c libavcodec/g2meet.c libavcodec/gif.c libavcodec/h264.c libavcodec/h264_mp4toannexb_bsf.c libavcodec/huffyuvdec.c libavcodec/huffyuvenc.c libavcodec/jpeglsenc.c libavcodec/libxvid.c libavcodec/mdec.c libavcodec/motionpixels.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/noise_bsf.c libavcodec/nuv.c libavcodec/nvenc.c libavcodec/options.c libavcodec/parser.c libavcodec/pngenc.c libavcodec/proresenc_kostya.c libavcodec/qsvdec.c libavcodec/svq1enc.c libavcodec/tiffenc.c libavcodec/truemotion2.c libavcodec/utils.c libavcodec/utvideoenc.c libavcodec/vc1dec.c libavcodec/wmalosslessdec.c libavformat/adxdec.c libavformat/aiffdec.c libavformat/apc.c libavformat/apetag.c libavformat/avidec.c libavformat/bink.c libavformat/cafdec.c libavformat/flvdec.c libavformat/id3v2.c libavformat/isom.c libavformat/matroskadec.c libavformat/mov.c libavformat/mpc.c libavformat/mpc8.c libavformat/mpegts.c libavformat/mvi.c libavformat/mxfdec.c libavformat/mxg.c libavformat/nutdec.c libavformat/oggdec.c libavformat/oggparsecelt.c libavformat/oggparseflac.c libavformat/oggparseopus.c libavformat/oggparsespeex.c libavformat/omadec.c libavformat/rawdec.c libavformat/riffdec.c libavformat/rl2.c libavformat/rmdec.c libavformat/rtpdec_latm.c libavformat/rtpdec_mpeg4.c libavformat/rtpdec_qdm2.c libavformat/rtpdec_svq3.c libavformat/sierravmd.c libavformat/smacker.c libavformat/smush.c libavformat/spdifenc.c libavformat/takdec.c libavformat/tta.c libavformat/utils.c libavformat/vqf.c libavformat/westwood_vqa.c libavformat/xmv.c libavformat/xwma.c libavformat/yop.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27lavc: Consistently prefix input buffer definesVittorio Giovara
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-03-14ac3dec_fixed: always use the USE_FIXED=1 variant of the AC3DecodeContextAndreas Cadhalpun
The AC3DecodeContext has a float (USE_FIXED=0) and an integer (USE_FIXED=1) variant, both of which can be present in the same binary. This is not only very confusing, but it also breaks horribly, when one variant is used by code expecting the other. This currently happens, because eac3dec.c is only compiled for the float variant, but also used from ac3dec_fixed.c, which uses the integer variant. The result is memory corruption, leading to crashes. So compile eac3dec.c once for each variant and adapt it, so that it works with the integer variant. A loss of precission and scaling bug has been fixed by the committer Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-21avcodec/ac3dec: Use avpriv_float_dsp_alloc()Michael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-27Improved AC3 decoder level support (heavy drc, dialnorm)Jean-Francois Thibert
Added support for AC3 heavy dynamic range compression used to restrict the output range and added a setting to specify the output target level and use the dialog normalization field to apply it in the digital domain. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-23Merge commit 'c67b449bebbe0b35c73b203683e77a0a649bc765'Michael Niedermayer
* commit 'c67b449bebbe0b35c73b203683e77a0a649bc765': dsputil: Split bswap*_buf() off into a separate context Conflicts: configure libavcodec/4xm.c libavcodec/ac3dec.c libavcodec/ac3dec.h libavcodec/apedec.c libavcodec/eamad.c libavcodec/flacenc.c libavcodec/fraps.c libavcodec/huffyuv.c libavcodec/huffyuvdec.c libavcodec/motionpixels.c libavcodec/truemotion2.c libavcodec/x86/Makefile libavcodec/x86/dsputil_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-23dsputil: Split bswap*_buf() off into a separate contextDiego Biurrun
2014-04-01avcodec/ac3: rename identifier used to select the fixed point variantMichael Niedermayer
the CONFIG_ prefix is used by configure, using it for other things is potentially confusing to the reader Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Nedeljko Babic <nbabic@mips.com>
2014-04-01libavcodec: Implementation of AC3 fixedpoint decoderNedeljko Babic
Signed-off-by: Nedeljko Babic <nbabic@mips.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-20Merge commit 'c229f571fd3c7d7b567c27c87b2bbcdaee1b0e9f'Michael Niedermayer
* commit 'c229f571fd3c7d7b567c27c87b2bbcdaee1b0e9f': (e)ac3: parse and store the Lt/Rt and LFE mix levels. Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-19(e)ac3: parse and store the Lt/Rt and LFE mix levels.Tim Walker
2014-01-06Merge commit '13345fc1f86fc3615789e196d5a339c1c27c9068'Michael Niedermayer
* commit '13345fc1f86fc3615789e196d5a339c1c27c9068': (e)ac3: parse and store the Dolby Surround, Surround EX and Headphone mode flags. Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-05(e)ac3: parse and store the Dolby Surround, Surround EX and Headphone mode ↵Tim Walker
flags.
2013-11-23Merge commit 'd4df02131b5522a99a4e6035368484e809706ed5'Michael Niedermayer
* commit 'd4df02131b5522a99a4e6035368484e809706ed5': ac3dec: Remove write-only channel_layout field from AC3DecodeContext Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-23ac3dec: Remove write-only channel_layout field from AC3DecodeContextTim Walker
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-07-17fmtconvert: Explicitly use int32_t instead of intChristophe Gisquet
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-18fmtconvert: int32_t input to int32_to_float_fmul_scalarChristophe Gisquet
It was previously declared as int. Does not change fate results for x86. Conflicts: libavcodec/ppc/fmtconvert_altivec.c Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-13Merge commit 'e57daa876bf0cf50782550e366e589441cd8c2bd'Michael Niedermayer
* commit 'e57daa876bf0cf50782550e366e589441cd8c2bd': adpcm: decode directly to the user-provided AVFrame ac3: decode directly to the user-provided AVFrame aac: decode directly to the user-provided AVFrame 8svx: decode directly to the user-provided AVFrame Conflicts: libavcodec/8svx.c libavcodec/ac3dec.c libavcodec/adpcm.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-12ac3: decode directly to the user-provided AVFrameJustin Ruggles
2013-01-16Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: lavc: Move vector_fmul_window to AVFloatDSPContext rtpdec_mpeg4: Check the remaining amount of data before reading Conflicts: libavcodec/dsputil.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-16lavc: Move vector_fmul_window to AVFloatDSPContextJustin Ruggles
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-10Merge commit '30b39164256999efc8d77edc85e2e0b963c24834'Michael Niedermayer
* commit '30b39164256999efc8d77edc85e2e0b963c24834': ac3dec: make downmix() take array of pointers to channel data Conflicts: libavcodec/ac3dsp.c libavcodec/ac3dsp.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-10Merge commit 'b8f3ab8e6a7ce3627764da53b809628c828d4047'Michael Niedermayer
* commit 'b8f3ab8e6a7ce3627764da53b809628c828d4047': ac3dec: output planar float only svq3: make slice type value unsigned to match svq3_get_ue_golomb return type configure: Have protocols select network code instead of depending on it Conflicts: libavcodec/svq3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-09ac3dec: make downmix() take array of pointers to channel dataMans Rullgard
2012-12-09ac3dec: output planar float onlyMans Rullgard
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-06Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: yuv4mpeg: return proper error codes. Give all anonymously typedeffed structs in headers a name fate: Add parseutils test parseutils-test: Drop random colors from parsing test vf_pad/scale: use double precision for aspect ratios. build: error on variable-length arrays ppc: swscale: rework yuv2planeX_altivec() ppc: fmtconvert: kill VLA in float_to_int16_interleave_altivec() x86: dsputil: kill VLA in gmc_mmx() libspeexenc: Updated commentary to reflect recent changes libspeexenc: Add an option for enabling DTX doc/APIchanges: fill in missing dates and hashes. lavr: bump major to 1 and declare it stable. lavr: change the type of the data buffers to uint8_t**. lavc: deprecate the audio resampling API. Conflicts: cmdutils.h configure doc/APIchanges ffplay.c libavcodec/dwt.h libavcodec/libspeexenc.c libavfilter/vf_pad.c libavfilter/vf_scale.c libavformat/asf.h tests/fate/libavutil.mak tests/ref/fate/parseutils Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-06Give all anonymously typedeffed structs in headers a nameDiego Biurrun
Anonymous structs cannot be forward declared and have no benefit.
2012-09-13Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: os_support: Choose between direct.h and io.h using a configure check os_support: Include io.h instead of direct.h on mingw32ce x86: ac3dsp: Only refer to the ac3_downmix_sse symbol if it has been declared swscale: Remove two bogus asserts ac3: move ac3_downmix() from dsputil to ac3dsp lavr/audio_mix_matrix: acknowledge the existence of LFE2. mlp_parser: avoid mapping multiple disctinct TrueHD channels to the same Libav channel. lavu/audioconvert: add a second low frequency channel. Conflicts: doc/APIchanges libavcodec/ac3dsp.c libavcodec/ac3dsp.h libavcodec/mlp_parser.c libavutil/audioconvert.c libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-13ac3: move ac3_downmix() from dsputil to ac3dspMans Rullgard
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-12-03Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: aac_latm: reconfigure decoder on audio specific config changes latmdec: fix audio specific config parsing Add avcodec_decode_audio4(). avcodec: change number of plane pointers from 4 to 8 at next major bump. Update developers documentation with coding conventions. svq1dec: avoid undefined get_bits(0) call ARM: h264dsp_neon cosmetics ARM: make some NEON macros reusable Do not memcpy raw video frames when using null muxer fate: update asf seektest vp8: flush buffers on size changes. doc: improve general documentation for MacOSX asf: use packet dts as approximation of pts asf: do not call av_read_frame rtsp: Initialize the media_type_mask in the rtp guessing demuxer Cleaned up alacenc.c Conflicts: doc/APIchanges doc/developer.texi libavcodec/8svx.c libavcodec/aacdec.c libavcodec/ac3dec.c libavcodec/avcodec.h libavcodec/nellymoserdec.c libavcodec/tta.c libavcodec/utils.c libavcodec/version.h libavcodec/wmadec.c libavformat/asfdec.c tests/ref/seek/lavf_asf Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-03Add avcodec_decode_audio4().Justin Ruggles
Deprecate avcodec_decode_audio3(). Implement audio support in avcodec_default_get_buffer(). Implement the new audio decoder API in all audio decoders.
2011-09-06ac3dec: avoid pointless alloc and indirection for input_bufferReimar Döffinger
Since we now always allocate it, it can simply be made part of the context instead.
2011-08-13ac3dec: export center & suroundmix levelsMichael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-11Merge commit '142e76f1055de5dde44696e71a5f63f2cb11dedf'Michael Niedermayer
* commit '142e76f1055de5dde44696e71a5f63f2cb11dedf': swscale: fix crash with dithering due incorrect offset calculation. matroskadec: fix stupid typo (!= -> ==) build: remove duplicates from order-only directory prerequisite list build: rework rules for things in the tools dir configure: fix --cpu=host with gcc 4.6 ARM: use const macro to define constant data in asm bitdepth: simplify FUNC/FUNCC macros dsputil: remove ff_emulated_edge_mc macro used in one place 9/10-bit: simplify clipping macros matroskadec: reindent matroskadec: defer parsing of cues element until we seek. lavc: add support for codec-specific defaults. lavc: make avcodec_alloc_context3 officially public. lavc: remove a half-working attempt at different defaults for audio/video codecs. ac3dec: add a drc_scale private option lavf: add avformat_find_stream_info() lavc: introduce avcodec_open2() as a replacement for avcodec_open(). Conflicts: Makefile libavcodec/utils.c libavformat/avformat.h libswscale/swscale_internal.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-10ac3dec: add a drc_scale private optionAnton Khirnov
Deprecate corresponding AVCodecContext option. This is the first test of decoder private options.
2011-07-03Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: ARM: ac3: update ff_ac3_extract_exponents_neon per 8b7b2d6 ARM: NEON optimised vector_clip_int32() swscale: disable full_chroma_int when converting to non-24/32bpp RGB. suggest to use av_get_bytes_per_sample() in av_get_bits_per_sample_format() doxy ffmpeg: use av_get_bytes_per_sample() in place of av_get_bits_per_sample_fmt() put_bits: remove ALT_BITSTREAM_WRITER put_bits: always use intreadwrite.h macros libavformat: Add an example how to use the metadata API doxygen: Prefer member groups over grouping into modules doxygen: be more permissive when searching for API examples avformat: doxify the Metadata API lavf: restore old behavior for custom AVIOContex with an AVFMT_NOFILE format. lavf: use the correct pointer in av_open_input_stream(). avidec: infer absolute vs relative index from first packet Conflicts: libavformat/Makefile libavformat/avidec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-02doxygen: Prefer member groups over grouping into modulesReinhard Tartler
Before this, almost all module groups have been used for grouping functions and fields in structures semantically. This causes them to not appear properly in the file documentation and needlessly clutters up the "Modules" index. Additionally, this commit streamlines some spelling and appearances.
2011-06-14Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (24 commits) utils: Drop pointless '#if 1' preprocessor directive. ac3enc: remove empty ac3_float function that is never called ac3enc: split templated float vs. fixed functions into a separate file. ac3enc: dynamically allocate AC3EncodeContext fields windowed_samples and mdct ac3enc: use function pointer to choose between AC-3 and E-AC-3 header output functions. Roll back 4:4:4 H.264 for now Needs some ARM/PPC asm modifications. Fix SVQ3 after adding 4:4:4 H.264 support H.264: fix CODEC_FLAG_GRAY 4:4:4 H.264 decoding support h264_parser: Fix whitespace after previous change. h264_parser: Fix behaviour when PARSER_FLAG_COMPLETE_FRAMES is set. wav: remove an invalid free(). lavf: initialise reference_dts in av_estimate_timings_from_pts. h264: don't be so picky on decoding pps in extradata. avcodec.h: add or elaborate on some documentation comments. h264: change a few comments into error messages ac3dec: fix doxy-style for comment ("///>" should be "///<" instead). img2: add .dpx to the list of supported file extensions. ffv1: fix undefined behavior with insane widths. ARM: jrevdct_arm: simplify stack usage ... Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-13ac3dec: fix doxy-style for comment ("///>" should be "///<" instead).Reimar Döffinger
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-25Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (22 commits) configure: enable memalign_hack automatically when needed swscale: unbreak the build on non-x86 systems. swscale: remove if(bitexact) branch from functions. swscale: remove if(canMMX2BeUsed) conditional. swscale: remove swScale_{c,MMX,MMX2} duplication. swscale: use emms_c(). Move emms_c() from libavcodec to libavutil. tiff: set palette in the context when specified in TIFF_PAL tag rtsp: use strtoul to parse rtptime and seq values. pgssubdec: fix incorrect colors. dvdsubdec: fix incorrect colors. ape: Allow demuxing of files with metadata tags. swscale: remove dead macro WRITEBGR24OLD. swscale: remove AMD3DNOW "optimizations". swscale: remove duplicate code in ppc/ subdirectory. swscale: remove duplicated x86/ functions. swscale: force --enable-runtime-cpudetect and remove SWS_CPU_CAPS_*. vsrc_buffer.h: add file doxy vsrc_buffer: tweak error message in init() msmpeg4: reindent. ... Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-24ac3enc: add channel coupling supportJustin Ruggles
Channel coupling is an optional AC-3 feature that increases quality by combining high frequency information from multiple channels into a single channel. The per-channel high frequency information is sent with less accuracy in both the frequency and time domains. This allows more bits to be used for lower frequencies while preserving enough information to reconstruct the high frequencies.