Hello community,
here is the log from the commit of package smtube for openSUSE:Factory checked in at 2016-01-01 19:47:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/smtube (Old)
and /work/SRC/openSUSE:Factory/.smtube.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "smtube"
Changes:
--------
--- /work/SRC/openSUSE:Factory/smtube/smtube.changes 2015-10-02 09:23:34.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.smtube.new/smtube.changes 2016-01-01 19:49:58.000000000 +0100
@@ -1,0 +2,7 @@
+Sun Dec 27 12:44:41 UTC 2015 - cornelis@solcon.nl
+
+- Update to 15.11.0:
+ * Fix for VEVO videos.
+ * Add support for YouTube live streams.
+
+-------------------------------------------------------------------
Old:
----
smtube-15.9.0.tar.bz2
New:
----
smtube-15.11.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ smtube.spec ++++++
--- /var/tmp/diff_new_pack.81HVR0/_old 2016-01-01 19:49:59.000000000 +0100
+++ /var/tmp/diff_new_pack.81HVR0/_new 2016-01-01 19:49:59.000000000 +0100
@@ -1,8 +1,8 @@
#
# spec file for package smtube
#
-# Copyright (c) 2012 Pascal Bleser
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2012 Pascal Bleser
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,13 +16,14 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
+
Name: smtube
-Version: 15.9.0
+Version: 15.11.0
Release: 0
Summary: Small Youtube Browser
License: GPL-2.0+
Group: Productivity/Multimedia/Video/Players
-URL: http://smtube.sourceforge.net/
+Url: http://smtube.sourceforge.net/
Source0: http://sourceforge.net/projects/smtube/files/SMTube/%{version}/smtube-%{version}.tar.bz2
# Fix 'File is compiled without RPM_OPT_FLAGS'
Patch0: %{name}-src_%{name}.pro.patch
++++++ smtube-15.9.0.tar.bz2 -> smtube-15.11.0.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/Changelog new/smtube-15.11.0/Changelog
--- old/smtube-15.9.0/Changelog 2015-09-25 23:33:23.000000000 +0200
+++ new/smtube-15.11.0/Changelog 2015-11-18 01:21:40.000000000 +0100
@@ -1,3 +1,16 @@
+Version 15.11:
+
+(2015-11-17)
+ * Add support for YouTube live streams.
+ * Add the Hebrew translation.
+
+(2015-11-10)
+ * Fix the signature code.
+
+(2015-11-04)
+ * Open m3u8 URLs.
+
+
Version 15.9:
(2015-09-24)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/Release_notes.txt new/smtube-15.11.0/Release_notes.txt
--- old/smtube-15.9.0/Release_notes.txt 2015-09-25 23:33:23.000000000 +0200
+++ new/smtube-15.11.0/Release_notes.txt 2015-11-18 01:21:40.000000000 +0100
@@ -1,10 +1,10 @@
-Version 15.9
+Version 15.11
+ * Fix for VEVO videos.
+ * Add support for YouTube live streams.
+Version 15.9
* Fix the 'can't find URL' error when using Qt 5.
-
Version 15.8
-
* Improve support for VEVO videos.
* Possibility to play the audio only.
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/create_deb.sh new/smtube-15.11.0/create_deb.sh
--- old/smtube-15.9.0/create_deb.sh 2015-09-27 23:24:38.000000000 +0200
+++ new/smtube-15.11.0/create_deb.sh 2015-11-18 23:47:42.000000000 +0100
@@ -4,7 +4,7 @@
cp debian-rvm/changelog-orig debian-rvm/changelog
./get_svn_revision.sh
-#dch -v 15.9.0-`cat svn_revision` "New version"
+#dch -v 15.11.0-`cat svn_revision` "New version"
#dpkg-buildpackage -rfakeroot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/debian-rvm/changelog-orig new/smtube-15.11.0/debian-rvm/changelog-orig
--- old/smtube-15.9.0/debian-rvm/changelog-orig 2015-09-27 23:24:38.000000000 +0200
+++ new/smtube-15.11.0/debian-rvm/changelog-orig 2015-11-18 23:47:42.000000000 +0100
@@ -1,3 +1,10 @@
+smtube (15.11.0) precise; urgency=low
+
+ * Fix for VEVO videos.
+ * Add support for YouTube live streams.
+
+ -- Ricardo Villalba Wed, 18 Nov 2015 23:43:18 +0100
+
smtube (15.9.0) precise; urgency=low
* Fix the 'can't find URL' error when using Qt 5.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/smtube.desktop new/smtube-15.11.0/smtube.desktop
--- old/smtube-15.9.0/smtube.desktop 2015-09-27 23:14:42.000000000 +0200
+++ new/smtube-15.11.0/smtube.desktop 2015-11-18 02:01:10.000000000 +0100
@@ -1,75 +1,111 @@
[Desktop Entry]
Exec=smtube
-Comment=Browse and search from YouTube
-GenericName=Youtube Browser
+Comment=Browse and search videos from YouTube
+GenericName=YouTube Browser for SMPlayer
Icon=smtube
-Name=YouTube Browser for SMPlayer
+Name=SMTube
Type=Application
Categories=Qt;KDE;AudioVideo;Player;Video;
# Translations
-Comment[gl]=Navegar e buscar en YouTube
-GenericName[gl]=Navegador de YouTube
-Name[gl]=Navegador de YouTube para SMPlayer
-Icon[gl]=smtube
+Comment[am]=ከ ዩቲዩብ መቃኛ እና መፈጊያ
+GenericName[am]=ከ ዩቲዩብ መቃኛ ለ SMP ማጫወቻ
+Name[am]=SMTube
+
+Comment[bg]=Прелистване и търсене в YouTube
+GenericName[bg]=YouTube браузър за SMPlayer
+Name[bg]=SMTube
+
+Comment[cs]=Procházet a hledat na YouTube
+GenericName[cs]=Prohlížeč YouTube pro SMPlayer
+Name[cs]=SMTube
-Comment[ms_MY]=Layar dan gelintar Youtube
-GenericName[ms_MY]=Pelayar Youtube
-Name[ms_MY]=Pelayar YouTube untuk SMPlayer
-Icon[ms_MY]=smtube
+Comment[da]=Gennemse og søg fra YouTube
+GenericName[da]=YouTube-browser til SMPlayer
+Name[da]=SMTube
-Comment[pt]=Explorar e pesquisar vídeos no YouTube
-GenericName[pt]=Explorador YouTube
-Name[pt]=Explorador YouTube para o SMPlayer
-Icon[pt]=smtube
+Comment[de]=YouTube durchsuchen
+GenericName[de]=YouTube-Browser für SMPlayer
+Name[de]=SMTube
-Comment[pt_BR]=Navegar e procurar no YouTube
-GenericName[pt_BR]=Navegador do YouTube
-Name[pt_BR]=Navegador do YouTube para o SMPlayer
-Icon[pt_BR]=smtube
+Comment[el]=Περιήγηση και αναζήτηση στο YouTube
+GenericName[el]=Περιηγητής του YouTube για το SMPlayer
+Name[el]=SMTube
-Comment[ru]=Просмотр и поиск по YouTube
-GenericName[ru]=Браузер YouTube
-Name[ru]=Браузер YouTube для SMPlayer
-Icon[ru]=smtube
+Comment[es]=Permite buscar vídeos de YouTube
+GenericName[es]=Buscador de vídeos de YouTube de SMPlayer
+Name[es]=SMTube
+
+Comment[eu]=Nabigatu eta bilatu YouTuben
+GenericName[eu]=YouTube Nabigatzailea SMPlayer-erako
+Name[eu]=SMTube
+
+Comment[fa]=مرور و جست و جو در یوتیوب
+GenericName[fa]=مرورگر یوتیوب برای SMPlayer
+Name[fa]=SMTube
+
+Comment[fr]=Naviguer et chercher sur YouTube
+GenericName[fr]=Navigateur YouTube pour SMPlayer
+Name[fr]=SMTube
+
+Comment[gl]=Navegar e buscar en YouTube
+GenericName[gl]=Navegador de YouTube para SMPlayer
+Name[gl]=SMTube
+
+Comment[he]=עיין וחפש מתוך YouTube
+GenericName[he]=מעלעל YouTube עבור SMPlayer
+Name[he]=SMTube
+
+Comment[hr]=Pregledavajte i pretražujte YouTube
+GenericName[hr]=YouTube preglednik za SMPlayer
+Name[hr]=SMTube
Comment[it]=Naviga e ricerca su YouTube
-GenericName[it]=Navigatore YouTube
-Name[it]=Navigatore YouTube per SMPlayer
-Icon[it]=smtube
+GenericName[it]=Navigatore YouTube per SMPlayer
+Name[it]=SMTube
Comment[ja]=YouTube を閲覧し検索します
-GenericName[ja]=YouTube ブラウザー
-Name[ja]=SMPlayer の YouTube ブラウザー
-Icon[ja]=smtube
+GenericName[ja]=SMPlayer の YouTube ブラウザー
+Name[ja]=SMTube
-Comment[da]=Gennemse og søg fra YouTube
-GenericName[da]=YouTube-browser
-Name[da]=YouTube-browser til SMPlayer
-Icon[da]=smtube
+Comment[ko]=유투브 검색하기
+GenericName[ko]=SMPlayer 유투브 브라우저
+Name[ko]=SMTube
-Comment[de]=YouTube durchsuchen
-GenericName[de]=Youtube-Browser
-Name[de]=YouTube-Browser für SMPlayer
-Icon[de]=smtube
+Comment[pl]=Przeglądanie i przeszukiwanie YouTube
+GenericName[pl]=Przeglądarka YouTube dla SMPlayer
+Name[pl]=SMTube
-Comment[es]=Permite buscar vídeos de YouTube
-GenericName[es]=Buscar vídeos en YouTube
-Name[es]=El buscador de vídeos de YouTube de SMPlayer
-Icon[es]=smtube
+Comment[pt]=Explorar e pesquisar vídeos no YouTube
+GenericName[pt]=Explorador YouTube para o SMPlayer
+Name[pt]=SMTube
+
+Comment[pt_BR]=Navegar e procurar no YouTube
+GenericName[pt_BR]=Navegador do YouTube para o SMPlayer
+Name[pt_BR]=SMTube
+
+Comment[ru]=Просмотр и поиск по YouTube
+GenericName[ru]=Браузер YouTube для SMPlayer
+Name[ru]=SMTube
+
+Comment[sv]=Bläddra och sök från YouTube
+GenericName[sv]=YouTube Bläddrare för SMplayer
+Name[sv]=SMTube
Comment[uk]=Перегляд і пошук на YouTube
-GenericName[uk]=Переглядач YouTube
-Name[uk]=YouTube переглядач для SMPlayer
-Icon[uk]=smtube
+GenericName[uk]=YouTube переглядач для SMPlayer
+Name[uk]=SMTube
-Comment[ko]=유투브 검색하기
-GenericName[ko]=유투브 브라우저
-Name[ko]=SMPlayer 유투브 브라우저
-Icon[ko]=smtube
+Comment[zh_CN]=浏览 YouTube 或者搜索
+GenericName[zh_CN]=SMPlayer - YouTube 浏览器
+Name[zh_CN]=SMTube
Comment[zh_TW]=在 YouTube 上瀏覽並搜尋
-GenericName[zh_TW]=Youtube 瀏覽器
-Name[zh_TW]=為 SMPlayer 所設計的 YouTube 瀏覽器
-Icon[zh_TW]=smtube
+GenericName[zh_TW]=為 SMPlayer 所設計的 YouTube 瀏覽器
+Name[zh_TW]=SMTube
+
+Comment[ms_MY]=Layar dan gelintar Youtube
+GenericName[ms_MY]=Pelayar YouTube untuk SMPlayer
+Name[ms_MY]=SMTube
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/main.cpp new/smtube-15.11.0/src/main.cpp
--- old/smtube-15.9.0/src/main.cpp 2015-08-05 22:58:44.000000000 +0200
+++ new/smtube-15.11.0/src/main.cpp 2015-11-18 01:33:08.000000000 +0100
@@ -17,6 +17,7 @@
*/
#include "browserwindow.h"
+#include "version.h"
#include <QApplication>
#include <QDir>
#include <QTranslator>
@@ -95,6 +96,8 @@
a.setApplicationName("smtube");
#if QT_VERSION >= 0x040400
+ a.setApplicationVersion(smtubeVersion());
+
// Enable icons in menus
QCoreApplication::setAttribute(Qt::AA_DontShowIconsInMenus, false);
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/retrieveyoutubeurl.cpp new/smtube-15.11.0/src/retrieveyoutubeurl.cpp
--- old/smtube-15.9.0/src/retrieveyoutubeurl.cpp 2015-09-08 00:02:26.000000000 +0200
+++ new/smtube-15.11.0/src/retrieveyoutubeurl.cpp 2015-11-17 03:21:38.000000000 +0100
@@ -60,6 +60,12 @@
connect(dl_player_page, SIGNAL(pageLoaded(QByteArray)), this, SLOT(playerPageLoaded(QByteArray)));
connect(dl_player_page, SIGNAL(errorOcurred(int, QString)), this, SIGNAL(errorOcurred(int, QString)));
#endif
+
+#ifdef YT_LIVE_STREAM
+ dl_stream_page = new LoadPage(manager, this);
+ connect(dl_stream_page, SIGNAL(pageLoaded(QByteArray)), this, SLOT(streamPageLoaded(QByteArray)));
+ connect(dl_stream_page, SIGNAL(errorOcurred(int, QString)), this, SIGNAL(errorOcurred(int, QString)));
+#endif
}
RetrieveYoutubeUrl::~RetrieveYoutubeUrl() {
@@ -199,17 +205,27 @@
if (!player_name.isEmpty()) {
QString url;
+ /*
if (player_name.startsWith("new-")) {
url = QString("http://s.ytimg.com/yts/jsbin/html5player-%1/html5player-new.js").arg(player_name);
} else {
url = QString("http://s.ytimg.com/yts/jsbin/html5player-%1/html5player.js").arg(player_name);
}
+ */
+ url = QString("http://s.ytimg.com/yts/jsbin/player-%1/base.js").arg(player_name);
qDebug() << "RetrieveYoutubeUrl::fetchPlayerPage: url:" << url;
dl_player_page->fetchPage(url);
}
}
#endif
+#ifdef YT_LIVE_STREAM
+void RetrieveYoutubeUrl::fetchStreamPage(const QString & url) {
+ qDebug() << "RetrieveYoutubeUrl::fetchStreamPage:" << url;
+ dl_stream_page->fetchPage(url);
+}
+#endif
+
void RetrieveYoutubeUrl::videoPageLoaded(QByteArray page) {
qDebug() << "RetrieveYoutubeUrl::videoPageLoaded";
@@ -227,7 +243,8 @@
#ifdef YT_USE_SIG
QString html5_player;
#endif
- QRegExp rxplayer("html5player-([\\d,\\w,-]+)\\\\");
+ //QRegExp rxplayer("player-([\\d,\\w,-]+)\\\\");
+ QRegExp rxplayer("jsbin\\/player-([\\d\\w-]+)\\/base\\.js");
if (rxplayer.indexIn(replyString) != -1) {
html5_player = rxplayer.cap(1);
qDebug() << "RetrieveYoutubeUrl::videoPageLoaded: html5player:" << html5_player;
@@ -251,6 +268,19 @@
void RetrieveYoutubeUrl::processVideoPage() {
QString replyString = video_page;
+#ifdef YT_LIVE_STREAM
+ QRegExp rxhlsvp("\"hlsvp\":\"([a-zA-Z0-9\\\\\\/_%\\+:\\.-]+)\"");
+ if (rxhlsvp.indexIn(replyString) != -1) {
+ QString hlsvp = QUrl::fromPercentEncoding(rxhlsvp.cap(1).toLatin1()).replace("\\/", "/");
+ qDebug() << "RetrieveYoutubeUrl::processVideoPage: hlsvp:" << hlsvp;
+
+ if (!hlsvp.isEmpty()) {
+ fetchStreamPage(hlsvp);
+ return;
+ }
+ }
+#endif
+
QString fmtArray;
QRegExp regex("\\\"url_encoded_fmt_stream_map\\\"\\s*:\\s*\\\"([^\\\"]*)");
if (regex.indexIn(replyString) != -1) {
@@ -270,7 +300,7 @@
//qDebug() << "RetrieveYoutubeUrl::videoPageLoaded: fmtArray:" << fmtArray;
- #ifdef YT_GET_VIDEOINFO
+ #ifdef YT_DISCARD_HTTPS
bool allow_https = false;
#else
bool allow_https = true;
@@ -344,6 +374,90 @@
}
#endif
+#ifdef YT_LIVE_STREAM
+void RetrieveYoutubeUrl::streamPageLoaded(QByteArray page) {
+ qDebug() << "RetrieveYoutubeUrl::streamPageLoaded";
+
+ //qDebug() << "RetrieveYoutubeUrl::streamPageLoaded: page:" << page;
+
+ QRegExp rx("#EXT-X-STREAM-INF:.*RESOLUTION=\\d+x(\\d+)");
+
+ QMap url_map;
+ int best_resolution = 0;
+ int res_height = 0;
+
+ QTextStream stream(page);
+ QString line;
+ do {
+ line = stream.readLine();
+ if (!line.isEmpty()) {
+ //qDebug() << "RetrieveYoutubeUrl::streamPageLoaded: line:" << line;
+ if (rx.indexIn(line) != -1) {
+ res_height = rx.cap(1).toInt();
+ qDebug() << "RetrieveYoutubeUrl::streamPageLoaded: height:" << res_height;
+ if (res_height > best_resolution) best_resolution = res_height;
+ }
+ else
+ if (!line.startsWith("#") && res_height != 0) {
+ url_map[res_height] = line;
+ res_height = 0;
+ }
+ }
+ } while (!line.isNull());
+
+ qDebug() << "RetrieveYoutubeUrl::streamPageLoaded: best_resolution:" << best_resolution;
+
+ // Try to find a URL with the user's preferred quality
+ qDebug() << "RetrieveYoutubeUrl::streamPageLoaded: preferred_quality:" << preferred_quality;
+
+ int selected_quality = 0;
+ int q = preferred_quality;
+
+ if (q == WEBM_1080p || q == MP4_1080p) {
+ if (url_map.contains(1080)) {
+ selected_quality = 1080;
+ } else q = MP4_720p;
+ }
+
+ if (q == WEBM_720p || q == MP4_720p) {
+ if (url_map.contains(720)) {
+ selected_quality = 720;
+ } else q = WEBM_480p;
+ }
+
+ if (q == WEBM_480p || q == FLV_480p) {
+ if (url_map.contains(480)) {
+ selected_quality = 480;
+ } else q = MP4_360p;
+ }
+
+ if (q == WEBM_360p || q == FLV_360p || q == MP4_360p) {
+ if (url_map.contains(360)) {
+ selected_quality = 360;
+ } else q = FLV_240p;
+ }
+
+ if (q == FLV_240p) {
+ if (url_map.contains(240)) {
+ selected_quality = 240;
+ }
+ }
+
+ qDebug() << "RetrieveYoutubeUrl::streamPageLoaded: selected_quality:" << selected_quality;
+
+ if (selected_quality == 0) selected_quality = best_resolution;
+
+ if (url_map.contains(selected_quality)) {
+ QString p_url = url_map.value(selected_quality);
+ qDebug() << "RetrieveYoutubeUrl::streamPageLoaded: p_url:" << p_url;
+ emit gotPreferredUrl(p_url, 0);
+ latest_preferred_url = p_url;
+ } else {
+ emit gotEmptyList();
+ }
+}
+#endif
+
void RetrieveYoutubeUrl::finish(const UrlMap & url_map) {
qDebug() << "RetrieveYoutubeUrl::finish";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/retrieveyoutubeurl.h new/smtube-15.11.0/src/retrieveyoutubeurl.h
--- old/smtube-15.9.0/src/retrieveyoutubeurl.h 2015-07-13 00:09:53.000000000 +0200
+++ new/smtube-15.11.0/src/retrieveyoutubeurl.h 2015-11-17 03:21:38.000000000 +0100
@@ -31,6 +31,11 @@
#define YT_GET_VIDEOINFO
#define YT_DASH_SUPPORT
+#define YT_LIVE_STREAM
+
+#ifdef YT_GET_VIDEOINFO
+#define YT_DISCARD_HTTPS
+#endif
typedef QMap UrlMap;
@@ -103,6 +108,9 @@
#ifdef YT_USE_SIG
void playerPageLoaded(QByteArray page);
#endif
+#ifdef YT_LIVE_STREAM
+ void streamPageLoaded(QByteArray page);
+#endif
void processVideoPage();
@@ -114,6 +122,9 @@
#ifdef YT_USE_SIG
void fetchPlayerPage(const QString & player_name);
#endif
+#ifdef YT_LIVE_STREAM
+ void fetchStreamPage(const QString & url);
+#endif
QString getVideoID(QString video_url);
UrlMap extractURLs(QString fmtArray, bool allow_https, bool use_player);
@@ -142,6 +153,10 @@
QString html5_player;
#endif
+#ifdef YT_LIVE_STREAM
+ LoadPage * dl_stream_page;
+#endif
+
QString video_page;
QString url_title;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/sig.cpp new/smtube-15.11.0/src/sig.cpp
--- old/smtube-15.9.0/src/sig.cpp 2015-06-25 23:36:25.000000000 +0200
+++ new/smtube-15.11.0/src/sig.cpp 2015-11-10 23:19:41.000000000 +0100
@@ -59,7 +59,8 @@
QString sig_code;
if (!sig_name.isEmpty()) {
- int pos = text.indexOf("function " + sig_name);
+ //int pos = text.indexOf("function " + sig_name);
+ int pos = text.indexOf("var " + sig_name + "=function");
if (pos > -1) {
int endpos = text.indexOf("}", pos);
#ifdef ULTRAVERBOSE
@@ -67,6 +68,7 @@
#endif
if (endpos > -1) {
sig_code = text.mid(pos, (endpos-pos)+1);
+ sig_code.replace("var " + sig_name + "=function", "function " + sig_name);
}
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/smtube.pro new/smtube-15.11.0/src/smtube.pro
--- old/smtube-15.9.0/src/smtube.pro 2015-09-24 23:38:16.000000000 +0200
+++ new/smtube-15.11.0/src/smtube.pro 2015-11-17 03:25:59.000000000 +0100
@@ -115,4 +115,5 @@
translations/smtube_uk.ts \
translations/smtube_sq.ts \
translations/smtube_tr.ts \
- translations/smtube_hu.ts
+ translations/smtube_hu.ts \
+ translations/smtube_he_IL.ts
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/smtube.rc new/smtube-15.11.0/src/smtube.rc
--- old/smtube-15.9.0/src/smtube.rc 2015-09-27 23:24:38.000000000 +0200
+++ new/smtube-15.11.0/src/smtube.rc 2015-11-18 23:47:42.000000000 +0100
@@ -1,7 +1,7 @@
#include
-#define SMTUBE_FILEVERSION 15,9,0,0
-#define SMTUBE_PRODVERSION "15.9.0.0\0"
+#define SMTUBE_FILEVERSION 15,11,0,0
+#define SMTUBE_PRODVERSION "15.11.0.0\0"
VS_VERSION_INFO VERSIONINFO
FILEVERSION SMTUBE_FILEVERSION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/supportedurls.cpp new/smtube-15.11.0/src/supportedurls.cpp
--- old/smtube-15.9.0/src/supportedurls.cpp 2015-06-12 03:42:44.000000000 +0200
+++ new/smtube-15.11.0/src/supportedurls.cpp 2015-11-04 23:53:15.000000000 +0100
@@ -40,4 +40,5 @@
list << QRegExp("^(https?\\:\\/\\/)?(www\\.)?dailymotion\\.com\\/video\\/.+$");
list << QRegExp("^(https?\\:\\/\\/)?(www\\.)?vimeo\\.com\\/(channels\\/staffpicks\\/)?\\d+$");
+ list << QRegExp("^(https?\\:\\/\\/).*m3u8$");
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/translations/smtube_de.ts new/smtube-15.11.0/src/translations/smtube_de.ts
--- old/smtube-15.9.0/src/translations/smtube_de.ts 2015-08-03 00:10:35.000000000 +0200
+++ new/smtube-15.11.0/src/translations/smtube_de.ts 2015-11-04 23:54:06.000000000 +0100
@@ -4,7 +4,7 @@
<message>
<location filename="../about.ui" line="14"/>
<source>About...</source>
- <translation>Über…</translation>
+ <translation>Über …</translation>
</message>
<message>
<location filename="../about.ui" line="33"/>
@@ -368,12 +368,12 @@
<message>
<location filename="../mywebview.cpp" line="48"/>
<source>Save link...</source>
- <translation>Link speichern...</translation>
+ <translation>Verweis speichern …</translation>
</message>
<message>
<location filename="../mywebview.cpp" line="50"/>
<source>Open link in this window</source>
- <translation>Link in diesem Fenster öffnen</translation>
+ <translation>Verweis in diesem Fenster öffnen</translation>
</message>
<message>
<location filename="../mywebview.cpp" line="51"/>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/translations/smtube_he_IL.ts new/smtube-15.11.0/src/translations/smtube_he_IL.ts
--- old/smtube-15.9.0/src/translations/smtube_he_IL.ts 1970-01-01 01:00:00.000000000 +0100
+++ new/smtube-15.11.0/src/translations/smtube_he_IL.ts 2015-11-17 03:25:59.000000000 +0100
@@ -0,0 +1,460 @@
+<?xml version="1.0" ?><!DOCTYPE TS><TS language="he" version="2.0">
+<context>
+ <name>About</name>
+ <message>
+ <location filename="../about.ui" line="14"/>
+ <source>About...</source>
+ <translation>אודות...</translation>
+ </message>
+ <message>
+ <location filename="../about.ui" line="33"/>
+ <source>&Info</source>
+ <translation>&מידע</translation>
+ </message>
+ <message>
+ <location filename="../about.ui" line="89"/>
+ <source>&Translators</source>
+ <translation>&מתרגמים</translation>
+ </message>
+ <message>
+ <location filename="../about.ui" line="145"/>
+ <source>&License</source>
+ <translation>&רשיון</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="33"/>
+ <source>YouTube%1 Browser for SMPlayer</source>
+ <translation>מעלעל YouTube%1 עבור SMPlayer</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="36"/>
+ <source>Version: %1</source>
+ <translation>גרסא: %1</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="38"/>
+ <source>Portable Edition</source>
+ <translation>מהדורה ניידת</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="41"/>
+ <source>Compiled with Qt %1 (using %2)</source>
+ <translation type="unfinished"/>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="43"/>
+ <source>Visit our website for updates:</source>
+ <translation>בקרו את האתר רשת שלנו לצורך עדכונים:</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="86"/>
+ <source>Many people contributed with translations.</source>
+ <translation>אנשים רבים תרמו בעזרת תרגומים.</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="87"/>
+ <source>You can also help to translate SMTube into your own language.</source>
+ <translation>גם אצם יכולים לתרגם את SMTube לשפה שלכם.</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="88"/>
+ <source>Visit %1 and join a translation team.</source>
+ <translation>בקרו באתר %1 והצטרפו לקבוצת תרגום.</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="90"/>
+ <source>Click here to know the translators from the transifex teams</source>
+ <translation>לחצו כאן כדי להכיר את המתרגמים מתוך קבוצות transifex</translation>
+ </message>
+ <message>
+ <location filename="../about.cpp" line="116"/>
+ <source><b>%1</b> (%2)</source>
+ <translation type="unfinished"/>
+ </message>
+</context>
+<context>
+ <name>BrowserWindow</name>
+ <message>
+ <location filename="../browserwindow.cpp" line="116"/>
+ <source>Home</source>
+ <translation>בית</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="119"/>
+ <source>Navigation</source>
+ <translation>ניווט</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="127"/>
+ <source>&Quit</source>
+ <translation>י&ציאה</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="130"/>
+ <source>&Navigation</source>
+ <translation>&ניווט</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="139"/>
+ <source>&View</source>
+ <translation>&תצוגה</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="140"/>
+ <source>Toolbar</source>
+ <translation>סרגל כלים</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="144"/>
+ <source>Statusbar</source>
+ <translation>שורת מצב</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="148"/>
+ <source>&Settings</source>
+ <translation>&הגדרות</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="156"/>
+ <source>&Help</source>
+ <translation>&עזרה</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="159"/>
+ <source>&Update the YouTube code</source>
+ <translation>&עדכן קוד YouTube</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="164"/>
+ <source>About this &release</source>
+ <translation>אודות &שחרור זה</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="168"/>
+ <source>&About SMTube</source>
+ <translation>&אודות SMTube</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="418"/>
+ <source>Connection failed</source>
+ <translation>חיבור נכשל</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="419"/>
+ <source>The video you requested needs to open a HTTPS connection.</source>
+ <translation>הוידאו אשר ביקשת צריך לפתוח חיבור HTTPS.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="420"/>
+ <source>Unfortunately the OpenSSL component, required for it, is not available in your system.</source>
+ <translation>למרבה הצער, מרכיב OpenSSL, דרוש לזאת, אינו זמין בתוך המערכת שלך.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="425"/>
+ <source>No video found</source>
+ <translation>לא נמצא וידאו</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="426"/>
+ <source>It wasn't possible to find the URL for this video.</source>
+ <translation>לא התאפשרה מציאת URL לוידאו זה.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="436"/>
+ <location filename="../browserwindow.cpp" line="444"/>
+ <source>Problems with YouTube</source>
+ <translation>בעיות עם YouTube</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="437"/>
+ <location filename="../browserwindow.cpp" line="445"/>
+ <source>Unfortunately due to changes in YouTube, the video '%1' can't be played.</source>
+ <translation>למרבה הצער, בשל שינויים בתוך YouTube, הוידאו '%1' לא ניתן לניגון.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="438"/>
+ <source>Do you want to update the YouTube code? This may fix the problem.</source>
+ <translation>האם ברצונך לעדכן קוד YouTube? זה עשוי לתקן את הבעיה.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="446"/>
+ <source>Maybe updating this application could fix the problem.</source>
+ <translation>אולי עדכון יישום זה יכול לתקן את הבעיה.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="464"/>
+ <source>About this release</source>
+ <translation>אודות שחרור זה</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="465"/>
+ <source>Due to changes in YouTube, the old SMTube doesn't work anymore.</source>
+ <translation>בשל שינויים בתוך YouTube, SMTube לא עובד עוד.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="466"/>
+ <source>This is a new version of SMTube, written from scratch.</source>
+ <translation>זוהי גרסא חדשה של SMTube, נכתבה מהבסיס.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="467"/>
+ <source>Some functionality is not available yet.</source>
+ <translation>תפקודיות מסוימת אינה זמינה עדיין.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="469"/>
+ <source>Important:</source>
+ <translation>חשוב:</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="470"/>
+ <source>If the VEVO videos fail to play, please use the option %1 in the Help menu.</source>
+ <translation>אם סרטוני VEVO נכשליים להתנגן, אנא השתמש באפשרות %1 בתוך התפריט עזרה.</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="471"/>
+ <source>Update the YouTube code</source>
+ <translation>עדכן קוד YouTube</translation>
+ </message>
+ <message>
+ <location filename="../browserwindow.cpp" line="239"/>
+ <source>Loading... %1%</source>
+ <translation>כעת טוען... %1%</translation>
+ </message>
+</context>
+<context>
+ <name>CodeDownloader</name>
+ <message>
+ <location filename="../codedownloader.cpp" line="37"/>
+ <source>Downloading...</source>
+ <translation>כעת מוריד...</translation>
+ </message>
+ <message>
+ <location filename="../codedownloader.cpp" line="58"/>
+ <source>Connecting to %1</source>
+ <translation>כעת מתחבר אל %1</translation>
+ </message>
+ <message>
+ <location filename="../codedownloader.cpp" line="126"/>
+ <source>The Youtube code has been updated successfully.</source>
+ <translation>קוד Youtube התעדכן בהצלחה.</translation>
+ </message>
+ <message>
+ <location filename="../codedownloader.cpp" line="127"/>
+ <source>Installed version: %1</source>
+ <translation>גרסא מותקנת: %1</translation>
+ </message>
+ <message>
+ <location filename="../codedownloader.cpp" line="128"/>
+ <source>Success</source>
+ <translation>הצלחה</translation>
+ </message>
+ <message>
+ <location filename="../codedownloader.cpp" line="133"/>
+ <location filename="../codedownloader.cpp" line="138"/>
+ <source>Error</source>
+ <translation>שגיאה</translation>
+ </message>
+ <message>
+ <location filename="../codedownloader.cpp" line="133"/>
+ <source>An error happened writing %1</source>
+ <translation>התרחשה שגיאה בכתיבת %1</translation>
+ </message>
+ <message>
+ <location filename="../codedownloader.cpp" line="138"/>
+ <source>An error happened while downloading the file:<br>%1</source>
+ <translation>התרחשה שגיאה במהלך הורדת הקובץ:<br>%1</translation>
+ </message>
+</context>
+<context>
+ <name>ConfigDialog</name>
+ <message>
+ <location filename="../configdialog.ui" line="14"/>
+ <source>Settings</source>
+ <translation>הגדרות</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="24"/>
+ <source>&General</source>
+ <translation>&כללי</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="113"/>
+ <source>Add</source>
+ <translation>הוסף</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="78"/>
+ <source>Up</source>
+ <translation>מעלה</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="30"/>
+ <source>Playback</source>
+ <translation>ניגון</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="36"/>
+ <source>Preferred &quality:</source>
+ <translation>איכות &מועדפת:</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="65"/>
+ <source>Players</source>
+ <translation>נגנים</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="124"/>
+ <source>Delete</source>
+ <translation>מחק</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="148"/>
+ <source>Edit</source>
+ <translation>ערוך</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="161"/>
+ <source>A&dd predefined players</source>
+ <translation>הוס&ף נגנים מוגדרים מראש</translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="89"/>
+ <source>Down</source>
+ <translation>מטה</translation>
+ </message>
+</context>
+<context>
+ <name>FileChooser</name>
+ <message>
+ <location filename="../filechooser.cpp" line="56"/>
+ <source>Click to select a file or folder</source>
+ <translation>לחץ כדי לבחור קובץ או תיקייה</translation>
+ </message>
+</context>
+<context>
+ <name>MyWebView</name>
+ <message>
+ <location filename="../mywebview.cpp" line="36"/>
+ <source>Open link in a web browser</source>
+ <translation>פתח קישור בתוך דפדפן רשת</translation>
+ </message>
+ <message>
+ <location filename="../mywebview.cpp" line="52"/>
+ <source>Open link in new window</source>
+ <translation>פתח קישור בתוך חלון חדש</translation>
+ </message>
+ <message>
+ <location filename="../mywebview.cpp" line="75"/>
+ <source>Open audio with</source>
+ <translation>פתח אודיו בעזרת</translation>
+ </message>
+ <message>
+ <location filename="../mywebview.cpp" line="91"/>
+ <location filename="../mywebview.cpp" line="116"/>
+ <source>Open with %1</source>
+ <translation>פתח בעזרת %1</translation>
+ </message>
+ <message>
+ <location filename="../mywebview.cpp" line="123"/>
+ <source>Open audio with %1</source>
+ <translation>פתח אודיו בעזרת %1</translation>
+ </message>
+ <message>
+ <location filename="../mywebview.cpp" line="49"/>
+ <source>Copy link to clipboard</source>
+ <translation>העתק קישור ללוח גזירה</translation>
+ </message>
+ <message>
+ <location filename="../mywebview.cpp" line="48"/>
+ <source>Save link...</source>
+ <translation>שמור קישור...</translation>
+ </message>
+ <message>
+ <location filename="../mywebview.cpp" line="50"/>
+ <source>Open link in this window</source>
+ <translation>פתח קישור בתוך חלון זה</translation>
+ </message>
+ <message>
+ <location filename="../mywebview.cpp" line="51"/>
+ <source>Copy text to clipboard</source>
+ <translation>העתק טקסט ללוח גזירה</translation>
+ </message>
+</context>
+<context>
+ <name>PlayerDialog</name>
+ <message>
+ <location filename="../playerdialog.ui" line="14"/>
+ <source>Edit Player</source>
+ <translation>ערוך נגן</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.ui" line="22"/>
+ <source>&Name:</source>
+ <translation>&שם:</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.ui" line="39"/>
+ <source>&Executable:</source>
+ <translation type="unfinished"/>
+ </message>
+ <message>
+ <location filename="../playerdialog.ui" line="56"/>
+ <source>&Parameters:</source>
+ <translation>&פרמטרים:</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.ui" line="71"/>
+ <source>This player supports &video sites</source>
+ <translation>נגן זה &תומך אתרי וידאו</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.ui" line="80"/>
+ <source>Preferred &quality:</source>
+ <translation>איכות &מועדפת:</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.ui" line="110"/>
+ <source>Add to &menu:</source>
+ <translation>הוסף ל&תפריט:</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.cpp" line="28"/>
+ <source>None</source>
+ <translation type="unfinished"/>
+ </message>
+ <message>
+ <location filename="../playerdialog.cpp" line="29"/>
+ <source>Video</source>
+ <translation>וידאו</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.cpp" line="30"/>
+ <source>Audio</source>
+ <translation>אודיו</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.cpp" line="31"/>
+ <source>Video and audio</source>
+ <translation>וידאו וגם אודיו</translation>
+ </message>
+ <message>
+ <location filename="../playerdialog.cpp" line="33"/>
+ <source>Default</source>
+ <translation>שגרתי</translation>
+ </message>
+</context>
+<context>
+ <name>QObject</name>
+ <message>
+ <location filename="../players.cpp" line="101"/>
+ <source>Video sites</source>
+ <translation>אתרי וידאו</translation>
+ </message>
+ <message>
+ <location filename="../players.cpp" line="101"/>
+ <source>Normal streams</source>
+ <translation>זרמים רגילים</translation>
+ </message>
+</context>
+</TS>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smtube-15.9.0/src/version.cpp new/smtube-15.11.0/src/version.cpp
--- old/smtube-15.9.0/src/version.cpp 2015-09-27 23:24:38.000000000 +0200
+++ new/smtube-15.11.0/src/version.cpp 2015-11-18 23:47:42.000000000 +0100
@@ -20,7 +20,7 @@
#define USE_SVN_VERSIONS 0
-#define VERSION "15.9.0"
+#define VERSION "15.11.0"
#if USE_SVN_VERSIONS
#include "svn_revision.h"