#!/usr/bin/env python

import sys,os
from optparse import OptionParser
import shutil
import eyeD3

usage = "m3ucp.py in-dir out-dir"

parser = OptionParser(usage, version=".1")

parser.add_option("-c", "--create-output", dest="create", action="store_true",
                  help="Create output directory if it does not exist", default=False)
parser.add_option("-p", "--playlist-name", dest="playlist_name", action="store", type="string",
                  help="Override playlist filename", default=None)
parser.add_option("-d", "--playlist-directory", dest="playlist_dir", action="store", type="string",
                  help="Override playlist output directory", default=None)

(options, args) = parser.parse_args()

if (len(args) != 2) :
    print usage
    sys.exit(1)

if not os.path.isdir(args[0]):
    print "input %s not found!" % args[0]
    sys.exit(1)
if not os.path.isdir(args[1]):
    if not options.create:
        print "output %s not found!" % args[1]
        sys.exit(1)
    else:
        try:
            os.mkdir(args[1])
        except os.error, detail:
            print "%s: %s" % (detail[1], args[1])
            sys.exit(1)

# make a list of mp3 files in the input directory
names = os.listdir(args[0])
print names
mp3s = []
for name in names:
    f = os.path.join(args[0], name)
    if eyeD3.isMp3File(f):
        audio = eyeD3.Mp3AudioFile(f)
        tag = audio.getTag()
        if tag == None:
            print "Warning %s has no tag, using filename" % f
        print tag.getAlbum()
               

