blöder apfel m4a
Verfasst: 18.11.2012, 14:27
der apfel speichert musik in m4a-dateien mit kryptischen dateinamen, die tatsächlichen tags werden in plist-dateien gespeichert.
einiges suchen später stieß ich auf:
http://www.harald-hoyer.de/personal/blo ... -converter
also fedora aufn stick gepackt und dem laptop n dualboot verpasst, fedore installiert.
dann gerallt, wie man dasd python-skript ausführt und dann die fehlenden pakete nachinstalliert. dann flog ein unicode-encoding fehlerchen, welchen ich durch ändern des skriptes gefixed habe:
#!python
import sys
import os
import plistlib
for f in sys.argv[1:]:
pl = plistlib.readPlist(f)
source = pl["com.apple.iTunesStore.downloadInfo"]["mediaAssetFilename"]
dest = (pl.artistName).encode('ascii', 'ignore')
try:
os.mkdir(dest)
except OSError:
pass
dest+= "/" + (pl.playlistName).encode('ascii', 'ignore')
try:
os.mkdir(dest)
except OSError:
pass
dest+= "/" + (pl.itemName).encode('ascii', 'ignore') + ".mp3"
print dest
if not os.access(dest, os.F_OK):
ret = os.system('faad -o - "%s" | lame -h -b 192 - "%s"' % (
source,
dest))
if ret == 0:
os.system('id3v2 -a "%s" -A "%s" -t "%s" '
'-T "%s" -y "%s" -g "%s" "%s"' % (
(pl.artistName).encode('ascii', 'ignore'),
(pl.playlistName).encode('ascii', 'ignore'),
(pl.itemName).encode('ascii', 'ignore'),
pl.trackNumber,
pl.year,
(pl.genre).encode('ascii', 'ignore'),
dest.encode('ascii', 'ignore')))
else:
os.unlink(dest.encode('ascii', 'ignore'))
so. jetzt erzählt er mir:
Traceback (most recent call last):
File "m4a.py", line 36, in <module>
os.unlink(dest.encode('ascii', 'ignore'))
OSError: [Errno 2] No such file or directory: 'London Philharmonic Orchestra & David Parry/The 50 Greatest Pieces of Classical Music/Serenade No. 13 In G Major, K. 525, "Eine Kleine Nachtmusik": I. Allegro.mp3'
das heißt jetzt was?
einiges suchen später stieß ich auf:
http://www.harald-hoyer.de/personal/blo ... -converter
also fedora aufn stick gepackt und dem laptop n dualboot verpasst, fedore installiert.
dann gerallt, wie man dasd python-skript ausführt und dann die fehlenden pakete nachinstalliert. dann flog ein unicode-encoding fehlerchen, welchen ich durch ändern des skriptes gefixed habe:
#!python
import sys
import os
import plistlib
for f in sys.argv[1:]:
pl = plistlib.readPlist(f)
source = pl["com.apple.iTunesStore.downloadInfo"]["mediaAssetFilename"]
dest = (pl.artistName).encode('ascii', 'ignore')
try:
os.mkdir(dest)
except OSError:
pass
dest+= "/" + (pl.playlistName).encode('ascii', 'ignore')
try:
os.mkdir(dest)
except OSError:
pass
dest+= "/" + (pl.itemName).encode('ascii', 'ignore') + ".mp3"
print dest
if not os.access(dest, os.F_OK):
ret = os.system('faad -o - "%s" | lame -h -b 192 - "%s"' % (
source,
dest))
if ret == 0:
os.system('id3v2 -a "%s" -A "%s" -t "%s" '
'-T "%s" -y "%s" -g "%s" "%s"' % (
(pl.artistName).encode('ascii', 'ignore'),
(pl.playlistName).encode('ascii', 'ignore'),
(pl.itemName).encode('ascii', 'ignore'),
pl.trackNumber,
pl.year,
(pl.genre).encode('ascii', 'ignore'),
dest.encode('ascii', 'ignore')))
else:
os.unlink(dest.encode('ascii', 'ignore'))
so. jetzt erzählt er mir:
Traceback (most recent call last):
File "m4a.py", line 36, in <module>
os.unlink(dest.encode('ascii', 'ignore'))
OSError: [Errno 2] No such file or directory: 'London Philharmonic Orchestra & David Parry/The 50 Greatest Pieces of Classical Music/Serenade No. 13 In G Major, K. 525, "Eine Kleine Nachtmusik": I. Allegro.mp3'
das heißt jetzt was?