@ -1914,6 +1914,9 @@ class YoutubeDL(object):
self.to_stdout(formatSeconds(info_dict['duration']))
print_mandatory('format')
if self.params.get('forcejson', False):
if self.params.get('indent_json', False):
self.to_stdout(json.dumps(self.sanitize_info(info_dict), indent=2))
else:
self.to_stdout(json.dumps(self.sanitize_info(info_dict)))
def process_info(self, info_dict):
@ -435,6 +435,7 @@ def _real_main(argv=None):
# just for deprecation check
'autonumber': opts.autonumber if opts.autonumber is True else None,
'usetitle': opts.usetitle if opts.usetitle is True else None,
'indent_json': opts.pretty_json,
}
with YoutubeDL(ydl_opts) as ydl:
@ -675,6 +675,11 @@ def parseOpts(overrideArguments=None):
'--no-call-home',
dest='call_home', action='store_false', default=False,
help='Do NOT contact the youtube-dl server for debugging')
verbosity.add_option(
'--pretty-json',
dest='pretty_json', action='store_true', default=False,
help='Print json with indentation. Only when --dump-json is provided'
)
filesystem = optparse.OptionGroup(parser, 'Filesystem Options')
filesystem.add_option(