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

This commit is contained in:
rupertbaxter2 2014-07-23 02:53:44 +02:00 committed by Philipp Hagemeister
parent 6db274e057
commit b7f8116406
2 changed files with 6 additions and 2 deletions

View File

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

View File

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