2010-11-30 2 views
1

cmd + enter를 누르면 폴더의 사운드 클립 세트에서 임의의 사운드를 재생하려고합니다. AppleScript는 항상 실행 중이며 사용자가 cmd + enter를 누를 때마다 무작위 사운드 (mp3)가 아이튠즈를 열지 않고, 바람직하게는 무대 뒤에서 재생됩니다.cmd + enter를 누르면 applescript play random sound

감사합니다.

+1

장난 꾸러기 인 것처럼 들립니다. –

+0

실제로 로비에 표시됩니다. 나는 그것이 장난처럼 들리는 곳을 볼 수 있지만. – jaysonp

+1

왜 AppleScript인가요? 로비 디스플레이를 구축하는 데이 기능을 포함시켜야하는 이유는 무엇입니까? Applescript는 사운드를 재생할 쉘 명령을 찾을 수없는 한 항상 응용 프로그램을 시작합니다. –

답변

0

FastScripts이라는 앱을 다운로드 한 다음 cmd + enter에 대한 새로운 바로 가기 키를 설정하고 임의의 사운드를 재생하는 AppleScript를 시작하십시오.

이와 같은 스크립트를 사용하여 QuickTime Player를 사용하여 임의의 .wav 파일을 재생할 수 있습니다. 사운드 파일의 위치 (폴더)를 가리 키도록 경로를 편집하십시오. 지연 시간을 조정하여 파일을 재생할 충분한 시간을 확보하십시오.

tell application "Finder" 
    set soundFiles to every item of alias "Macintosh HD:sounds" --enter path to folder 
    set fileCount to count of items in soundFiles 
    set randomSound to random number from 1 to fileCount 
    open item randomSound of soundFiles 
end tell 

tell application "QuickTime Player" 
    set visible of every window to false 
    play document 1 
    delay 20 --adjust to allow for length of sound file 
    quit 
end tell 
+1

이것은 분명히 도움이되지만 다른 응용 프로그램 (iTunes 또는 Quicktime)을 열 수 없습니다. 어떻게 든 터미널을 통해 'afplay'를 사용해야 할 필요가있는 것처럼 보입니다. – jaysonp

+0

@ jaysonp : 나는'afplay'에 대해 몰랐다. 나는 그와 비슷한 것을 여러 번 원했다. 어쨌든, 그걸로, 당신이 원하는 것을 얻기가 쉽습니다; [내 대답] (http://stackoverflow.com/questions/4319743/applescript-play-random-sound-when-pressing-cmd-enter/4329672#4329672)을 참조하십시오. –

1

I에 대한 afplay를 알지 못했지만, 그와 함께,이 간단한 스크립트는 그것을 할 것입니다 : 양식 Macintosh HD:Users:you:Sounds:의 클래식 맥 경로가있는 경우

property soundsDirectory : POSIX file "/path/to/sounds/" as alias 

tell application "System Events" to ¬ 
    set soundFile to get POSIX path of (some item of soundsDirectory as alias) 

do shell script "afplay " & quoted form of soundFile 

는, 당신은 property soundsDirectory : alias "Macintosh HD:Users:you:Sounds:"을 사용할 수 있습니다 대신 작동하지만 둘 중 하나가 작동합니다. some item of <list> 명령은 목록에서 임의 항목을 반환합니다. as alias이라는 별칭이 될 것이라고 AppleScript에 약속해야합니다. 따라서 유닉스 스타일의 경로를 얻을 수 있습니다. quoted form of <text> 명령은 쉘에서 사용하기 위해 텍스트를 작은 따옴표로 묶습니다 (작은 따옴표를 이스케이프 함). afplay 그냥 재생됩니다.

⌘↩ 요구 사항에는 여러 가지 옵션이 있지만 Spark을 사용합니다. Spark은 백그라운드에서 실행되며 다른 것들 중에서 키보드 단축키로 AppleScript를 실행할 수 있습니다. AppleScript를 항상 실행하게하는 방법을 모르지만, 이것이 문제가되지 않아야 시작할 수있을만큼 빠릅니다. Spark는 항상 대신 실행하게됩니다.