int getDefinitionCode() const { return definitionCode; }
signals:
- void gotStreamUrl(const QUrl &streamUrl);
+ void gotStreamUrl(const QString &videoUrl, const QString &audioUrl);
void errorStreamUrl(const QString &message);
private slots:
void errorVideoInfo(const QString &message);
void scrapeWebPage(const QByteArray &bytes);
void parseJsPlayer(const QByteArray &bytes);
- void parseDashManifest(const QByteArray &bytes);
private:
void getVideoInfo();
void parseFmtUrlMap(const QString &fmtUrlMap, bool fromWebPage = false);
+ void loadWebPage();
void captureFunction(const QString &name, const QString &js);
void captureObject(const QString &name, const QString &js);
QString decryptSignature(const QString &s);
QUrl m_streamUrl;
int definitionCode;
bool loadingStreamUrl;
- // current index for the elTypes list
- // needed to iterate on elTypes
int elIndex;
bool ageGate;
QString videoToken;
QHash<QString, QString> sigObjects;
QString dashManifestUrl;
QString jsPlayer;
+ QMap<int, QString> urlMap;
};
#endif // YTVIDEO_H