Hello community, here is the log from the commit of package QMPlay2 for openSUSE:Factory checked in at 2017-08-29 11:44:44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/QMPlay2 (Old) and /work/SRC/openSUSE:Factory/.QMPlay2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "QMPlay2" Tue Aug 29 11:44:44 2017 rev:25 rq:519048 version:17.07.25 Changes: -------- --- /work/SRC/openSUSE:Factory/QMPlay2/QMPlay2.changes 2017-08-24 18:38:13.333215196 +0200 +++ /work/SRC/openSUSE:Factory/.QMPlay2.new/QMPlay2.changes 2017-08-29 11:44:59.496618591 +0200 @@ -1,0 +2,13 @@ +Sat Aug 26 08:33:58 UTC 2017 - dap.darkness@gmail.com + +- Update to 17.07.25: + * minor CUVID bugfix (missing PTS in some videos), + * added option to hide artist metadata, + * Tekstowo: minor improvement, + * don't delete Radio settings, + * minor QPainter bugfix, + * fix YouTube images. +- Removed obsoletion actual till Leap 42.1. +- Finally replaced QMPlay2-no-prostopleer.diff by cmake option. + +------------------------------------------------------------------- Old: ---- QMPlay2-no-prostopleer.diff QMPlay2-src-17.06.09.tar.xz New: ---- QMPlay2-src-17.07.25.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ QMPlay2.spec ++++++ --- /var/tmp/diff_new_pack.4q21yG/_old 2017-08-29 11:45:00.492478209 +0200 +++ /var/tmp/diff_new_pack.4q21yG/_new 2017-08-29 11:45:00.500477082 +0200 @@ -17,17 +17,14 @@ Name: QMPlay2 -Version: 17.06.09 +Version: 17.07.25 Release: 0 Summary: A Qt based media player, streamer and downloader License: LGPL-3.0+ Group: Productivity/Multimedia/Video/Players Url: http://qt-apps.org/content/show.php/QMPlay2?content=153339 Source: https://github.com/zaps166/QMPlay2/releases/download/%{version}/QMPlay2-src-%{version}.tar.xz -# PATCH-FIX-OPENSUSE vs. Prostopleer extension that provides illegal audio. -# NOTE Please don't remove the patch because of source update, -# just update the patch! -Patch1: QMPlay2-no-prostopleer.diff + # PATCH-FIX-OPENSUSE vs. WARNING: invalid-desktopfile contains group, # but ones extending the format should start with "X-". Patch2: QMPlay2-desktop-warnings.diff @@ -62,7 +59,6 @@ Requires(postun): shared-mime-info Requires(postun): update-desktop-files Recommends: youtube-dl -Obsoletes: %{name}-kde-integration <= %{version} %description %{name} is a video player, it can play and stream all formats supported by @@ -78,12 +74,12 @@ %prep %setup -q -n %{name}-src-%{version} -%patch1 %patch2 %build %cmake \ -DCMAKE_INSTALL_LIBDIR=%{_libdir} \ + -DUSE_PROSTOPLEER=OFF \ -DCMAKE_BUILD_TYPE=RelWithDebInfo make V=1 %{?_smp_mflags} ++++++ QMPlay2-src-17.06.09.tar.xz -> QMPlay2-src-17.07.25.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/ChangeLog new/QMPlay2-src-17.07.25/ChangeLog --- old/QMPlay2-src-17.06.09/ChangeLog 2017-06-09 22:39:42.000000000 +0200 +++ new/QMPlay2-src-17.07.25/ChangeLog 2017-07-25 20:52:12.000000000 +0200 @@ -1,3 +1,11 @@ +Changes in QMPlay2 build 17.07.25: + - minor CUVID bugfix (missing PTS in some videos), + - added option to hide artist metadata, + - Tekstowo: minor improvement, + - don't delete Radio settings, + - minor QPainter bugfix, + - fix YouTube images, + Changes in QMPlay2 build 17.06.09: - load next video decoder if current video decoder fails (fixes some VideoToolBox problems), - more accurate seeking (use double type instead of seconds in integer), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/README.md new/QMPlay2-src-17.07.25/README.md --- old/QMPlay2-src-17.06.09/README.md 2017-04-16 18:42:15.000000000 +0200 +++ new/QMPlay2-src-17.07.25/README.md 2017-07-25 18:07:57.000000000 +0200 @@ -74,7 +74,7 @@ - Make sure that antivirus or firewall doesn't block "youtube-dl" and doesn't block executing external applications! -##Spherical view +## Spherical view QMPlay2 supports spherical view on OpenGL video output. You can watch e.g. YouTube spherical videos by pressing "Ctrl+3". You can also enable it from the menu: "Playback->Video filters->Spherical view". @@ -288,7 +288,7 @@ - `USE_VISUALIZATIONS` - ON: enable/disable Visualizations module. - `USE_AUDIOFILTERS` - ON: enable/disable AudioFilters module. - `USE_VIDEOFILTERS` - ON: enable/disable VideoFilters module. - - `USE_OPENGL2` - `ON`: enable/disable OpenGL2 module. + - `USE_OPENGL2` - `ON`: enable/disable OpenGL2 module and OpenGL in Visualizations. - `USE_AUDIOCD` - autodetect: enabled if libcdio and libcddb exist: enable/disable AudioCD module. - `USE_ALSA` - `ON` on Linux: enable/disable ALSA module. - `USE_PORTAUDIO` - `ON` on non-Linux OS: enable/disable PortAudio module. @@ -313,6 +313,7 @@ - Qt4: `QT_QMAKE_EXECUTABLE`: path to the `qmake` executable from Qt4. - Qt5: - `Qt5Widgets_DIR`: path to the Qt5Widgets cmake directory (e.g. `~/qtbase/lib/cmake/Qt5Widgets`). + - `Qt5DBus_DIR`: path to the Qt5DBus cmake directory (e.g. `~/qtbase/lib/cmake/Qt5DBus`). - `Qt5LinguistTools_DIR`: path to the Qt5LinguistTools cmake directory (e.g. `~/qtbase/lib/cmake/Qt5LinguistTools`). Every CMake option must be prepended with `-D` and new value is set after `=`. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/lang/de.ts new/QMPlay2-src-17.07.25/lang/de.ts --- old/QMPlay2-src-17.06.09/lang/de.ts 2017-06-08 23:28:18.000000000 +0200 +++ new/QMPlay2-src-17.07.25/lang/de.ts 2017-07-20 23:09:11.000000000 +0200 @@ -936,6 +936,10 @@ <source>Automatically delete ungrouped entries</source> <translation type="unfinished"></translation> </message> + <message> + <source>Hide artist metadata</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Help</name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/lang/es.ts new/QMPlay2-src-17.07.25/lang/es.ts --- old/QMPlay2-src-17.06.09/lang/es.ts 2017-06-08 23:28:18.000000000 +0200 +++ new/QMPlay2-src-17.07.25/lang/es.ts 2017-07-20 23:09:11.000000000 +0200 @@ -936,6 +936,10 @@ <source>Automatically delete ungrouped entries</source> <translation type="unfinished"></translation> </message> + <message> + <source>Hide artist metadata</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Help</name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/lang/fr.ts new/QMPlay2-src-17.07.25/lang/fr.ts --- old/QMPlay2-src-17.06.09/lang/fr.ts 2017-06-08 23:28:18.000000000 +0200 +++ new/QMPlay2-src-17.07.25/lang/fr.ts 2017-07-20 23:09:11.000000000 +0200 @@ -936,6 +936,10 @@ <source>Automatically delete ungrouped entries</source> <translation type="unfinished"></translation> </message> + <message> + <source>Hide artist metadata</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Help</name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/lang/pl.ts new/QMPlay2-src-17.07.25/lang/pl.ts --- old/QMPlay2-src-17.06.09/lang/pl.ts 2017-06-08 23:28:18.000000000 +0200 +++ new/QMPlay2-src-17.07.25/lang/pl.ts 2017-07-20 23:09:49.000000000 +0200 @@ -936,6 +936,10 @@ <source>Automatically delete ungrouped entries</source> <translation>Automatycznie usuwaj niepogrupowane wpisy</translation> </message> + <message> + <source>Hide artist metadata</source> + <translation>Ukryj metadane artysty</translation> + </message> </context> <context> <name>Help</name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/lang/ru.ts new/QMPlay2-src-17.07.25/lang/ru.ts --- old/QMPlay2-src-17.06.09/lang/ru.ts 2017-06-08 23:28:18.000000000 +0200 +++ new/QMPlay2-src-17.07.25/lang/ru.ts 2017-07-20 23:09:11.000000000 +0200 @@ -936,6 +936,10 @@ <source>Automatically delete ungrouped entries</source> <translation type="unfinished"></translation> </message> + <message> + <source>Hide artist metadata</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Help</name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/lang/zh.ts new/QMPlay2-src-17.07.25/lang/zh.ts --- old/QMPlay2-src-17.06.09/lang/zh.ts 2017-06-08 23:28:18.000000000 +0200 +++ new/QMPlay2-src-17.07.25/lang/zh.ts 2017-07-20 23:09:11.000000000 +0200 @@ -936,6 +936,10 @@ <source>Automatically delete ungrouped entries</source> <translation type="unfinished"></translation> </message> + <message> + <source>Hide artist metadata</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Help</name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/gui/SettingsWidget.cpp new/QMPlay2-src-17.07.25/src/gui/SettingsWidget.cpp --- old/QMPlay2-src-17.06.09/src/gui/SettingsWidget.cpp 2017-05-15 23:43:13.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/gui/SettingsWidget.cpp 2017-07-20 23:12:02.000000000 +0200 @@ -157,6 +157,7 @@ #ifdef QMPLAY2_ALLOW_ONLY_ONE_INSTANCE QMPSettings.init("AllowOnlyOneInstance", false); #endif + QMPSettings.init("HideArtistMetadata", false); QMPSettings.init("DisplayOnlyFileName", false); QMPSettings.init("RestoreRepeatMode", false); QMPSettings.init("StillImages", false); @@ -379,6 +380,7 @@ page1->allowOnlyOneInstance = nullptr; #endif + page1->hideArtistMetadata->setChecked(QMPSettings.getBool("HideArtistMetadata")); page1->displayOnlyFileName->setChecked(QMPSettings.getBool("DisplayOnlyFileName")); page1->restoreRepeatMode->setChecked(QMPSettings.getBool("RestoreRepeatMode")); page1->stillImages->setChecked(QMPSettings.getBool("StillImages")); @@ -773,6 +775,7 @@ #ifdef QMPLAY2_ALLOW_ONLY_ONE_INSTANCE QMPSettings.set("AllowOnlyOneInstance", page1->allowOnlyOneInstance->isChecked()); #endif + QMPSettings.set("HideArtistMetadata", page1->hideArtistMetadata->isChecked()); QMPSettings.set("DisplayOnlyFileName", page1->displayOnlyFileName->isChecked()); QMPSettings.set("RestoreRepeatMode", page1->restoreRepeatMode->isChecked()); QMPSettings.set("StillImages", page1->stillImages->isChecked()); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/gui/Ui/SettingsGeneral.ui new/QMPlay2-src-17.07.25/src/gui/Ui/SettingsGeneral.ui --- old/QMPlay2-src-17.06.09/src/gui/Ui/SettingsGeneral.ui 2017-05-04 00:26:19.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/gui/Ui/SettingsGeneral.ui 2017-07-20 23:11:48.000000000 +0200 @@ -68,14 +68,14 @@ </layout> </widget> </item> - <item row="13" column="0"> + <item row="14" column="0"> <widget class="QPushButton" name="setKeyBindingsB"> <property name="text"> <string>Set key bindings</string> </property> </widget> </item> - <item row="12" column="0"> + <item row="13" column="0"> <layout class="QHBoxLayout" name="horizontalLayout_3"> <property name="spacing"> <number>3</number> @@ -285,21 +285,21 @@ </property> </widget> </item> - <item row="6" column="0"> + <item row="7" column="0"> <widget class="QCheckBox" name="displayOnlyFileName"> <property name="text"> <string>Always display only file names in playlist</string> </property> </widget> </item> - <item row="7" column="0"> + <item row="8" column="0"> <widget class="QCheckBox" name="restoreRepeatMode"> <property name="text"> <string>Remember repeat mode</string> </property> </widget> </item> - <item row="11" column="0"> + <item row="12" column="0"> <widget class="QGroupBox" name="proxyB"> <property name="title"> <string>Use proxy server</string> @@ -364,7 +364,7 @@ </layout> </widget> </item> - <item row="1" column="1" rowspan="11"> + <item row="1" column="1" rowspan="12"> <spacer name="horizontalSpacer"> <property name="orientation"> <enum>Qt::Horizontal</enum> @@ -377,7 +377,7 @@ </property> </spacer> </item> - <item row="14" column="0" colspan="2"> + <item row="15" column="0" colspan="2"> <spacer name="verticalSpacer"> <property name="orientation"> <enum>Qt::Vertical</enum> @@ -390,27 +390,34 @@ </property> </spacer> </item> - <item row="8" column="0"> + <item row="9" column="0"> <widget class="QCheckBox" name="stillImages"> <property name="text"> <string>Read and display still images</string> </property> </widget> </item> - <item row="9" column="0"> + <item row="10" column="0"> <widget class="QCheckBox" name="trayNotifiesDefault"> <property name="text"> <string>Use tray notifications as default</string> </property> </widget> </item> - <item row="10" column="0"> + <item row="11" column="0"> <widget class="QCheckBox" name="autoDelNonGroupEntries"> <property name="text"> <string>Automatically delete ungrouped entries</string> </property> </widget> </item> + <item row="6" column="0"> + <widget class="QCheckBox" name="hideArtistMetadata"> + <property name="text"> + <string>Hide artist metadata</string> + </property> + </widget> + </item> </layout> </widget> </widget> @@ -436,6 +443,7 @@ <tabstop>autoOpenVideoWindowB</tabstop> <tabstop>tabsNorths</tabstop> <tabstop>allowOnlyOneInstance</tabstop> + <tabstop>hideArtistMetadata</tabstop> <tabstop>displayOnlyFileName</tabstop> <tabstop>restoreRepeatMode</tabstop> <tabstop>stillImages</tabstop> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/AudioCD/AudioCDDemux.cpp new/QMPlay2-src-17.07.25/src/modules/AudioCD/AudioCDDemux.cpp --- old/QMPlay2-src-17.06.09/src/modules/AudioCD/AudioCDDemux.cpp 2017-05-04 00:26:19.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/AudioCD/AudioCDDemux.cpp 2017-07-20 23:11:13.000000000 +0200 @@ -131,14 +131,15 @@ QString AudioCDDemux::title() const { QString prefix, suffix; + const QString artist = QMPlay2Core.getSettings().getBool("HideArtistMetadata") ? QString() : Artist; if (isData) suffix = " - " + tr("Data"); - else if (!Title.isEmpty() && !Artist.isEmpty()) - return Artist + " - " + Title; + else if (!Title.isEmpty() && !artist.isEmpty()) + return artist + " - " + Title; else if (!Title.isEmpty()) return Title; - else if (!Artist.isEmpty()) - prefix = Artist + " - "; + else if (!artist.isEmpty()) + prefix = artist + " - "; return prefix + tr("Track") + " " + QString::number(trackNo) + suffix; } QList<QMPlay2Tag> AudioCDDemux::tags() const diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/Extensions/MediaBrowser/AnimeOdcinki.cpp new/QMPlay2-src-17.07.25/src/modules/Extensions/MediaBrowser/AnimeOdcinki.cpp --- old/QMPlay2-src-17.06.09/src/modules/Extensions/MediaBrowser/AnimeOdcinki.cpp 2017-04-26 17:56:54.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/Extensions/MediaBrowser/AnimeOdcinki.cpp 2017-07-20 21:41:05.000000000 +0200 @@ -28,7 +28,7 @@ using EmbeddedPlayers = std::vector<Json>; -constexpr char g_url[] = "https://anime-odcinki.pl/anime/"; +constexpr char g_url[] = "https://a-o.ninja/anime/"; constexpr char g_linkexpander[] = "http://www.linkexpander.com/get_url.php"; static AnimeOdcinki::AnimePairList parseAnimeList(const QByteArray &data, AnimeOdcinki::AnimePair *episodeImgDescr) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/Extensions/Radio.cpp new/QMPlay2-src-17.07.25/src/modules/Extensions/Radio.cpp --- old/QMPlay2-src-17.06.09/src/modules/Extensions/Radio.cpp 2017-05-14 17:36:25.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/Extensions/Radio.cpp 2017-07-20 21:39:22.000000000 +0200 @@ -97,32 +97,34 @@ } Radio::~Radio() { - QStringList myRadios; - for (QListWidgetItem *item : ui->myRadioListWidget->findItems(QString(), Qt::MatchContains)) - myRadios += item->text() + '\n' + item->data(Qt::UserRole).toString(); - Settings("Radio").set("Radia", myRadios); - + if (m_once) { - const QList<int> splitterSizesInt = ui->splitter->sizes(); - QByteArray splitterSizes; - QDataStream stream(&splitterSizes, QIODevice::WriteOnly); - for (int i = 0; i < splitterSizesInt.count(); ++i) - stream << splitterSizesInt[i]; - sets().set("Radio/SplitterSizes", splitterSizes.toBase64()); - } + QStringList myRadios; + for (QListWidgetItem *item : ui->myRadioListWidget->findItems(QString(), Qt::MatchContains)) + myRadios += item->text() + '\n' + item->data(Qt::UserRole).toString(); + Settings("Radio").set("Radia", myRadios); - { - QByteArray columnSizes; - QDataStream stream(&columnSizes, QIODevice::WriteOnly); - const int columnCount = m_radioBrowserModel->columnCount(QModelIndex()); - for (int i = 0; i < columnCount; ++i) - stream << ui->radioView->columnWidth(i); - sets().set("Radio/ColumnSizes", columnSizes.toBase64()); - } + { + const QList<int> splitterSizesInt = ui->splitter->sizes(); + QByteArray splitterSizes; + QDataStream stream(&splitterSizes, QIODevice::WriteOnly); + for (int i = 0; i < splitterSizesInt.count(); ++i) + stream << splitterSizesInt[i]; + sets().set("Radio/SplitterSizes", splitterSizes.toBase64()); + } - sets().set("Radio/CurrentTab", currentIndex()); - sets().set("Radio/SearchByIndex", ui->searchByComboBox->currentIndex()); + { + QByteArray columnSizes; + QDataStream stream(&columnSizes, QIODevice::WriteOnly); + const int columnCount = m_radioBrowserModel->columnCount(QModelIndex()); + for (int i = 0; i < columnCount; ++i) + stream << ui->radioView->columnWidth(i); + sets().set("Radio/ColumnSizes", columnSizes.toBase64()); + } + sets().set("Radio/CurrentTab", currentIndex()); + sets().set("Radio/SearchByIndex", ui->searchByComboBox->currentIndex()); + } delete ui; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/Extensions/Tekstowo.cpp new/QMPlay2-src-17.07.25/src/modules/Extensions/Tekstowo.cpp --- old/QMPlay2-src-17.06.09/src/modules/Extensions/Tekstowo.cpp 2017-05-14 17:51:14.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/Extensions/Tekstowo.cpp 2017-07-20 22:30:38.000000000 +0200 @@ -146,18 +146,34 @@ quint8 artistScore = 0, titleScore = 0; if (artist == m_artist) - artistScore += 3; + artistScore += 4; else if (m_artist.contains(artist)) - artistScore += 2; + artistScore += 3; else if (artist.contains(m_artist)) - artistScore += 1; + artistScore += 2; + else + { + // Compare all words separately - useful if artist words are in different order + const QStringList words = artist.split(' '); + if (words.count() > 1) + { + int matchWords = 0; + for (const QString &word : words) + { + if (m_artist.contains(word)) + ++matchWords; + } + if (matchWords == words.count()) + artistScore += 1; + } + } if (title == m_title) - titleScore += 3; + titleScore += 4; else if (m_title.contains(title)) - titleScore += 2; + titleScore += 3; else if (title.contains(m_title)) - titleScore += 1; + titleScore += 2; if (artistScore > 0 && titleScore > 0) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/Extensions/YouTube.cpp new/QMPlay2-src-17.07.25/src/modules/Extensions/YouTube.cpp --- old/QMPlay2-src-17.06.09/src/modules/Extensions/YouTube.cpp 2017-04-26 17:56:54.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/Extensions/YouTube.cpp 2017-07-02 23:25:37.000000000 +0200 @@ -883,10 +883,12 @@ if (imgEndIdx > -1) { image = entry.mid(imgIdx, imgEndIdx - imgIdx); - if (image.endsWith(".gif")) //GIF nie jest miniaturką - jest to pojedynczy piksel :D + if (image.endsWith(".gif")) //GIF nie jest miniaturką - jest to pojedynczy piksel :D (very old code, is it still relevant?) image.clear(); else if (image.startsWith("//")) image.prepend("https:"); + if ((idx = image.indexOf("?")) > 0) + image.truncate(idx); } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/FFmpeg/FormatContext.cpp new/QMPlay2-src-17.07.25/src/modules/FFmpeg/FormatContext.cpp --- old/QMPlay2-src-17.06.09/src/modules/FFmpeg/FormatContext.cpp 2017-05-14 17:56:09.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/FFmpeg/FormatContext.cpp 2017-07-24 19:06:24.000000000 +0200 @@ -231,6 +231,7 @@ lastTime(0.0), invalErrCount(0), errFromSeek(0), maybeHasFrame(false), + artistWithTitle(true), stillImage(false), avcodec_mutex(avcodec_mutex) {} @@ -332,7 +333,7 @@ if (AVDictionary *dict = getMetadata()) { const QString title = getTag(dict, "title"); - const QString artist = getTag(dict, "artist"); + const QString artist = artistWithTitle ? getTag(dict, "artist") : QString(); if (!title.isEmpty() && !artist.isEmpty()) return artist + " - " + title; else if (title.isEmpty() && !artist.isEmpty()) @@ -704,6 +705,10 @@ if (scheme.isEmpty()) return false; + const Settings &settings = QMPlay2Core.getSettings(); + + artistWithTitle = !settings.getBool("HideArtistMetadata"); + qint64 oggOffset = -1, oggSize = -1; int oggTrack = -1; QString url; @@ -754,6 +759,9 @@ av_dict_set(&options, "skip_initial_bytes", QString::number(oggOffset).toLatin1(), 0); } + // Useful, e.g. CUVID decoder needs valid PTS + formatCtx->flags |= AVFMT_FLAG_GENPTS; + OpenFmtCtxThr *openThr = new OpenFmtCtxThr(formatCtx, url.toUtf8(), inputFmt, options, abortCtx); formatCtx = openThr->getFormatCtx(); openThr->drop(); @@ -762,7 +770,7 @@ if (name().startsWith("image2") || name().endsWith("_pipe")) { - if (!QMPlay2Core.getSettings().getBool("StillImages")) + if (!settings.getBool("StillImages")) return false; stillImage = true; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/FFmpeg/FormatContext.hpp new/QMPlay2-src-17.07.25/src/modules/FFmpeg/FormatContext.hpp --- old/QMPlay2-src-17.06.09/src/modules/FFmpeg/FormatContext.hpp 2017-05-04 00:26:19.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/FFmpeg/FormatContext.hpp 2017-07-20 22:58:21.000000000 +0200 @@ -104,6 +104,7 @@ int invalErrCount, errFromSeek; bool maybeHasFrame; + bool artistWithTitle; bool stillImage; #if LIBAVFORMAT_VERSION_MAJOR <= 55 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/QPainter/QPainterWriter.cpp new/QMPlay2-src-17.07.25/src/modules/QPainter/QPainterWriter.cpp --- old/QMPlay2-src-17.06.09/src/modules/QPainter/QPainterWriter.cpp 2017-03-25 21:55:10.000000000 +0100 +++ new/QMPlay2-src-17.07.25/src/modules/QPainter/QPainterWriter.cpp 2017-07-25 20:47:56.000000000 +0200 @@ -90,7 +90,7 @@ QPainter p(this); p.translate(X, Y); - p.drawImage(0, 0, img); + p.drawImage(QRect(0, 0, W, H), img); osd_mutex.lock(); if (!osd_list.isEmpty()) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/Visualizations/CMakeLists.txt new/QMPlay2-src-17.07.25/src/modules/Visualizations/CMakeLists.txt --- old/QMPlay2-src-17.06.09/src/modules/Visualizations/CMakeLists.txt 2017-04-16 18:53:52.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/Visualizations/CMakeLists.txt 2017-07-20 22:39:16.000000000 +0200 @@ -33,7 +33,7 @@ icon.qrc ) -if(USE_QT5 AND NOT Qt5Widgets_VERSION LESS 5.6.0) +if(USE_OPENGL2 AND USE_QT5 AND NOT Qt5Widgets_VERSION LESS 5.6.0) add_definitions(-DUSE_OPENGL) endif() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/modules/Visualizations/Visualizations.cpp new/QMPlay2-src-17.07.25/src/modules/Visualizations/Visualizations.cpp --- old/QMPlay2-src-17.06.09/src/modules/Visualizations/Visualizations.cpp 2017-06-07 19:31:40.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/modules/Visualizations/Visualizations.cpp 2017-07-02 23:17:31.000000000 +0200 @@ -25,12 +25,14 @@ #include <QGuiApplication> #endif +constexpr int g_ms = 17; + Visualizations::Visualizations() : Module("Visualizations") { m_icon = QIcon(":/Visualizations.svgz"); - int ms = 17; + int ms = g_ms; #ifdef USE_OPENGL const QString platformName = QGuiApplication::platformName(); @@ -91,7 +93,7 @@ useOpenGLB->setChecked(sets().getBool("UseOpenGL")); useOpenGLB->setToolTip(tr("Always enabled on Wayland platform.\nRecommended to use when OpenGL video output is in RTT mode.")); connect(useOpenGLB, &QCheckBox::toggled, [this](bool checked) { - refTimeB->setValue(checked ? 10 : 22); + refTimeB->setValue(checked ? 10 : g_ms); }); #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/QMPlay2-src-17.06.09/src/qmplay2/Version.cpp new/QMPlay2-src-17.07.25/src/qmplay2/Version.cpp --- old/QMPlay2-src-17.06.09/src/qmplay2/Version.cpp 2017-06-09 22:39:51.000000000 +0200 +++ new/QMPlay2-src-17.07.25/src/qmplay2/Version.cpp 2017-07-25 20:52:19.000000000 +0200 @@ -25,7 +25,7 @@ #ifndef QMPlay2GitHEAD #define QMPlay2GitHEAD #endif -#define QMPlay2Version "17.06.09" QMPlay2GitHEAD +#define QMPlay2Version "17.07.25" QMPlay2GitHEAD QByteArray Version::get() {
participants (1)
-
root@hilbert.suse.de