¿Es posible usar iTunes con la línea de comandos en Windows?
Quiero pasar acciones al programa como reproducir una lista de reproducción.
¿Es posible usar alguna funcionalidad de iTunes en la línea de comandos?
¿Es posible usar iTunes con la línea de comandos en Windows?
Quiero pasar acciones al programa como reproducir una lista de reproducción.
¿Es posible usar alguna funcionalidad de iTunes en la línea de comandos?
Aunque iTunes no se puede controlar directamente desde la línea de comandos de Windows directamente, utilizando VBScripts o scripts de PowerShell aunque podría ser domesticado.
La siguiente lista de código de PowerShell se compiló a partir de los enlaces mencionados anteriormente para mostrar también cómo se pueden seleccionar las listas de reproducción y clasificar las canciones.
# Inspired by
# - https://gist.github.com/rkumar/503162
# - http://samsoft.org.uk/iTunes/scripts.asp
# Search for iTunes COM object
Get-CimInstance Win32_COMSetting | Select-Object ProgId, Caption | Where-Object Caption -ILike "*itunes*"
# Initializing itunes
$itunes = New-Object -ComObject iTunes.Application
# list methods and properties
$itunes | Get-Member
$itunes.CurrentPlaylist | Get-Member
$itunes.LibraryPlaylist | Get-Member
$itunes.CurrentTrack | Get-Member
# commands
$itunes.Play()
$itunes.NextTrack()
$itunes.PreviousTrack()
$itunes.PlayPause()
$itunes.Resume()
$itunes.Stop()
# changing properties
$itunes.SoundVolume = 50 # sound volume to 50%
$itunes.Mute = 0 # mute
$itunes.Mute = 1 # unmute
$itunes.CurrentPlaylist.Shuffle = 0 # shuffle off
$itunes.CurrentPlaylist.Shuffle = 1 # shuffle on
$itunes.CurrentPlaylist.SongRepeat = 0 # repeat none
$itunes.CurrentPlaylist.SongRepeat = 1 # repeat one
$itunes.CurrentPlaylist.SongRepeat = 2 # repeat all
$itunes.CurrentTrack.Rating = 80 # 100 = 5 stars, 80 = 4 stars, 60 = 3 stars, 40 = 2 stars, 20 = 1 star
$itunes.CurrentTrack.AlbumRating = 80
# Retrieve values
$itunes.CurrentPlaylist.Name
$itunes.CurrentPlaylist.Index
# List available playlists
$itunes.Sources.Item(1).Playlists
# Select playlist and start playing
$playlists = $itunes.Sources.Item(1).Playlists
$selPlaylist = $playlists.ItemByName("Name of your playlist")
If ($selPlaylist -ne $null) { $selPlaylist.Reveal(); $selPlaylist.PlayFirstTrack() }
Estas opciones permiten vincular ciertas funciones a las macros para controlar iTunes, es decir, desde las macros de VoiceAttack o mouse / teclado.
Use un programa llamado CLMControl para enviar comandos básicos de inicio / parada / pausa / siguiente pista, etc. a iTunes (o incluso a cualquier aplicación de reproducción de música, incluida VLC).
Lea otras preguntas en las etiquetas command-line windows itunes