From ae419aa94fc16f4b55fe8b61159f66e085ae5b8b Mon Sep 17 00:00:00 2001 From: Nil Admirari <50202386+nihil-admirari@users.noreply.github.com> Date: Thu, 17 Feb 2022 17:10:34 +0000 Subject: [Sponsorblock] minor fixes (#2793) * preserve mtime - Closes #2769 * keep concat spec on failure Authored by: nihil-admirari --- yt_dlp/postprocessor/ffmpeg.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'yt_dlp/postprocessor/ffmpeg.py') diff --git a/yt_dlp/postprocessor/ffmpeg.py b/yt_dlp/postprocessor/ffmpeg.py index 42e9d12a7..05eeee2d7 100644 --- a/yt_dlp/postprocessor/ffmpeg.py +++ b/yt_dlp/postprocessor/ffmpeg.py @@ -384,12 +384,10 @@ class FFmpegPostProcessor(PostProcessor): out_flags = list(self.stream_copy_opts(ext=determine_ext(out_file))) - try: - self.real_run_ffmpeg( - [(concat_file, ['-hide_banner', '-nostdin', '-f', 'concat', '-safe', '0'])], - [(out_file, out_flags)]) - finally: - os.remove(concat_file) + self.real_run_ffmpeg( + [(concat_file, ['-hide_banner', '-nostdin', '-f', 'concat', '-safe', '0'])], + [(out_file, out_flags)]) + os.remove(concat_file) @classmethod def _concat_spec(cls, in_files, concat_opts=None): -- cgit v1.2.3 From ed66a17ef0b18159dda901f0122520c25ea95d6b Mon Sep 17 00:00:00 2001 From: pukkandan Date: Fri, 18 Feb 2022 23:16:16 +0530 Subject: [FFmpegConcat] Abort on `--simulate` --- yt_dlp/postprocessor/ffmpeg.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'yt_dlp/postprocessor/ffmpeg.py') diff --git a/yt_dlp/postprocessor/ffmpeg.py b/yt_dlp/postprocessor/ffmpeg.py index 05eeee2d7..d4495b4a2 100644 --- a/yt_dlp/postprocessor/ffmpeg.py +++ b/yt_dlp/postprocessor/ffmpeg.py @@ -1145,16 +1145,15 @@ class FFmpegConcatPP(FFmpegPostProcessor): super().concat_files(in_files, out_file) return in_files - @PostProcessor._restrict_to(images=False) + @PostProcessor._restrict_to(images=False, simulated=False) def run(self, info): entries = info.get('entries') or [] - if (self.get_param('skip_download') or not any(entries) - or self._only_multi_video and info['_type'] != 'multi_video'): + if not any(entries) or (self._only_multi_video and info['_type'] != 'multi_video'): return [], info elif any(len(entry) > 1 for entry in traverse_obj(entries, (..., 'requested_downloads')) or []): raise PostProcessingError('Concatenation is not supported when downloading multiple separate formats') - in_files = traverse_obj(entries, (..., 'requested_downloads', 0, 'filepath')) + in_files = traverse_obj(entries, (..., 'requested_downloads', 0, 'filepath')) or [] if len(in_files) < len(entries): raise PostProcessingError('Aborting concatenation because some downloads failed') -- cgit v1.2.3