diff --git a/network/youtubedownload.cpp b/network/youtubedownload.cpp index 5322eb4..fe2552e 100644 --- a/network/youtubedownload.cpp +++ b/network/youtubedownload.cpp @@ -123,14 +123,28 @@ void YoutubeDownload::evalVideoInformation(Download *, QBuffer *videoInfoBuffer) if(m_itagInfo.contains(itag)) { itagObj = m_itagInfo.value(itag).toObject(); name.append(itagObj.value(QStringLiteral("container")).toString()); - if(!itagObj.value(QStringLiteral("videoCodec")).isNull()) { - name.append(", "); + const QString videoCodec = itagObj.value(QStringLiteral("videoCodec")).toString(); + const QString audioCodec = itagObj.value(QStringLiteral("audioCodec")).toString(); + if(!videoCodec.isEmpty()) { + name.append(QChar('/')); + name.append(videoCodec); + } + if(!audioCodec.isEmpty()) { + name.append(QChar('/')); + name.append(audioCodec); + } + if(!videoCodec.isEmpty()) { + name.append(QStringLiteral(", ")); name.append(itagObj.value(QStringLiteral("videoResolution")).toString()); } - if(itagObj.value(QStringLiteral("videoCodec")).isNull()) { + if(videoCodec.isEmpty()) { name.append(tr(", no video")); + const QString audioBitrate = itagObj.value(QStringLiteral("audioBitrate")).toString(); + if(!audioBitrate.isEmpty()) { + name.append(tr(", %1 kbit/s").arg(audioBitrate)); + } } - if(itagObj.value(QStringLiteral("audioCodec")).isNull()) { + if(audioCodec.isEmpty()) { name.append(tr(", no audio")); } name.append(QStringLiteral(" (")); diff --git a/resources/json/itaginfo.json b/resources/json/itaginfo.json index a2506b8..5430d52 100644 --- a/resources/json/itaginfo.json +++ b/resources/json/itaginfo.json @@ -189,6 +189,56 @@ "audioBitrate":"192", "ext":"mp4" }, + "92":{ + "container":"TS", + "videoResolution":"240p", + "videoCodec":"H.264", + "videoProfile":"Main", + "videoBitrate":"0.15-0.3", + "audioCodec":"AAC", + "audioBitrate":"48", + "ext":"ts" + }, + "93":{ + "container":"TS", + "videoResolution":"360p", + "videoCodec":"H.264", + "videoProfile":"Main", + "videoBitrate":"0.5-1", + "audioCodec":"AAC", + "audioBitrate":"128", + "ext":"ts" + }, + "94":{ + "container":"TS", + "videoResolution":"480p", + "videoCodec":"H.264", + "videoProfile":"Main", + "videoBitrate":"0.8-1.25", + "audioCodec":"AAC", + "audioBitrate":"128", + "ext":"ts" + }, + "95":{ + "container":"TS", + "videoResolution":"720p", + "videoCodec":"H.264", + "videoProfile":"Main", + "videoBitrate":"1.5-3", + "audioCodec":"AAC", + "audioBitrate":"256", + "ext":"ts" + }, + "96":{ + "container":"TS", + "videoResolution":"1080p", + "videoCodec":"H.264", + "videoProfile":"High", + "videoBitrate":"2.5-6", + "audioCodec":"AAC", + "audioBitrate":"256", + "ext":"ts" + }, "100":{ "container":"WebM", "videoResolution":"360p", @@ -219,6 +269,46 @@ "audioBitrate":"192", "ext":"webm" }, + "120":{ + "container":"FLV", + "videoResolution":"720p", + "videoCodec":"H.264", + "videoProfile":"Main@L3.1", + "videoBitrate":"2", + "audioCodec":"AAC", + "audioBitrate":"128", + "ext":"flv" + }, + "127":{ + "container":"TS", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"AAC", + "audioBitrate":"96", + "ext":"tsa" + }, + "128":{ + "container":"TS", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"AAC", + "audioBitrate":"96", + "ext":"tsa" + }, + "132":{ + "container":"TS", + "videoResolution":"240p", + "videoCodec":"H.264", + "videoProfile":"Baseline", + "videoBitrate":"0.15-0.2", + "audioCodec":"AAC", + "audioBitrate":"48", + "ext":"ts" + }, "133":{ "container":"MP4", "videoResolution":"240p", @@ -279,6 +369,46 @@ "audioBitrate":null, "ext":"m4v" }, + "139":{ + "container":"MP4", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"AAC", + "audioBitrate":"48", + "ext":"m4a" + }, + "140":{ + "container":"MP4", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"AAC", + "audioBitrate":"128", + "ext":"m4a" + }, + "141":{ + "container":"MP4", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"AAC", + "audioBitrate":"256", + "ext":"m4a" + }, + "151":{ + "container":"TS", + "videoResolution":"72p", + "videoCodec":"H.264", + "videoProfile":"Baseline", + "videoBitrate":"0.05", + "audioCodec":"AAC", + "audioBitrate":"24", + "ext":"ts" + }, "160":{ "container":"MP4", "videoResolution":"144p", @@ -289,6 +419,26 @@ "audioBitrate":null, "ext":"m4v" }, + "171":{ + "container":"WebM", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"Vorbis", + "audioBitrate":"128", + "ext":"mka" + }, + "172":{ + "container":"WebM", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"Vorbis", + "audioBitrate":"192", + "ext":"mka" + }, "242":{ "container":"WebM", "videoResolution":"240p", @@ -339,6 +489,36 @@ "audioBitrate":null, "ext":"webm" }, + "249":{ + "container":"WebM", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"Opus", + "audioBitrate":"48", + "ext":"mka" + }, + "250":{ + "container":"WebM", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"Opus", + "audioBitrate":"64", + "ext":"mka" + }, + "251":{ + "container":"WebM", + "videoResolution":null, + "videoCodec":null, + "videoProfile":null, + "videoBitrate":null, + "audioCodec":"Opus", + "audioBitrate":"160", + "ext":"mka" + }, "264":{ "container":"MP4", "videoResolution":"1440p", @@ -349,12 +529,32 @@ "audioBitrate":null, "ext":"m4v" }, + "264":{ + "container":"MP4", + "videoResolution":"2160p–2304p", + "videoCodec":"H.264", + "videoProfile":"High", + "videoBitrate":"12.5-16", + "audioCodec":null, + "audioBitrate":null, + "ext":"m4v" + }, "271":{ "container":"WebM", "videoResolution":"1440p", "videoCodec":"VP9", "videoProfile":null, - "videoBitrate":"4", + "videoBitrate":"9", + "audioCodec":null, + "audioBitrate":null, + "ext":"webm" + }, + "272":{ + "container":"WebM", + "videoResolution":"2160p", + "videoCodec":"VP9", + "videoProfile":null, + "videoBitrate":"15-17.5", "audioCodec":null, "audioBitrate":null, "ext":"webm" @@ -369,154 +569,74 @@ "audioBitrate":null, "ext":"webm" }, - "139":{ + "298":{ "container":"MP4", - "videoResolution":null, - "videoCodec":null, - "videoProfile":null, - "videoBitrate":null, - "audioCodec":"AAC", - "audioBitrate":"48", - "ext":"m4a" + "videoResolution":"360p/720p", + "videoCodec":"H.264", + "videoProfile":"Main", + "videoBitrate":"3-3.5", + "audioCodec":null, + "audioBitrate":null, + "ext":"m4v" }, - "140":{ + "299":{ "container":"MP4", - "videoResolution":null, - "videoCodec":null, - "videoProfile":null, - "videoBitrate":null, - "audioCodec":"AAC", - "audioBitrate":"128", - "ext":"m4a" - }, - "141":{ - "container":"MP4", - "videoResolution":null, - "videoCodec":null, - "videoProfile":null, - "videoBitrate":null, - "audioCodec":"AAC", - "audioBitrate":"256", - "ext":"m4a" - }, - "171":{ - "container":"WebM", - "videoResolution":null, - "videoCodec":null, - "videoProfile":null, - "videoBitrate":null, - "audioCodec":"Vorbis", - "audioBitrate":"128", - "ext":"mka" - }, - "172":{ - "container":"WebM", - "videoResolution":null, - "videoCodec":null, - "videoProfile":null, - "videoBitrate":null, - "audioCodec":"Vorbis", - "audioBitrate":"192", - "ext":"mka" - }, - "92":{ - "container":"TS", - "videoResolution":"240p", - "videoCodec":"H.264", - "videoProfile":"Main", - "videoBitrate":"0.15-0.3", - "audioCodec":"AAC", - "audioBitrate":"48", - "ext":"ts" - }, - "93":{ - "container":"TS", - "videoResolution":"360p", - "videoCodec":"H.264", - "videoProfile":"Main", - "videoBitrate":"0.5-1", - "audioCodec":"AAC", - "audioBitrate":"128", - "ext":"ts" - }, - "94":{ - "container":"TS", - "videoResolution":"480p", - "videoCodec":"H.264", - "videoProfile":"Main", - "videoBitrate":"0.8-1.25", - "audioCodec":"AAC", - "audioBitrate":"128", - "ext":"ts" - }, - "95":{ - "container":"TS", - "videoResolution":"720p", - "videoCodec":"H.264", - "videoProfile":"Main", - "videoBitrate":"1.5-3", - "audioCodec":"AAC", - "audioBitrate":"256", - "ext":"ts" - }, - "96":{ - "container":"TS", - "videoResolution":"1080p", + "videoResolution":"480p/1080p", "videoCodec":"H.264", "videoProfile":"High", - "videoBitrate":"2.5-6", - "audioCodec":"AAC", - "audioBitrate":"256", - "ext":"ts" + "videoBitrate":"5.5", + "audioCodec":null, + "audioBitrate":null, + "ext":"m4v" }, - "120":{ - "container":"FLV", - "videoResolution":"720p", - "videoCodec":"H.264", - "videoProfile":"Main@L3.1", - "videoBitrate":"2", - "audioCodec":"AAC", - "audioBitrate":"128", - "ext":"flv" - }, - "127":{ - "container":"TS", - "videoResolution":null, - "videoCodec":null, + "302":{ + "container":"WebM", + "videoResolution":"360p/720p", + "videoCodec":"VP9", "videoProfile":null, - "videoBitrate":null, - "audioCodec":"AAC", - "audioBitrate":"96", - "ext":"tsa" + "videoBitrate":"2.5", + "audioCodec":null, + "audioBitrate":null, + "ext":"webm" }, - "128":{ - "container":"TS", - "videoResolution":null, - "videoCodec":null, + "303":{ + "container":"WebM", + "videoResolution":"360p/1080p", + "videoCodec":"VP9", "videoProfile":null, - "videoBitrate":null, - "audioCodec":"AAC", - "audioBitrate":"96", - "ext":"tsa" + "videoBitrate":"5", + "audioCodec":null, + "audioBitrate":null, + "ext":"webm" }, - "132":{ - "container":"TS", - "videoResolution":"240p", - "videoCodec":"H.264", - "videoProfile":"Baseline", - "videoBitrate":"0.15-0.2", - "audioCodec":"AAC", - "audioBitrate":"48", - "ext":"ts" + "308":{ + "container":"WebM", + "videoResolution":"1440p", + "videoCodec":"VP9", + "videoProfile":null, + "videoBitrate":"10", + "audioCodec":null, + "audioBitrate":null, + "ext":"webm" }, - "151":{ - "container":"TS", - "videoResolution":"72p", - "videoCodec":"H.264", - "videoProfile":"Baseline", - "videoBitrate":"0.05", - "audioCodec":"AAC", - "audioBitrate":"24", - "ext":"ts" + "313":{ + "container":"WebM", + "videoResolution":"2160p", + "videoCodec":"VP9", + "videoProfile":null, + "videoBitrate":"13-15", + "audioCodec":null, + "audioBitrate":null, + "ext":"webm" + }, + "315":{ + "container":"WebM", + "videoResolution":"2160p", + "videoCodec":"VP9", + "videoProfile":null, + "videoBitrate":"20-25", + "audioCodec":null, + "audioBitrate":null, + "ext":"webm" } }