[packages/ka5-ffmpegthumbs] - rel 4, build fix for ffmpeg9
baggins
baggins at pld-linux.org
Fri Oct 23 22:55:57 CEST 2026
commit a14fc467fa93de603dc15338d2340d638e1eaf59
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Fri Oct 23 22:55:42 2026 +0200
- rel 4, build fix for ffmpeg9
ffmpeg9.patch | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
ka5-ffmpegthumbs.spec | 4 +++-
2 files changed, 53 insertions(+), 1 deletion(-)
---
diff --git a/ka5-ffmpegthumbs.spec b/ka5-ffmpegthumbs.spec
index f28476d..ca08655 100644
--- a/ka5-ffmpegthumbs.spec
+++ b/ka5-ffmpegthumbs.spec
@@ -8,11 +8,12 @@
Summary: Ffmpegthumbs
Name: ka5-%{kaname}
Version: 23.08.5
-Release: 3
+Release: 4
License: GPL v2+/LGPL v2.1+
Group: X11/Libraries
Source0: https://download.kde.org/stable/release-service/%{kdeappsver}/src/%{kaname}-%{version}.tar.xz
# Source0-md5: a24d81c3652690a7b9f5982570416ddf
+Patch0: ffmpeg9.patch
URL: http://www.kde.org/
BuildRequires: Qt5Core-devel >= %{qtver}
BuildRequires: cmake >= 3.20
@@ -38,6 +39,7 @@ Oparty na FFmpeg generator miniaturek plików wideo.
%prep
%setup -q -n %{kaname}-%{version}
+%patch -P0 -p1
%build
%cmake \
diff --git a/ffmpeg9.patch b/ffmpeg9.patch
new file mode 100644
index 0000000..cc2136e
--- /dev/null
+++ b/ffmpeg9.patch
@@ -0,0 +1,50 @@
+--- ffmpegthumbs-23.08.5/ffmpegthumbnailer/moviedecoder.cpp 2024-02-09 23:50:56.000000000 +0100
++++ ffmpegthumbs-26.08.2/ffmpegthumbnailer/moviedecoder.cpp 2026-09-27 22:26:07.000000000 +0200
+@@ -89,7 +89,7 @@
+ {
+ deleteFilterGraph();
+ if (m_pVideoCodecContext) {
+- avcodec_close(m_pVideoCodecContext);
++ avcodec_free_context(&m_pVideoCodecContext);
+ m_pVideoCodecContext = nullptr;
+ }
+ m_pVideoStream = nullptr;
+@@ -215,7 +215,7 @@
+ }
+
+ ++keyFrameAttempts;
+- } while ((!gotFrame || !m_pFrame->key_frame) && keyFrameAttempts < 200);
++ } while ((!gotFrame || !(m_pFrame->flags & AV_FRAME_FLAG_KEY)) && keyFrameAttempts < 200);
+
+ if (gotFrame == 0) {
+ qCDebug(ffmpegthumbs_LOG) << "Seeking in video failed";
+@@ -263,15 +263,15 @@
+ return ret;
+ }
+
+- for (int i=0; i<m_pVideoStream->nb_side_data; i++) {
+- if (m_pVideoStream->side_data[i].type != AV_PKT_DATA_DISPLAYMATRIX) {
++ for (int i=0; i<m_pVideoStream->codecpar->nb_coded_side_data; i++) {
++ if (m_pVideoStream->codecpar->coded_side_data[i].type != AV_PKT_DATA_DISPLAYMATRIX) {
+ continue;
+ }
+- if (m_pVideoStream->side_data[i].size != sizeof(int32_t) * 9) {
+- qCWarning(ffmpegthumbs_LOG) << "Invalid display matrix size" << m_pVideoStream->side_data[i].size << "expected" << sizeof(int32_t) * 9;
++ if (m_pVideoStream->codecpar->coded_side_data[i].size != sizeof(int32_t) * 9) {
++ qCWarning(ffmpegthumbs_LOG) << "Invalid display matrix size" << m_pVideoStream->codecpar->coded_side_data[i].size << "expected" << sizeof(int32_t) * 9;
+ continue;
+ }
+- int32_t *matrix = reinterpret_cast<int32_t*>(m_pVideoStream->side_data[i].data);
++ int32_t *matrix = reinterpret_cast<int32_t*>(m_pVideoStream->codecpar->coded_side_data[i].data);
+ double rotation = av_display_rotation_get(matrix);
+ if (qFuzzyCompare(rotation, 0.)) {
+ ret |= QImageIOHandler::TransformationNone;
+@@ -404,7 +404,7 @@
+
+ void MovieDecoder::getScaledVideoFrame(int scaledSize, bool maintainAspectRatio, VideoFrame& videoFrame)
+ {
+- if (m_pFrame->interlaced_frame) {
++ if (m_pFrame->flags & AV_FRAME_FLAG_INTERLACED) {
+ processFilterGraph((AVFrame*) m_pFrame, (AVFrame*) m_pFrame, m_pVideoCodecContext->pix_fmt,
+ m_pVideoCodecContext->width, m_pVideoCodecContext->height);
+ }
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/ka5-ffmpegthumbs.git/commitdiff/a14fc467fa93de603dc15338d2340d638e1eaf59
More information about the pld-cvs-commit
mailing list