summaryrefslogtreecommitdiffstats
path: root/libavcodec/get_bits.h
Commit message (Collapse)AuthorAgeFilesLines
* avcodec/get_bits: Document skip_bits_long()Michael Niedermayer2018-04-071-0/+7
| | | | | Found-by: Kieran Signed-off-by: Michael Niedermayer <[email protected]>
* avcodec/get_bits: Make sure the input bitstream with padding can be addressedMichael Niedermayer2018-03-261-1/+2
| | | | Signed-off-by: Michael Niedermayer <[email protected]>
* avcodec/get_bits: Document the return code of get_vlc2()Michael Niedermayer2018-01-291-0/+1
| | | | | | Found-by: kierank Reviewed-by: Kieran Kunhya <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* avcodec: add Newtek SpeedHQ decoderSteinar H. Gunderson2017-01-111-0/+14
| | | | | | | | | | | | | | This decoder can decode all existing SpeedHQ formats (SHQ0–5, 7, and 9), including correct decoding of the alpha channel. 1080p is decoded in 142 fps on one core of my i7-4600U (2.1 GHz Haswell), about evenly split between bitstream reader and IDCT. There is currently no attempt at slice or frame threading, even though the format trivially supports both. NewTek very helpfully provided a full set of SHQ samples, as well as source code for an SHQ2 encoder (not included) and assistance with understanding some details of the format.
* avcodec/get_bits: add av_assert2 to get_bits_long()Paul B Mahol2016-12-181-0/+1
| | | | Signed-off-by: Paul B Mahol <[email protected]>
* avcodec/get_bits: Fix get_sbits_long(0)Michael Niedermayer2016-12-031-0/+4
| | | | | | | | Fixes undefined behavior Fixes: 640889-media Found-by: Matt Wolenetz <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* Merge commit '52567e8198669a1e7493c75771613f87a90466c3'Hendrik Leppkes2016-06-261-86/+1
|\ | | | | | | | | | | | | * commit '52567e8198669a1e7493c75771613f87a90466c3': get_bits: Drop some TRACE-level debug code Merged-by: Hendrik Leppkes <[email protected]>
| * get_bits: Drop some TRACE-level debug codeDiego Biurrun2016-05-221-64/+0
| | | | | | | | It will not be provided by the new bit reader anyway.
* | Merge commit 'ffa190d0479d2370dd89c95692f822cbff2cc24c'Clément Bœsch2016-06-231-41/+1
|\| | | | | | | | | | | | | * commit 'ffa190d0479d2370dd89c95692f822cbff2cc24c': Move VLC and RL_VLC_ELEM structure definitions to a separate header Merged-by: Clément Bœsch <[email protected]>
| * Move VLC and RL_VLC_ELEM structure definitions to a separate headerAlexandra Hájková2016-05-171-41/+1
| | | | | | | | | | | | | | Use the newly created vlc.h directly instead of including get_bits when needed. The VLC and RL_VLC_ELEM structures are independent from the bitreader. Signed-off-by: Luca Barbato <[email protected]>
| * Move check_marker() from get_bits to mpeg4videodecAlexandra Hájková2016-05-161-9/+0
| | | | | | | | | | | | MPEG-4 is the only decoder which uses check_marker(). Signed-off-by: Anton Khirnov <[email protected]>
* | lavc/get_bits: add a logging context to check_marker()Clément Bœsch2016-06-221-2/+3
| | | | | | | | Based on d338abb664febbc2c7266af7818aab1f12dbc161
* | Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'Clément Bœsch2016-06-211-2/+2
|\| | | | | | | | | | | | | * commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb': cosmetics: Fix spelling mistakes Merged-by: Clément Bœsch <[email protected]>
| * cosmetics: Fix spelling mistakesVittorio Giovara2016-05-041-2/+2
| | | | | | | | Signed-off-by: Diego Biurrun <[email protected]>
| * lavc: Add get_bitsz()Andreas Cadhalpun2016-01-111-0/+8
| | | | | | | | | | | | get_bit variant supporting 0-bits reads. Signed-off-by: Luca Barbato <[email protected]>
| * get_bits: Support max_depth > 2 in GET_RL_VLC_INTERNALKieran Kunhya2016-01-111-0/+11
| |
* | get_bits: add get_bitsz for reading 0-25 bitsAndreas Cadhalpun2016-01-031-0/+8
| | | | | | | | | | | | | | This can be used to simplify code in a couple of places. Reviewed-by: Michael Niedermayer <[email protected]> Signed-off-by: Andreas Cadhalpun <[email protected]>
* | get_bits: Support max_depth > 2 in GET_RL_VLC_INTERNALKieran Kunhya2015-12-131-0/+11
| |
* | Merge commit '059a934806d61f7af9ab3fd9f74994b838ea5eba'Michael Niedermayer2015-07-271-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 <[email protected]>
| * lavc: Consistently prefix input buffer definesVittorio Giovara2015-07-271-2/+2
| | | | | | | | Signed-off-by: Vittorio Giovara <[email protected]>
* | Merge commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25'Michael Niedermayer2015-04-201-4/+0
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25': lavc: Replace av_dlog and tprintf with internal macros Conflicts: libavcodec/aacdec.c libavcodec/audio_frame_queue.c libavcodec/bitstream.c libavcodec/dcadec.c libavcodec/dnxhddec.c libavcodec/dvbsubdec.c libavcodec/dvdec.c libavcodec/dvdsubdec.c libavcodec/get_bits.h libavcodec/gifdec.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c libavcodec/h264_refs.c libavcodec/imc.c libavcodec/interplayvideo.c libavcodec/jpeglsdec.c libavcodec/libopencore-amr.c libavcodec/mjpegdec.c libavcodec/mpeg12dec.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_parser.c libavcodec/pngdec.c libavcodec/ratecontrol.c libavcodec/rv10.c libavcodec/svq1dec.c libavcodec/vqavideo.c libavcodec/wmadec.c Merged-by: Michael Niedermayer <[email protected]>
| * lavc: Replace av_dlog and tprintf with internal macrosVittorio Giovara2015-04-191-5/+0
| |
| * get_bits: remove unused assignmentVittorio Giovara2014-11-031-1/+1
| | | | | | | | Bug-Id: CID 1238816
* | avcodec/get_bits: print details of the location of the missing bit in ↵Michael Niedermayer2015-04-141-1/+1
| | | | | | | | | | | | check_marker() Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit 'b574e1e97ea7067a5fcd3876e30a67df0e4e6611'Michael Niedermayer2014-09-051-6/+7
|\| | | | | | | | | | | | | | | | | | | * commit 'b574e1e97ea7067a5fcd3876e30a67df0e4e6611': get_bits: Add OPEN_READER macro variant w/o size_plus8 Conflicts: libavcodec/get_bits.h Merged-by: Michael Niedermayer <[email protected]>
| * get_bits: Add OPEN_READER macro variant w/o size_plus8Diego Biurrun2014-09-051-6/+7
| | | | | | | | This avoids a trillion warnings from MSVC.
* | Merge commit '91d305790ea0f6fe0f54b48236da42181c39c18b'Michael Niedermayer2014-09-021-2/+2
|\| | | | | | | | | | | | | | | | | | | * commit '91d305790ea0f6fe0f54b48236da42181c39c18b': get_bits: Rename HAVE_BITS_REMAINING --> BITS_AVAILABLE Conflicts: libavcodec/golomb.h Merged-by: Michael Niedermayer <[email protected]>
| * get_bits: Rename HAVE_BITS_REMAINING --> BITS_AVAILABLEDiego Biurrun2014-09-021-2/+2
| | | | | | | | The HAVE_ prefix is reserved for macros set by configure.
| * get_bits: Return pointer to buffer that is the result of the alignmentRonald S. Bultje2013-02-191-1/+2
| | | | | | | | | | | | | | This allows more transparent mixing of get_bits and whole-byte access without having to touch get_bits internals. Signed-off-by: Martin Storsjö <[email protected]>
* | avcodec/get_bits: add BITS_LEFT() for finding the bits left with an opened ↵Michael Niedermayer2014-08-111-0/+5
| | | | | | | | | | | | reader Signed-off-by: Michael Niedermayer <[email protected]>
* | get_bits: remove unused assignmentTimothy Gu2014-07-161-1/+1
| | | | | | | | | | Signed-off-by: Timothy Gu <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | avcodec/bitstream: try to make vlc init code inherently thread safeMichael Niedermayer2014-06-161-1/+0
| | | | | | | | | | | | also remove spinlock, it doesnt work on AIX Signed-off-by: Michael Niedermayer <[email protected]>
* | avcodec: better level/index printingMatthew Lindner2014-05-091-3/+3
| |
* | avcodec: include GET_RL_VLC() in trace outputMichael Niedermayer2014-05-091-1/+21
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | Various small spelling fixes.Reimar Döffinger2014-04-221-1/+1
| | | | | | | | Signed-off-by: Reimar Döffinger <[email protected]>
* | avcodec/get_bits: add skip_1stop_8data_bitsMichael Niedermayer2013-10-301-0/+14
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | skip_bits: dont call UPDATE_CACHEMichael Niedermayer2013-09-301-1/+0
| | | | | | | | | | | | UPDATE_CACHE isnt needed and can cause segfaults Signed-off-by: Michael Niedermayer <[email protected]>
* | avcodec/get_bits: place volatile at the right spotMichael Niedermayer2013-07-301-1/+1
| | | | | | | | | | | | Should fix Ticket2825 Signed-off-by: Michael Niedermayer <[email protected]>
* | avcodec/get_bits: init_state is used for thread sync, make it volatileMichael Niedermayer2013-07-301-1/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | avcodec/ff_init_vlc_sparse: use a spinlock for thread syncMichael Niedermayer2013-07-291-0/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | get_bits: add get_bits_le()Paul B Mahol2013-07-051-18/+43
| | | | | | | | Signed-off-by: Paul B Mahol <[email protected]>
* | get_xbits: assert validity of the number of bitsMichael Niedermayer2013-06-301-0/+1
| | | | | | | | | | | | similar is already done in the other get_bits() functions Signed-off-by: Michael Niedermayer <[email protected]>
* | get_bits: return pointer to buffer that is the result of the alignment.Ronald S. Bultje2013-02-111-1/+2
| | | | | | | | | | | | | | This allows more transparent mixing of get_bits and whole-byte access without having to touch get_bits internals. Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit '4af5310d29379283553bcd9f541a3f6c317f706e'Michael Niedermayer2013-01-221-138/+150
|\| | | | | | | | | | | | | | | | | | | | | * commit '4af5310d29379283553bcd9f541a3f6c317f706e': get_bits/put_bits: K&R formatting cosmetics Conflicts: libavcodec/get_bits.h libavcodec/put_bits.h Merged-by: Michael Niedermayer <[email protected]>
| * get_bits/put_bits: K&R formatting cosmeticsDiego Biurrun2013-01-211-138/+150
| | | | | | | | Signed-off-by: Diego Biurrun <[email protected]>
* | Merge commit '68f18f03519ae550e25cf12661172641e9f0eaca'Michael Niedermayer2013-01-211-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | * commit '68f18f03519ae550e25cf12661172641e9f0eaca': videodsp_armv5te: remove #if HAVE_ARMV5TE_EXTERNAL dsputil: drop non-compliant "fast" qpel mc functions get_bits: change the failure condition in init_get_bits Conflicts: libavcodec/get_bits.h Merged-by: Michael Niedermayer <[email protected]>
| * get_bits: change the failure condition in init_get_bitsLuca Barbato2013-01-201-1/+1
| | | | | | | | | | | | | | Too much code relies in having init_get_bits fed with a valid buffer and set its dimension to 0. Check for NULL buffer instead.
* | init_get_bits: fix off by 1 errorMichael Niedermayer2013-01-141-1/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | init_get_bits8: zero pointers & struct on errorMichael Niedermayer2013-01-141-1/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | init_get_bits8: check byte_size against being positiveMichael Niedermayer2013-01-141-1/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>