#!/usr/bin/env python # Convert a whole directory tree of flac files to oggs # Just a wrapper on a couple of system commands # Could be made more 'pythonic' by replacing find with os.walk # Public Domain: copy, redistribute, reuse freely and without restriction import os import shutil import commands # base directory for flac files srcPath = '/var/share/music' # destination directory for ogg files destPath = '/var/share/ogg' cmds = [ "find . -type d -exec mkdir %s/'{}' \\;" % destPath, "find . -name '*.flac' -exec oggenc --quiet --quality 4 '{}' \\;", "find . -name '*.ogg' -exec mv '{}' %s/'{}' \\;" % destPath, ] def run_cmd(cmd): status, output = commands.getstatusoutput(cmd) if status: print 'Had error running [%s]: %s' % (cmd, output) def convert_to_ogg(clean=True): if clean: shutil.rmtree(destPath) if not os.path.exists(destPath): os.makedirs(destPath) os.chdir(srcPath) for cmd in cmds: run_cmd(cmd) if __name__ == '__main__': convert_to_ogg()
Python Script to Batch Convert Flac to Ogg
APRIL 12, 2006