mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-23 09:01:43 +00:00
parent
c77df98b1a
commit
fbbb5508ea
@ -1,5 +1,6 @@
|
||||
import hashlib
|
||||
import random
|
||||
import re
|
||||
|
||||
from ..compat import compat_urlparse, compat_b64decode
|
||||
|
||||
@ -37,7 +38,7 @@ class HuyaLiveIE(InfoExtractor):
|
||||
}]
|
||||
|
||||
_RESOLUTION = {
|
||||
'蓝光4M': {
|
||||
'蓝光': {
|
||||
'width': 1920,
|
||||
'height': 1080,
|
||||
},
|
||||
@ -76,11 +77,15 @@ def _real_extract(self, url):
|
||||
if re_secret:
|
||||
fm, ss = self.encrypt(params, stream_info, stream_name)
|
||||
for si in stream_data.get('vMultiStreamInfo'):
|
||||
display_name, bitrate = re.fullmatch(
|
||||
r'(.+?)(?:(\d+)M)?', si.get('sDisplayName')).groups()
|
||||
rate = si.get('iBitRate')
|
||||
if rate:
|
||||
params['ratio'] = rate
|
||||
else:
|
||||
params.pop('ratio', None)
|
||||
if bitrate:
|
||||
rate = int(bitrate) * 1000
|
||||
if re_secret:
|
||||
params['wsSecret'] = hashlib.md5(
|
||||
'_'.join([fm, params['u'], stream_name, ss, params['wsTime']]))
|
||||
@ -90,7 +95,7 @@ def _real_extract(self, url):
|
||||
'tbr': rate,
|
||||
'url': update_url_query(f'{stream_url}/{stream_name}.{stream_info.get("sFlvUrlSuffix")}',
|
||||
query=params),
|
||||
**self._RESOLUTION.get(si.get('sDisplayName'), {}),
|
||||
**self._RESOLUTION.get(display_name, {}),
|
||||
})
|
||||
|
||||
return {
|
||||
|
Loading…
Reference in New Issue
Block a user