summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media-video/subtitlecomposer/Manifest1
-rw-r--r--media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-mpv-0.33.patch260
-rw-r--r--media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-tests-optional.patch9
-rw-r--r--media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-valid-desktop-file.patch21
-rw-r--r--media-video/subtitlecomposer/metadata.xml3
-rw-r--r--media-video/subtitlecomposer/subtitlecomposer-0.7.0.ebuild83
6 files changed, 0 insertions, 377 deletions
diff --git a/media-video/subtitlecomposer/Manifest b/media-video/subtitlecomposer/Manifest
index 1cfc4ac2ee50..f88fc4132ffd 100644
--- a/media-video/subtitlecomposer/Manifest
+++ b/media-video/subtitlecomposer/Manifest
@@ -1,2 +1 @@
-DIST subtitlecomposer-0.7.0.tar.gz 1649840 BLAKE2B a60d3917cc9bd8025d75782e850ba2507ab140ffaeff84e995d58994e848ebe4e103a87824a20dd689132235f67102e7fec39bf0f99d827c78883165e01e9fb7 SHA512 b1c71496a2609686946af2377862b86d70e357565646a3de2f158481bc9e397f649d0907499ecd21a193ec07eaf2135b7f5831697e6b20ba6721a743227fbe04
DIST subtitlecomposer-0.7.1.tar.xz 636808 BLAKE2B 4c71277c9646a64d59a0cd6923084b39292916e9edf154c026a051253fe8aabab1bdfb9e10c6fab5eb0d754ba428567c2259c637915e93d8d391b7f247c6dc79 SHA512 b486a1be8b414409af4ec2d2ccc86a7e9f34040f114b0efbbf817b5157d85b5f9a37d80272b468a389128f10c12316bf028dd86e2a7434a2b001bfd185208b92
diff --git a/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-mpv-0.33.patch b/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-mpv-0.33.patch
deleted file mode 100644
index a97ab22543bc..000000000000
--- a/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-mpv-0.33.patch
+++ /dev/null
@@ -1,260 +0,0 @@
-From d09a3cbc60da86f57d06477dea1a57962a11ffb2 Mon Sep 17 00:00:00 2001
-From: Mladen Milinkovic <maxrd2@smoothware.net>
-Date: Mon, 8 Jul 2019 20:19:03 +0200
-Subject: [PATCH] MPV player config options aren't hardcoded anymore.
-
----
- src/videoplayerplugins/mpv/mpvbackend.cpp | 37 ++++++-
- src/videoplayerplugins/mpv/mpvbackend.h | 8 +-
- .../mpv/mpvconfigwidget.cpp | 102 ++++++++++++++++--
- src/videoplayerplugins/mpv/mpvconfigwidget.h | 8 ++
- 4 files changed, 139 insertions(+), 16 deletions(-)
-
-diff --git a/src/videoplayerplugins/mpv/mpvbackend.cpp b/src/videoplayerplugins/mpv/mpvbackend.cpp
-index d85a56c..9fdcd95 100644
---- a/src/videoplayerplugins/mpv/mpvbackend.cpp
-+++ b/src/videoplayerplugins/mpv/mpvbackend.cpp
-@@ -33,8 +33,6 @@
- #include <KMessageBox>
-
- using namespace SubtitleComposer;
--using namespace mpv;
--using namespace mpv::qt;
-
- MPVBackend::MPVBackend()
- : PlayerBackend(),
-@@ -218,6 +216,37 @@ MPVBackend::mpvEventHandle(mpv_event *event)
- }
- }
-
-+static QVariant
-+node_to_variant(const mpv_node *node)
-+{
-+ switch(node->format) {
-+ case MPV_FORMAT_STRING:
-+ return QVariant(QString::fromUtf8(node->u.string));
-+ case MPV_FORMAT_FLAG:
-+ return QVariant(static_cast<bool>(node->u.flag));
-+ case MPV_FORMAT_INT64:
-+ return QVariant(static_cast<qlonglong>(node->u.int64));
-+ case MPV_FORMAT_DOUBLE:
-+ return QVariant(node->u.double_);
-+ case MPV_FORMAT_NODE_ARRAY: {
-+ mpv_node_list *list = node->u.list;
-+ QVariantList qlist;
-+ for(int n = 0; n < list->num; n++)
-+ qlist.append(node_to_variant(&list->values[n]));
-+ return QVariant(qlist);
-+ }
-+ case MPV_FORMAT_NODE_MAP: {
-+ mpv_node_list *list = node->u.list;
-+ QVariantMap qmap;
-+ for(int n = 0; n < list->num; n++)
-+ qmap.insert(QString::fromUtf8(list->keys[n]), node_to_variant(&list->values[n]));
-+ return QVariant(qmap);
-+ }
-+ default: // MPV_FORMAT_NONE, unknown values (e.g. future extensions)
-+ return QVariant();
-+ }
-+}
-+
- void
- MPVBackend::updateTextData(const mpv_event_property *prop)
- {
-@@ -230,7 +259,7 @@ MPVBackend::updateTextData(const mpv_event_property *prop)
- if(val.format != MPV_FORMAT_NODE_MAP)
- continue;
-
-- const QMap<QString, QVariant> &map = mpv::qt::node_to_variant(&val).toMap();
-+ const QMap<QString, QVariant> &map = node_to_variant(&val).toMap();
-
- if(map[QStringLiteral("type")].toString() != QStringLiteral("sub")
- || map[QStringLiteral("external")].toBool() == true)
-@@ -269,7 +298,7 @@ MPVBackend::updateAudioData(const mpv_event_property *prop)
- if(val.format != MPV_FORMAT_NODE_MAP)
- continue;
-
-- const QMap<QString, QVariant> &map = mpv::qt::node_to_variant(&val).toMap();
-+ const QMap<QString, QVariant> &map = node_to_variant(&val).toMap();
-
- if(map[QStringLiteral("type")].toString() != QStringLiteral("audio"))
- continue;
-diff --git a/src/videoplayerplugins/mpv/mpvbackend.h b/src/videoplayerplugins/mpv/mpvbackend.h
-index d0edf2e..5e19fa1 100644
---- a/src/videoplayerplugins/mpv/mpvbackend.h
-+++ b/src/videoplayerplugins/mpv/mpvbackend.h
-@@ -23,7 +23,7 @@
-
- #include "videoplayer/playerbackend.h"
-
--#include <mpv/qthelper.hpp>
-+#include <mpv/client.h>
-
- #include <QWidget>
- #include <QString>
-@@ -76,14 +76,10 @@ signals:
- protected slots:
- void onMPVEvents();
-
--protected:
-- void setupProcessArgs(const QString &filePath);
--
-+private:
- void mpvEventHandle(mpv_event *event);
--
- static void wakeup(void *ctx);
-
--private:
- void updateTextData(const mpv_event_property *prop);
- void updateAudioData(const mpv_event_property *prop);
- void updateVideoData();
-diff --git a/src/videoplayerplugins/mpv/mpvconfigwidget.cpp b/src/videoplayerplugins/mpv/mpvconfigwidget.cpp
-index 78458f8..6958141 100644
---- a/src/videoplayerplugins/mpv/mpvconfigwidget.cpp
-+++ b/src/videoplayerplugins/mpv/mpvconfigwidget.cpp
-@@ -20,6 +20,11 @@
-
- #include "mpvconfigwidget.h"
-
-+#include <locale>
-+#include <mpv/client.h>
-+
-+#include "scconfig.h"
-+
- using namespace SubtitleComposer;
-
- MPVConfigWidget::MPVConfigWidget(QWidget *parent)
-@@ -27,14 +32,99 @@ MPVConfigWidget::MPVConfigWidget(QWidget *parent)
- {
- setupUi(this);
-
-- kcfg_mpvVideoOutput->addItems(QString("vdpau vaapi opengl opengl-hq sdl xv wayland x11 null").split(' '));
-- kcfg_mpvVideoOutput->setProperty("kcfg_property", QByteArray("currentText"));
-+ // FIXME: libmpv requires LC_NUMERIC category to be set to "C".. is there some nicer way to do this?
-+ std::setlocale(LC_NUMERIC, "C");
-+ m_mpv = mpv_create();
-+ mpv_request_log_messages(m_mpv, "info");
-+ if(mpv_initialize(m_mpv) >= 0) {
-+ getHelpResponse(); // make sure there are no log messages
-+ static QStringList bad = {
-+ QStringLiteral("libmpv"),
-+ QStringLiteral("null"),
-+ QStringLiteral("image"),
-+ QStringLiteral("tct"),
-+ QStringLiteral("caca"),
-+ QStringLiteral("pcm"),
-+ };
-+
-+ mpv_set_property_string(m_mpv, "vo", "help");
-+ for(QString row : getHelpResponse()) {
-+ int pos = row.indexOf(QChar(' '));
-+ if(pos == -1)
-+ continue;
-+ const QString name = row.left(pos);
-+ if(bad.contains(name))
-+ continue;
-+ row.insert(pos, "\t-");
-+ if(SCConfig::mpvVideoOutput() == name)
-+ kcfg_mpvVideoOutput->setCurrentIndex(kcfg_mpvHwDecode->count());
-+ kcfg_mpvVideoOutput->addItem(row, name);
-+ }
-+ kcfg_mpvVideoOutput->setProperty("kcfg_property", QByteArray("currentData"));
-+
-+ mpv_set_property_string(m_mpv, "hwdec", "help");
-+ kcfg_mpvHwDecode->addItem(QStringLiteral("auto\t- Choose best HW decoder"), QStringLiteral("auto"));
-+ for(QString row : getHelpResponse()) {
-+ int pos = row.indexOf(QChar(' '));
-+ if(pos == -1)
-+ continue;
-+ const QString name = row.left(pos);
-+ const QString lastName = kcfg_mpvHwDecode->itemData(kcfg_mpvHwDecode->count() - 1).toString();
-+ if(lastName == name || bad.contains(name))
-+ continue;
-+ if(SCConfig::mpvHwDecode() == name)
-+ kcfg_mpvHwDecode->setCurrentIndex(kcfg_mpvHwDecode->count());
-+ kcfg_mpvHwDecode->addItem(name, name);
-+ }
-+ kcfg_mpvHwDecode->setProperty("kcfg_property", QByteArray("currentData"));
-+
-+ mpv_set_property_string(m_mpv, "ao", "help");
-+ for(QString row : getHelpResponse()) {
-+ int pos = row.indexOf(QChar(' '));
-+ if(pos == -1)
-+ continue;
-+ const QString name = row.left(pos);
-+ if(bad.contains(name))
-+ continue;
-+ row.insert(pos, "\t-");
-+ if(SCConfig::mpvAudioOutput() == name)
-+ kcfg_mpvAudioOutput->setCurrentIndex(kcfg_mpvHwDecode->count());
-+ kcfg_mpvAudioOutput->addItem(row, name);
-+ }
-+ kcfg_mpvAudioOutput->setProperty("kcfg_property", QByteArray("currentData"));
-
-- kcfg_mpvHwDecode->addItems(QString("auto vdpau vaapi vaapi-copy").split(' '));
-- kcfg_mpvHwDecode->setProperty("kcfg_property", QByteArray("currentText"));
-+ mpv_detach_destroy(m_mpv);
-+ } else {
-+ kcfg_mpvVideoOutput->addItems(QString("vdpau vaapi opengl opengl-hq sdl xv wayland x11 null").split(' '));
-+ kcfg_mpvVideoOutput->setProperty("kcfg_property", QByteArray("currentText"));
-
-- kcfg_mpvAudioOutput->addItems(QString("pulse alsa oss portaudio jack null").split(' '));
-- kcfg_mpvAudioOutput->setProperty("kcfg_property", QByteArray("currentText"));
-+ kcfg_mpvHwDecode->addItems(QString("auto vdpau vaapi vaapi-copy").split(' '));
-+ kcfg_mpvHwDecode->setProperty("kcfg_property", QByteArray("currentText"));
-+
-+ kcfg_mpvAudioOutput->addItems(QString("pulse alsa oss portaudio jack null").split(' '));
-+ kcfg_mpvAudioOutput->setProperty("kcfg_property", QByteArray("currentText"));
-+ }
-+}
-+
-+const QStringList
-+MPVConfigWidget::getHelpResponse()
-+{
-+ QStringList res;
-+ while(m_mpv) {
-+ mpv_event *event = mpv_wait_event(m_mpv, .1);
-+ if(event->event_id == MPV_EVENT_LOG_MESSAGE) {
-+ mpv_event_log_message *msg = reinterpret_cast<mpv_event_log_message *>(event->data);
-+ if(msg->log_level == MPV_LOG_LEVEL_INFO && strcmp(msg->prefix, "cplayer") == 0) {
-+ QString row = QString::fromUtf8(msg->text).simplified();
-+ if(row.endsWith(QChar(':')))
-+ continue;
-+ res << row;
-+ }
-+ } else if(event->event_id == MPV_EVENT_NONE) {
-+ break;
-+ }
-+ }
-+ return res;
- }
-
- MPVConfigWidget::~MPVConfigWidget()
-diff --git a/src/videoplayerplugins/mpv/mpvconfigwidget.h b/src/videoplayerplugins/mpv/mpvconfigwidget.h
-index f4105d7..775b507 100644
---- a/src/videoplayerplugins/mpv/mpvconfigwidget.h
-+++ b/src/videoplayerplugins/mpv/mpvconfigwidget.h
-@@ -23,6 +23,8 @@
-
- #include "ui_mpvconfigwidget.h"
-
-+#include <mpv/client.h>
-+
- namespace SubtitleComposer {
- class MPVConfigWidget : public QWidget, private Ui::MPVConfigWidget
- {
-@@ -31,6 +33,12 @@ class MPVConfigWidget : public QWidget, private Ui::MPVConfigWidget
- public:
- explicit MPVConfigWidget(QWidget *parent = 0);
- virtual ~MPVConfigWidget();
-+
-+private:
-+ const QStringList getHelpResponse();
-+
-+private:
-+ mpv_handle *m_mpv;
- };
- }
-
---
-2.29.2
diff --git a/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-tests-optional.patch b/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-tests-optional.patch
deleted file mode 100644
index b2db3d9975e6..000000000000
--- a/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-tests-optional.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/src/core/CMakeLists.txt 2019-07-04 21:15:26.000891815 +0200
-+++ b/src/core/CMakeLists.txt 2019-07-04 21:15:26.005891858 +0200
-@@ -13,4 +13,6 @@
- CACHE INTERNAL EXPORTEDVARIABLE
- )
-
-+if(BUILD_TESTING)
- add_subdirectory(tests)
-+endif()
diff --git a/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-valid-desktop-file.patch b/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-valid-desktop-file.patch
deleted file mode 100644
index 932fc6770f04..000000000000
--- a/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-valid-desktop-file.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From ce2a1a94a6a0802d9a289d701e76b7975d5baa0d Mon Sep 17 00:00:00 2001
-From: Mladen Milinkovic <maxrd2@smoothware.net>
-Date: Thu, 9 Apr 2020 12:21:07 +0200
-Subject: [PATCH] Removed invalid subpicture/x-pgs mime - refs #20
-
----
- src/subtitlecomposer.desktop | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/subtitlecomposer.desktop b/src/subtitlecomposer.desktop
-index 4195b076..af8a80af 100644
---- a/src/subtitlecomposer.desktop
-+++ b/src/subtitlecomposer.desktop
-@@ -14,6 +14,6 @@
- Comment[hr]=KDE uređivač podnaslova
- Icon=subtitlecomposer
- Exec=subtitlecomposer %f
--MimeType=text/x-ssa;text/x-ass;text/x-microdvd;text/x-mpsub;application/x-subrip;text/x-subviewer;text/x-mplsub;text/x-tmplayer;text/x-tmplayer+;application/x-vobsub;subpicture/x-pgs;video/mp2t;application/x-vobsub;video/x-matroska;video/mp4;
-+MimeType=text/x-ssa;text/x-ass;text/x-microdvd;text/x-mpsub;application/x-subrip;text/x-subviewer;text/x-mplsub;text/x-tmplayer;text/x-tmplayer+;video/mp2t;application/x-vobsub;video/x-matroska;video/mp4;
- Terminal=false
- Categories=Qt;KDE;AudioVideo;
diff --git a/media-video/subtitlecomposer/metadata.xml b/media-video/subtitlecomposer/metadata.xml
index e0450d427a62..d14e6df997e3 100644
--- a/media-video/subtitlecomposer/metadata.xml
+++ b/media-video/subtitlecomposer/metadata.xml
@@ -9,9 +9,6 @@
<email>kde@gentoo.org</email>
<name>Gentoo KDE Project</name>
</maintainer>
- <use>
- <flag name="mpv">Build mpv backend support</flag>
- </use>
<upstream>
<bugs-to>https://bugs.kde.org/</bugs-to>
</upstream>
diff --git a/media-video/subtitlecomposer/subtitlecomposer-0.7.0.ebuild b/media-video/subtitlecomposer/subtitlecomposer-0.7.0.ebuild
deleted file mode 100644
index 6dbfebafa05d..000000000000
--- a/media-video/subtitlecomposer/subtitlecomposer-0.7.0.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ECM_TEST="forceoptional"
-KFMIN=5.60.0
-QTMIN=5.12.3
-VIRTUALX_REQUIRED="test"
-inherit ecm
-
-DESCRIPTION="Text-based subtitles editor"
-HOMEPAGE="https://subtitlecomposer.kde.org/"
-SRC_URI="https://github.com/maxrd2/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="5"
-KEYWORDS="amd64 x86"
-IUSE="gstreamer mpv unicode xine"
-
-BDEPEND="
- sys-devel/gettext
- virtual/pkgconfig
-"
-DEPEND="
- >=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/kross-${KFMIN}:5
- >=kde-frameworks/ktextwidgets-${KFMIN}:5
- >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
- >=kde-frameworks/kxmlgui-${KFMIN}:5
- >=kde-frameworks/sonnet-${KFMIN}:5
- media-libs/phonon[qt5(+)]
- gstreamer? (
- dev-libs/glib:2
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0
- )
- media-video/ffmpeg:0=
- mpv? ( media-video/mpv[libmpv] )
- unicode? ( dev-libs/icu:= )
- xine? (
- media-libs/xine-lib
- x11-libs/libX11
- x11-libs/libxcb
- )
-"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}/${P}-tests-optional.patch"
- "${FILESDIR}/${P}-valid-desktop-file.patch" # bug 745429
- "${FILESDIR}/${P}-mpv-0.33.patch" # bug 760006
-)
-
-S="${WORKDIR}/SubtitleComposer-${PV}"
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_DISABLE_FIND_PACKAGE_PocketSphinx=ON # bug 616706
- $(cmake_use_find_package gstreamer GStreamer)
- $(cmake_use_find_package mpv MPV)
- $(cmake_use_find_package unicode ICU)
- $(cmake_use_find_package xine Xine)
- $(cmake_use_find_package xine X11)
- )
-
- ecm_src_configure
-}
-
-pkg_postinst() {
- ecm_pkg_postinst
-
- elog "Some example scripts provided by ${PN} require dev-lang/ruby"
- elog "or dev-lang/python to be installed."
-}