본문 바로가기
[ Python ]/- 파이썬 실습연습

pygame - [소리 제어]

by MRG 2022. 10. 14.
728x90
반응형

▣ 안녕하세요. 이번장에서는 pygame으로 소리를 제어하는 코드를 공부해보겠습니다.

 

▣ 먼저 소리를 재생하기 위해서 소리를 가져오는 코드를 작성해야 합니다. 

pygame.mixer.Sound() 함수를 이용해서 소리를 가져와야 합니다.

Sound() 함수에서 매개변수에 파일 위치를 지정할 때 주의해야 할 건 \를   / 기호로 바꿔서 지정해야 합니다. 

소리 파일을 지정했다면 이제 소리의 크기를 제어해보겠습니다.

sound변수에서. 점으로 접근을 하게 되면 이렇게 sound.set_volume() 함수로 소리를 제어할 수 있습니다. 

함수에서 소리의 범위는 0.0~1.0입니다. 

소리를 재생하는 코드는 sound.play() 함수로 재생합니다.

그냥 play() 함수로 재생할 수도 있지만

play() 함수안에 매개 변수로를 넣어 다르게 제어할 수도 있습니다.

첫 번째 매개변수에는 반복 횟수를 지정합니다. -1을 하게 되면 무한반복으로 재생됩니다. 이점 참고해주세요.

두 번째 소리의 길이를 제어합니다. 밀리 초단위로 제어하니 그 점 참고하면서 값을 지정해주세요.

세 번째 최대 볼륨으로 페이드 업을 하는 값을 지정합니다.

모두 다 내가 원하는 값으로 지정했다면 이제 저장을 하고 디버그를 해보겠습니다.

그리고 a 키를 누르면 소리가 재생되는 걸 확인할 수 있습니다.

아까 이야기한 것처럼 play() 함수에 매개변수를 지정하지 않고 호출해서 재생할 수도 있습니다.

그렇게 되면 기본값으로 지정되어 소리가 재생됩니다. 

 

728x90

 

▣ 다른 기능들을 살펴보겠습니다.

sound. 에서 점으로 접근하게 되면

여러 가지 소리에 관련된 함수들을 확인할 수 있습니다.

 

https://www.pygame.org/docs/ref/mixer.html?highlight=sound#pygame.mixer.Sound.set_volume 

 

pygame.mixer — pygame v2.1.1 documentation

begin sound playback play(loops=0, maxtime=0, fade_ms=0) -> Channel Begin playback of the Sound (i.e., on the computer's speakers) on an available Channel. This will forcibly select a Channel, so playback may cut off a currently playing sound if necessary.

www.pygame.org

▣ pygame aip를 보면서 소리의 다양한 기능들을 공부해보세요.

 

 

728x90
반응형

'[ Python ] > - 파이썬 실습연습' 카테고리의 다른 글

pygame - [이미지 제어]  (0) 2022.10.06
pygame - [텍스트입력]  (4) 2022.09.19
pygame - [마우스 제어]  (0) 2022.09.16
pygame - [텍스트출력]  (0) 2022.09.15
pygame - [도형그리기]  (0) 2022.09.14

댓글