From 550d937a3913ef93d1368d57fb7150d9e54b1c8c Mon Sep 17 00:00:00 2001 From: timotheyca Date: Fri, 5 Aug 2022 00:24:28 +0300 Subject: [PATCH] ffprobe disaster --- v6d3music/core/ytaudio.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/v6d3music/core/ytaudio.py b/v6d3music/core/ytaudio.py index 23740c8..0f44968 100644 --- a/v6d3music/core/ytaudio.py +++ b/v6d3music/core/ytaudio.py @@ -78,17 +78,20 @@ class YTAudio(discord.AudioSource): if url in self._durations: return self._durations.setdefault(url, '') - prompt = '' if self.tor: - prompt = 'torify ' - prompt += ( - f'ffprobe -i {shlex.quote(url)}' - ' -show_entries format=duration -v quiet -of csv="p=0" -sexagesimal' - ) + args = ['torify'] + else: + args = [] + args += [ + 'ffprobe', '-i', url, + '-show_entries', 'format=duration', + '-v', 'quiet', + '-of', 'default=noprint_wrappers=1:nokey=1', + '-sexagesimal' + ] p = subprocess.Popen( - prompt, - stdout=subprocess.PIPE, - shell=True + args, + stdout=subprocess.PIPE ) with Benchmark('FFP'): code = await self.loop.run_in_executor(None, p.wait)