Control: tags -1 patch On Sat, 27 Sep 2025 16:34:30 +0200 Santiago Vila <[email protected]> wrote:
tags 1115048 help thanksHello. I found this is fixed upstream here: https://github.com/opencv/opencv/pull/27746/commits Unfortunately, it does not apply cleanly to opencv 4.10, so I'm tagging this as "help".
You were missing a preliminary patch. Attached debdiff that builds for me. Let me know if I should upload it or if you will.
Cheers, Emilio
diff -Nru opencv-4.10.0+dfsg/debian/changelog opencv-4.10.0+dfsg/debian/changelog --- opencv-4.10.0+dfsg/debian/changelog 2025-09-27 16:40:00.000000000 +0200 +++ opencv-4.10.0+dfsg/debian/changelog 2025-12-18 09:48:35.000000000 +0100 @@ -1,3 +1,10 @@ +opencv (4.10.0+dfsg-6.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Fix build with ffmpeg 8.0. Closes: #1115048. + + -- Emilio Pozuelo Monfort <[email protected]> Thu, 18 Dec 2025 09:48:35 +0100 + opencv (4.10.0+dfsg-6) unstable; urgency=medium * Team upload. diff -Nru opencv-4.10.0+dfsg/debian/patches/ffmpeg-8.0-compat-2.patch opencv-4.10.0+dfsg/debian/patches/ffmpeg-8.0-compat-2.patch --- opencv-4.10.0+dfsg/debian/patches/ffmpeg-8.0-compat-2.patch 1970-01-01 01:00:00.000000000 +0100 +++ opencv-4.10.0+dfsg/debian/patches/ffmpeg-8.0-compat-2.patch 2025-12-18 09:48:20.000000000 +0100 @@ -0,0 +1,41 @@ +From 443d0ae63fad6dfd8c485d609203db16c8bd0ec3 Mon Sep 17 00:00:00 2001 +From: Dmitry Kurtaev <[email protected]> +Date: Mon, 8 Sep 2025 08:52:56 +0300 +Subject: [PATCH] Merge pull request #27746 from + dkurt:d.kurtaev/av_packet_side_data_get + +fix: FFmpeg 8.0 support #27746 + +### Pull Request Readiness Checklist + +related comment: https://github.com/opencv/opencv/pull/27691#discussion_r2322695640 + +See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request + +- [x] I agree to contribute to the project under Apache 2 License. +- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV +- [x] The PR is proposed to the proper branch +- [x] There is a reference to the original bug report and related work +- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable + Patch to opencv_extra has the same branch name. +- [x] The feature is well documented and sample code can be built with the project CMake +--- + modules/videoio/src/cap_ffmpeg_impl.hpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/modules/videoio/src/cap_ffmpeg_impl.hpp b/modules/videoio/src/cap_ffmpeg_impl.hpp +index 5780b4c11361..d971ca75b320 100644 +--- a/modules/videoio/src/cap_ffmpeg_impl.hpp ++++ b/modules/videoio/src/cap_ffmpeg_impl.hpp +@@ -2017,7 +2017,10 @@ void CvCapture_FFMPEG::get_rotation_angle() + if (sd && nb_sd > 0) + { + const AVPacketSideData* mtx = av_packet_side_data_get(sd, nb_sd, AV_PKT_DATA_DISPLAYMATRIX); +- data = mtx->data; ++ if (mtx) ++ { ++ data = mtx->data; ++ } + } + # endif + if (data) diff -Nru opencv-4.10.0+dfsg/debian/patches/ffmpeg-8.0-compat.patch opencv-4.10.0+dfsg/debian/patches/ffmpeg-8.0-compat.patch --- opencv-4.10.0+dfsg/debian/patches/ffmpeg-8.0-compat.patch 1970-01-01 01:00:00.000000000 +0100 +++ opencv-4.10.0+dfsg/debian/patches/ffmpeg-8.0-compat.patch 2025-12-18 09:46:36.000000000 +0100 @@ -0,0 +1,43 @@ +From 90c444abd387ffa70b2e72a34922903a2f0f4f5a Mon Sep 17 00:00:00 2001 +From: Alexander Smorkalov <[email protected]> +Date: Wed, 20 Aug 2025 10:53:51 +0300 +Subject: [PATCH] FFmpeg 8.0 support. + +--- + modules/videoio/src/cap_ffmpeg_impl.hpp | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/modules/videoio/src/cap_ffmpeg_impl.hpp b/modules/videoio/src/cap_ffmpeg_impl.hpp +index 489dbe565d3d..5780b4c11361 100644 +--- a/modules/videoio/src/cap_ffmpeg_impl.hpp ++++ b/modules/videoio/src/cap_ffmpeg_impl.hpp +@@ -685,7 +685,10 @@ void CvCapture_FFMPEG::close() + if( video_st ) + { + #ifdef CV_FFMPEG_CODECPAR ++// avcodec_close removed in FFmpeg release 8.0 ++# if (LIBAVCODEC_BUILD < CALC_FFMPEG_VERSION(62, 11, 100)) + avcodec_close( context ); ++# endif + #endif + video_st = NULL; + } +@@ -2005,7 +2008,18 @@ void CvCapture_FFMPEG::get_rotation_angle() + rotation_angle = 0; + #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(57, 68, 100) + const uint8_t *data = 0; ++ // av_stream_get_side_data removed in FFmpeg release 8.0 ++# if (LIBAVCODEC_BUILD < CALC_FFMPEG_VERSION(62, 11, 100)) + data = av_stream_get_side_data(video_st, AV_PKT_DATA_DISPLAYMATRIX, NULL); ++# else ++ AVPacketSideData* sd = video_st->codecpar->coded_side_data; ++ int nb_sd = video_st->codecpar->nb_coded_side_data; ++ if (sd && nb_sd > 0) ++ { ++ const AVPacketSideData* mtx = av_packet_side_data_get(sd, nb_sd, AV_PKT_DATA_DISPLAYMATRIX); ++ data = mtx->data; ++ } ++# endif + if (data) + { + rotation_angle = -cvRound(av_display_rotation_get((const int32_t*)data)); diff -Nru opencv-4.10.0+dfsg/debian/patches/series opencv-4.10.0+dfsg/debian/patches/series --- opencv-4.10.0+dfsg/debian/patches/series 2025-09-27 14:00:00.000000000 +0200 +++ opencv-4.10.0+dfsg/debian/patches/series 2025-12-18 09:48:32.000000000 +0100 @@ -7,3 +7,5 @@ setup-py-for-egg.patch fix-vsx-build-with-gcc-15.patch cmake-4.patch +ffmpeg-8.0-compat.patch +ffmpeg-8.0-compat-2.patch

