Browse Source

Deletes temp files after postprocess merge unless -k option is specified

rupertbaxter2 11 years ago
parent
commit
b7f8116406
2 changed files with 6 additions and 2 deletions
  1. 1 1
      youtube_dl/YoutubeDL.py
  2. 5 1
      youtube_dl/postprocessor/ffmpeg.py

+ 1 - 1
youtube_dl/YoutubeDL.py

@@ -999,7 +999,7 @@ class YoutubeDL(object):
                     if info_dict.get('requested_formats') is not None:
                         downloaded = []
                         success = True
-                        merger = FFmpegMergerPP(self)
+                        merger = FFmpegMergerPP(self, not self.params.get('keepvideo'))
                         if not merger._get_executable():
                             postprocessors = []
                             self.report_warning('You have requested multiple '

+ 5 - 1
youtube_dl/postprocessor/ffmpeg.py

@@ -23,9 +23,10 @@ class FFmpegPostProcessorError(PostProcessingError):
     pass
 
 class FFmpegPostProcessor(PostProcessor):
-    def __init__(self,downloader=None):
+    def __init__(self,downloader=None,deletetempfiles=False):
         PostProcessor.__init__(self, downloader)
         self._exes = self.detect_executables()
+        self._deletetempfiles = deletetempfiles
 
     @staticmethod
     def detect_executables():
@@ -60,6 +61,9 @@ class FFmpegPostProcessor(PostProcessor):
             stderr = stderr.decode('utf-8', 'replace')
             msg = stderr.strip().split('\n')[-1]
             raise FFmpegPostProcessorError(msg)
+        if self._deletetempfiles:
+            for rempath in input_paths:
+                os.remove(rempath)
 
     def run_ffmpeg(self, path, out_path, opts):
         self.run_ffmpeg_multiple_files([path], out_path, opts)