mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-18 05:16:05 +00:00
vp8dec: Add support for the MFQE postprocessing flag
Which is enabled by default if postprocessing is enabled.
This commit is contained in:
parent
a9f46ed059
commit
14317a3408
2 changed files with 23 additions and 1 deletions
13
configure.ac
13
configure.ac
|
@ -1790,6 +1790,19 @@ return 0;
|
|||
AC_CHECK_LIB(vpx, vpx_codec_vp8_dx_algo, [
|
||||
HAVE_VP8=yes
|
||||
AC_DEFINE(HAVE_VP8_DECODER, 1, [Defined if the VP8 decoder is available])
|
||||
AC_MSG_CHECKING([for VP8_MFQE presence])
|
||||
AC_TRY_COMPILE([
|
||||
#include <vpx/vpx_decoder.h>
|
||||
#include <vpx/vp8dx.h>
|
||||
int foo=VP8_MFQE;
|
||||
], [
|
||||
return 0;
|
||||
], [
|
||||
AC_DEFINE(HAVE_VP8_MFQE, 1, [Defined if the VP8 decoder has MFQE support])
|
||||
AC_MSG_RESULT(yes)
|
||||
], [
|
||||
AC_MSG_RESULT(no)
|
||||
])
|
||||
])
|
||||
LIBS="$OLD_LIBS"
|
||||
fi
|
||||
|
|
|
@ -54,8 +54,12 @@
|
|||
GST_DEBUG_CATEGORY_STATIC (gst_vp8dec_debug);
|
||||
#define GST_CAT_DEFAULT gst_vp8dec_debug
|
||||
|
||||
#ifndef HAVE_VP8_MFQE
|
||||
#define VP8_MFQE (1<<10)
|
||||
#endif
|
||||
|
||||
#define DEFAULT_POST_PROCESSING FALSE
|
||||
#define DEFAULT_POST_PROCESSING_FLAGS (VP8_DEBLOCK | VP8_DEMACROBLOCK)
|
||||
#define DEFAULT_POST_PROCESSING_FLAGS (VP8_DEBLOCK | VP8_DEMACROBLOCK | VP8_MFQE)
|
||||
#define DEFAULT_DEBLOCKING_LEVEL 4
|
||||
#define DEFAULT_NOISE_LEVEL 0
|
||||
|
||||
|
@ -77,6 +81,7 @@ gst_vp8_dec_post_processing_flags_get_type (void)
|
|||
{C_FLAGS (VP8_DEBLOCK), "Deblock", "deblock"},
|
||||
{C_FLAGS (VP8_DEMACROBLOCK), "Demacroblock", "demacroblock"},
|
||||
{C_FLAGS (VP8_ADDNOISE), "Add noise", "addnoise"},
|
||||
{C_FLAGS (VP8_MFQE), "Multi-frame quality enhancement", "mfqe"},
|
||||
{0, NULL, NULL}
|
||||
};
|
||||
static volatile GType id = 0;
|
||||
|
@ -420,7 +425,11 @@ open_codec (GstVP8Dec * dec, GstVideoCodecFrame * frame)
|
|||
if ((caps & VPX_CODEC_CAP_POSTPROC) && dec->post_processing) {
|
||||
vp8_postproc_cfg_t pp_cfg = { 0, };
|
||||
|
||||
#ifndef HAVE_VP8_MFQE
|
||||
pp_cfg.post_proc_flag = (dec->post_processing_flags & (~VP8_MFQE));
|
||||
#else
|
||||
pp_cfg.post_proc_flag = dec->post_processing_flags;
|
||||
#endif
|
||||
pp_cfg.deblocking_level = dec->deblocking_level;
|
||||
pp_cfg.noise_level = dec->noise_level;
|
||||
|
||||
|
|
Loading…
Reference in a new issue