diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py index 74c0db4fc2..fd26f00b72 100644 --- a/youtube_dl/YoutubeDL.py +++ b/youtube_dl/YoutubeDL.py @@ -662,10 +662,6 @@ def process_video_result(self, info_dict, download=True): if 'ext' not in format: format['ext'] = determine_ext(format['url']) - if self.params.get('listformats', None): - self.list_formats(info_dict) - return - format_limit = self.params.get('format_limit', None) if format_limit: formats = list(takewhile_inclusive( @@ -681,6 +677,11 @@ def _free_formats_key(f): return (f.get('height'), f.get('width'), ext_ord) formats = sorted(formats, key=_free_formats_key) + info_dict['formats'] = formats + if self.params.get('listformats', None): + self.list_formats(info_dict) + return + req_format = self.params.get('format', 'best') if req_format is None: req_format = 'best'