forked from msys2/MINGW-packages
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ffmpeg: Support libopenjpeg2.2 (msys2#2804)
- Loading branch information
Showing
2 changed files
with
105 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
diff --git a/configure b/configure | ||
index 6da5e79..2817746 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 | ||
@@ -5805,7 +5805,9 @@ 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 openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || | ||
+enabled libopenjpeg && { { check_lib openjpeg-2.2/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || | ||
+ check_lib openjpeg-2.2/openjpeg.h opj_version -lopenjp2 || | ||
+ { check_lib openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || | ||
check_lib openjpeg-2.1/openjpeg.h opj_version -lopenjp2 || | ||
{ check_lib openjpeg-2.0/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || | ||
{ check_lib 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 <openjpeg-2.2/openjpeg.h> | ||
+#elif HAVE_OPENJPEG_2_1_OPENJPEG_H | ||
# include <openjpeg-2.1/openjpeg.h> | ||
#elif HAVE_OPENJPEG_2_0_OPENJPEG_H | ||
# include <openjpeg-2.0/openjpeg.h> | ||
@@ -44,7 +46,7 @@ | ||
# include <openjpeg.h> | ||
#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 <openjpeg-2.2/openjpeg.h> | ||
+#elif HAVE_OPENJPEG_2_1_OPENJPEG_H | ||
# include <openjpeg-2.1/openjpeg.h> | ||
#elif HAVE_OPENJPEG_2_0_OPENJPEG_H | ||
# include <openjpeg-2.0/openjpeg.h> | ||
@@ -42,7 +44,7 @@ | ||
# include <openjpeg.h> | ||
#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); |