1
0
mirror of https://github.com/l1ving/youtube-dl synced 2024-11-22 23:13:06 +08:00

Dont delete source file when source file and post-processed file are the same

This commit is contained in:
Joe Frambach 2013-04-24 21:59:10 +00:00
parent fa70605db2
commit e74c504f91

View File

@ -188,6 +188,11 @@ class FFmpegExtractAudioPP(FFmpegPostProcessor):
prefix, sep, ext = path.rpartition(u'.') # not os.path.splitext, since the latter does not work on unicode in all setups prefix, sep, ext = path.rpartition(u'.') # not os.path.splitext, since the latter does not work on unicode in all setups
new_path = prefix + sep + extension new_path = prefix + sep + extension
# If we download foo.mp3 and convert it to... foo.mp3, then don't delete foo.mp3, silly.
if new_path == path:
self._nopostoverwrites = True
try: try:
if self._nopostoverwrites and os.path.exists(encodeFilename(new_path)): if self._nopostoverwrites and os.path.exists(encodeFilename(new_path)):
self._downloader.to_screen(u'[youtube] Post-process file %s exists, skipping' % new_path) self._downloader.to_screen(u'[youtube] Post-process file %s exists, skipping' % new_path)
@ -210,7 +215,7 @@ class FFmpegExtractAudioPP(FFmpegPostProcessor):
self._downloader.to_stderr(u'WARNING: Cannot update utime of audio file') self._downloader.to_stderr(u'WARNING: Cannot update utime of audio file')
information['filepath'] = new_path information['filepath'] = new_path
return False,information return self._nopostoverwrites,information
class FFmpegVideoConvertor(FFmpegPostProcessor): class FFmpegVideoConvertor(FFmpegPostProcessor):
def __init__(self, downloader=None,preferedformat=None): def __init__(self, downloader=None,preferedformat=None):