2009-12-19 4 views
3

Je ne fais que commencer à jouer avec Geektool et l'appli-scripting pour rendre mon bureau d'ordinateur amusant et j'ai rencontré une question à laquelle je n'arrive pas à trouver de réponse. Comment obtenez-vous la lecture actuelle de la chanson à partir d'une commande osascript? J'ai trouvé d'excellentes ressources sur la façon de faire à peu près n'importe quoi d'autre avec iTunes et osascript sur la ligne de commande, mais personne ne semble se soucier de montrer le temps de jeu actuel. Merci! Je suppose que ce sera quelque chose comme:Comment obtenez-vous la lecture d'une piste iTunes avec applescript?

osascript -e 'tell application "iTunes" to time of current track' 

J'ai déjà essayé cela et il me dit combien de temps la chanson est. Je veux savoir depuis combien de temps il joue.

Répondre

9

application iTunes Suite/:

Position Joueur (entier): la position du joueur dans le moment lecture de la plage en quelques secondes.

$ osascript -e 'tell app "itunes" to player position' 
56 

Il retournera valeur manquante si aucune chanson en cours de lecture/pause (comme après le démarrage iTunes, mais avant tout jouer).


Pendant que vous y êtes, vous pourriez aussi bien demander la durée de la piste, début et de fin points:

$ osascript -e 'tell app "itunes" to {duration, start, finish} of current track & {player position}' 
0.0, 254.772003173828, 254.772003173828, 55 

La durée (fractions de secondes) pourrait être plus agréable de travailler avec de le l'heure (chaîne au format MM: SS).

+0

Ceci est correct. En fait, je l'ai compris tard hier soir et je venais ici pour mettre à jour. Merci pour tous les trucs supplémentaires. J'allais faire quelques calculs dans un script perl avec les secondes mais le temps fractionnaire est beaucoup plus précis. – sanpaco

+0

FYI. Je crois que vos champs de durée et de début sont permutés dans la sortie. Merci quand même! – Gray

-2

Le dictionnaire iTunes Applescript ne dispose d'aucune fonction ou propriété de durée écoulée pour aucune des classes. Vous devrez rouler le vôtre.

Questions connexes