From aa1f5c76897f4f94ade024f1e27a356607c6d6a4 Mon Sep 17 00:00:00 2001 From: Isaac Schmidt Date: Wed, 28 Jun 2023 21:05:29 -0400 Subject: [PATCH] save decrypted fragments using my preferred naming scheme --- yt_dlp/downloader/fragment.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/yt_dlp/downloader/fragment.py b/yt_dlp/downloader/fragment.py index 458167216..be068c0aa 100644 --- a/yt_dlp/downloader/fragment.py +++ b/yt_dlp/downloader/fragment.py @@ -515,7 +515,11 @@ def _download_fragment(fragment): 'fragment_filename_sanitized': frag_filename, 'fragment_index': frag_index, }) - if not append_fragment(decrypt_fragment(fragment, self._read_fragment(ctx)), frag_index, ctx): + decrypted_fragment = decrypt_fragment(fragment, self._read_fragment(ctx)) + if self.params.get('keep_fragments', False): + f, _ = self.sanitize_open(format(fragment['frag_index'], '05d') + '.ts', 'wb') + f.write(decrypted_fragment) + if not append_fragment(decrypted_fragment, frag_index, ctx): return False except KeyboardInterrupt: self._finish_multiline_status() @@ -529,8 +533,11 @@ def _download_fragment(fragment): break try: download_fragment(fragment, ctx) - result = append_fragment( - decrypt_fragment(fragment, self._read_fragment(ctx)), fragment['frag_index'], ctx) + decrypted_fragment = decrypt_fragment(fragment, self._read_fragment(ctx)) + if self.params.get('keep_fragments', False): + f, _ = self.sanitize_open(format(fragment['frag_index'], '05d') + '.ts', 'wb') + f.write(decrypted_fragment) + result = append_fragment(decrypted_fragment, fragment['frag_index'], ctx) except KeyboardInterrupt: if info_dict.get('is_live'): break