iTunes Wiedergabelisten exportieren

Dieses Thema im Forum "iTunes" wurde erstellt von auto01, 25.12.2006.

  1. auto01

    auto01 Thread Starter MacUser Mitglied

    Beiträge:
    104
    Zustimmungen:
    0
    MacUser seit:
    20.10.2004
    Hallo,

    ich möchte in iTunes erstellete Wiedergabelisten auf einen anderen Computer exportieren. Ich habe bis jetzt nur die Möglichkeit gefunden die Dateilisten zu exportieren. Nicht aber die Dateien selber.
    Der Hintergrund ist, ich möchte einige meiner Wiedergabelisten auf meinen Laptop kopieren und sie dann auch ohne Netzwerkverbindung abspielen. Ich möchte sie aber möglichst nicht einzeln im Finder kopieren, sondern im Block, aber nicht die gesamte Biblithek.
     
  2. moranibus

    moranibus MacUser Mitglied

    Beiträge:
    4.530
    Zustimmungen:
    183
    MacUser seit:
    28.02.2006
    Hi,
    die Wiedergabeliste enthält ja nur Links zu deiner Bibliothek. Also müssen zuerst mal die Stücke selber auf dem anderen Rechner sein, dann kannste noch immer die Wiedergabeliste exportieren und dort einfügen und dann müssten alle Stücke drin sein. Die Liste exportierst du als .xml Datei.
    LG
     
  3. auto01

    auto01 Thread Starter MacUser Mitglied

    Beiträge:
    104
    Zustimmungen:
    0
    MacUser seit:
    20.10.2004
    Ja, das ist es ja, ich möchte nicht alle Files einzeln raussuchen. Das sind mir zu viele.

    Ich habe aber festgestellt, dass ich einfach nur in iTunes alle Stücke markieren brauche und sie dann in einen neuen Ordner im Finder ziehen brauche. Dann werden die Dateien in die Ordner kopiert. Das ist das, was ich wollte.
     
  4. pheno

    pheno MacUser Mitglied

    Beiträge:
    43
    Zustimmungen:
    1
    MacUser seit:
    12.08.2006
    Hi,

    so mache ich das auch immer. Einfach markieren und per drag & drop kopieren. :D

    Leider habe ich festgestellt, dass wenn Titel mit gleichen Namen in der Auswahl enthalten sind, der Kopiervorgang abbricht.

    Also wenn z.B. White Christmas von Sinatra und einmal von Martin dabei ist, dann bricht er mittendrin ab, da die Files nur den Titel als Namen tragen.

    Weiß jemand wie man das umgehen kann ohne manuelles umbenennen?
    gtx,
    pheno
     
  5. lisanet

    lisanet MacUser Mitglied

    Beiträge:
    520
    Zustimmungen:
    115
    MacUser seit:
    05.12.2006
    hallo,

    versuchs doch mal auf Doug's Seite mit Scripts für iTunes

    http://www.dougscripts.com/itunes/

    Unter Managing Files gibt's ein Script "Sync Playlist Files to Folder". Vielleicht hilft dir das ja weiter. Du must zwar die Playlist im Script selbst hardcoden, aber dann kannst du zu dieser Playlist alles zufügen was du willst und mit einem Verzeichnis syncen.

    HTH,
    skl
     
  6. pheno

    pheno MacUser Mitglied

    Beiträge:
    43
    Zustimmungen:
    1
    MacUser seit:
    12.08.2006
    Hi,

    das ist das gleiche in grün!
    Hab's eben auch mit dem Script kopiert, aber es funktioniert auch nicht.
    Das Problem ist folgendes. iTunes nutzt ja eine Ordnerstruktur nach dem Muster

    Interpret
    |
    ---Album
    |
    ----Titel

    Wenn jetzt aber zwei verschiedene Interpreten den gleichen Titelnamen haben ist der Filename unter Umständen bei beiden z.B. "Silent Night.mp3". Macht ja auch nix, da die Files in unterschiedlichen Ordnern sind, aber wenn ich das jetzt kopiere, bricht der Vorgang ab oder mit dem Script wird der eine Titel überschrieben.

    Wenn es jetzt die Möglichkeit gäbe, dass der Filename, beim Kopieren per drag & drop, sich aus Interpret & Titel zusammensetzt, dann würde das mein Problem lösen!

    Hat irgendjemand eine Idee??? :confused:
    thx,
    pheno
     
    Zuletzt bearbeitet: 04.01.2007
  7. pheno

    pheno MacUser Mitglied

    Beiträge:
    43
    Zustimmungen:
    1
    MacUser seit:
    12.08.2006
    So, da mir anscheinend keiner weiterhelfen konnte, habe ich mir selbst eine Lösung gebaut.

    Ich habe mir auf der Doug's iTunes Scripts Seite ein Script runtergeladen, das eine Playlist mit einem Ordner synchronisiert.

    Allerdings habe ich das mehr oder weniger umgeschrieben und zwar war die Playlist und der Zielordner fest als Parameter angegeben!

    Ich habe es so geändert, dass die Playlist in iTunes ausgewählt wird und der Zielordner per Finder-Dialogfenster ausgesucht werden kann.
    Weiterhin werden die Files im Zielordner umbenannt nach dem Schema: [Artist] - [Titel].mp3
    sodass auch bei doppelten Titeln kein Problem auftritt.

    Bei Interesse an dem Script einfach melden, dann poste ich das hier.
    gtx,
    pheno :D
     
  8. pheno

    pheno MacUser Mitglied

    Beiträge:
    43
    Zustimmungen:
    1
    MacUser seit:
    12.08.2006
    hi,

    irgendjemand hatte nach dem script gefragt also poste ich es hier.

    Code:
    --
    -- SUPER PLAYLIST SYNC
    -- 
    global path_to_folder
    property track_separator : " - "
    property extension_separator : "."
    
    -- =========================================
    
    -- if iTunes is not running, then exit
    --tell application "System Events" to if (name of every process) does not contain "iTunes" then return
    
    -- init some lists...
    set filenames_in_folder to {}
    set track_filenames to {}
    set track_locations to {}
    
    tell application "Finder"
    	--activate
    	--hide any other active application windows
    	--set visible of every process whose name is not "Finder" to false
    	set path_to_folder to (choose folder)
    end tell
    
    tell application "iTunes"
    	set current_view to get view of first window
    	set the_playlist to get current_view's name
    end tell
    
    tell application "Finder"
    	try
    		repeat with this_file_alias in (get every file of folder (path_to_folder))
    			set end of filenames_in_folder to my get_filename_from_filepath(this_file_alias as string)
    		end repeat
    	end try
    end tell
    
    tell application "iTunes"
    	repeat with this_track in (get every track of playlist the_playlist)
    		
    		if class of this_track is file track then
    			try
    				set loc to this_track's location
    				set end of track_locations to (loc as string)
    				--set end of track_filenames to my get_filename_from_filepath(loc)
    				set end of track_filenames to my get_artist_title_from_track(this_track)
    			end try
    		end if -- not file track
    	end repeat
    end tell
    
    -- check if any files in folder are in the playlist...otherwise delete
    repeat with this_file in filenames_in_folder
    	if this_file is not in track_filenames then delete_from_folder(this_file)
    end repeat
    
    -- check if any file tracks are in the folder...otherwise add to folder
    repeat with i from 1 to length of track_filenames
    	set this_file_track to item i of track_filenames
    	if this_file_track is not in filenames_in_folder then add_to_folder(item i of track_locations, this_file_track)
    end repeat
    
    -- HANDLERS
    to get_filename_from_filepath(fp)
    	if (class of fp) is not string then set fp to (fp as string)
    	tell application "Finder" to return name of (get info for file fp)
    end get_filename_from_filepath
    
    to delete_from_folder(this_file)
    	try
    		do shell script "cd " & (quoted form of POSIX path of path_to_folder) & "; rm " & (quoted form of this_file)
    	on error m
    		log m
    	end try
    end delete_from_folder
    
    to add_to_folder(this_file, new_file)
    	try
    		--		set new_name to this_file as string
    		--		display dialog "new name:" & new_name buttons {"OK"}
    		--		set new_name to quoted form of POSIX path of new_name
    		--		display dialog "posix name:" & new_name buttons {"OK"}
    		set new_name to (path_to_folder & new_file) as string
    		--		set new_name to quoted form of POSIX path of new_name
    		
    		do shell script "cp " & (quoted form of POSIX path of this_file) & " " & (quoted form of POSIX path of new_name)
    	on error m
    		log m
    	end try
    end add_to_folder
    
    to get_artist_title_from_track(t_track)
    	tell application "iTunes"
    		set loc to t_track's location
    		if (class of loc) is not string then set loc to (loc as string)
    		set track_artist to the artist of t_track --get the artist name
    		set track_title to the name of t_track --get the track title
    	end tell
    	
    	tell application "Finder"
    		set track_extension to name extension of (get info for file loc) --get the extension of track's file name
    	end tell
    	
    	return track_artist & track_separator & track_title & extension_separator & track_extension
    end get_artist_title_from_track
    falls ihr noch fragen habt, dann immer her damit.
    gtx,
    pheno
     
  9. milko

    milko MacUser Mitglied

    Beiträge:
    68
    Zustimmungen:
    13
    MacUser seit:
    15.05.2005
    Hi - danke für das Skript. Optimal wäre noch, wenn dem Dateinamen eine Nummer vorangestellt wird, so dass die Reihenfolge immer der Reihenfolge der Playlist entspricht.

    edit: So, jetzt passts:

    Code:
    global tc
    tell application "iTunes"
        if selection is not {} then
            set sel to a reference to selection
            set choose_folder_prompt to ("Select a folder to copy the selected tracks to...")
            set new_site to (choose folder with prompt choose_folder_prompt)
            if new_site is not false then
                set tc to 0
                with timeout of 30000 seconds
                    repeat with f in sel
                        if f's class is file track then
                            set fpath to (get f's location)
                            tell me to move_it(fpath, new_site)
                        end if -- skip if incorrect type of track
                    end repeat
                end timeout
            end if -- cancel from choose folder
        else
            display dialog fpath buttons {"Cancel"} default button 1 with icon 0
        end if -- no selection
    end tell
    
    to move_it(fpath, new_site)
        tell application "Finder"
            try
                duplicate file fpath to folder new_site with replacing
                set newName to (tc & (name of file fpath)) as Unicode text
                
                set newFile to duplicate file fpath to folder new_site with replacing
                if tc is less than 10 then
                    set name of newFile to ("0" & tc & "__" & (name of file fpath)) as Unicode text
                else
                    set name of newFile to (tc & "__" & (name of file fpath)) as Unicode text
                end if
                set tc to tc + 1
            on error eM number eN
                display dialog "Error " & eN & return & eM with icon 2
            end try
        end tell
    end move_it
    Schön wäre jetzt noch, wenn auch gleich noch eine m3u oder halt eine andere Playlist-Datei aus diesem Ordner erzeugt wird. Momentan hab ich leider keine Zeit, falls jemand anders etwas Power in das Skript bringen möchte, wäre ich ihm dankbar.
     
    Zuletzt bearbeitet: 26.11.2008
  10. Nutmeg

    Nutmeg MacUser Mitglied

    Beiträge:
    2
    Zustimmungen:
    0
    MacUser seit:
    07.08.2008
    Sehr komfortabel geht das auch mit dem Prog iTunesFS (Freeware).
     
Die Seite wird geladen...

Diese Seite empfehlen