Python Sound ( "Bell")
비프 음을 내면서 작업이 완료되면 Python 프로그램이 경고를 받고 싶습니다. 현재 import os
는 명령 줄 음성 프로그램을 사용하여 "프로세스 완료"라고 말합니다. 오히려 단순한 "종"입니다.
Cocoa 앱 에서 사용할 수있는 기능이 있다는 것을 알고 있지만,이 기능 NSBeep
과 관련이별로 없다고 생각합니다.
나는 또한 시도했다
print('\a')
그러나 그것은 작동하지 않았습니다.
나는 Mac을 사용하고 있습니다. Cocoa 코멘트로 말할 수 없다면 도움이 될 것입니다.
시도해 보셨습니까?
import sys
sys.stdout.write('\a')
sys.stdout.flush()
Mac OS 10.5에서 저에게 적합합니다.
사실, 나는 당신의 원래 시도도 약간의 수정으로 작동한다고 생각합니다.
print('\a')
(문자 시퀀스 주위에 작은 따옴표 만 있으면됩니다).
PyObjC (Python-Objective-C 브리지)가 설치되어 있거나 OS X 10.5의 시스템 Python (PyObjC와 함께 제공됨)에서 실행중인 경우 다음을 수행 할 수 있습니다.
from AppKit import NSBeep
NSBeep()
시스템 경고를 재생합니다.
파이 게임 모듈에서 믹서를 사용해 보았는데 잘 작동합니다. 먼저 모듈을 설치하십시오.
$ sudo apt-get install python-pygame
그런 다음 프로그램에서 다음을 작성하십시오.
from pygame import mixer
mixer.init() #you must initialize the mixer
alert=mixer.Sound('bell.wav')
alert.play()
파이 게임을 사용하면 추가로 실험 할 수있는 많은 사용자 정의 옵션이 있습니다.
print('\a')
작동하려면 iTerm의 활성 터미널 프로필에서 "Silence terminal bell"옵션을 꺼야 했습니다. 터미널에서 기본적으로 잘 작동하는 것 같습니다.
Mac 모듈 Carbon.Snd
을 사용 하여 시스템 경고음을 재생할 수도 있습니다 .
>>> import Carbon.Snd
>>> Carbon.Snd.SysBeep(1)
>>>
Carbon 모듈에는 문서가 없기 때문에 help(Carbon.Snd)
어떤 기능을 사용할 수 있는지 확인 하기 위해 사용해야 했습니다. Carbon에 대한 직접적인 인터페이스로 보이므로 Apple Developer Connection의 문서가 도움이 될 것입니다.
NSBeep()
AppKit 의 Barry Wark의 답변을 기반으로 구축 하면 정상적으로 작동하지만 작업 표시 줄의 터미널 / 앱 아이콘이 점프합니다. 이를 NSSound()
방지하고 다른 사운드를 사용할 수있는 기회를 제공 하는 몇 가지 추가 라인 :
from AppKit import NSSound
#prepare sound:
sound = NSSound.alloc()
sound.initWithContentsOfFile_byReference_('/System/Library/Sounds/Ping.aiff', True)
#rewind and play whenever you need it:
sound.stop() #rewind
sound.play()
표준 사운드 파일은 명령 줄을 통해 찾을 수 있습니다.에서 locate /System/Library/Sounds/*.aiff
사용하는 파일 NSBeep()
은'/System/Library/Sounds/Funk.aiff'
참조 URL : https://stackoverflow.com/questions/13941/python-sound-bell
'IT이야기' 카테고리의 다른 글
Node.js“심각한 오류 : JS 할당 실패-프로세스 메모리 부족”— 스택 추적 (0) | 2021.04.17 |
---|---|
스칼라 세트는 동일한 요소를 포함하지만 sameElements ()는 false를 리턴합니다. (0) | 2021.04.17 |
C # 음성 인식 (0) | 2021.04.17 |
Linux 디렉터리 목록에 있는 물음표 (0) | 2021.04.16 |
IDL이란 (0) | 2021.04.16 |