]> git.sur5r.net Git - minitube/commitdiff
Adapted to Youtube changes
authorFlavio <flavio@odisseo.local>
Thu, 27 Sep 2012 09:52:24 +0000 (11:52 +0200)
committerFlavio <flavio@odisseo.local>
Thu, 27 Sep 2012 09:52:24 +0000 (11:52 +0200)
src/video.cpp

index d414990ddf2538be47dac24eb4d6bc678ad6cecc..a7f6e5cee8b57a0568c22653fc7ee570b83d88d2 100644 (file)
@@ -142,7 +142,7 @@ void  Video::gotVideoInfo(QByteArray data) {
     QString definitionName = settings.value("definition").toString();
     int definitionCode = VideoDefinition::getDefinitionCode(definitionName);
 
-    // qDebug() << "fmtUrlMap" << fmtUrlMap;
+    qDebug() << "fmtUrlMap" << fmtUrlMap;
     QStringList formatUrls = fmtUrlMap.split(",", QString::SkipEmptyParts);
     QHash<int, QString> urlMap;
     foreach(QString formatUrl, formatUrls) {
@@ -152,6 +152,7 @@ void  Video::gotVideoInfo(QByteArray data) {
 
         int format = -1;
         QString url;
+        QString sig;
         foreach(QString urlParam, urlParams) {
             if (urlParam.startsWith("itag=")) {
                 int separator = urlParam.indexOf("=");
@@ -160,10 +161,16 @@ void  Video::gotVideoInfo(QByteArray data) {
                 int separator = urlParam.indexOf("=");
                 url = urlParam.mid(separator + 1);
                 url = QByteArray::fromPercentEncoding(url.toUtf8());
+            } else if (urlParam.startsWith("sig=")) {
+                int separator = urlParam.indexOf("=");
+                sig = urlParam.mid(separator + 1);
+                sig = QByteArray::fromPercentEncoding(sig.toUtf8());
             }
         }
         if (format == -1 || url.isNull()) continue;
 
+        url += "&signature=" + sig;
+
         if (format == definitionCode) {
             qDebug() << "Found format" << definitionCode;
             QUrl videoUrl = QUrl::fromEncoded(url.toUtf8(), QUrl::StrictMode);