From 361db95e5a4a9e35a34ee2b4dad1f1be79319752 Mon Sep 17 00:00:00 2001 From: Ville Rantanen Date: Tue, 7 Dec 2021 21:00:31 +0200 Subject: [PATCH] reformat code --- .../ffmpegparser/ffmpegparser.py | 3 +- .../ffmpegparser/ffprobeparser.py | 84 ++++++++++++------- py-packages/ffmpeg-parser/setup.py | 4 +- 3 files changed, 56 insertions(+), 35 deletions(-) diff --git a/py-packages/ffmpeg-parser/ffmpegparser/ffmpegparser.py b/py-packages/ffmpeg-parser/ffmpegparser/ffmpegparser.py index 406aef9..cbf8db6 100755 --- a/py-packages/ffmpeg-parser/ffmpegparser/ffmpegparser.py +++ b/py-packages/ffmpeg-parser/ffmpegparser/ffmpegparser.py @@ -8,7 +8,8 @@ import parse from ansi import cursor from datetime import datetime -__version__=1.0 +__version__ = 1.0 + class Chopper: def __init__(self, buf): diff --git a/py-packages/ffmpeg-parser/ffmpegparser/ffprobeparser.py b/py-packages/ffmpeg-parser/ffmpegparser/ffprobeparser.py index 847bddc..24bb4d9 100755 --- a/py-packages/ffmpeg-parser/ffmpegparser/ffprobeparser.py +++ b/py-packages/ffmpeg-parser/ffmpegparser/ffprobeparser.py @@ -13,8 +13,12 @@ from datetime import datetime class Probe: def __init__(self): - parser = argparse.ArgumentParser(description="Readable version of ffprobe. Give filename as argument.") - parser.add_argument("-c", dest="colorize", action="store_true", default=False, help="Colorize") + parser = argparse.ArgumentParser( + description="Readable version of ffprobe. Give filename as argument." + ) + parser.add_argument( + "-c", dest="colorize", action="store_true", default=False, help="Colorize" + ) parser.add_argument("filename", help="File to probe") parsed = parser.parse_args() @@ -32,7 +36,8 @@ class Probe: "-hide_banner", "-of", "default=noprint_wrappers=0", - "-print_format", "json", + "-print_format", + "json", "-show_format", "-show_streams", self.filename, @@ -46,13 +51,18 @@ class Probe: print(errors) self.json_data = json.loads(self.raw_data) - def print(self): # ~ print(self.json_data['format']) - self.json_data['format']['time'] = self._timestr(self.json_data['format'].get('duration',"0")) - self.json_data['format']['hrate'] = self._speedfmt(self.json_data['format'].get('bit_rate',"0")) - self.json_data['format']['hsize'] = self._sizefmt(float(self.json_data['format'].get('size',0))) - self.json_data['format'].update(self._get_colors()) + self.json_data["format"]["time"] = self._timestr( + self.json_data["format"].get("duration", "0") + ) + self.json_data["format"]["hrate"] = self._speedfmt( + self.json_data["format"].get("bit_rate", "0") + ) + self.json_data["format"]["hsize"] = self._sizefmt( + float(self.json_data["format"].get("size", 0)) + ) + self.json_data["format"].update(self._get_colors()) msg = """{Y}==== Format ===={z} File: {filename} @@ -60,37 +70,42 @@ class Probe: Length: {time} Size: {hsize} Bitrate: {hrate} -Streams: {nb_streams}""".format(**self.json_data['format'] +Streams: {nb_streams}""".format( + **self.json_data["format"] ) print(msg) - for stream in self.json_data['streams']: + for stream in self.json_data["streams"]: original = stream.copy() stream.update(self._get_colors()) - if stream['codec_type'] == "video": + if stream["codec_type"] == "video": msg = self.format_video(stream) - elif stream['codec_type'] == "audio": + elif stream["codec_type"] == "audio": msg = self.format_audio(stream) - elif stream['codec_type'] == "subtitle": + elif stream["codec_type"] == "subtitle": msg = self.format_subtitle(stream) else: msg = "Unrecognized stream\n{}".format(json.dumps(original, indent=2)) print(msg) - def format_subtitle(self, stream): - stream['tags-lang'] = stream.get('tags',{}).get('language',"NA") + stream["tags-lang"] = stream.get("tags", {}).get("language", "NA") msg = """{Y}==== Stream:{index} ===={z} Type: {G}{codec_type}{z} Codec: {codec_long_name} ({codec_name}) -Language: {tags-lang}""".format(**stream) +Language: {tags-lang}""".format( + **stream + ) return msg def format_video(self, stream): - stream['hrate'] = self._speedfmt(stream.get("bit_rate",0)) - stream['fps'] = "{:.2f}".format(float(stream['r_frame_rate'].split('/')[0]) / float(stream['r_frame_rate'].split('/')[1])) + stream["hrate"] = self._speedfmt(stream.get("bit_rate", 0)) + stream["fps"] = "{:.2f}".format( + float(stream["r_frame_rate"].split("/")[0]) + / float(stream["r_frame_rate"].split("/")[1]) + ) msg = """{Y}==== Stream:{index} ===={z} Type: {G}{codec_type}{z} Codec: {codec_long_name} ({codec_name}) @@ -98,24 +113,27 @@ Language: {tags-lang}""".format(**stream) Resolution: {width}x{height} Aspect: {display_aspect_ratio} Profile: {profile} - FPS: {r_frame_rate} ({fps})""".format(**stream) + FPS: {r_frame_rate} ({fps})""".format( + **stream + ) return msg def format_audio(self, stream): - stream['hrate'] = self._speedfmt(stream.get("bit_rate",0)) + stream["hrate"] = self._speedfmt(stream.get("bit_rate", 0)) msg = """{Y}==== Stream:{index} ===={z} Type: {G}{codec_type}{z} Codec: {codec_long_name} ({codec_name}) Bitrate: {hrate} Sample Rate: {sample_rate} Hz - Channels: {channels} ({channel_layout})""".format(**stream) + Channels: {channels} ({channel_layout})""".format( + **stream + ) return msg - def _timestr(self, sec): - msec = int((float(sec) - int(float(sec)))*1000) + msec = int((float(sec) - int(float(sec))) * 1000) sec = int(float(sec)) try: hours = int(sec) // 3600 % 24 @@ -141,32 +159,34 @@ Sample Rate: {sample_rate} Hz except Exception: return b - def _sizefmt(self, num, suffix='B'): + def _sizefmt(self, num, suffix="B"): num = float(num) - for unit in ['','K','M','G','T','P','E','Z']: + for unit in ["", "K", "M", "G", "T", "P", "E", "Z"]: if abs(num) < 1024.0: return "%3.1f %s%s" % (num, unit, suffix) num /= 1024.0 - return "%.1f %s%s" % (num, 'Y', suffix) + return "%.1f %s%s" % (num, "Y", suffix) def _get_colors(self): if self.colorize: return { - 'Y': fg.boldyellow, - 'G': fg.boldgreen, - 'z': fx.reset, + "Y": fg.boldyellow, + "G": fg.boldgreen, + "z": fx.reset, } else: return { - 'Y': "", - 'G': "", - 'z': "", + "Y": "", + "G": "", + "z": "", } + def main(): Probe() + if __name__ == "__main__": main() diff --git a/py-packages/ffmpeg-parser/setup.py b/py-packages/ffmpeg-parser/setup.py index 9064103..a45faa0 100644 --- a/py-packages/ffmpeg-parser/setup.py +++ b/py-packages/ffmpeg-parser/setup.py @@ -18,8 +18,8 @@ setup( keywords=["ffmpeg"], entry_points={ "console_scripts": [ - "ffmpeg-parser = ffmpegparser.ffmpegparser:main", - "ffprobe-parser = ffmpegparser.ffprobeparser:main" + "ffmpeg-parser = ffmpegparser.ffmpegparser:main", + "ffprobe-parser = ffmpegparser.ffprobeparser:main", ] }, install_requires=["parse", "ansi"],