Skip to content

Commit

Permalink
WEB接口支持杜比视界/杜比音频
Browse files Browse the repository at this point in the history
  • Loading branch information
nilaoda committed Nov 1, 2021
1 parent cef173d commit 9735621
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 5 deletions.
17 changes: 15 additions & 2 deletions BBDown/BBDownParser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ private static async Task<string> GetPlayJsonAsync(bool onlyAvc, string aidOri,
string prefix = tvApi ? (bangumi ? "api.snm0516.aisee.tv/pgc/player/api/playurltv" : "api.snm0516.aisee.tv/x/tv/ugc/playurl")
: (bangumi ? "api.bilibili.com/pgc/player/web/playurl" : "api.bilibili.com/x/player/playurl");
string api = $"https://{prefix}?avid={aid}&cid={cid}&qn={qn}&type=&otype=json" + (tvApi ? "" : "&fourk=1") +
$"&fnver=0&fnval=80" + (tvApi ? "&device=android&platform=android" +
$"&fnver=0&fnval=976" + (tvApi ? "&device=android&platform=android" +
"&mobi_app=android_tv_yst&npcybs=0&force_host=0&build=102801" +
(Program.TOKEN != "" ? $"&access_key={Program.TOKEN}" : "") : "") +
(bangumi ? $"&module=bangumi&ep_id={epId}&fourk=1" + "&session=" : "");
Expand Down Expand Up @@ -144,6 +144,19 @@ private static async Task<string> GetPlayJsonAsync(string aid, string cid, strin
}
try { video = !tvApi ? respJson.RootElement.GetProperty(nodeName).GetProperty("dash").GetProperty("video").EnumerateArray().ToList() : respJson.RootElement.GetProperty("dash").GetProperty("video").EnumerateArray().ToList(); } catch { }
try { audio = !tvApi ? respJson.RootElement.GetProperty(nodeName).GetProperty("dash").GetProperty("audio").EnumerateArray().ToList() : respJson.RootElement.GetProperty("dash").GetProperty("audio").EnumerateArray().ToList(); } catch { }
//处理杜比音频
try
{
if (!tvApi && respJson.RootElement.GetProperty(nodeName).GetProperty("dash").TryGetProperty("dolby", out JsonElement dolby))
{
if(dolby.TryGetProperty("audio", out JsonElement db))
{
audio.AddRange(db.EnumerateArray().ToList());
}
}
}
catch (Exception) { ; }

if (video != null)
{
foreach (var node in video)
Expand Down Expand Up @@ -183,7 +196,7 @@ private static async Task<string> GetPlayJsonAsync(string aid, string cid, strin
a.dur = pDur;
a.bandwith = Convert.ToInt64(node.GetProperty("bandwidth").ToString()) / 1000;
a.baseUrl = node.GetProperty("base_url").ToString();
a.codecs = node.GetProperty("codecs").ToString().Replace("mp4a.40.2", "M4A");
a.codecs = node.GetProperty("codecs").ToString().Replace("mp4a.40.2", "M4A").Replace("ec-3", "E-AC-3");
audioTracks.Add(a);
}
}
Expand Down
4 changes: 2 additions & 2 deletions BBDown/BBDownUtil.cs
Original file line number Diff line number Diff line change
Expand Up @@ -181,9 +181,9 @@ public static async Task<string> GetWebSourceAsync(string url)
try
{
using var webRequest = new HttpRequestMessage(HttpMethod.Get, url);
webRequest.Headers.Add("UserAgent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36");
webRequest.Headers.Add("UserAgent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0 Safari/605.1.15");
webRequest.Headers.Add("Accept-Encoding", "gzip, deflate");
webRequest.Headers.Add("Cookie", (url.Contains("/ep") || url.Contains("/ss")) ? Program.COOKIE + ";CURRENT_FNVAL=80;" : Program.COOKIE);
webRequest.Headers.Add("Cookie", (url.Contains("/ep") || url.Contains("/ss")) ? Program.COOKIE + ";CURRENT_FNVAL=976;" : Program.COOKIE);
if (url.Contains("api.bilibili.com/pgc/player/web/playurl") || url.Contains("api.bilibili.com/pugv/player/web/playurl"))
webRequest.Headers.Add("Referer", "https://www.bilibili.com");
webRequest.Headers.CacheControl = CacheControlHeaderValue.Parse("no-cache");
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ Commands:
- [x] 二维码登录账号
- [x] **多线程下载**
- [x] 支持调用aria2c下载
- [x] **支持HDR/杜比视界/杜比全景声下载**`(需要使用App接口且输入会员token)`
- [x] **支持HDR/杜比视界/杜比全景声下载**

# TODO
- [ ] 自动刷新cookie
Expand Down

0 comments on commit 9735621

Please sign in to comment.