lavc/hevc: rudimentary support for skip_loop_filter.
+~9% speed on Core i5 on test sample. All frames are treated as ref frames, skipping only applies at level "all". The following mail contains information on how to improve that: http://ffmpeg.org/pipermail/ffmpeg-devel/2015-July/176116.html
This commit is contained in:
parent
744051a57a
commit
52c75d486e
2 changed files with 9 additions and 1 deletions
|
@ -25,6 +25,13 @@ enabled decoders.
|
||||||
A description of some of the currently available video decoders
|
A description of some of the currently available video decoders
|
||||||
follows.
|
follows.
|
||||||
|
|
||||||
|
@section hevc
|
||||||
|
|
||||||
|
HEVC / H.265 decoder.
|
||||||
|
|
||||||
|
Note: the @option{skip_loop_filter} option has effect only at level
|
||||||
|
@code{all}.
|
||||||
|
|
||||||
@section rawvideo
|
@section rawvideo
|
||||||
|
|
||||||
Raw video decoder.
|
Raw video decoder.
|
||||||
|
|
|
@ -843,7 +843,8 @@ void ff_hevc_deblocking_boundary_strengths(HEVCContext *s, int x0, int y0,
|
||||||
void ff_hevc_hls_filter(HEVCContext *s, int x, int y, int ctb_size)
|
void ff_hevc_hls_filter(HEVCContext *s, int x, int y, int ctb_size)
|
||||||
{
|
{
|
||||||
int x_end = x >= s->ps.sps->width - ctb_size;
|
int x_end = x >= s->ps.sps->width - ctb_size;
|
||||||
deblocking_filter_CTB(s, x, y);
|
if (s->avctx->skip_loop_filter < AVDISCARD_ALL)
|
||||||
|
deblocking_filter_CTB(s, x, y);
|
||||||
if (s->ps.sps->sao_enabled) {
|
if (s->ps.sps->sao_enabled) {
|
||||||
int y_end = y >= s->ps.sps->height - ctb_size;
|
int y_end = y >= s->ps.sps->height - ctb_size;
|
||||||
if (y && x)
|
if (y && x)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue