• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung

itunes: fade-out-script?

urmi

Erdapfel
Registriert
12.11.08
Beiträge
5
liebe leute,

seit längerem suche ich nach einer möglichkeit, einen song in itunes beim 'beenden' (d.h. drücken der pause-taste) nicht abrupt abbrechen, sondern ausfaden zu lassen. nun bin ich nach längerer suche auf ein script gestossen, das dies möglich machen kann. ich habe es als skript gespeichert in library/itunes/scripts, doch wenn ich es danach in itunes aufstarte, meldet mir das programm: "Die Variable InitialVolume ist nicht definiert". Leider kenne ich mich mit script-Schreiben nicht aus, kann mir jemand von euch weiterhelfen? Hier ist der ganze Code des scripts:

tell application "iTunes"
if player state is playing then
-- finish the fade to 0
set initialVolume to sound volume
set currentVolume to sound volume
repeat
if (currentVolume > 0) then
set currentVolume to currentVolume - 1
set sound volume to currentVolume
delay 0.1
else
exit repeat
end if
end repeat

-- figure out whether to pause, or stop for cds
set cdPlaying to false
set currentTrackContainer to (get container of current track)
set numSources to (get index of last source)
-- go through all the sources, and see if its an audio CD and that it is the one playing the current track
repeat with i from 1 to numSources
if (audio CD = (get kind of source i)) and (currentTrackContainer = (get audio CD playlist 1 of source i)) then
set cdPlaying to true
exit repeat
end if
end repeat

if cdPlaying then
stop
else
pause
end if
end if

--return volume to its previous state
set sound volume to initialVolume
end tell


vielen dank schonmal!
urmi
 

desh

Luxemburger Triumph
Registriert
23.06.10
Beiträge
504
Habe leider keine Erfahrung mit AppleScript, aber falls dir niemand fachkundiger antwortet dann schau mal bei http://dougscripts.com/itunes/ vorbei, dort kannst du vielleicht mal in SourceCode reingucken um zu vergleichen..
 

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Habe es Dir schnell geschrieben:

Code:
set fadeTime to 3

tell application "iTunes"
	
	set currentPlayerState to player state
	
	if currentPlayerState is playing then
		
		set currentSoundVolume to sound volume
		
		if (currentSoundVolume < 1) then return
		
		set fadeCount to currentSoundVolume
		set fadeStep to (fadeTime / currentSoundVolume)
		
		repeat fadeCount times
			
			set sound volume to currentSoundVolume
			set currentSoundVolume to currentSoundVolume - 1
			
			delay fadeStep
			
		end repeat
		
		pause
		
	end if
	
end tell

Viele Grüße
 

urmi

Erdapfel
Registriert
12.11.08
Beiträge
5
Sehr herzlichen Dank, LittlePixel!

Wäre es möglich, noch einen Skriptzusatz o.ä. zu machen, damit das nächste Lied wieder auf voller Lautstärke beginnt?

VLG
urmi
 
Zuletzt bearbeitet:

senthor

Golden Delicious
Registriert
27.03.11
Beiträge
9
Code:
[B]set[/B] fadeTime [B]to[/B] 3


[B]tell[/B] [I]application[/I] "iTunes"
	
	[B]set[/B] currentPlayerState [B]to[/B] player state
	
	[B]if[/B] currentPlayerState [B]is[/B] playing [B]then[/B]
		
		[B]set[/B] currentSoundVolume [B]to[/B] sound volume
		[B]set[/B] originalSoundVolume [B]to[/B] sound volume
		
		[B]if[/B] (currentSoundVolume < 1) [B]then[/B] [B]return[/B]
		
		[B]set[/B] fadeCount [B]to[/B] currentSoundVolume
		[B]set[/B] fadeStep [B]to[/B] (fadeTime / currentSoundVolume)
		
		[B]repeat[/B] fadeCount [B]times[/B]
			
			[B]set[/B] sound volume [B]to[/B] currentSoundVolume
			[B]set[/B] currentSoundVolume [B]to[/B] currentSoundVolume - 1
			
			[B]delay[/B] fadeStep
			
		[B]end[/B] [B]repeat[/B]
		
		[B]pause[/B]
		
		[B]set[/B] sound volume [B]to[/B] originalSoundVolume
		
		[B]next track[/B]
		
		[B]play[/B]
		
	[B]end[/B] [B]if[/B]
	
[B]end[/B] [B]tell[/B]

[B]
[/B]