From a907cd146325a92d09c533dc945093f4d52ae4e7 Mon Sep 17 00:00:00 2001 From: Guillaume Pellerin Date: Tue, 20 Oct 2015 17:02:42 +0200 Subject: [PATCH] fix mp3 transcoding --- tools/scripts/transcode/remux_fix_media.py | 41 ++++++++++++---------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/tools/scripts/transcode/remux_fix_media.py b/tools/scripts/transcode/remux_fix_media.py index 0d505672..a95a3bae 100755 --- a/tools/scripts/transcode/remux_fix_media.py +++ b/tools/scripts/transcode/remux_fix_media.py @@ -18,35 +18,40 @@ class FixCheckMedia(object): mp3_fixed_log = 'mp3.fixed' mp3_tofix_log = 'mp3.tofix' - for root, dirs, files in os.walk(self.dir): + for root, dirs, files in os.walk(self.dir, followlinks=True): for filename in files: source = root + os.sep + filename name = os.path.splitext(filename)[0] ext = os.path.splitext(filename)[1][1:] - + #print source, name, ext + if ext == 'webm' and os.path.getsize(source): dir_files = os.listdir(root) - if not webm_fixed_log in dir_files: - print source + #print source self.fix_webm(source) f = open(root + os.sep + webm_fixed_log, 'w') f.close() if os.path.exists(root + os.sep + webm_tofix_log): os.remove(root + os.sep + webm_tofix_log) - - if mp3_tofix_log in dir_files and not mp3_fixed_log in dir_files: - for file in dir_files: - dest_ext = os.path.splitext(file)[1][1:] - if dest_ext == 'mp3': - dest = root + os.sep + file - print dest - self.fix_mp3(source, dest) - f = open(root + os.sep + mp3_fixed_log, 'w') - f.close() - if os.path.exists(root + os.sep + mp3_tofix_log): - os.remove(root + os.sep + mp3_tofix_log) - #break + + for filename in dir_files: + if '.mp3' in filename: + dest = root + os.sep + filename + mp3_size = os.stat(dest).st_size + break + else: + dest = root + os.sep + name + '.mp3' + mp3_size = 0 + + #FIXME force MP3 reencode + if (mp3_tofix_log in dir_files and not mp3_fixed_log in dir_files) or (mp3_size < 10000000 and not mp3_fixed_log in dir_files): + print dest + self.fix_mp3(source, dest) + f = open(root + os.sep + mp3_fixed_log, 'w') + f.close() + if os.path.exists(root + os.sep + mp3_tofix_log): + os.remove(root + os.sep + mp3_tofix_log) def hard_fix_webm(self, path): @@ -100,7 +105,7 @@ dir = sys.argv[-2] tmp_dir = sys.argv[-1] path = os.path.abspath(__file__) -pids = get_pids('python2.6',args=path) +pids = get_pids('python',args=path) print datetime.datetime.now() if len(pids) <= 1: -- 2.39.5