summaryrefslogtreecommitdiff
path: root/libavcodec/hevc_sei.c
Commit message (Collapse)AuthorAge
* lavc/hevc Parse SEI_TYPE_MASTERING_DISPLAY_INFO and propagate content into ↵Neil Birkbeck2016-02-14
| | | | | | | | | | | | the AVMasteringDisplayMetadata side data. Add support for parsing SEI_TYPE_MASTERING_DISPLAY_INFO and propagate contents into the AVMasteringDisplayMetadata side data. Primaries are ordered in RGB order and the values are converted to rationals ([0,1] for CEI 1931 Chroma coords, and cd/m^2 for luma). Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec: Use get_ue_golomb_long() when neededMark Harris2015-12-29
| | | | | | | | | | | | | | | | | | | | | | | | | get_ue_golomb() cannot decode values larger than 8190 (the maximum value that can be golomb encoded in 25 bits) and produces the error "Invalid UE golomb code" if a larger value is encountered. Use get_ue_golomb_long() instead (which supports 63 bits, up to 4294967294) when valid h264/hevc values can exceed 8190. This updates decoding of the following values: (maximum) first_mb_in_slice 36863* for level 5.2 abs_diff_pic_num_minus1 131071 difference_of_pic_nums_minus1 131071 idr_pic_id 65535 recovery_frame_cnt 65535 frame_packing_arrangement_id 4294967294 frame_packing_arrangement_repetition_period 16384 display_orientation_repetition_period 16384 An alternative would be to modify get_ue_golomb() to handle encoded values of up to 49 bits as was done for get_se_golomb() in a92816c. In that case get_ue_golomb() could continue to be used for all of these except frame_packing_arrangement_id. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* hevc: Fix a53 caption extractionWill Kelleher2015-11-12
| | | | | | | | | | | Just realized my previous patch doesn't work quite right. I uploaded a better sample file that actually has visible captions to /incoming/hevc_cc.ts. I tested with that file doing hevc->x264 and it works. This is basically an exact copy of the existing h264 logic. Signed-off-by: Will Kelleher <wkelleher@gogoair.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* hevc: extract SEI caption dataWill Kelleher2015-11-07
| | | | | Signed-off-by: Will Kelleher <wkelleher@gogoair.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Merge commit '979cb55103fa8e8274806e496901203742c686d1'Hendrik Leppkes2015-08-02
|\ | | | | | | | | | | | | | | | | | | * commit '979cb55103fa8e8274806e496901203742c686d1': hevc: Split the sei parsing in 3 functions Conflicts: libavcodec/hevc_sei.c Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * hevc: Split the sei parsing in 3 functionsLuca Barbato2015-08-01
| |
* | Merge commit '043f46f5741e1a5caedf55d788e1a72aae3b7605'Hendrik Leppkes2015-08-02
|\| | | | | | | | | | | | | | | | | | | * commit '043f46f5741e1a5caedf55d788e1a72aae3b7605': hevc: Use switch instead of if-nests in decode_nal_sei_message Conflicts: libavcodec/hevc_sei.c Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * hevc: Use switch instead of if-nests in decode_nal_sei_messageLuca Barbato2015-08-01
| | | | | | | | | | | | Makes simpler to add support for more SEI types. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '2cd841c0776535be56e4db67485fdd9509c9b9f4'Hendrik Leppkes2015-08-02
|\| | | | | | | | | | | | | | | | | | | * commit '2cd841c0776535be56e4db67485fdd9509c9b9f4': hevc: Use a proper enum for the SEI values Conflicts: libavcodec/hevc_sei.c Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * hevc: Use a proper enum for the SEI valuesLuca Barbato2015-08-01
| | | | | | | | | | | | And use the correct value for decoded_picture_hash. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | 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>
* | avcodec/hevc_sei: Check num_sps_ids_minus1 valueMichael Niedermayer2015-05-13
| | | | | | | | | | | | Fixes CID1271794 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_sei: factor return 1 out of if/else chainMichael Niedermayer2014-07-10
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '0569a7e0bd2006d9a5248d17a1f4bf3ca654ae50'Michael Niedermayer2014-07-10
|\| | | | | | | | | | | | | | | | | | | | | * commit '0569a7e0bd2006d9a5248d17a1f4bf3ca654ae50': hevc: parse display orientation SEI message Conflicts: libavcodec/hevc.h libavcodec/hevc_sei.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: parse display orientation SEI messageVittorio Giovara2014-07-09
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | avcodec/hevc_sei: fix invalid get_bits() in a commentMichael Niedermayer2014-06-07
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '3a149e23d37f06d49ab0bb013a3b9cb0224bba5c'Michael Niedermayer2013-12-17
|\| | | | | | | | | | | | | | | | | | | * commit '3a149e23d37f06d49ab0bb013a3b9cb0224bba5c': hevc: Refactor decode_nal_sei_frame_packing_arrangement Conflicts: libavcodec/hevc_sei.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: Refactor decode_nal_sei_frame_packing_arrangementLuca Barbato2013-12-17
| | | | | | | | | | | | Directly set the fields when necessary. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | avcodec/hevc_sei: fix use of uninitialized variables in ↵Michael Niedermayer2013-12-13
| | | | | | | | | | | | | | decode_nal_sei_frame_packing_arrangement() Fixes CID1135773/1135774/1135775 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: avoid some unnecessary differences with libavGuillaume Martres2013-12-10
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-12-09
|\| | | | | | | | | | | | | | | | | | | | | * qatar/master: hevc: parse frame packing arrangement SEI messages and save relevant stereo3d information Conflicts: libavcodec/hevc.h libavcodec/hevc_sei.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: parse frame packing arrangement SEI messages and save relevant ↵Vittorio Giovara2013-12-09
| | | | | | | | stereo3d information
* | Merge commit 'c673fc919c374c60b1e6d80d8822712eadf67f16'Michael Niedermayer2013-11-19
|\| | | | | | | | | | | | | | | | | | | * commit 'c673fc919c374c60b1e6d80d8822712eadf67f16': hevc_sei: drop unused parameter Conflicts: libavcodec/hevc_sei.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc_sei: drop unused parameterVittorio Giovara2013-11-19
| |
| * Add HEVC decoderGuillaume Martres2013-10-31
| | | | | | | | | | | | | | | | | | | | | | Initially written by Guillaume Martres <smarter@ubuntu.com> as a GSoC project. Further contributions by the OpenHEVC project and other developers, namely: Mickaël Raulet <mraulet@insa-rennes.fr> Seppo Tomperi <seppo.tomperi@vtt.fi> Gildas Cocherel <gildas.cocherel@laposte.net> Khaled Jerbi <khaled_jerbi@yahoo.fr> Wassim Hamidouche <wassim.hamidouche@insa-rennes.fr> Vittorio Giovara <vittorio.giovara@gmail.com> Jan Ekström <jeebjp@gmail.com> Anton Khirnov <anton@khirnov.net> Martin Storsjö <martin@martin.st> Luca Barbato <lu_zero@gentoo.org> Yusuke Nakamura <muken.the.vfrmaniac@gmail.com> Reimar Döffinger <Reimar.Doeffinger@gmx.de> Diego Biurrun <diego@biurrun.de> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avcodec/hevc_sei: Fix null dereference in decode_pic_timing()Michael Niedermayer2013-11-03
| | | | | | Fixes Ticket3106 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/hevc_sei: check active_seq_parameter_set_id validityMichael Niedermayer2013-11-03
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* libavcodec/hevc: random cosmetics to reduce diff to ↵Michael Niedermayer2013-11-02
| | | | | | 064698d381e1e7790f21b0199a8930ea04e2e942 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* libavcodec/hevc: random cosmetics to reduce diff to ↵Michael Niedermayer2013-11-02
| | | | | | 064698d381e1e7790f21b0199a8930ea04e2e942 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* libavcodec/hevc: reduce whitespace differences to ↵Michael Niedermayer2013-11-02
| | | | | | 064698d381e1e7790f21b0199a8930ea04e2e942 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* libavcodec/hevc: reduce bracket differences to ↵Michael Niedermayer2013-11-02
| | | | | | 064698d381e1e7790f21b0199a8930ea04e2e942 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/hevc: Adjust white-spaces to reduce difference to ↵Michael Niedermayer2013-11-02
| | | | | | 064698d381e1e7790f21b0199a8930ea04e2e942 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* hevc: add partial support for interlaced(cherry picked from commit ↵Mickaël Raulet2013-10-31
| | | | | | 44b592ae6d323445c076ef3ec966ebf9daa8bccf) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* hevc: add wavefront parallel processingMickaël Raulet2013-10-22
| | | | | | | cherry picked from commit b971f2c8fdc60f8bab605a6e8060492eb548a53a cherry picked from commit e57b0a2c915ce6b8a9d57b8292f6581f0680842e Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavc: add a HEVC decoder.Guillaume Martres2013-10-15
Initially written by Guillaume Martres <smarter@ubuntu.com> as a GSoC project. Further contributions by the OpenHEVC project and other developers, namely: Mickaël Raulet <mraulet@insa-rennes.fr> Seppo Tomperi <seppo.tomperi@vtt.fi> Gildas Cocherel <gildas.cocherel@laposte.net> Khaled Jerbi <khaled_jerbi@yahoo.fr> Wassim Hamidouche <wassim.hamidouche@insa-rennes.fr> Vittorio Giovara <vittorio.giovara@gmail.com> Jan Ekström <jeebjp@gmail.com> Anton Khirnov <anton@khirnov.net> Martin Storsjö <martin@martin.st> Luca Barbato <lu_zero@gentoo.org> Yusuke Nakamura <muken.the.vfrmaniac@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>