aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhwrenx <hwrenx@126.com>2018-12-03 14:37:05 +0800
committerSteven Liu <lq@chinaffmpeg.org>2018-12-03 14:37:05 +0800
commit701cbbb58c76dbaa5c4e346e575cc3021d78fb02 (patch)
treea364b62919fc9cb9e7fec10fab036ebb494f3c7f
parent4bbb6d1ae9e6ae839c2cc1f8a7bb1afc2b1be984 (diff)
downloadffmpeg-701cbbb58c76dbaa5c4e346e575cc3021d78fb02.tar.gz
libdavs2: update api version and enable avx option
Signed-off-by: hwrenx <hwrenx@126.com>
-rwxr-xr-xconfigure2
-rw-r--r--libavcodec/libdavs2.c3
2 files changed, 4 insertions, 1 deletions
diff --git a/configure b/configure
index 1870b4d189..330e55049f 100755
--- a/configure
+++ b/configure
@@ -6082,7 +6082,7 @@ enabled libcelt && require libcelt celt/celt.h celt_decode -lcelt0 &&
enabled libcaca && require_pkg_config libcaca caca caca.h caca_create_canvas
enabled libcodec2 && require libcodec2 codec2/codec2.h codec2_create -lcodec2
enabled libdav1d && require_pkg_config libdav1d "dav1d >= 0.0.1" "dav1d/dav1d.h" dav1d_version
-enabled libdavs2 && require_pkg_config libdavs2 "davs2 >= 1.5.115" davs2.h davs2_decoder_open
+enabled libdavs2 && require_pkg_config libdavs2 "davs2 >= 1.6.0" davs2.h davs2_decoder_open
enabled libdc1394 && require_pkg_config libdc1394 libdc1394-2 dc1394/dc1394.h dc1394_new
enabled libdrm && require_pkg_config libdrm libdrm xf86drm.h drmGetVersion
enabled libfdk_aac && { check_pkg_config libfdk_aac fdk-aac "fdk-aac/aacenc_lib.h" aacEncOpen ||
diff --git a/libavcodec/libdavs2.c b/libavcodec/libdavs2.c
index 3da1498208..7fdafdab81 100644
--- a/libavcodec/libdavs2.c
+++ b/libavcodec/libdavs2.c
@@ -40,11 +40,14 @@ typedef struct DAVS2Context {
static av_cold int davs2_init(AVCodecContext *avctx)
{
DAVS2Context *cad = avctx->priv_data;
+ int cpu_flags = av_get_cpu_flags();
/* init the decoder */
cad->param.threads = avctx->thread_count;
cad->param.info_level = 0;
cad->decoder = davs2_decoder_open(&cad->param);
+ cad->param.disable_avx = !(cpu_flags & AV_CPU_FLAG_AVX &&
+ cpu_flags & AV_CPU_FLAG_AVX2);
if (!cad->decoder) {
av_log(avctx, AV_LOG_ERROR, "decoder created error.");