summaryrefslogtreecommitdiff
path: root/libavcodec/h264_ps.c
Commit message (Collapse)AuthorAge
* ff_h264_decode_seq_parameter_set: dont set h->spsMichael Niedermayer2013-05-06
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* ff_h264_decode_picture_parameter_set: fix return codeMichael Niedermayer2013-05-06
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* ff_h264_decode_picture_parameter_set: use the correct spsMichael Niedermayer2013-05-06
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* h264_ps: check croping valuesMichael Niedermayer2013-04-30
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '5e83d9aced2fc2b2e1360452794c58aba55d497c'Michael Niedermayer2013-04-19
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '5e83d9aced2fc2b2e1360452794c58aba55d497c': h264: fully support cropping. Conflicts: doc/APIchanges libavcodec/h264.c libavcodec/h264_ps.c libavcodec/options_table.h libavcodec/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: fully support cropping.Anton Khirnov2013-04-19
| | | | | | | | | | | | Based on a patch by Vittorio Giovara <vittorio.giovara@gmail.com> Fixes Bug 378.
* | Merge commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f'Michael Niedermayer2013-02-26
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f': Remove unnecessary dsputil.h #includes Conflicts: libavcodec/ffv1.c libavcodec/h261dec.c libavcodec/h261enc.c libavcodec/h264pred.c libavcodec/lpc.h libavcodec/mjpegdec.c libavcodec/rectangle.h libavcodec/x86/idct_sse2_xvid.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Remove unnecessary dsputil.h #includesDiego Biurrun2013-02-26
| |
* | h264: check that luma and chroma depth matchMichael Niedermayer2013-02-21
| | | | | | | | | | | | | | Fixes out of array access Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-02-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: h264: deMpegEncContextize Conflicts: libavcodec/dxva2_h264.c libavcodec/h264.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c libavcodec/h264_mb_template.c libavcodec/h264_parser.c libavcodec/h264_ps.c libavcodec/h264_refs.c libavcodec/h264_sei.c libavcodec/svq3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: deMpegEncContextizeAnton Khirnov2013-02-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most of the changes are just trivial are just trivial replacements of fields from MpegEncContext with equivalent fields in H264Context. Everything in h264* other than h264.c are those trivial changes. The nontrivial parts are: 1) extracting a simplified version of the frame management code from mpegvideo.c. We don't need last/next_picture anymore, since h264 uses its own more complex system already and those were set only to appease the mpegvideo parts. 2) some tables that need to be allocated/freed in appropriate places. 3) hwaccels -- mostly trivial replacements. for dxva, the draw_horiz_band() call is moved from ff_dxva2_common_end_frame() to per-codec end_frame() callbacks, because it's now different for h264 and MpegEncContext-based decoders. 4) svq3 -- it does not use h264 complex reference system, so I just added some very simplistic frame management instead and dropped the use of ff_h264_frame_start(). Because of this I also had to move some initialization code to svq3. Additional fixes for chroma format and bit depth changes by Janne Grunau <janne-libav@jannau.net> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Merge commit 'b85a5e87af4254b80913fe33591d96361f30832b'Michael Niedermayer2013-01-25
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'b85a5e87af4254b80913fe33591d96361f30832b': lavu: Add av_strnstr() h264: Allow discarding the cropping information from SPS Conflicts: Changelog doc/APIchanges libavcodec/avcodec.h libavcodec/version.h libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: Allow discarding the cropping information from SPSVittorio Giovara2013-01-25
| | | | | | | | | | | | Some 3D systems overload the meaning of the field for other purposes. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit 'c661cb6672af5ebcb900ec8766b24761bd2ab011'Michael Niedermayer2012-12-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'c661cb6672af5ebcb900ec8766b24761bd2ab011': cmdutils: pass number of groups to split_commandline(). mov: handle h263 and flv1 for codec_tag 'H','2','6','3' h264: fix sps parsing for SVC and CAVLC 4:4:4 Intra profiles Conflicts: libavcodec/h264_ps.c libavformat/isom.c libavformat/mov.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: fix sps parsing for SVC and CAVLC 4:4:4 Intra profilesVictor Lopez2012-12-19
| | | | | | | | | | | | Fixes bug 396. CC: libav-stable@libav.org
| * h264: fix memleak on error during SPS parsingJanne Grunau2012-12-15
| | | | | | | | Introduced in d7d6efe42b0d.
* | Merge commit '072be3e8969f24113d599444be4d6a0ed04a6602'Michael Niedermayer2012-12-14
|\| | | | | | | | | | | | | | | | | | | | | * commit '072be3e8969f24113d599444be4d6a0ed04a6602': h264: set parameters from SPS whenever it changes asyncts: cosmetics: reindent Conflicts: libavcodec/h264.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: set parameters from SPS whenever it changesJanne Grunau2012-12-13
| | | | | | | | | | Fixes a crash in the fuzzed sample sample_varPAR.avi_s26638 with alternating bit depths.
* | Merge commit 'd7d6efe42b0d2057e67999b96b9a391f533d2333'Michael Niedermayer2012-12-07
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'd7d6efe42b0d2057e67999b96b9a391f533d2333': h264: check sps.log2_max_frame_num for validity mov: validate number of DataReferenceBox entries against box size mov: compute avg_frame_rate only if duration is known flac: change minimum and default of lpc_passes option to 1 Conflicts: libavcodec/h264_ps.c libavformat/mov.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: check sps.log2_max_frame_num for validityJanne Grunau2012-12-07
| | | | | | | | | | | | | | Fixes infinite or long taking loop in frame num gap code in the fuzzed sample bipbop234.ts_s223302. CC: libav-stable@libav.org
* | h264: 2nd try at getting sm2v workingMichael Niedermayer2012-11-11
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: Support SMV2Michael Niedermayer2012-11-11
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: fix parsing of old lossless profile (profile_idc == 144)Hendrik Leppkes2012-10-14
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: print num_reorder_frames in debug outputMichael Niedermayer2012-08-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-07-30
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: avformat: Drop pointless "format" from container long names swscale: bury one more piece of inline asm under HAVE_INLINE_ASM. wv: K&R formatting cosmetics configure: Add missing descriptions to help output h264_ps: declare array of colorspace strings on its own line. fate: amix: specify f32 sample format for comparison tiny_psnr: support 32-bit float samples eamad/eatgq/eatqi: call special EA IDCT directly eamad: remove use of MpegEncContext mpegvideo: remove unnecessary inclusions of faandct.h af_asyncts: avoid overflow in out_size with large delta values af_asyncts: add first_pts option Conflicts: configure libavcodec/eamad.c libavcodec/h264_ps.c libavformat/crcenc.c libavformat/ffmdec.c libavformat/ffmenc.c libavformat/framecrcenc.c libavformat/md5enc.c libavformat/nutdec.c libavformat/rawenc.c libavformat/yuv4mpeg.c tests/tiny_psnr.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264_ps: declare array of colorspace strings on its own line.Ronald S. Bultje2012-07-29
| |
* | h264/decode_scaling_matrices: fix coding order of 8x8 matrixes.Michael Niedermayer2012-07-10
| | | | | | | | | | | | This fixes decoding of PPCV444I3_Thomson_A.bits Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: 12 and 14 bit supportMichael Niedermayer2012-07-10
| | | | | | | | | | | | | | This works with I, P and B frames CAVLC and CABAC Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: print error on unsupported seperate color planesMichael Niedermayer2012-07-05
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: sps: handle more profilesMichael Niedermayer2012-07-03
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: add support for constraint_set4_flag / constraint_set5_flagMichael Niedermayer2012-07-03
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: check log2_max_poc_lsb for validityMichael Niedermayer2012-07-01
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-05-03
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: mpeg12: fixed parsing in some mpeg2 streams Add SMPTE240M transfer characteristics flag. mpegts: Some additional HDMV types and reg descriptors for mpegts motionpixels: Clip YUV values after applying a gradient. jpeg: handle progressive in second field of interlaced. ituh263dec: Implement enough of Annex O (scalability) to fix a FPE. h263: more strictly forbid frame size changes with frame-mt. h264: additional protection against unsupported size/bitdepth changes. tta: prevents overflows for 32bit integers in header. configure: remove malloc_aligned. vp8: update frame size changes on thread context switches. snowdsp: explicitily state instruction size. wmall: fix reconstructing audio with uncoded channels WMAL cosmetics: fix indentation gitignore: add Win32 library suffixes Conflicts: configure libavcodec/h263dec.c libavcodec/h264.c libavcodec/ituh263dec.c libavcodec/mjpegdec.c libavcodec/wmalosslessdec.c libavcodec/x86/snowdsp_mmx.c libavformat/mpegts.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: additional protection against unsupported size/bitdepth changes.Ronald S. Bultje2012-05-02
| | | | | | | | | | | | | | Fixes crashes in codepaths not covered by original checks. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* | h264_ps: check log2_max_frame_num for validity.Michael Niedermayer2012-04-07
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-25
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: x86: dsputil: prettyprint gcc inline asm x86: K&R prettyprinting cosmetics for dsputil_mmx.c x86: conditionally compile H.264 QPEL optimizations dsputil_mmx: Surround QPEL macros by "do { } while (0);" blocks. Ignore generated files below doc/. dpcm: convert to bytestream2. interplayvideo: convert to bytestream2. movenc: Merge if statements h264: fix memleak in error path. pthread: Immediately release all frames in ff_thread_flush() h264: Add check for invalid chroma_format_idc utvideo: port header reading to bytestream2. Conflicts: .gitignore configure libavcodec/h264_ps.c libavcodec/interplayvideo.c libavcodec/pthread.c libavcodec/x86/dsputil_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: fix memleak in error path.Alexander Strange2012-03-24
| | | | | | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
| * h264: Add check for invalid chroma_format_idcAlexander Strange2012-03-24
| | | | | | | | | | | | Fixes a crash when FF_DEBUG_PICT_INFO is used. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-14
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: doc/general: update supported devices table. doc/general: add missing @tab to codecs table. h264: Fix invalid interlaced/progressive MB combinations for direct mode prediction. avconv: reindent avconv: link '-passlogfile' option to libx264 'stats' AVOption. libx264: add 'stats' private option for setting 2pass stats filename. libx264: fix help text for slice-max-size option. http: Clear the auth state on redirects http: Retry auth if it failed due to being stale rtsp: Resend new keepalive commands if they used stale auth rtsp: Retry authentication if failed due to being stale httpauth: Parse the stale field in digest auth dxva2_vc1: pass the overlap flag to the decoder dxva2_vc1: fix decoding of BI frames FATE: add shorthand to wavpack test dfa: convert to bytestream2 API anm decoder: move buffer allocation from decode_init() to decode_frame() h264: improve parsing of broken AVC SPS Conflicts: ffmpeg.c libavcodec/anm.c libavcodec/dfa.c libavcodec/h264.c libavcodec/h264_direct.c libavcodec/h264_ps.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: improve parsing of broken AVC SPSMichael Niedermayer2012-03-13
| | | | | | | | | | | | | | | | | | | | | | | | Parsing the entire NAL as SPS fixes decoding of some AVC bitstreams with broken escaping. Since the size of the NAL unit is known and checked against the buffer end we can parse it entirely without buffer overreads. Fixes playback of http://streams.videolan.org/streams/mp4/Mr_MrsSmith-h264_aac.mp4 Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-06
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * Replace computations of remaining bits with calls to get_bits_left().Alex Converse2012-03-05
| |
* | h264: Decode short VUI without errorMichael Niedermayer2011-12-23
| | | | | | | | | | | | Fixes 47j9R7PXBep.mov Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: check chroma_format_idc range.Michael Niedermayer2011-12-15
| | | | | | | | | | | | | | Fixes Ticket758 Bug found by: Diana Elena Muscalu Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Be less verbose when skipping RBSP data in H264 PPS.Carl Eugen Hoyos2011-12-02
| | | | | | | | Fixes ticket #693.
* | h264: More restrictive more_rbsp_data_in_pps()Michael Niedermayer2011-12-01
| | | | | | | | | | | | Fixes Ticket697 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | H264: Check if more RBSP data in PPS provided by current profile due to Annex A.Anatoly Nenashev2011-11-25
| | | | | | | | | | | | This patch also fix issue https://ffmpeg.org/trac/ffmpeg/ticket/685. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Simplify some bits-left/overread checks.Reimar Döffinger2011-10-23
| | | | | | | | Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-10-22
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (35 commits) flvdec: Do not call parse_keyframes_index with a NULL stream libspeexdec: include system headers before local headers libspeexdec: return meaningful error codes libspeexdec: cosmetics: reindent libspeexdec: decode one frame at a time. swscale: fix signed shift overflows in ff_yuv2rgb_c_init_tables() Move timefilter code from lavf to lavd. mov: add support for hdvd and pgapmetadata atoms mov: rename function _stik, some indentation cosmetics mov: rename function _int8 to remove ambiguity, some indentation cosmetics mov: parse the gnre atom mp3on4: check for allocation failures in decode_init_mp3on4() mp3on4: create a separate flush function for MP3onMP4. mp3on4: ensure that the frame channel count does not exceed the codec channel count. mp3on4: set channel layout mp3on4: fix the output channel order mp3on4: allocate temp buffer with av_malloc() instead of on the stack. mp3on4: copy MPADSPContext from first context to all contexts. fmtconvert: port float_to_int16_interleave() 2-channel x86 inline asm to yasm fmtconvert: port int32_to_float_fmul_scalar() x86 inline asm to yasm ... Conflicts: libavcodec/arm/h264dsp_init_arm.c libavcodec/h264.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_ps.c libavcodec/h264dsp_template.c libavcodec/h264idct_template.c libavcodec/h264pred.c libavcodec/h264pred_template.c libavcodec/x86/h264dsp_mmx.c libavdevice/Makefile libavdevice/jack_audio.c libavformat/Makefile libavformat/flvdec.c libavformat/flvenc.c libavutil/pixfmt.h libswscale/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: 4:2:2 intra decoding supportBaptiste Coudurier2011-10-21
| | | | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>