From patchwork Wed Jun 21 22:43:20 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Reino Wijnsma X-Patchwork-Id: 4073 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.22.4 with SMTP id 4csp2106277vsw; Wed, 21 Jun 2017 15:43:39 -0700 (PDT) X-Received: by 10.28.10.78 with SMTP id 75mr80360wmk.66.1498085019532; Wed, 21 Jun 2017 15:43:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1498085019; cv=none; d=google.com; s=arc-20160816; b=DDMtzHZieCHJ2/rult+gBUrqAp53JaXqjzmiz06Eq2EyIe/gLABrCxAeTHXXneyYkc lmNHSAGeV8wiwGM99xCeKA9MFaELtC69xO+qvom8j9j5jOtZSJI5jzyFM11n8i9Tm8G4 IJ+6o212Q9rM5nt9ZCHimzEd5XOM13Vmh5DYbZwhtp2RSTU2ULmY2uikV4+tRQ9NxJ7a 2rlXseJzqysfKFnjaFoplp8jDjNJGN1uKs4ceFfvIVoDS5P7hdq5lMZwqWo3BcjsLPhE K4mF11RJn2ZPAxSL8Rf7EX2hzfNxHPwRiQEb0n82ba72nvjdlrWcQT3y/J8sit4WcGtx aqYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:reply-to:list-subscribe:list-help:list-post :list-archive:list-unsubscribe:list-id:precedence:subject :in-reply-to:mime-version:user-agent:date:message-id:from:references :to:delivered-to:arc-authentication-results; bh=nZh3o45iJ05sJyG9SAaF4tMA8fTvBkbnPmqy10Gy9vE=; b=FqclRP6S4gxOa0lLQK4bPuqLD/2gyjDx8X1hF4OGGxvAvLB8yC9RbKNqQqie5iF8Ow bjM+fNtIDIH2MliPOFrLEoEj5S7GLi3jYT59xD0YCgaRYI7BVpegXz9wqj1z6AIAmKXH yAsPK+QTUyOhaadVIyBgR9CCiO+uzcnc0NAXx6Wn/wzs2aRuAvBkvl+2UcLJNIX0alcJ iMurRE12+IaJRgMT+aittY68wJALmJkYsZWN9Ot6jOwNP+wWRSzEkizuaUOfQElvG8ct 2S3oxb1GwiGKhXNeK66Tr7rERiyw8pPplpihv+rlpmkGVhHYp0XrAY0AaLfwIFrx0rDl gVDg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id e14si11485099wra.236.2017.06.21.15.43.31; Wed, 21 Jun 2017 15:43:39 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 77D5568A040; Thu, 22 Jun 2017 01:43:29 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from lb3-smtp-cloud3.xs4all.net (lb3-smtp-cloud3.xs4all.net [194.109.24.30]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C9026689FB4 for ; Thu, 22 Jun 2017 01:43:22 +0300 (EEST) Received: from [IPv6:2001:980:2408:1:ccd4:e604:7c61:d3da] ([IPv6:2001:980:2408:1:ccd4:e604:7c61:d3da]) by smtp-cloud3.xs4all.net with ESMTP id bajJ1v00S0Ec9tJ01ajMUl; Thu, 22 Jun 2017 00:43:21 +0200 To: FFmpeg development discussions and patches References: <20170612224041.6750-1-sw@jkqxz.net> <141fdd03-c2c9-172f-44d7-2f2e7d07d970@gmail.com> <5940672B.3050307@xs4all.nl> From: Reino Wijnsma Message-ID: <594AF688.4090009@xs4all.nl> Date: Thu, 22 Jun 2017 00:43:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 MIME-Version: 1.0 In-Reply-To: X-Content-Filtered-By: Mailman/MimeDel 2.1.20 Subject: Re: [FFmpeg-devel] configure/libopenjpegdec.c/libopenjpegenc.c: Add support for LibOpenJPEG v2.2/git X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" On 20-6-2017 19:44, Michael Bradshaw wrote: > Please merge these two conditions, since both #if conditions are executing > the same code. That is: > > #if HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H > opj_stream_set_user_data(stream, &reader, NULL); > #elif HAVE_OPENJPEG_2_0_OPENJPEG_H > ... New patch included. Thanks. From c7d30df0bd08198dc7e7caf65d3606185788906d Mon Sep 17 00:00:00 2001 From: Reino17 Date: Thu, 22 Jun 2017 00:31:42 +0200 Subject: [PATCH] Add support for LibOpenJPEG v2.2/git --- configure | 4 +++- libavcodec/libopenjpegdec.c | 8 +++++--- libavcodec/libopenjpegenc.c | 10 ++++++---- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/configure b/configure index dd96085..6e15e9f 100755 --- a/configure +++ b/configure @@ -1868,6 +1868,7 @@ HEADERS_LIST=" machine_ioctl_meteor_h malloc_h opencv2_core_core_c_h + openjpeg_2_2_openjpeg_h openjpeg_2_1_openjpeg_h openjpeg_2_0_openjpeg_h openjpeg_1_5_openjpeg_h @@ -5851,7 +5852,8 @@ enabled libopencv && { check_header opencv2/core/core_c.h && require opencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core -lopencv_imgproc; } || require_pkg_config opencv opencv/cxcore.h cvCreateImageHeader; } enabled libopenh264 && require_pkg_config openh264 wels/codec_api.h WelsGetCodecVersion -enabled libopenjpeg && { { check_lib libopenjpeg openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || +enabled libopenjpeg && { { check_lib libopenjpeg openjpeg-2.2/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || + { check_lib libopenjpeg openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || check_lib libopenjpeg openjpeg-2.1/openjpeg.h opj_version -lopenjp2 || { check_lib libopenjpeg openjpeg-2.0/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || { check_lib libopenjpeg openjpeg-1.5/openjpeg.h opj_version -lopenjpeg -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || diff --git a/libavcodec/libopenjpegdec.c b/libavcodec/libopenjpegdec.c index ce4e2b0..1210123 100644 --- a/libavcodec/libopenjpegdec.c +++ b/libavcodec/libopenjpegdec.c @@ -34,7 +34,9 @@ #include "internal.h" #include "thread.h" -#if HAVE_OPENJPEG_2_1_OPENJPEG_H +#if HAVE_OPENJPEG_2_2_OPENJPEG_H +# include +#elif HAVE_OPENJPEG_2_1_OPENJPEG_H # include #elif HAVE_OPENJPEG_2_0_OPENJPEG_H # include @@ -44,7 +46,7 @@ # include #endif -#if HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H +#if HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H # define OPENJPEG_MAJOR_VERSION 2 # define OPJ(x) OPJ_##x #else @@ -429,7 +431,7 @@ static int libopenjpeg_decode_frame(AVCodecContext *avctx, opj_stream_set_read_function(stream, stream_read); opj_stream_set_skip_function(stream, stream_skip); opj_stream_set_seek_function(stream, stream_seek); -#if HAVE_OPENJPEG_2_1_OPENJPEG_H +#if HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H opj_stream_set_user_data(stream, &reader, NULL); #elif HAVE_OPENJPEG_2_0_OPENJPEG_H opj_stream_set_user_data(stream, &reader); diff --git a/libavcodec/libopenjpegenc.c b/libavcodec/libopenjpegenc.c index 4a12729..b67e533 100644 --- a/libavcodec/libopenjpegenc.c +++ b/libavcodec/libopenjpegenc.c @@ -32,7 +32,9 @@ #include "avcodec.h" #include "internal.h" -#if HAVE_OPENJPEG_2_1_OPENJPEG_H +#if HAVE_OPENJPEG_2_2_OPENJPEG_H +# include +#elif HAVE_OPENJPEG_2_1_OPENJPEG_H # include #elif HAVE_OPENJPEG_2_0_OPENJPEG_H # include @@ -42,7 +44,7 @@ # include #endif -#if HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H +#if HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H # define OPENJPEG_MAJOR_VERSION 2 # define OPJ(x) OPJ_##x #else @@ -305,7 +307,7 @@ static av_cold int libopenjpeg_encode_init(AVCodecContext *avctx) opj_set_default_encoder_parameters(&ctx->enc_params); -#if HAVE_OPENJPEG_2_1_OPENJPEG_H +#if HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H switch (ctx->cinema_mode) { case OPJ_CINEMA2K_24: ctx->enc_params.rsiz = OPJ_PROFILE_CINEMA_2K; @@ -769,7 +771,7 @@ static int libopenjpeg_encode_frame(AVCodecContext *avctx, AVPacket *pkt, opj_stream_set_write_function(stream, stream_write); opj_stream_set_skip_function(stream, stream_skip); opj_stream_set_seek_function(stream, stream_seek); -#if HAVE_OPENJPEG_2_1_OPENJPEG_H +#if HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H opj_stream_set_user_data(stream, &writer, NULL); #elif HAVE_OPENJPEG_2_0_OPENJPEG_H opj_stream_set_user_data(stream, &writer);