Ich möchte in der Lage sein, eine Wiedergabeliste zu erstellen, die alle kürzlich veröffentlichten Podcasts enthält.
Leider ist das Veröffentlichungsdatum kein Feld, das in einer intelligenten Wiedergabeliste in iTunes ausgewählt werden kann.
Ähnliche Daten wie das Datum des Hinzufügens und das Änderungsdatum liegen nicht in der Nähe des Veröffentlichungsdatums, wenn der Back-Katalog des neu hinzugefügten Podcasts heruntergeladen wird.
Die beste Lösung, die ich mir ausgedacht habe, besteht darin, iTunes zu schließen, die Datei iTunes Library.itl zu kürzen, die Feldwerte des Veröffentlichungsdatums in der Datei iTunes Music Library.xml in das Feld Datum hinzugefügt zu kopieren und dann iTunes neu zu starten und es zu lassen Erstellen Sie die itl-Datei aus der xml-Datei neu.
Meine Bibliotheksdatei ist jedoch groß genug, dass die Neuerstellung 20-30 Minuten dauert, und selbst ohne Hacken der XML-Datei schlägt sie meistens fehl.
Gibt es eine Methode für mich, um eines oder beides zu tun:
Ich bin kein großer AppleScripter, also wurde dies von einigen Skripten auf Dougs AppleScripts-Website modifiziert, aber es ist GPL-geschützt, daher sind abgeleitete Werke erlaubt, solange sie auch GPL-geschützt sind.
Meine Idee war, ein Skript zu erstellen, das das Veröffentlichungsdatum, das nicht in intelligenten Wiedergabelisten verwendet werden kann, nehmen und es im letzten übersprungenen Datum speichern könnte, das in intelligenten Wiedergabelisten verwendet werden kann. Wenn Sie dies nur für Podcasts tun möchten (nicht für Songs, für die Sie möglicherweise das letzte übersprungene Feld verwenden ), wählen Sie einfach Ihre Podcasts aus, bevor Sie dieses Skript ausführen.
Sobald Sie dies getan haben, können Sie eine intelligente Wiedergabeliste erstellen, die im Feld "Zuletzt übersprungen" ausgewählt wurde, um die kürzlich veröffentlichten Podcasts zu erhalten.
Auf geht's:
(*
You can rename this script to whatever you want
but please keep this information intact. Thanks.
This program is free software released "as-is"; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
Get a copy of the GNU General Public License by writing to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
or visit http://www.gnu.org/copyleft/gpl.html
*)
tell application "iTunes"
set sel to selection
if sel is not {} then
set ofi to fixed indexing
set fixed indexing to true
repeat with thisTrack in sel
set reld to release date of thisTrack
tell thisTrack to set skipped date to reld
end repeat
set fixed indexing to ofi
else
display dialog return & "Select some tracks first..." buttons {"Cancel"} default button 1 with icon 0 giving up after 15
return
end if -- no sel
end tell
Die Antwort von @ Daniel führte mich zu einer funktionierenden Lösung, also poste ich sie
Die Verwendung von Windows bedeutet, dass die Apple-Skriptlösung nicht funktionieren würde, und daher sieht meine Lösung mit dem iTunes.Application com-Objekt in etwa so aus (in Ruby, weil ich Ruby mag, obwohl andere Skriptsprachen auch funktionieren).
require 'win32ole'
def main()
itunes = WIN32OLE.new('iTunes.Application')
allpods = getallpodcasts(itunes);
allpods.Tracks.each do |track|
track.PlayedDate = track.ReleaseDate
end
end
def getallpodcasts(itunes)
itunes.LibrarySource.Playlists.each do |playlist|
return playlist if playlist.Name == "All Podcasts";
end
die "'All Podcasts' not found"
end
main()
Interessanterweise setzt iTunes "Hat ein Wiedergabedatum" nicht mit "Hat eine Wiedergabezahl > 0" gleich, sodass ich jetzt eine Wiedergabeliste mit Podcasts haben kann, die noch nicht abgespielt wurden, die alle Kriterien erfüllen, die ich zuvor verwendet habe, und die nach Veröffentlichungsdatum ausgewählt sind.
Yay!
Wahrscheinlich habe ich einen Workaround. Erstellen Sie eine neue intelligente Wiedergabeliste basierend auf Media Art is Podcast. Fügen Sie bei Bedarf weitere Kriterien hinzu. Sortieren Sie diese Wiedergabeliste nach der Spalte Veröffentlichungsdatum.
Wenn Sie es auch bis zum Veröffentlichungsdatum auf dem iPod anhören möchten, wählen Sie im Kontextmenü der Wiedergabeliste die Option In Wiedergabereihenfolge kopieren. Synchronisieren Sie die Wiedergabeliste mit dem iPod. Und fangen Sie an, sie von dieser Playlist abzuspielen.
Bitte melden Sie, ob dies funktioniert, da ich mein Kabel gerade nicht finden kann, um zu überprüfen, ob es wirklich funktioniert.
Die PS-Playlist enthält natürlich nicht nur kürzlich veröffentlichte Podcasts, sondern Sie können sie zusätzlich zu anderen Filtern entweder nach Titel, Größe oder Zeit einschränken.
Simon Wither
Daniel
Simon Wither