diff options
| -rw-r--r-- | meta-oe/recipes-support/opencv/opencv/27691.patch | 44 | ||||
| -rw-r--r-- | meta-oe/recipes-support/opencv/opencv_4.12.0.bb | 3 |
2 files changed, 46 insertions, 1 deletions
diff --git a/meta-oe/recipes-support/opencv/opencv/27691.patch b/meta-oe/recipes-support/opencv/opencv/27691.patch new file mode 100644 index 0000000000..c8c23c93aa --- /dev/null +++ b/meta-oe/recipes-support/opencv/opencv/27691.patch | |||
| @@ -0,0 +1,44 @@ | |||
| 1 | From 90c444abd387ffa70b2e72a34922903a2f0f4f5a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Alexander Smorkalov <alexander.smorkalov@opencv.ai> | ||
| 3 | Date: Wed, 20 Aug 2025 10:53:51 +0300 | ||
| 4 | Subject: [PATCH] FFmpeg 8.0 support. | ||
| 5 | |||
| 6 | Upstream-Status: Backport [https://github.com/opencv/opencv/commit/86df53155411b3ade57d0213bf8dd63006bf248f] | ||
| 7 | --- | ||
| 8 | modules/videoio/src/cap_ffmpeg_impl.hpp | 14 ++++++++++++++ | ||
| 9 | 1 file changed, 14 insertions(+) | ||
| 10 | |||
| 11 | diff --git a/modules/videoio/src/cap_ffmpeg_impl.hpp b/modules/videoio/src/cap_ffmpeg_impl.hpp | ||
| 12 | index 489dbe565d3d..5780b4c11361 100644 | ||
| 13 | --- a/modules/videoio/src/cap_ffmpeg_impl.hpp | ||
| 14 | +++ b/modules/videoio/src/cap_ffmpeg_impl.hpp | ||
| 15 | @@ -685,7 +685,10 @@ void CvCapture_FFMPEG::close() | ||
| 16 | if( video_st ) | ||
| 17 | { | ||
| 18 | #ifdef CV_FFMPEG_CODECPAR | ||
| 19 | +// avcodec_close removed in FFmpeg release 8.0 | ||
| 20 | +# if (LIBAVCODEC_BUILD < CALC_FFMPEG_VERSION(62, 11, 100)) | ||
| 21 | avcodec_close( context ); | ||
| 22 | +# endif | ||
| 23 | #endif | ||
| 24 | video_st = NULL; | ||
| 25 | } | ||
| 26 | @@ -2005,7 +2008,18 @@ void CvCapture_FFMPEG::get_rotation_angle() | ||
| 27 | rotation_angle = 0; | ||
| 28 | #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(57, 68, 100) | ||
| 29 | const uint8_t *data = 0; | ||
| 30 | + // av_stream_get_side_data removed in FFmpeg release 8.0 | ||
| 31 | +# if (LIBAVCODEC_BUILD < CALC_FFMPEG_VERSION(62, 11, 100)) | ||
| 32 | data = av_stream_get_side_data(video_st, AV_PKT_DATA_DISPLAYMATRIX, NULL); | ||
| 33 | +# else | ||
| 34 | + AVPacketSideData* sd = video_st->codecpar->coded_side_data; | ||
| 35 | + int nb_sd = video_st->codecpar->nb_coded_side_data; | ||
| 36 | + if (sd && nb_sd > 0) | ||
| 37 | + { | ||
| 38 | + const AVPacketSideData* mtx = av_packet_side_data_get(sd, nb_sd, AV_PKT_DATA_DISPLAYMATRIX); | ||
| 39 | + data = mtx->data; | ||
| 40 | + } | ||
| 41 | +# endif | ||
| 42 | if (data) | ||
| 43 | { | ||
| 44 | rotation_angle = -cvRound(av_display_rotation_get((const int32_t*)data)); | ||
diff --git a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb index 86af1ebc43..5462c4f8da 100644 --- a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb +++ b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb | |||
| @@ -33,6 +33,7 @@ SRC_URI = "git://github.com/opencv/opencv.git;name=opencv;branch=4.x;protocol=ht | |||
| 33 | file://download.patch \ | 33 | file://download.patch \ |
| 34 | file://0001-Make-ts-module-external.patch \ | 34 | file://0001-Make-ts-module-external.patch \ |
| 35 | file://0008-Do-not-embed-build-directory-in-binaries.patch \ | 35 | file://0008-Do-not-embed-build-directory-in-binaries.patch \ |
| 36 | file://27691.patch \ | ||
| 36 | " | 37 | " |
| 37 | SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=contrib" | 38 | SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=contrib" |
| 38 | 39 | ||
| @@ -106,7 +107,7 @@ PACKAGECONFIG[gtk] = "-DWITH_GTK=ON,-DWITH_GTK=OFF,gtk+3," | |||
| 106 | PACKAGECONFIG[jasper] = "-DWITH_JASPER=ON,-DWITH_JASPER=OFF,jasper," | 107 | PACKAGECONFIG[jasper] = "-DWITH_JASPER=ON,-DWITH_JASPER=OFF,jasper," |
| 107 | PACKAGECONFIG[java] = "-DJAVA_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native fastjar-native openjdk-8-native," | 108 | PACKAGECONFIG[java] = "-DJAVA_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native fastjar-native openjdk-8-native," |
| 108 | PACKAGECONFIG[jpeg] = "-DWITH_JPEG=ON,-DWITH_JPEG=OFF,jpeg," | 109 | PACKAGECONFIG[jpeg] = "-DWITH_JPEG=ON,-DWITH_JPEG=OFF,jpeg," |
| 109 | PACKAGECONFIG[libav] = "-DWITH_FFMPEG=ON,-DWITH_FFMPEG=OFF,libav," | 110 | PACKAGECONFIG[libav] = "-DWITH_FFMPEG=ON,-DWITH_FFMPEG=OFF,ffmpeg," |
| 110 | PACKAGECONFIG[libv4l] = "-DWITH_LIBV4L=ON,-DWITH_LIBV4L=OFF,v4l-utils," | 111 | PACKAGECONFIG[libv4l] = "-DWITH_LIBV4L=ON,-DWITH_LIBV4L=OFF,v4l-utils," |
| 111 | PACKAGECONFIG[opencl] = "-DWITH_OPENCL=ON,-DWITH_OPENCL=OFF,opencl-headers virtual/opencl-icd," | 112 | PACKAGECONFIG[opencl] = "-DWITH_OPENCL=ON,-DWITH_OPENCL=OFF,opencl-headers virtual/opencl-icd," |
| 112 | PACKAGECONFIG[openvino] = "-DWITH_OPENVINO=ON,-DWITH_OPENVINO=OFF,openvino-inference-engine,openvino-inference-engine" | 113 | PACKAGECONFIG[openvino] = "-DWITH_OPENVINO=ON,-DWITH_OPENVINO=OFF,openvino-inference-engine,openvino-inference-engine" |
