Me gustaría poder hacer una lista de reproducción con todos los podcasts publicados recientemente.
Desafortunadamente, la fecha de lanzamiento no es un campo disponible para seleccionar en una lista de reproducción inteligente en iTunes.
Las fechas similares, como la fecha de adición y la fecha de modificación, no estarán cerca de la fecha de lanzamiento al descargar el catálogo anterior del podcast recién agregado.
La mejor solución que se me ocurrió es cerrar itunes, truncar el archivo iTunes Library.itl, copiar los valores del campo de fecha de publicación en el archivo iTunes Music Library.xml en el campo de fecha agregada y luego reiniciar iTunes y dejarlo reconstruya el archivo itl desde el archivo xml.
Sin embargo, mi archivo de biblioteca es lo suficientemente grande como para que la reconstrucción demore entre 20 y 30 minutos, e incluso sin piratear el xml, falla la mayoría de las veces.
¿Hay algún método para mí para uno o ambos de:
No soy mucho de AppleScripter, por lo que esto se modificó a partir de algunos scripts en el sitio web de AppleScripts de Doug, pero tiene GPL, por lo que se permiten trabajos derivados siempre que también tengan GPL.
Mi idea era crear un script que pudiera tomar la fecha de lanzamiento, que no se puede usar en las listas de reproducción inteligentes, y almacenarlo en la última fecha omitida, que se puede usar en las listas de reproducción inteligentes. Si solo desea hacer esto para los podcasts (no para las canciones, para las cuales podría usar el último campo omitido), simplemente seleccione sus podcasts antes de ejecutar este script.
Una vez que haga eso, puede crear una lista de reproducción inteligente seleccionada en el campo "Último omitido" para obtener los podcasts lanzados recientemente.
Así que, aquí vamos:
(*
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
La respuesta de @Daniel me llevó a una solución funcional, así que la publicaré
El uso de Windows significa que la solución de secuencias de comandos de Apple no iba a funcionar, por lo que al usar el objeto iTunes.Application com, mi solución se ve así (en Ruby, porque me gusta Ruby, aunque otros lenguajes de secuencias de comandos también funcionarán).
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()
Curiosamente, iTunes no equipara "tiene una fecha de reproducción" con "tiene un recuento de reproducciones> 0", por lo que ahora puedo tener una lista de reproducción de podcasts que no se reproducen, que cumplen con los criterios que estaba usando antes y que se seleccionan por fecha de lanzamiento.
¡Hurra!
Probablemente tengo una solución. Cree una nueva lista de reproducción inteligente basada en Media Kind is Podcast. Agregue criterios adicionales si es necesario. Ordene esta lista de reproducción por columna Fecha de lanzamiento.
Si también necesita escucharlo en el iPod según la fecha de lanzamiento, elija Copiar en orden de reproducción en el menú contextual de la lista de reproducción. Sincroniza la lista de reproducción con el iPod. Y comienza a reproducirlos desde esta lista de reproducción.
Informe si esto funciona, ya que no puedo encontrar mi cable en este momento para verificar si realmente funciona.
PS Playlist incluirá no solo los podcasts lanzados recientemente, por supuesto, sino que también puede limitar su tamaño por pista, tamaño o tiempo, además de otros filtros.
Simón Withers
Daniel
Simón Withers