]> git.sur5r.net Git - minitube/blobdiff - src/video.cpp
Removed debug statement
[minitube] / src / video.cpp
index 4e2192d51d001f6e0349de8193a79e37e5aa94cb..f7b3107da01d33221a4801d3e86c684eae9c344a 100644 (file)
@@ -25,6 +25,7 @@ $END_LICENSE */
 #include "jsfunctions.h"
 #include "temporary.h"
 #include "compatibility/qurlqueryhelper.h"
+#include "datautils.h"
 
 namespace The {
 NetworkAccess* http();
@@ -93,21 +94,18 @@ void Video::loadThumbnail() {
     connect(reply, SIGNAL(data(QByteArray)), SLOT(setThumbnail(QByteArray)));
 }
 
-void Video::setThumbnail(QByteArray bytes) {
+void Video::setThumbnail(const QByteArray &bytes) {
     loadingThumbnail = false;
+    qreal ratio = qApp->devicePixelRatio();
     m_thumbnail = QPixmap();
     m_thumbnail.loadFromData(bytes);
-    if (m_thumbnail.width() > 160)
-        m_thumbnail = m_thumbnail.scaledToWidth(160, Qt::SmoothTransformation);
+    m_thumbnail.setDevicePixelRatio(ratio);
+    const int thumbWidth = 160 * ratio;
+    if (m_thumbnail.width() > thumbWidth)
+        m_thumbnail = m_thumbnail.scaledToWidth(thumbWidth, Qt::SmoothTransformation);
     emit gotThumbnail();
 }
 
-void Video::loadMediumThumbnail() {
-    if (m_mediumThumbnailUrl.isEmpty()) return;
-    QObject *reply = The::http()->get(m_mediumThumbnailUrl);
-    connect(reply, SIGNAL(data(QByteArray)), SIGNAL(gotMediumThumbnail(QByteArray)));
-}
-
 void Video::loadStreamUrl() {
     if (loadingStreamUrl) {
         qDebug() << "Already loading stream URL for" << this->title();
@@ -155,8 +153,8 @@ void  Video::getVideoInfo() {
     // see you in gotVideoInfo...
 }
 
-void  Video::gotVideoInfo(QByteArray data) {
-    QString videoInfo = QString::fromUtf8(data);
+void  Video::gotVideoInfo(const QByteArray &bytes) {
+    QString videoInfo = QString::fromUtf8(bytes);
     // qDebug() << "videoInfo" << videoInfo;
 
     // get video token
@@ -201,7 +199,7 @@ void Video::parseFmtUrlMap(const QString &fmtUrlMap, bool fromWebPage) {
     // qDebug() << "fmtUrlMap" << fmtUrlMap;
     const QStringList formatUrls = fmtUrlMap.split(',', QString::SkipEmptyParts);
     QHash<int, QString> urlMap;
-    foreach(QString formatUrl, formatUrls) {
+    foreach(const QString &formatUrl, formatUrls) {
         // qDebug() << "formatUrl" << formatUrl;
         const QStringList urlParams = formatUrl.split('&', QString::SkipEmptyParts);
         // qDebug() << "urlParams" << urlParams;
@@ -209,7 +207,7 @@ void Video::parseFmtUrlMap(const QString &fmtUrlMap, bool fromWebPage) {
         int format = -1;
         QString url;
         QString sig;
-        foreach(QString urlParam, urlParams) {
+        foreach(const QString &urlParam, urlParams) {
             // qWarning() << urlParam;
             if (urlParam.startsWith("itag=")) {
                 int separator = urlParam.indexOf("=");
@@ -291,8 +289,8 @@ void Video::errorVideoInfo(QNetworkReply *reply) {
     emit errorStreamUrl(tr("Network error: %1 for %2").arg(reply->errorString(), reply->url().toString()));
 }
 
-void Video::scrapeWebPage(QByteArray data) {
-    QString html = QString::fromUtf8(data);
+void Video::scrapeWebPage(const QByteArray &bytes) {
+    QString html = QString::fromUtf8(bytes);
 
     QRegExp ageGateRE(JsFunctions::instance()->ageGateRE());
     if (ageGateRE.indexIn(html) != -1) {
@@ -346,7 +344,7 @@ void Video::scrapeWebPage(QByteArray data) {
     }
 }
 
-void Video::parseJsPlayer(QByteArray bytes) {
+void Video::parseJsPlayer(const QByteArray &bytes) {
     QString js = QString::fromUtf8(bytes);
     // qWarning() << "jsPlayer" << js;
 
@@ -392,7 +390,7 @@ void Video::parseJsPlayer(QByteArray bytes) {
     parseFmtUrlMap(fmtUrlMap, true);
 }
 
-void Video::parseDashManifest(QByteArray bytes) {
+void Video::parseDashManifest(const QByteArray &bytes) {
     QFile file(Temporary::filename() + ".mpd");
     if (!file.open(QIODevice::WriteOnly))
         qWarning() << file.errorString() << file.fileName();
@@ -449,12 +447,12 @@ void Video::captureObject(const QString &name, const QString &js) {
 QString Video::decryptSignature(const QString &s) {
     if (sigFuncName.isEmpty()) return QString();
     QScriptEngine engine;
-    foreach (QString f, sigObjects.values()) {
+    foreach (const QString &f, sigObjects.values()) {
         QScriptValue value = engine.evaluate(f);
         if (value.isError())
             qWarning() << "Error in" << f << value.toString();
     }
-    foreach (QString f, sigFunctions.values()) {
+    foreach (const QString &f, sigFunctions.values()) {
         QScriptValue value = engine.evaluate(f);
         if (value.isError())
             qWarning() << "Error in" << f << value.toString();
@@ -473,8 +471,7 @@ QString Video::decryptSignature(const QString &s) {
 }
 
 QString Video::formattedDuration() const {
-    QString format = m_duration > 3600 ? "h:mm:ss" : "m:ss";
-    return QTime().addSecs(m_duration).toString(format);
+    return DataUtils::formatDuration(m_duration);
 }
 
 void Video::saveDefinitionForUrl(const QString& url, const VideoDefinition& definition) {