summaryrefslogtreecommitdiff
path: root/libavcodec/h264_parser.c
Commit message (Collapse)AuthorAge
* H264 parser: enable header parsing/frame type detection for is_avc.Reimar Döffinger2012-02-19
| | | | Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-01-07
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: flicvideo: fix invalid reads vorbis: Avoid some out-of-bounds reads vqf: add more known extensions cabac: remove unused function renorm_cabac_decoder h264: Only use symbols from the SVQ3 decoder under proper conditionals. add bytestream2_tell() and bytestream2_seek() functions parsers: initialize MpegEncContext.slice_context_count to 1 spdifenc: use special alignment for DTS-HD length_code Conflicts: libavcodec/flicvideo.c libavcodec/h264.c libavcodec/mpeg4video_parser.c libavcodec/vorbis.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * parsers: initialize MpegEncContext.slice_context_count to 1Janne Grunau2012-01-06
| | | | | | | | | | | | | | | | | | The mpeg4 video, H264 and VC-1 parser hold (directly or indirectly) a MpegEncContext in their private context. Since they do not call the common mpegvideo init function slice_context_count has explicitly set to 1. Prevents a null pointer dereference in the h264 parser and fixes bug 193.
| * Revert "h264: skip start code search if the size of the nal unit is known"Janne Grunau2011-12-19
| | | | | | | | This reverts commit 87eebb3454ff0cd6af6ebf9e1d31bdfd1c3b601b.
| * h264: skip start code search if the size of the nal unit is knownJanne Grunau2011-12-18
| | | | | | | | | | | | | | | | Start code emulation prevention is only required in Annex B bytestream packed NAL units. For other coding formats the size is already known. Looking for a start code prefix can result in false positives like in http://streams.videolan.org/streams/mp4/Mr_MrsSmith-h264_aac.mp4 which has a false positive in the SPS.
* | h264: disable checking reader, overreads are not possibleMichael Niedermayer2011-12-18
| | | | | | | | | | | | in ffmpegs h264 decoder. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Silence warnings when decoding QNAP Systems H264 codec.Carl Eugen Hoyos2011-12-03
| | | | | | | | Fixes ticket #571.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-11-03
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (44 commits) replacement Indeo 3 decoder gsm demuxer: do not allocate packet twice. flvenc: use first packet delay as global delay. ac3enc: doxygen update. imc: return error codes instead of 0 for error conditions. imc: return meaningful error codes instead of -1 imc: do not set channel layout for stereo imc: validate channel count imc: check for ff_fft_init() failure imc: check output buffer size before decoding imc: use DSPContext.bswap16_buf() to byte-swap packet data rtsp: add allowed_media_types option libgsm: add flush function to reset the decoder state when seeking libgsm: simplify decoding by using a loop gsm: log error message when packet is too small libgsmdec: do not needlessly set *data_size to 0 gsmdec: do not needlessly set *data_size to 0 gsmdec: add flush function to reset the decoder state when seeking libgsmdec: check output buffer size before decoding gsmdec: log error message when output buffer is too small. ... Conflicts: Changelog ffplay.c libavcodec/indeo3.c libavcodec/mjpeg_parser.c libavcodec/vp3.c libavformat/cutils.c libavformat/id3v2.c libavutil/parseutils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: use designated initialisers for parsers.Anton Khirnov2011-11-02
| |
* | h264_parser: fully parse first_mb_in_slice to more reliably detect AU ↵Michael Niedermayer2011-10-27
| | | | | | | | | | | | boundaries. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: use long reading for first_mb_in_sliceMichael Niedermayer2011-10-27
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-10-21
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (47 commits) lavc: hide private symbols. lavc: deprecate img_get_alpha_info(). lavc: use avpriv_ prefix for ff_toupper4. lavc: use avpriv_ prefix for ff_copy_bits and align_put_bits. lavc: use avpriv_ prefix for ff_ac3_parse_header. lavc: use avpriv_ prefix for ff_frame_rate_tab. lavc: rename ff_find_start_code to avpriv_mpv_find_start_code lavc: use avpriv_ prefix for ff_split_xiph_headers. lavc: use avpriv_ prefix for ff_dirac_parse_sequence_header. lavc: use avpriv_ prefix for some dv symbols used in lavf. lavc: use avpriv_ prefix for some flac symbols used in lavf. lavc: use avpriv_ prefix for some mpeg4audio symbols used in lavf. lavc: use avpriv_ prefix for some mpegaudio symbols used in lavf. lavc: use avpriv_ prefix for ff_aac_parse_header(). lavf: hide private symbols. lavf: use avpriv_ prefix for some dv functions. lavf: use avpriv_ prefix for ff_new_chapter(). avcodec: add CODEC_CAP_DELAY note to avcodec_decode_audio3() documentation avcodec: clarify the CODEC_CAP_DELAY note in avcodec_decode_video2() avcodec: clarify documentation of CODEC_CAP_DELAY ... Conflicts: configure doc/general.texi libavcodec/Makefile libavcodec/aacdec.c libavcodec/allcodecs.c libavcodec/avcodec.h libavcodec/dv.c libavcodec/dvdata.c libavcodec/dvdata.h libavcodec/libspeexenc.c libavcodec/mpegvideo.c libavcodec/version.h libavformat/avidec.c libavformat/dv.c libavformat/dv.h libavformat/flvenc.c libavformat/mov.c libavformat/mp3enc.c libavformat/oggparsespeex.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: rename ff_find_start_code to avpriv_mpv_find_start_codeAnton Khirnov2011-10-20
| | | | | | | | It's used in lavf.
* | h264_parser: print AU size on error.Michael Niedermayer2011-10-03
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264_parser: AVC support.Michael Niedermayer2011-10-03
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: pass buffer & size to ff_h264_decode_extradata()Michael Niedermayer2011-09-23
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Fix parser not to clobber has_b_frames when extradata is set.Reimar Döffinger2011-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to it in contrast to the decoder not setting up low_delay, the code in parse_nal_units would always end up setting has_b_frames to 1 (except when stream is explicitly marked as low delay). Since the parser itself would create extradata, simply reopening the parser would cause this. estimate_timings_from_pts would cause the parser to be reopened on the same stream. This fixes trac issue #360. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-06-24
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: doxygen: Consistently use '@' instead of '\' for Doxygen markup. Use av_printf_format to check the usage of printf style functions Add av_printf_format, for marking printf style format strings and their parameters ARM: enable thumb for Cortex-M* CPUs nsvdec: Propagate error values instead of returning 0 in nsv_read_header(). build: remove SRC_PATH_BARE variable build: move basic rules and variables to main Makefile build: move special targets to end of main Makefile lavdev: improve feedback in case of invalid frame rate/size vfwcap: prefer "framerate_q" over "fps" in vfw_read_header() v4l2: prefer "framerate_q" over "fps" in v4l2_set_parameters() fbdev: prefer "framerate_q" over "fps" in device context bktr: prefer "framerate" over "fps" for grab_read_header() ALSA: implement channel layout for playback. alsa: support unsigned variants of already supported signed formats. alsa: add support for more formats. ARM: allow building in Thumb2 mode Conflicts: common.mak doc/APIchanges libavcodec/vdpau.h libavdevice/alsa-audio-common.c libavdevice/fbdev.c libavdevice/libdc1394.c libavutil/avutil.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * doxygen: Consistently use '@' instead of '\' for Doxygen markup.Diego Biurrun2011-06-24
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * h264_parser: Fix whitespace after previous change.Philip Langdale2011-06-13
| | | | | | | | | | Signed-off-by: Philip Langdale <philipl@overt.org> Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * h264_parser: Fix behaviour when PARSER_FLAG_COMPLETE_FRAMES is set.Philip Langdale2011-06-13
| | | | | | | | | | | | | | | | | | | | Currently, the parser is buggy and only processes the stream extradata when the flag is set. This fixes it to actually inspect the frames. Whitespce will be fixed in a separate change. Signed-off-by: Philip Langdale <philipl@overt.org> Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.Stefano Sabatini2011-05-02
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * h264: Add Intra and Constrained Baseline profiles to avctx.profileJanne Grunau2011-02-01
| |
| * Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.Diego Elio Pettenò2011-01-26
| | | | | | | | | | | | | | None of these symbols should be accessed directly, so declare them as hidden. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Make ff_h264_find_frame_end static to h264.c; delete h264_parser.hDiego Elio Pettenò2011-01-25
| | | | | | | | | | | | | | The header is empty after making the function static, so delete it and drop its usage. Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
* | replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*Stefano Sabatini2011-05-02
| |
* | h264_parser: Fix whitespace after previous change.Philip Langdale2011-04-04
| | | | | | | | | | | | 'git diff -w' confirmed to return nothing. Signed-off-by: Philip Langdale <philipl@overt.org>
* | h264_parser: Fix behaviour when PARSER_FLAG_COMPLETE_FRAMES is set.Philip Langdale2011-04-04
| | | | | | | | | | | | | | | | | | Currently, the parser is buggy and only processes the stream extradata when the flag is set. This fixes it to actually inspect the frames. Whitespce will be fixed in a separate change. Signed-off-by: Philip Langdale <philipl@overt.org>
* | h264: Add Intra and Constrained Baseline profiles to avctx.profileJanne Grunau2011-02-02
| | | | | | | | (cherry picked from commit fe9a3fbe42ebe5debd57550313ed4c3a065f1770)
* | Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.Diego Elio Pettenò2011-01-28
| | | | | | | | | | | | | | | | None of these symbols should be accessed directly, so declare them as hidden. Signed-off-by: Mans Rullgard <mans@mansr.com> (cherry picked from commit d36beb3f6902b1217beda576aa18abf7eb72b03c)
* | Make ff_h264_find_frame_end static to h264.c; delete h264_parser.hDiego Elio Pettenò2011-01-26
|/ | | | | | | | The header is empty after making the function static, so delete it and drop its usage. Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net> (cherry picked from commit 13eb6b90977768116c937c5d6b2e074679a3ad21)
* In h264 parser, return immediately if buf_size is 0, avoid printingBaptiste Coudurier2010-07-23
| | | | | | erroneous message for last frame. Originally committed as revision 24450 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Cleanup prev commit, flag variable should start with 0Howard Chu2010-05-28
| | | | Originally committed as revision 23364 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Parse avctx->extradata if available.Howard Chu2010-05-28
| | | | | | Fixes many "non-existing PPS referenced" error messages Originally committed as revision 23363 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add an AVSTREAM_PARSE_FULL_ONCE parsing mode to parse headers and combine ↵Alex Converse2010-05-26
| | | | | | packets once and only once. Originally committed as revision 23332 to svn://svn.ffmpeg.org/ffmpeg/trunk
* 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
* Export H264 profile and level in AVCodecContext.Rafaël Carré2010-01-28
| | | | | | Patch by Rafaël Carré, rafael D carre A gmail Originally committed as revision 21517 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Initialize thread_context[0] with h264 parser context.Rafaël Carré2010-01-28
| | | | | | | | This allows freeing the parser memory in the thread_context freeing loop. Patch by Rafaël Carré gmailify(rafael, carre) Originally committed as revision 21508 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Init state to -1 in h264 parser.Baptiste Coudurier2009-04-13
| | | | | | | | | | | | | Fix: ==22063== Conditional jump or move depends on uninitialised value(s) ==22063== at 0x811A4B7: ff_find_start_code (mpegvideo.c:99) ==22063== by 0x82F5B74: parse_nal_units (h264_parser.c:132) ==22063== by 0x82F5A68: h264_parse (h264_parser.c:261) [...] ==22063== Uninitialised value was created by a stack allocation ==22063== at 0x82F5AF5: parse_nal_units (h264_parser.c:112) Originally committed as revision 18479 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add a ff_h264_free_context function and call it from the H.264 parser.Reimar Döffinger2009-04-10
| | | | | | This ensures that the parser will no longer leak memory for all SPS/PPS it encounters. Originally committed as revision 18406 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix SEIs when splitting H264 input.John Cox2009-03-16
| | | | | | Patch by John Cox, jc A kynesim D co D uk Originally committed as revision 18020 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Cosmetics: Fix indentation after last commit.Carl Eugen Hoyos2009-02-26
| | | | Originally committed as revision 17621 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Initialize H264 parser context correctly if the optional SEI messagesIvan Schreter2009-02-26
| | | | | | | | are not present. Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17620 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Export timestamp parameter from H.264.Ivan Schreter2009-02-24
| | | | | | Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17575 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Correct time_base of H.264 and repeat_pict.Ivan Schreter2009-02-24
| | | | | | Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17571 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use context variable repeat_pict for frame duration computation andIvan Schreter2009-02-21
| | | | | | | | document this new use. Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17492 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Set context variable picture_structure in H264 parser.Ivan Schreter2009-02-21
| | | | | | Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17490 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Set context variable key_frame in H264 parser.Ivan Schreter2009-02-21
| | | | | | Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17489 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Parse NAL units in H264 parser.Ivan Schreter2009-02-21
| | | | | | Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17488 to svn://svn.ffmpeg.org/ffmpeg/trunk