간단한 레코드를 구현하고 WAV 파일을 재생하고 녹음 할 수있는 응용 프로그램을 재생합니다.Windows 7에서 녹음하는 동안 마이크 사운드 레벨 가져 오기
1) 윈도우 7, 비주얼 스튜디오 2010 (또는 2012), C#을
2) 기록, 사양 정보와 WAV 파일을 재생가 : 22,050, 모노 samplerate
3 16 bitspersample), 다음과 같이
요구 사항은
)과 (2)를 기록하면서 3
[DllImport("winmm.dll")]
private static extern long mciSendString(string lpstrCommand, string lpstrReturnString, int uReturnLength, int hwndCallback);
// Open file to play
public void open(string file)
{
string command = "open \"" + file + "\" type waveaudio alias MyWav";
mciSendString(command, null, 0, 0);
}
// Start playing
public void play()
{
string command = "play MyWav";
mciSendString(command, null, 0, 0);
}
// Stop playing
public void stop()
{
string command = "stop MyWav";
mciSendString(command, null, 0, 0);
command = "close MyWav";
mciSendString(command, null, 0, 0);
}
// Start recording
public void record()
{
string command = "open new Type waveaudio Alias MyRec";
mciSendString(command, "", 0, 0);
command = "set capture time format ms bitspersample 16 channels 1 samplespersec 22050 alignment 4";
mciSendString(command, "", 0, 0);
command = "record MyRec";
mciSendString(command, "", 0, 0);
}
// Stop recording
public void stoprec()
{
string fileName = @"""D:\Rec1.wav""";
string command = "stop MyRec";
mciSendString(command, "", 0, 0);
command = @"save MyRec " + fileName;
Debug.WriteLine(command);
mciSendString(command, "", 0, 0);
command = "close MyRec";
mciSendString(command, "", 0, 0);
}
다음과 같이, I는 I도 사용할))를 LIB (winmm.dll) 및 mciSendString을 (사용) 마이크로 사운드 레벨을 표시 할 mciSendString. 다음 명령 (상태)을 찾았습니다.
string command = "status MyRec level ";
long mci_ret = mciSendString(command, "", 0, 0);
위의 명령에서 볼륨을 얻는 방법을 모르겠지만 아무에게도 말할 수 있습니까?
참조 : mciSendString에서 상태 명령은() 마이크로 소프트의 문서에서 발견된다 : 는 http://msdn.microsoft.com/en-us/library/windows/desktop/dd798683%28v=vs.85%29.aspx
은 말한다 : 수준 : 현재 PCM 오디오 샘플 값을 돌려줍니다.
[비스타 코어 오디오 API 마스터 볼륨 컨트롤 (HTTP CodeProject의에 어떤 좋은 articales 있습니다 //www.codeproject가. co.kr/Articles/18520/Vista-Core-Audio-API-Master-Volume-Control? fid = 410669 & fr = 126 # xx0xx) – sees
또는 [Visual C++에서 마스터 볼륨 변경] (http://www.codeproject.com/Tips)/233484/변경 - 마스터 - 볼륨 - 비주얼 - Cplusplus) – sees