- if (definitionCode == 18) {
- // This is assumed always available
- foundVideoUrl(videoToken, 18);
- } else {
- findVideoUrl(definitionCode);
+
+ // qDebug() << "fmtUrlMap" << fmtUrlMap;
+ QStringList formatUrls = fmtUrlMap.split(",", QString::SkipEmptyParts);
+ QHash<int, QString> urlMap;
+ foreach(QString formatUrl, formatUrls) {
+ int separator = formatUrl.indexOf("|");
+ if (separator == -1) continue;
+ int format = formatUrl.left(separator).toInt();
+ QString url = formatUrl.mid(separator + 1);
+
+ if (format == definitionCode) {
+ qDebug() << "Found format" << definitionCode;
+ QUrl videoUrl = QUrl::fromEncoded(url.toUtf8(), QUrl::StrictMode);
+ m_streamUrl = videoUrl;
+ this->definitionCode = definitionCode;
+ emit gotStreamUrl(videoUrl);
+ loadingStreamUrl = false;
+ return;
+ }
+
+ urlMap.insert(format, url);