]> git.sur5r.net Git - minitube/blobdiff - src/video.h
Merge tag 'upstream/2.3'
[minitube] / src / video.h
index 7220a4d533187bb743d40c4e5952b9f682b13bb8..48b2f1a40ec88b8769e0f3437d29df52a9462e18 100644 (file)
@@ -22,6 +22,9 @@ $END_LICENSE */
 #define VIDEO_H
 
 #include <QtGui>
+#if QT_VERSION >= 0x050000
+#include <QtWidgets>
+#endif
 #include <QtNetwork>
 
 class Video : public QObject {
@@ -95,7 +98,8 @@ private slots:
     void errorVideoInfo(QNetworkReply*);
     void scrapeWebPage(QByteArray);
     void gotHeadHeaders(QNetworkReply*);
-    void parseJsPlayer(QByteArray);
+    void parseJsPlayer(QByteArray bytes);
+    void parseDashManifest(QByteArray bytes);
 
 private:
     void getVideoInfo();
@@ -103,6 +107,7 @@ private:
     void foundVideoUrl(QString videoToken, int definitionCode);
     void parseFmtUrlMap(const QString &fmtUrlMap, bool fromWebPage = false);
     void captureFunction(const QString &name, const QString &js);
+    void captureObject(const QString &name, const QString &js);
     QString decryptSignature(const QString &s);
 
     QString m_title;
@@ -130,9 +135,12 @@ private:
     bool loadingStreamUrl;
     bool loadingThumbnail;
 
-    QHash<QString, QString> sigFunctions;
-    QString sigFuncName;
     QString fmtUrlMap;
+    QString sigFuncName;
+    QHash<QString, QString> sigFunctions;
+    QHash<QString, QString> sigObjects;
+
+    QString dashManifestUrl;
 };
 
 // This is required in order to use QPointer<Video> as a QVariant