Introduce --keep-fragments

This commit is contained in:
Sergey M․ 2017-04-24 03:09:08 +07:00
parent d3f0687cf7
commit 0eee52f34b
No known key found for this signature in database
GPG key ID: 2C393E0F18A9236D
3 changed files with 9 additions and 1 deletions

View file

@ -343,6 +343,7 @@ def parse_retries(retries):
'retries': opts.retries,
'fragment_retries': opts.fragment_retries,
'skip_unavailable_fragments': opts.skip_unavailable_fragments,
'keep_fragments': opts.keep_fragments,
'buffersize': opts.buffersize,
'noresizebuffer': opts.noresizebuffer,
'continuedl': opts.continue_dl,

View file

@ -29,6 +29,8 @@ class FragmentFD(FileDownloader):
and hlsnative only)
skip_unavailable_fragments:
Skip unavailable fragments (DASH and hlsnative only)
keep_fragments: Keep downloaded fragments on disk after downloading is
finished
"""
def report_retry_fragment(self, err, frag_index, count, retries):
@ -81,7 +83,8 @@ def _append_fragment(self, ctx, frag_content):
finally:
if not (ctx.get('live') or ctx['tmpfilename'] == '-'):
self._write_ytdl_file(ctx)
os.remove(ctx['fragment_filename_sanitized'])
if not self.params.get('keep_fragments', False):
os.remove(ctx['fragment_filename_sanitized'])
del ctx['fragment_filename_sanitized']
def _prepare_frag_download(self, ctx):

View file

@ -468,6 +468,10 @@ def _scrub_eq(o):
'--abort-on-unavailable-fragment',
action='store_false', dest='skip_unavailable_fragments',
help='Abort downloading when some fragment is not available')
downloader.add_option(
'--keep-fragments',
action='store_true', dest='keep_fragments', default=False,
help='Keep downloaded fragments on disk after downloading is finished; fragments are erased by default')
downloader.add_option(
'--buffer-size',
dest='buffersize', metavar='SIZE', default='1024',