summaryrefslogtreecommitdiff
path: root/libavcodec/hevc_ps.c
Commit message (Collapse)AuthorAge
* dxva2_hevc: properly signal the num_delta_pocs from the SPS RPSHendrik Leppkes2015-08-03
| | | | | | | | ucNumDeltaPocsOfRefRpsIdx needs to contain the flat value from the SPS RPS, and not the final computed value from the slice header RPS, as this calculation is done internally by the driver again. Sample-Id: http://trailers.divx.com/hevc/Sintel_4k_27qp_24fps_1aud_9subs.mkvi
* Merge commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615'Michael Niedermayer2015-07-27
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615': lavc: AV-prefix all codec flags Conflicts: doc/examples/muxing.c ffmpeg.c ffmpeg_opt.c ffplay.c libavcodec/aacdec.c libavcodec/aacenc.c libavcodec/ac3dec.c libavcodec/ac3enc_float.c libavcodec/atrac1.c libavcodec/atrac3.c libavcodec/atrac3plusdec.c libavcodec/dcadec.c libavcodec/ffv1enc.c libavcodec/h264.c libavcodec/h264_loopfilter.c libavcodec/h264_mb.c libavcodec/imc.c libavcodec/libmp3lame.c libavcodec/libtheoraenc.c libavcodec/libtwolame.c libavcodec/libvpxenc.c libavcodec/libxavs.c libavcodec/libxvid.c libavcodec/mpeg12dec.c libavcodec/mpeg12enc.c libavcodec/mpegaudiodec_template.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_motion.c libavcodec/nellymoserdec.c libavcodec/nellymoserenc.c libavcodec/nvenc.c libavcodec/on2avc.c libavcodec/options_table.h libavcodec/opus_celt.c libavcodec/pngenc.c libavcodec/ra288.c libavcodec/ratecontrol.c libavcodec/twinvq.c libavcodec/vc1_block.c libavcodec/vc1_loopfilter.c libavcodec/vc1_mc.c libavcodec/vc1dec.c libavcodec/vorbisdec.c libavcodec/vp3.c libavcodec/wma.c libavcodec/wmaprodec.c libavcodec/x86/hpeldsp_init.c libavcodec/x86/me_cmp_init.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * lavc: AV-prefix all codec flagsVittorio Giovara2015-07-27
| | | | | | | | | | | | Convert doxygen to multiline and express bitfields more simply. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | avcodec/hevc_ps: Also print depth in failure path of map_pixel_format()Michael Niedermayer2015-07-18
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit 'c88c5eef53ff1619724ba47b722da64ec0593dab'Michael Niedermayer2015-07-15
|\| | | | | | | | | | | | | | | | | | | * commit 'c88c5eef53ff1619724ba47b722da64ec0593dab': hevc: Split the struct setup from the pps parsing Conflicts: libavcodec/hevc_ps.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * hevc: Split the struct setup from the pps parsingLuca Barbato2015-07-15
| |
* | Merge commit '32c8d89c036b0e75ece74aea638df587099def0b'Michael Niedermayer2015-07-14
|\| | | | | | | | | | | | | | | | | | | * commit '32c8d89c036b0e75ece74aea638df587099def0b': hevc: Print the non-supported chroma_format_idc Conflicts: libavcodec/hevc_ps.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * hevc: Print the non-supported chroma_format_idcLuca Barbato2015-07-13
| | | | | | | | | | | | And drop the spurious newline. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '8e373fe048812a25b238ea60a7052b8c07639a42'Michael Niedermayer2015-07-14
|\| | | | | | | | | | | | | | | | | | | * commit '8e373fe048812a25b238ea60a7052b8c07639a42': hevc: Factor out the pixel format mapping from the sps parser Conflicts: libavcodec/hevc_ps.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * hevc: Factor out the pixel format mapping from the sps parserLuca Barbato2015-07-13
| | | | | | | | | | | | The function will grow larger as more formats are supported. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * hevc_ps: make sure failing to decode an SPS always returns an errorAnton Khirnov2015-07-13
| | | | | | | | | | Some of the goto err clauses do not set the error code. It seems better to fall back on INVALIDDATA instead of adding it everywhere explicitly.
* | Merge commit 'b11acd57326db6c2cc1475dd0bea2a06fbc85aa2'Michael Niedermayer2015-07-12
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'b11acd57326db6c2cc1475dd0bea2a06fbc85aa2': hevc: remove HEVCContext usage from hevc_ps Conflicts: libavcodec/hevc.c libavcodec/hevc_cabac.c libavcodec/hevc_filter.c libavcodec/hevc_mvs.c libavcodec/hevc_ps.c libavcodec/hevc_refs.c libavcodec/hevcpred_template.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * hevc: remove HEVCContext usage from hevc_psAnton Khirnov2015-07-12
| | | | | | | | | | | | Factor out the parameter sets into a separate struct and use it instead. This will allow us to reuse this code in the parser.
* | avcodec/hevc_ps: Remove gotos from ff_hevc_parse_sps()Michael Niedermayer2015-07-09
| | | | | | | | | | | | | | They are currently unnecessary Found-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Do not return success on failures in ff_hevc_parse_sps()Michael Niedermayer2015-07-09
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'fd124d8357b1becfde3ac8d5e3320127cf97a5b7'Michael Niedermayer2015-07-09
|\| | | | | | | | | | | | | | | | | | | | | * commit 'fd124d8357b1becfde3ac8d5e3320127cf97a5b7': hevc_ps: split the code for parsing the SPS and exporting it into the context Conflicts: libavcodec/hevc.c libavcodec/hevc_ps.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc_ps: split the code for parsing the SPS and exporting it into the contextAnton Khirnov2015-07-08
| | | | | | | | | | This will be useful in the later commits, where we want to parse an SPS without having a whole decoding context.
* | avcodec/hevc_ps: Only discard overread VPS if a previous is availableMichael Niedermayer2015-06-18
| | | | | | | | | | | | Fixes Ticket4621 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Move log2_ctb_size checks up to prevent undefined shift ↵Michael Niedermayer2015-05-13
| | | | | | | | | | | | | | | | operations Fixes CID1292293 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Explicitly check num_tile_* for negative valuesMichael Niedermayer2015-05-13
| | | | | | | | | | | | This fixes nothing but maybe helps coverity which does not see that this is failing later Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Check vps_num_hrd_parametersMichael Niedermayer2015-05-13
| | | | | | | | | | | | Fix CID1239052 part2 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: More completely check vps_num_layer_setsMichael Niedermayer2015-05-13
| | | | | | | | | | | | Fixes CID1239052 part1 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc: Remove current_spsMichael Niedermayer2015-04-28
| | | | | | | | | | | | The variable should not be needed anymore Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec: use av_mod_uintp2() where usefulJames Almer2015-04-21
| | | | | | | | | | Reviewed-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: James Almer <jamrial@gmail.com>
* | Merge commit 'df528b11ac607de13a7c438f2a51f2119f71a03c'Michael Niedermayer2015-04-03
|\| | | | | | | | | | | | | | | | | | | * commit 'df528b11ac607de13a7c438f2a51f2119f71a03c': hevc: make sure no dangling pointers remain around on VPS/SPS change Conflicts: libavcodec/hevc_ps.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: make sure no dangling pointers remain around on VPS/SPS changeAnton Khirnov2015-04-03
| |
* | Merge commit 'ce0bc09ee2580d49fec90a6eb0de2ba1b580c854'Michael Niedermayer2015-04-03
|\| | | | | | | | | | | | | | | | | | | * commit 'ce0bc09ee2580d49fec90a6eb0de2ba1b580c854': hevc: do not change the VPS if its contents are the same Conflicts: libavcodec/hevc_ps.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: do not change the VPS if its contents are the sameAnton Khirnov2015-04-03
| | | | | | | | This is the same as is done for SPS.
| * hevc: zero the correct variables on invalid crop parametersAnton Khirnov2015-03-21
| | | | | | | | | | It's the output_window that is applied to the output frame, not pic_conf_win
| * hevc_ps: remove a write-only variableAnton Khirnov2014-07-11
| |
| * hevc: remove unused array min_cb_addr_zsGildas Cocherel2014-06-26
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | avcodec/hevc_ps: Check cropping parameters more correctlyMichael Niedermayer2015-03-21
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Check that log2_ctb_size is not smaller than the bounds of ↵Michael Niedermayer2015-02-25
| | | | | | | | | | | | | | | | | | | | | | all profiles Fixes: unaligned memory access Fixes: signal_sigsegv_3344165_576_cov_3406448105_DBLK_A_MAIN10_VIXS_2.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Suggested-by: Christophe Gisquet <christophe.gisquet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Sanity checks for some log2_* valuesMichael Niedermayer2015-02-25
| | | | | | | | | | | | log2 values which imply numeric overflow are not supported Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc: adding support for monochrome sequences in hevcMickaël Raulet2015-02-02
| | | | | | | | | | | | cherry picked from commit 8e50557707d2ec11ccad657470b2e140f314348e Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Check diff_cu_qp_delta_depthMichael Niedermayer2014-12-18
| | | | | | | | | | | | | | Fixes undefined behavior Fixes: asan_static-oob_17aa046_582_cov_1577759978_DBLK_G_VIXS_1.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Add context to av_log() callMichael Niedermayer2014-12-06
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Check num_long_term_ref_pics_spsMichael Niedermayer2014-11-28
| | | | | | | | | | | | | | Fixes out of array access Fixes: signal_sigsegv_35bd0f0_1182_cov_791726764_STRUCT_B_Samsung_4.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: More complete window resetMichael Niedermayer2014-11-27
| | | | | | | | | | | | | | Fixes out of array read Fixes: signal_sigsegv_35bcf26_471_cov_2806540268_CAINIT_A_SHARP_4.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Check return code from pps_range_extensions()Michael Niedermayer2014-11-27
| | | | | | | | | | | | | | Fixes out of array read Fixes: asan_heap-oob_177e222_885_cov_1532528832_MERGE_D_TI_3.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Check default display window bitstream and skip if invalidMichael Niedermayer2014-10-27
| | | | | | | | | | | | Fixes Ticket4035 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Always initialize backup in decode_vui()Michael Niedermayer2014-09-06
| | | | | | | | | | | | | | Fixes CID1237283 Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: fix 1 vs. 0 typoMichael Niedermayer2014-08-22
| | | | | | | | | | Found-by: Timothy Gu <timothygu99@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc_ps: check overflow and test alternate syntaxChristophe Gisquet2014-08-21
| | | | | | | | | | | | | | | | | | | | | | Some streams were found to have what appeared to be truncated SPS. Their syntax seem to be valid at least until the end of the VUI, so try that syntax if the parsing would overflow the SPS in the conforming syntax. Fixes ticket #3872. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: do cleanup in case of unsupported bit depthMichael Niedermayer2014-08-20
| | | | | | | | | | | | | | | | | | Fixes memleak Fixes CID1231989 Reviewed-by: Timothy Gu <timothygu99@gmail.com> Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: do generic validation of bitstreamChristophe Gisquet2014-08-11
| | | | | | | | | | | | | | | | After finishing parsing VPS/SPS/PPS/slice header, check remaining bits, and if an overconsumption occurred, report invalid data. Liked-by: BBB Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc_ps: verify P/T/L informationChristophe Gisquet2014-08-10
| | | | | | | | | | | | | | This makes the SPS parsing a little, but barely, safer. Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/rext: remove warning for cross component predictionMickaël Raulet2014-07-22
| | | | | | | | | | | | cherry picked from commit fb595102593c94179502bb1967f978a1d99cc7cb Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/rext: fixing rdpcm and scaling list for Range ExtensionMickaël Raulet2014-07-22
| | | | | | | | | | | | | | | | | | | | | | -new rext bitstreams: PERSIST_RPARAM_A_RExt_Sony_1.bit ok = QMATRIX_A_RExt_Sony_1.bit ok = SAO_A_RExt_MediaTek_1.bit ok = (cherry picked from commit cdea029d452c521f8e5bcbe589f44b13a4011604) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: Check abs_delta_rpsMichael Niedermayer2014-07-19
| | | | | | | | | | | | Fixes integer overflow Signed-off-by: Michael Niedermayer <michaelni@gmx.at>