summaryrefslogtreecommitdiff
path: root/libavcodec/hevc_mvs.c
Commit message (Collapse)AuthorAge
* 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.
| * hevc: Use generic av_clip function, not C implementationPeter Meerwald2015-02-13
| | | | | | | | | | | | | | | | | | hevc seems to be the only place where the C implementation of the av_clip function is explicitly selected, precluding platform-specific optimizations Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | 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>
* | avcodec/hevc_mvs: Use av_clip_intp2()Michael Niedermayer2015-02-21
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '9e9be5a20c0b36dce1cae11f5f5957886231a764'Michael Niedermayer2014-11-11
|\| | | | | | | | | | | | | * commit '9e9be5a20c0b36dce1cae11f5f5957886231a764': hevc_mvs: prevent unitialized use Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc_mvs: prevent unitialized useVittorio Giovara2014-11-11
| | | | | | | | | | CC: libav-stable@libav.org Bug-Id: CID 1244202
* | Merge commit 'd208d1eba3799c58fd6d3602d31de3e686f14aec'Michael Niedermayer2014-10-07
|\| | | | | | | | | | | | | | | | | | | * commit 'd208d1eba3799c58fd6d3602d31de3e686f14aec': hevc_mvs: make sure to always initialize the temporal MV fully Conflicts: libavcodec/hevc_mvs.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc_mvs: make sure to always initialize the temporal MV fullyAnton Khirnov2014-10-07
| | | | | | | | | | | | | | | | The spec requires this. Fixes uninitialized reads on some samples. Remove now unnecessary initialization of the whole merge candidate list.
* | Merge commit '79a60c8e779242b5ba4c531b2c706c871e8e6420'Michael Niedermayer2014-10-07
|\| | | | | | | | | | | | | * commit '79a60c8e779242b5ba4c531b2c706c871e8e6420': hevc_mvs: initialize the temporal MV in case of missing ref Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc_mvs: initialize the temporal MV in case of missing refAnton Khirnov2014-10-07
| | | | | | | | The caller expects the MV to always be initialized.
* | Merge commit 'e3a00acde05c925617dc19b5373969d864bf8414'Michael Niedermayer2014-09-29
|\| | | | | | | | | | | | | * commit 'e3a00acde05c925617dc19b5373969d864bf8414': hevc: Initialize mergecand_list to 0 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: Initialize mergecand_list to 0Luca Barbato2014-09-29
| | | | | | | | | | | | | | Unbreak cf6090dc6252f2b276aa4133e3d73a89f4c6046c. CC: libav-stable@libav.org Sample-Id: hevc-conformance-LTRPSPS_A_Qualcomm_1
| * hevc_mvs: avoid deriving tmvp in amvpChristophe Gisquet2014-08-12
| | | | | | | | | | | | | | | | Reduces the number of calls to tmvp derivation from 933685 to 586271 on a sequence. Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr> Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * hevc: wait proper position for tmvpChristophe Gisquet2014-08-12
| | | | | | | | | | | | | | | | | | The position is either rounded or not checked, so delay the wait to check the proper value. Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | avcodec/hevc_mvs: dont redundantly initialize ref_idx_currMichael Niedermayer2014-08-16
| | | | | | | | | | Reviewed-by: James Darnley <james.darnley@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'cf6090dc6252f2b276aa4133e3d73a89f4c6046c'Michael Niedermayer2014-08-12
|\| | | | | | | | | | | | | | | | | | | | | * commit 'cf6090dc6252f2b276aa4133e3d73a89f4c6046c': hevc: use intreadwrite Conflicts: libavcodec/hevc_mvs.c See: 7a4a5515b0ce97f1c4e18ed012cc3f86328dd220 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: use intreadwriteChristophe Gisquet2014-08-12
| | | | | | | | | | | | When dealing with MVs, both components may be processed at a time. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Merge commit 'ed53cc217f6a6e4ddb35e3f01a79496091dc82dc'Michael Niedermayer2014-08-12
|\| | | | | | | | | | | | | | | | | | | | | * commit 'ed53cc217f6a6e4ddb35e3f01a79496091dc82dc': hevc: derive partial merge list Conflicts: libavcodec/hevc_mvs.c See: 4576eff05d94a5e0b853a7a595d31351cc539e7b Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: derive partial merge listChristophe Gisquet2014-08-12
| | | | | | | | | | | | The merge list only needs to be derived up to the merge index. Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * hevc: derive partially amvp listChristophe Gisquet2014-08-12
| | | | | | | | | | | | When the candidate has been found, no need to derive others. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Merge commit '09182b3224370e1d636631e77f201a8388766bd6'Michael Niedermayer2014-08-12
|\| | | | | | | | | | | | | | | | | | | | | * commit '09182b3224370e1d636631e77f201a8388766bd6': hevc: simplify rounding Conflicts: libavcodec/hevc_mvs.c See: 2e471e4703ed5aaab6d6b6bf5a3c6895b79f02b4 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: simplify roundingChristophe Gisquet2014-08-12
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | hevc_mvs: set candidate availabilitiesChristophe Gisquet2014-08-10
| | | | | | | | | | | | | | | | | | | | | | They might be left uninitialized otherwise since 3ad04608. Fixes ticket #3840. Found-by: Carl Eugen Hoyos <ce@hoyos.ws> Reported-by: Piotr Bandurski <ami_stuff@o2.pl> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc_mvs: avoid deriving tmvp in amvpChristophe Gisquet2014-07-23
| | | | | | | | | | | | | | Reduces on a sequence number of calls from 933685 to 586271. Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: wait proper position for tmvpChristophe Gisquet2014-07-22
| | | | | | | | | | | | | | | | The position is either rounded or not checked, so delay the wait to check the proper value. Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/mvs: cosmeticsMickaël Raulet2014-07-22
| | | | | | | | | | | | cherry picked from commit 9053cd92700e939cde49ab0ea3c6917be453cab7 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/mvs: more cleanupsMickaël Raulet2014-07-22
| | | | | | | | | | | | cherry picked from commit c4e467e79f59453783c97bc6044082edb7a6468b Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/mvs: code cleaningMickaël Raulet2014-07-22
| | | | | | | | | | | | cherry picked from commit 74f10da013ea71a3f6b77cdff989c4574c8a5ea2 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/mvs: simplifying derive_spatial_merge_candidates functionMickaël Raulet2014-07-22
| | | | | | | | | | | | cherry picked from commit 99be11cf08a5628d0bb6ac7f4958bf9dd35cda62 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/mvs: remove same prediction blockMickaël Raulet2014-07-22
| | | | | | | | | | | | cherry picked from commit 1206262ba1ef810328cadce99d5cdc0bf9285e4d Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/mvs: simplify derive_temporal_colocated_mvsMickaël Raulet2014-07-22
| | | | | | | | | | | | cherry picked from commit def7db60966765f4687250d766b40dbcf0f7e503 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: use intreadwriteChristophe Gisquet2014-07-19
| | | | | | | | | | | | | | | | When dealing with MVs, both components may be processed at a time. On Win64, 560 to 539 cycles for derive_spatial_merge_candidates. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: derive partial merge listChristophe Gisquet2014-07-10
| | | | | | | | | | | | The merge list only needs to be derived up to the merge index. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: derive partially amvp listChristophe Gisquet2014-07-10
| | | | | | | | | | | | When the candidate has been found, no need to derive others. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: simplify roundingChristophe Gisquet2014-07-10
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc/pps: optimized size of min_tb_addr_zsgcocherel2014-06-24
| | | | | | | | | | | | | | reduce computation too (cherry picked from commit 39c4d45c7788081c45c7fae51b7c5d0bcbaece9d) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: C code update for new motion compensationMickaël Raulet2014-05-06
| | | | | | | | | | | | | | pretty print C Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2014-02-10
|\| | | | | | | | | | | | | * qatar/master: hevc: Conceal zero td Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hevc: Conceal zero tdLuca Barbato2014-02-09
| | | | | | | | | | | | | | | | | | It was done only in check_mvset(), while mv_scale() is called also by dist_scale(). Sample-Id: 00001579-google Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
| * 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>
* libavcodec/hevc: random cosmetics to reduce diff to ↵Michael Niedermayer2013-11-02
| | | | | | 064698d381e1e7790f21b0199a8930ea04e2e942 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* libavcodec/hevc: indention related cosmetics to reduce diff 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: better mt implementationAnton Khirnov2013-10-27
| | | | | | Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr> (cherry picked from commit 93afb8c519deca85b3c97804927de5b016dd32d1) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* hevc: clean up mvs(cherry picked from commit ↵Mickaël Raulet2013-10-27
| | | | | | | | 955317c09b877a513d3fcfcd1615909b2f4f651c) Decreases the difference to Anton Khirnovs patch v5 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* hevc : cosmetic changes(cherry picked from commit ↵Mickaël Raulet2013-10-27
| | | | | | | | 7308c0ccf13f18cebe4851e6dcd6b5c0b09be1dd) Decreases the difference to Anton Khirnovs patch v5 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>
* valgrind cleanup(cherry picked from commit ↵gcocherel2013-10-16
| | | | | | 0d5efa40b94c0de92a1fe5091b21e0e2d36bae3d) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>