Compare commits

..

7 Commits

Author SHA1 Message Date
R. M 527dd9935a Update __init__.py 2023-03-28 01:30:37 -03:00
R. M 06d5c10725 Update gamdl.py 2023-03-28 01:30:20 -03:00
R. M 58a8e3944d Update gamdl.py 2023-03-28 01:15:23 -03:00
R. M 4c7e563d4c Remove useless if 2023-03-28 01:13:02 -03:00
R. M f05dace5c1 Changed version 2023-03-28 01:10:11 -03:00
R. M eb81728475 Remove unused methods 2023-03-28 01:08:41 -03:00
R. M 96c90e1716 Better synced lyrics time format 2023-03-28 01:08:09 -03:00
2 changed files with 16 additions and 29 deletions
+1 -1
View File
@@ -3,7 +3,7 @@ import argparse
import traceback
from .gamdl import Gamdl
__version__ = '1.4'
__version__ = '1.6'
def main():
+15 -28
View File
@@ -91,17 +91,6 @@ class Gamdl:
return next(i for i in webplayback["assets"] if i["flavor"] == "28:ctrp256")['URL']
def get_stream_url_music_video_audio(self, playlist):
return [i for i in playlist.media if i.type == "AUDIO"][-1].uri
def get_stream_url_music_video_video(self, playlist):
if self.prefer_hevc:
return playlist.playlists[-1].uri
else:
return [i for i in playlist.playlists if 'avc' in i.stream_info.codecs][-1].uri
def get_stream_url_music_video(self, webplayback):
with YoutubeDL({
'allow_unplayable_formats': True,
@@ -201,25 +190,23 @@ class Gamdl:
],
check = True
)
def get_synced_lyrics_formated_time(self, unformatted_time):
if 's' in unformatted_time:
unformatted_time = unformatted_time.replace('s', '')
if '.' not in unformatted_time:
unformatted_time += '.0'
s = int(unformatted_time.split('.')[-2].split(':')[-1]) * 1000
try:
m = int(unformatted_time.split('.')[-2].split(':')[-2]) * 60000
except:
m = 0
ms = f'{int(unformatted_time.split(".")[-1]):03d}'
if int(ms[2]) >= 5:
ms = int(f'{int(ms[:2]) + 1}') * 10
else:
ms = int(ms)
formated_time = datetime.datetime.fromtimestamp((s + m + ms)/1000.0)
return formated_time.strftime('%M:%S.%f')[:-4]
unformatted_time = unformatted_time.replace('m', '').replace('s', '').replace(':', '.')
unformatted_time = unformatted_time.split('.')
m, s, ms = 0, 0, 0
ms = int(unformatted_time[-1])
if len(unformatted_time) >= 2:
s = int(unformatted_time[-2]) * 1000
if len(unformatted_time) >= 3:
m = int(unformatted_time[-3]) * 60000
unformatted_time = datetime.datetime.fromtimestamp((ms + s + m)/1000.0)
ms_new = f'{int(str(unformatted_time.microsecond)[:3]):03d}'
if int(ms_new[2]) >= 5:
ms = int(f'{int(ms_new[:2]) + 1}') * 10
unformatted_time += datetime.timedelta(milliseconds=ms) - datetime.timedelta(microseconds=unformatted_time.microsecond)
return unformatted_time.strftime('%M:%S.%f')[:-4]
def get_lyrics(self, track_id):