diff options
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." -} |