본문 바로가기
프로그래밍/C

winmm API 사용하여 WAV 파일 재생하기

by eteo 2024. 7. 4.

 

 

 

winmm 은 Windows Multimedia의 약자로 해당 라이브러리의 API를 사용해 WAV 형식의 오디오 파일을 재생할 수 있다.

 

 

#include <windows.h>
#include <stdio.h>
// mmsystem.h 포함
#include <mmsystem.h>

// winmm.lib 링크
#pragma comment(lib, "winmm.lib")

int main() {

	// wav 파일 경로
	const char* filePath = "C:\\Users\\jo\\Downloads\\warning.wav";

	// wav 파일 동기식 재생
	MMRESULT result = PlaySound(filePath, NULL, SND_FILENAME);
	if (!result) {
		printf("PlaySound Error\n");
		return 1;
	}

	printf("재생 종료\n");

	// wav 파일 비동기식으로 1초간 재생
	result = PlaySound(filePath, NULL, SND_FILENAME | SND_ASYNC);

	Sleep(1000);

	// 현재 재생중인 사운드를 중지
	result = PlaySound(NULL, 0, 0);

	// wav 파일 루프 재생, 브금
	result = PlaySound(filePath, NULL, SND_FILENAME | SND_ASYNC);

	(void)getchar();

	return 0;
}