media-video/subtitlecomposer: drop 0.7.1-r3

Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
Andreas Sturmlechner
2023-12-25 16:52:53 +01:00
parent 0996fd5e72
commit 5376af3482
9 changed files with 0 additions and 326 deletions

View File

@@ -1,3 +1,2 @@
DIST subtitlecomposer-0.7.1-patchset-1.tar.xz 6868 BLAKE2B 59ae09e6807b0c9eeb094556ec381157701a6d3ae66317c175816f2a779ef3db1874146c5ec0d211a07353bf592c1ff7ad8dcf91a1370916d37290204e7e5909 SHA512 bd7849ee7e4bb449b7f758bf86a45110f0e647d6a35ec31bbab82b7e8f02ac3b81aed958723848a08830a32f1e252dc2231d9a8a736b738b6c105c1a715aea1b
DIST subtitlecomposer-0.7.1.tar.xz 636808 BLAKE2B 4c71277c9646a64d59a0cd6923084b39292916e9edf154c026a051253fe8aabab1bdfb9e10c6fab5eb0d754ba428567c2259c637915e93d8d391b7f247c6dc79 SHA512 b486a1be8b414409af4ec2d2ccc86a7e9f34040f114b0efbbf817b5157d85b5f9a37d80272b468a389128f10c12316bf028dd86e2a7434a2b001bfd185208b92
DIST subtitlecomposer-0.8.0.tar.xz 730800 BLAKE2B f4d89b11f7d0669ee4594739df06f1bac91c1defacc9c27f25bff9709140c0b56a8927b2f4f79544bd35475db558c7fa2e35bff912704dd9d4e5a745a44a373a SHA512 463824631b025c760423244434000c6e7f7d44097fb7a9178ada505daa6329de0649219f563431e98d8e780fce2b1f0a39cbd77a998ece3d131166045ae40dee

View File

@@ -1,67 +0,0 @@
From 88a6cf4e4aaa58229b9b07d66c2abd264dfbc2f1 Mon Sep 17 00:00:00 2001
From: Mladen Milinkovic <maxrd2@smoothware.net>
Date: Fri, 17 Jun 2022 21:34:20 +0200
Subject: [PATCH] Fix deadlock/crash while changing audio stream on
paused/stopped media #71
---
src/videoplayer/backend/audiodecoder.cpp | 2 +-
src/videoplayer/backend/decoder.cpp | 1 +
src/videoplayer/backend/ffplayer.cpp | 2 ++
src/videoplayer/videoplayer.cpp | 2 ++
4 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/videoplayer/backend/audiodecoder.cpp b/src/videoplayer/backend/audiodecoder.cpp
index d3d13e78..9c7ee1fc 100644
--- a/src/videoplayer/backend/audiodecoder.cpp
+++ b/src/videoplayer/backend/audiodecoder.cpp
@@ -499,7 +499,7 @@ AudioDecoder::run()
// bytes needed for 100ms of audio
const ALint hwMinBytes = m_vs->audClk.speed() * m_fmtTgt.bytesPerSec * .100;
- while(!m_vs->abortRequested) {
+ while(!m_vs->abortRequested && !isInterruptionRequested()) {
ALint hwBufOffset = 0;
alGetSourcei(m_alSrc, AL_BYTE_OFFSET, &hwBufOffset);
if(!std::isnan(af->pts)) {
diff --git a/src/videoplayer/backend/decoder.cpp b/src/videoplayer/backend/decoder.cpp
index 79b1ad7a..8a69d918 100644
--- a/src/videoplayer/backend/decoder.cpp
+++ b/src/videoplayer/backend/decoder.cpp
@@ -155,6 +155,7 @@ Decoder::abort()
m_queue->abort();
if(m_frameQueue)
m_frameQueue->signal();
+ requestInterruption();
wait();
m_queue->flush();
}
diff --git a/src/videoplayer/backend/ffplayer.cpp b/src/videoplayer/backend/ffplayer.cpp
index 88288285..7b26e4a4 100644
--- a/src/videoplayer/backend/ffplayer.cpp
+++ b/src/videoplayer/backend/ffplayer.cpp
@@ -288,6 +288,8 @@ FFPlayer::activeAudioStream()
void
FFPlayer::activeAudioStream(int streamIndex)
{
+ if(!m_vs)
+ return;
streamIndex = streamIndex < 0 ? -1 : m_vs->demuxer->absoluteStreamIndex(AVMEDIA_TYPE_AUDIO, streamIndex);
m_vs->demuxer->selectStream(AVMEDIA_TYPE_AUDIO, streamIndex);
}
diff --git a/src/videoplayer/videoplayer.cpp b/src/videoplayer/videoplayer.cpp
index 0307ce7d..a42babe5 100644
--- a/src/videoplayer/videoplayer.cpp
+++ b/src/videoplayer/videoplayer.cpp
@@ -301,6 +301,8 @@ VideoPlayer::setupNotifications()
//connect(m_player, &FFPlayer::videoStreamsChanged, this, [this](const QStringList &streams){});
connect(m_player, &FFPlayer::audioStreamsChanged, this, [this](const QStringList &streams){
+ if(m_activeAudioStream >= 0)
+ m_player->activeAudioStream(m_activeAudioStream);
emit audioStreamsChanged(m_audioStreams = streams);
emit activeAudioStreamChanged(m_activeAudioStream = m_player->activeAudioStream());
});
--
GitLab

View File

@@ -1,25 +0,0 @@
From 12f4d7f49d0b1a7fc02b0836521a285e7b6bac9d Mon Sep 17 00:00:00 2001
From: Albert Astals Cid <aacid@kde.org>
Date: Sat, 4 Mar 2023 10:58:04 +0100
Subject: [PATCH] Use non deprecated ffmpeg api
---
src/videoplayer/backend/streamdemuxer.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/videoplayer/backend/streamdemuxer.cpp b/src/videoplayer/backend/streamdemuxer.cpp
index e3bd808a..39222d8c 100644
--- a/src/videoplayer/backend/streamdemuxer.cpp
+++ b/src/videoplayer/backend/streamdemuxer.cpp
@@ -504,7 +504,7 @@ StreamDemuxer::run()
{ // find_stream_info
const int origNbStreams = ic->nb_streams;
- AVDictionary **opts = (AVDictionary **)av_mallocz_array(origNbStreams, sizeof(*opts));
+ AVDictionary **opts = (AVDictionary **)av_calloc(origNbStreams, sizeof(*opts));
if(!opts) {
av_log(nullptr, AV_LOG_ERROR, "Could not alloc memory for stream options.\n");
goto cleanup;
--
GitLab

View File

@@ -1,42 +0,0 @@
From 0bb0e6ed99d5a4200cc89fc6e8b3013c70465402 Mon Sep 17 00:00:00 2001
From: Mladen Milinkovic <maxrd2@smoothware.net>
Date: Mon, 5 Jun 2023 10:13:15 +0200
Subject: [PATCH] StreamProcessor: fixed embedded ASS decoding
Seems embeded ASS subtitle format got changed in FFmpeg 6. Haven't found
any references to it tho, so this might still be borked in some cases.
---
src/streamprocessor/streamprocessor.cpp | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/src/streamprocessor/streamprocessor.cpp b/src/streamprocessor/streamprocessor.cpp
index b759b0d3..1e883780 100644
--- a/src/streamprocessor/streamprocessor.cpp
+++ b/src/streamprocessor/streamprocessor.cpp
@@ -537,11 +537,10 @@ StreamProcessor::processText()
case SUBTITLE_ASS: {
#if 1
const char *assText = sub->ass;
- if(strncmp("Dialogue", assText, 8) != 0)
- break;
-
+ // FIXME: did ass format change with ffmpeg6? can't find any references
+ const int textLocation = strncmp("Dialogue", assText, 8) ? 8 : 9;
// Dialogue: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
- for(int c = 9; c && *assText; assText++) {
+ for(int c = textLocation; c && *assText; assText++) {
if(*assText == ',')
c--;
}
@@ -550,7 +549,7 @@ StreamProcessor::processText()
"{\\c&H0000ff&}red {\\c&H00ff00&}green {\\c&Hff0000&}blue{\\r}\\n"
"Another {\\b100}bold\\h{\\i1}bolditalic{\\b0\\i0} some{\\anidfsd} unsupported tag";
#endif
- QString assChunk(assText);
+ QString assChunk = QString::fromUtf8(assText);
assChunk
.replace(QStringLiteral("\\N"), QStringLiteral("\n"))
--
GitLab

View File

@@ -1,32 +0,0 @@
From d8f9797d9c0d45fa9f4402f79c539544b74d2cc7 Mon Sep 17 00:00:00 2001
From: Mladen Milinkovic <maxrd2@smoothware.net>
Date: Fri, 1 Apr 2022 08:35:17 +0200
Subject: [PATCH] VideoPlayer: Fix usage of deprecated/removed AVCodec option
#68
AVCodecContext.refcounted_frames was useful for deprecated API only
(avcodec_decode_video2/avcodec_decode_audio4). The new decode APIs
(avcodec_send_packet/avcodec_receive_frame) always work with reference
counted frames
https://github.com/FFmpeg/FFmpeg/commit/b1cf151c4dfdbd049cd41863b4e0cde927585e17
---
src/videoplayer/backend/streamdemuxer.cpp | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/videoplayer/backend/streamdemuxer.cpp b/src/videoplayer/backend/streamdemuxer.cpp
index e8320ea0..7173306f 100644
--- a/src/videoplayer/backend/streamdemuxer.cpp
+++ b/src/videoplayer/backend/streamdemuxer.cpp
@@ -286,8 +286,6 @@ StreamDemuxer::componentOpen(int streamIndex)
av_dict_set(&opts, "threads", "auto", 0);
if(stream_lowres)
av_dict_set_int(&opts, "lowres", stream_lowres, 0);
- if(avCtx->codec_type == AVMEDIA_TYPE_VIDEO || avCtx->codec_type == AVMEDIA_TYPE_AUDIO)
- av_dict_set(&opts, "refcounted_frames", "1", 0);
if((ret = avcodec_open2(avCtx, codec, &opts)) < 0) {
goto fail;
}
--
GitLab

View File

@@ -1,25 +0,0 @@
From c94e4dc1362b9ac03cddb9def913ea6728875fe2 Mon Sep 17 00:00:00 2001
From: Mladen Milinkovic <maxrd2@smoothware.net>
Date: Sun, 18 Sep 2022 23:09:17 +0200
Subject: [PATCH] Fixed possible null pointer deref
---
src/videoplayer/backend/streamdemuxer.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/videoplayer/backend/streamdemuxer.cpp b/src/videoplayer/backend/streamdemuxer.cpp
index d15cf9f4..4ae4171d 100644
--- a/src/videoplayer/backend/streamdemuxer.cpp
+++ b/src/videoplayer/backend/streamdemuxer.cpp
@@ -45,7 +45,7 @@ isRealTime(AVFormatContext *s)
#else
const char *url = s->url;
#endif
- if(s->pb && (!strncmp(url, "rtp:", 4) || !strncmp(url, "udp:", 4)))
+ if(s->pb && url && (!strncmp(url, "rtp:", 4) || !strncmp(url, "udp:", 4)))
return 1;
return 0;
}
--
GitLab

View File

@@ -1,25 +0,0 @@
From 09e5d80286276d4683c944dfa0cddda3479006c0 Mon Sep 17 00:00:00 2001
From: Mladen Milinkovic <maxrd2@smoothware.net>
Date: Thu, 19 Jan 2023 18:39:31 +0100
Subject: [PATCH] Subtitle: fixed crash in splitLines()
---
src/core/subtitle.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/core/subtitle.cpp b/src/core/subtitle.cpp
index d3da532d..3359062e 100644
--- a/src/core/subtitle.cpp
+++ b/src/core/subtitle.cpp
@@ -541,7 +541,7 @@ Subtitle::splitLines(const RangeList &ranges)
c->insertText(QString(QChar::LineFeed));
return true;
}
- if(text.at(j) == QChar::Space) {
+ if(j < len && text.at(j) == QChar::Space) {
c->movePosition(QTextCursor::Start);
c->movePosition(QTextCursor::NextCharacter, QTextCursor::MoveAnchor, j);
c->movePosition(QTextCursor::NextCharacter, QTextCursor::KeepAnchor);
--
GitLab

View File

@@ -1,45 +0,0 @@
From 78553af05ba97da0920f7cabd281503bd4ca484a Mon Sep 17 00:00:00 2001
From: Mladen Milinkovic <maxrd2@smoothware.net>
Date: Wed, 23 Nov 2022 15:47:56 +0100
Subject: [PATCH] VobSub: fixed crash when moving to previous image
Do not delete lines on temporary Subtitle that is shown in LinesWidget.
SubtitleLine is deleted immediately, while LinesWidget wants to repaint
before line reference is removed from its list model.
https://bugs.kde.org/show_bug.cgi?id=462156
---
src/formats/vobsub/vobsubinputprocessdialog.cpp | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/src/formats/vobsub/vobsubinputprocessdialog.cpp b/src/formats/vobsub/vobsubinputprocessdialog.cpp
index ac54b552..2ba61550 100644
--- a/src/formats/vobsub/vobsubinputprocessdialog.cpp
+++ b/src/formats/vobsub/vobsubinputprocessdialog.cpp
@@ -697,9 +697,12 @@ VobSubInputProcessDialog::processNextPiece()
piecePrev = piece;
}
- SubtitleLine *l = new SubtitleLine((*m_frameCurrent)->subShowTime, (*m_frameCurrent)->subHideTime);
+ SubtitleLine *l = m_subtitle->line((*m_frameCurrent)->index);
+ if(!l) {
+ l = new SubtitleLine((*m_frameCurrent)->subShowTime, (*m_frameCurrent)->subHideTime);
+ m_subtitle->insertLine(l);
+ }
l->primaryDoc()->setPlainText(subText);
- m_subtitle->insertLine(l);
ui->grpText->setDisabled(true);
ui->grpNavButtons->setDisabled(true);
@@ -809,8 +812,6 @@ VobSubInputProcessDialog::onPrevImageClicked()
return;
--m_frameCurrent;
- if(m_subtitle->lastIndex() >= 0)
- m_subtitle->removeLines(RangeList(Range(m_subtitle->lastIndex())), Both);
ui->progressBar->setValue((*m_frameCurrent)->index + 1);
--
GitLab

View File

@@ -1,64 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
ECM_TEST="forceoptional"
KFMIN=5.106.0
QTMIN=5.15.9
inherit ecm kde.org
DESCRIPTION="Text-based subtitles editor"
HOMEPAGE="https://subtitlecomposer.kde.org/"
PATCHSET="${P}-patchset-1"
SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz
https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}.tar.xz"
LICENSE="GPL-2"
SLOT="5"
KEYWORDS="amd64 x86"
IUSE="unicode"
DEPEND="
>=dev-qt/qtdeclarative-${QTMIN}:5
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtwidgets-${QTMIN}:5
>=kde-frameworks/kcodecs-${KFMIN}:5
>=kde-frameworks/kcompletion-${KFMIN}:5
>=kde-frameworks/kconfig-${KFMIN}:5
>=kde-frameworks/kconfigwidgets-${KFMIN}:5
>=kde-frameworks/kcoreaddons-${KFMIN}:5
>=kde-frameworks/ki18n-${KFMIN}:5
>=kde-frameworks/kio-${KFMIN}:5
>=kde-frameworks/ktextwidgets-${KFMIN}:5
>=kde-frameworks/kwidgetsaddons-${KFMIN}:5
>=kde-frameworks/kxmlgui-${KFMIN}:5
>=kde-frameworks/sonnet-${KFMIN}:5
media-libs/openal
media-video/ffmpeg:0=
unicode? ( dev-libs/icu:= )
"
RDEPEND="${DEPEND}"
BDEPEND="
sys-devel/gettext
virtual/pkgconfig
"
PATCHES=(
"${WORKDIR}/${PATCHSET}/${P}-tests-optional.patch"
"${WORKDIR}/${PATCHSET}/${P}-gles-support.patch" # bug 820035
"${WORKDIR}/${PATCHSET}/${P}-ffmpeg-5.patch" # bug 834416
"${WORKDIR}/${PATCHSET}/${P}-replace-kross-w-qjsengine.patch" # bug 755956
"${FILESDIR}"/${P}-nullptr-deref.patch
"${FILESDIR}"/${P}-ffmpeg6-{1,2,3}.patch # bugs 910048, 913475
"${FILESDIR}"/${P}-{changingaudio,subtitle,vobsub}-crashfix.patch # KDE-bug 462156
)
src_configure() {
local mycmakeargs=(
-DCMAKE_DISABLE_FIND_PACKAGE_PocketSphinx=ON # bugs 616706, 610434
$(cmake_use_find_package unicode ICU)
)
ecm_src_configure
}