summaryrefslogtreecommitdiff
path: root/libavcodec/cabac.c
Commit message (Collapse)AuthorAge
* avcodec/cabac: remove h264_lps_stateMichael Niedermayer2013-09-25
| | | | | | | The only use case of it was the selftest code, and there the slightly more complex indexing that is needed after its removial doesnt matter. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit 'cab8c5f8e140c96ba3725ab709d823abfd1e31a5'Michael Niedermayer2013-09-25
|\ | | | | | | | | | | | | | | * commit 'cab8c5f8e140c96ba3725ab709d823abfd1e31a5': h264: do not reinitialize the global cabac tables at each slice header See: 1e2e2c8095de2d9ea3259305cfeff28f40e4ca12 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: do not reinitialize the global cabac tables at each slice headerAnton Khirnov2013-09-24
| |
* | Merge commit 'e880418660c80e2f12a123e131975cdb6b12cd13'Michael Niedermayer2013-09-25
|\| | | | | | | | | | | | | | | | | | | * commit 'e880418660c80e2f12a123e131975cdb6b12cd13': cabac: remove write-only h264_mps_state[] Conflicts: libavcodec/cabac.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cabac: remove write-only h264_mps_state[]Anton Khirnov2013-09-24
| |
* | avcodec: fix duplicate includesMichael Niedermayer2013-09-21
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-03-13
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: hqdn3d: Fix out of array read in LOWPASS cabac: remove unused argument of ff_init_cabac_states() rawdec: fix a typo -- || instead of | Conflicts: libavcodec/cabac.c libavcodec/h264.c libavfilter/vf_hqdn3d.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cabac: remove unused argument of ff_init_cabac_states()Michael Niedermayer2013-03-13
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * Drop broken and unused CABAC test program.Diego Biurrun2012-11-14
| |
| * h264: use one table instead of several for cabac functionsRoland Scheidegger2012-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | The reason is this is easier for PIC code (in particular on darwin...). Keep the old names as pointers (static in cabac_functions.h so gcc knows these are just immediate offsets) so the c code can nicely stay the same (alternatively could use offsets directly in the functions needing the tables). This should produce the same code as before with non-pic and better code (confirmed) with pic. The assembly uses the new table but still won't work for PIC case. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* | h264: ff_init_cabac_states doesnt use its argument thus remove itMichael Niedermayer2012-08-26
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | cabac: use av_assertMichael Niedermayer2012-07-07
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: use one table instead of several for cabac functionsRoland Scheidegger2012-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | The reason is this is easier for PIC code (in particular on darwin...). Keep the old names as pointers (static in cabac_functions.h so gcc knows these are just immediate offsets) so the c code can nicely stay the same (alternatively could use offsets directly in the functions needing the tables). This should produce the same code as before with non-pic and better code (confirmed) with pic. The assembly uses the new table but still won't work for PIC case. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: (trivial) make ff_h264_lps_state staticRoland Scheidegger2012-04-28
| | | | | | | | | | | | | | not used outside the cabac test functions (which probably means it's a bad test if it doesn't use the same tables as the real functions?) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | 1000l commit forgotten cabac fixMichael Niedermayer2012-01-14
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-01-14
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: FATE: add tests for targa ARM: fix Thumb-mode simple_idct_arm ARM: 4-byte align start of all asm functions rgb2rgb: rgb12to15() swscale-test: fix stack overread. swscale: fix invalid conversions and memory problems. cabac: split cabac.h into declarations and function definitions cabac: Mark ff_h264_mps_state array as static, it is only used within cabac.c. cabac: Remove ff_h264_lps_state array. Conflicts: libswscale/rgb2rgb.h libswscale/swscale_unscaled.c tests/fate/image.mak Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cabac: split cabac.h into declarations and function definitionsDiego Biurrun2012-01-12
| | | | | | | | | | | | | | | | | | | | | | This fixes standalone compilation of some decoders with --disable-optimizations. cabac.h defines some inline functions that use symbols from cabac.c. Without optimizations these inline functions are not eliminated and linking fails with references to non-existing symbols. Splitting the inline functions off into their own header and only #including it in the places where the inline functions are used allows #including cabac.h from anywhere without ill effects.
| * cabac: Mark ff_h264_mps_state array as static, it is only used within cabac.c.Diego Biurrun2012-01-12
| |
| * cabac: Remove ff_h264_lps_state array.Diego Biurrun2012-01-12
| | | | | | | | It was only ever used in the cabac test program, but never initialized.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-01-10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: fate: Add tests for more AAC features. aacps: Add missing newline in error message. fate: Add tests for vc1/wmapro in ism. aacdec: Add a fate test for 5.1 channel SBR. aacdec: Turn off PS for multichannel files that use PCE based configs. cabac: remove put_cabac_u/ueg from cabac-test. swscale: RGB4444 and BGR444 input FATE: add test for xWMA demuxer. FATE: add test for SMJPEG demuxer and associated IMA ADPCM audio decoder. mpegaudiodec: optimized iMDCT transform mpegaudiodec: change imdct window arrangment for better pointer alignment mpegaudiodec: move imdct and windowing function to mpegaudiodsp mpegaudiodec: interleave iMDCT buffer to simplify future SIMD implementations swscale: convert yuy2/uyvy/nv12/nv21ToY/UV from inline asm to yasm. FATE: test to exercise WTV demuxer. mjpegdec: K&R formatting cosmetics swscale: K&R formatting cosmetics for code examples swscale: K&R reformatting cosmetics for header files FATE test: cvid-grayscale; ensures that the grayscale Cinepak variant is exercised. Conflicts: libavcodec/cabac.c libavcodec/mjpegdec.c libavcodec/mpegaudiodec.c libavcodec/mpegaudiodsp.c libavcodec/mpegaudiodsp.h libavcodec/mpegaudiodsp_template.c libavcodec/x86/Makefile libavcodec/x86/imdct36_sse.asm libavcodec/x86/mpegaudiodec_mmx.c libswscale/swscale-test.c libswscale/swscale.c libswscale/swscale_internal.h libswscale/x86/swscale_template.c tests/fate/demux.mak tests/fate/microsoft.mak tests/fate/video.mak tests/fate/wma.mak tests/ref/lavfi/pixfmts_scale Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cabac: remove put_cabac_u/ueg from cabac-test.Diego Biurrun2012-01-09
| | | | | | | | | | The functions are not used in any part of Libav, therefore testing them in the cabac-test is unnecessary. Since this makes them unused, remove the functions.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-01-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (29 commits) cabac: Move code only used within the CABAC test program into the test program. vp56: Drop unnecessary cabac.h #include. h264-test: Initialize AVCodecContext.av_class. build: Skip compiling network.h and rtsp.h if networking is not enabled. cosmetics: drop some pointless parentheses Disable annoying warning without changing behavior faq: Solutions for common problems with sample paths when running FATE. avcodec: attempt to clarify the CODEC_CAP_DELAY documentation avcodec: fix avcodec_encode_audio() documentation. FATE: xmv-demux test; exercise the XMV demuxer without decoding the perceptual codecs inside. vqf: recognize more metadata chunks FATE test: BMV demuxer and associated video and audio decoders. FATE: indeo4 video decoder test. FATE: update xxan-wc4 test to a sample with more code coverage. Change the recent h264_mp4toannexb bitstream filter test to output to an elementary stream rather than a program stream. g722enc: validate AVCodecContext.trellis g722enc: set frame_size, and also handle an odd number of input samples g722enc: split encoding into separate functions for trellis vs. no trellis mpegaudiodec: Use clearer pointer math tta: Fix returned error code at EOF ... Conflicts: libavcodec/h264.c libavcodec/indeo3.c libavcodec/interplayvideo.c libavcodec/ivi_common.c libavcodec/libxvidff.c libavcodec/mpegvideo.c libavcodec/ppc/mpegvideo_altivec.c libavcodec/tta.c libavcodec/utils.c libavfilter/vsrc_buffer.c libavformat/Makefile tests/fate/indeo.mak tests/ref/acodec/g722 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cabac: Move code only used within the CABAC test program into the test program.Diego Biurrun2012-01-07
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-01-05
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (46 commits) mtv: Make sure audio_subsegments is not 0 v4l2: use V4L2_FMT_FLAG_EMULATED only if it is defined avconv: add symbolic names for -vsync parameters flvdec: Fix compiler warning for uninitialized variables rtsp: Fix compiler warning for uninitialized variable ulti: convert to new bytestream API. swscale: Use standard multiple inclusion guards in ppc/ header files. Place some START_TIMER invocations in separate blocks. v4l2: list available formats v4l2: set the proper codec_tag v4l2: refactor device_open v4l2: simplify away io_method v4l2: cosmetics v4l2: uniform and format options v4l2: do not force interlaced mode avio: exit early in fill_buffer without read_packet vc1dec: fix invalid memory access for small video dimensions rv34: fix invalid memory access for small video dimensions rv34: joint coefficient decoding and dequantization avplay: Don't call avio_set_interrupt_cb(NULL) ... Conflicts: Changelog avconv.c doc/APIchanges doc/indevs.texi libavcodec/adxenc.c libavcodec/dnxhdenc.c libavcodec/h264.c libavdevice/v4l2.c libavformat/flvdec.c libavformat/mtv.c libswscale/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cabac: drop unused and disabled get_cabac_u() / get_cabac_ueg() functionsDiego Biurrun2012-01-04
| |
| * cabac: drop unused STRICT_LIMITS code branchDiego Biurrun2012-01-04
| |
* | cabac test: Change input to test, so a wider range of states is tested.Michael Niedermayer2011-09-10
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | cabac test: match encode and decode sideMichael Niedermayer2011-09-10
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | cabac: fix cabac encoderMichael Niedermayer2011-09-10
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-07-17
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: ffmpeg: fix some indentation ffmpeg: fix operation with --disable-avfilter simple_idct: remove disabled code motion_est: remove disabled code vc1: remove disabled code fate: separate lavf-mxf_d10 test from lavf-mxf cabac: Move code only used in the cabac test program to cabac.c. ffplay: warn that -pix_fmt is no longer working, suggest alternative ffplay: warn that -s is no longer working, suggest alternative lavf: rename enc variable in utils.c:has_codec_parameters() lavf: use designated initialisers for all (de)muxers. wav: remove a use of deprecated AV_METADATA_ macro rmdec: remove useless ap parameter from rm_read_header_old() dct-test: remove write-only variable des: fix #if conditional around P_shuffle Use LOCAL_ALIGNED in ff_check_alignment() Conflicts: ffmpeg.c libavformat/avidec.c libavformat/matroskaenc.c libavformat/mp3enc.c libavformat/oggenc.c libavformat/utils.c tests/ref/lavf/mxf Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cabac: Move code only used in the cabac test program to cabac.c.Diego Biurrun2011-07-17
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-07-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (22 commits) arm: remove disabled function dct_unquantize_h263_inter_iwmmxt() Remove commented-out call to non-existing function print_pow1(). Do not decode RV30 files if the extradata is too small flashsv: split flashsv_decode_block() off from flashsv_decode_frame(). ppc: remove disabled code libspeexdec: Drop const qualifier to silence compiler warning. libopenjpeg: Drop const qualifier to silence compiler warning. alac: Remove unused dummy code. Remove unused structs and tables. vaapi: do not assert on value read from input bitstream flashsvenc: replace bitstream description by a link to the specification flashsvenc: drop unnecessary cast flashsvenc: improve some variable names and fix corresponding comments flashsvenc: merge two consecutive if-conditions flashsvenc: merge variable declarations and initializations flashsvenc: convert some debug av_log() to av_dlog() flashsvenc: whitespace cosmetics flashsvenc: drop some unnecessary parentheses flashsvenc: fix some comment typos aacps: skip some memcpy() if src and dst would be equal ... Conflicts: libavcodec/vaapi_mpeg2.c libavformat/aviobuf.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Remove unused structs and tables.Diego Biurrun2011-07-16
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-06-21
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (28 commits) Replace usages of av_get_bits_per_sample_fmt() with av_get_bytes_per_sample(). x86: cabac: fix register constraints for 32-bit mode cabac: move x86 asm to libavcodec/x86/cabac.h x86: h264: cast pointers to intptr_t rather than int x86: h264: remove hardcoded edi in decode_significance_8x8_x86() x86: h264: remove hardcoded esi in decode_significance[_8x8]_x86() x86: h264: remove hardcoded edx in decode_significance[_8x8]_x86() x86: h264: remove hardcoded eax in decode_significance[_8x8]_x86() x86: cabac: change 'a' constraint to 'r' in get_cabac_inline() x86: cabac: remove hardcoded esi in get_cabac_inline() x86: cabac: remove hardcoded edx in get_cabac_inline() x86: cabac: remove unused macro parameter x86: cabac: remove hardcoded ebx in inline asm x86: cabac: remove hardcoded struct offsets from inline asm cabac: remove inline asm under #if 0 cabac: remove BRANCHLESS_CABAC_DECODER switch cabac: remove #if 0 cascade under never-set #ifdef ARCH_X86_DISABLED document libswscale bump error_resilience: skip last-MV predictor step if MVs are not available. error_resilience: actually add counter when adding a MV predictor. ... Conflicts: Changelog libavcodec/error_resilience.c libavfilter/defaults.c libavfilter/vf_drawtext.c libswscale/swscale.h tests/ref/vsynth1/error tests/ref/vsynth2/error Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cabac: remove BRANCHLESS_CABAC_DECODER switchMans Rullgard2011-06-20
| | | | | | | | | | | | The code does not compile without this set. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
|/ | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Remove explicit filename from Doxygen @file commands.Diego Biurrun2010-04-20
| | | | | | | | Passing an explicit filename to this command is only necessary if the documentation in the @file block refers to a file different from the one the block resides in. Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename bitstream.h to get_bits.h.Stefano Sabatini2009-04-13
| | | | Originally committed as revision 18494 to svn://svn.ffmpeg.org/ffmpeg/trunk
* cosmetics: Rename prn variable to prng (Pseudo Random Number Generator).Diego Biurrun2009-04-10
| | | | Originally committed as revision 18422 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace random() usage in test programs by av_lfg_*().Diego Biurrun2009-03-20
| | | | Originally committed as revision 18070 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use full internal pathname in doxygen @file directives.Diego Biurrun2009-02-01
| | | | | | | Otherwise doxygen complains about ambiguous filenames when files exist under the same name in different subdirectories. Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use full path for #includes from another directory.Diego Biurrun2008-05-09
| | | | Originally committed as revision 13098 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix test program compilation: Add missing #include and update the callDiego Biurrun2008-01-23
| | | | | | of ff_init_cabac_states() to account for API changes. Originally committed as revision 11602 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Consistently use TEST as the preprocessor condition to enable test code.Diego Biurrun2008-01-20
| | | | Originally committed as revision 11581 to svn://svn.ffmpeg.org/ffmpeg/trunk
* main() --> main(void)Diego Biurrun2007-11-23
| | | | Originally committed as revision 11079 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix the self tests which are contained in some codecs and are using random().Panagiotis Issaris2007-07-19
| | | | Originally committed as revision 9755 to svn://svn.ffmpeg.org/ffmpeg/trunk
* license header consistency cosmeticsDiego Biurrun2007-07-05
| | | | Originally committed as revision 9484 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Kill a warning with MSVCJindřich Makovička2006-10-18
| | | | | | | | | Patch by Jindrich Makovicka makovick A gmail P com Original thread: Date: 08:21 AM Subject Re: [Ffmpeg-devel] Weird line in cabac.h Originally committed as revision 6726 to svn://svn.ffmpeg.org/ffmpeg/trunk
* shift CABACContext.range right, this reduces the number of shifts needed in ↵Michael Niedermayer2006-10-15
| | | | | | get_cabac() and is slightly faster on P3 (and should be much faster on P4 as the P4 except the more recent variants lacks an integer shifter and so shifts have ~10 times longer latency then simple operations like adds) Originally committed as revision 6702 to svn://svn.ffmpeg.org/ffmpeg/trunk
* dehack *ps_state indexing in the branchless decoderMichael Niedermayer2006-10-13
| | | | Originally committed as revision 6683 to svn://svn.ffmpeg.org/ffmpeg/trunk