2011-07-03 3 views
0

오디오가 입력 된 오디오 장치 (예 : 마이크) 에서 오디오를 녹음하려는 프로그램을 만들려고합니다. 하나는 ) 마이크에 얘기하고 MP3 형식 로 저장하고 난 시도하지만이 최고입니다 있는지 확실하지 않습니다하지만 그것은 열심히 나에게 나는이 작업을 수행하는 방법을 알고Rcording Audio 특정 레벨에서 Visual C++ 2008 (32 비트)

답변

0

도와주세요입니다 방법 : DirectShow에 익숙하지 않으면 기술의 여러 측면을 배우는 것이 필요하기 때문에 반드시 쉬운 일은 아닙니다. > SampleGrabber - -> 오디오 렌더러

이 간단한 재생 그래프이다

캡처 출처 : 다음과 같이 대략 보이는 미디어 파이프 라인을 설정하는 DirectShow를 사용할 수 있습니다. 샘플 그래버에서 파이프 라인을 통과 할 때 샘플을 가로 챌 수 있습니다. 예를 들어 샘플을 처리하여 침묵인지 여부를 확인할 수 있습니다. 당신이 그 권리를 가지고 때,이

캡처 소스 같은 것을 보이는 그래프를 설정하려고 -> SampleGrabber -> MP3 인코더 -> filewriter

그 인코딩 된 MP3를 위해 작동하는지합니다 (filewriter 확실하지

데이터) : 당신을위한 숙제.

그런 다음 GMFBridge을 사용하면 여러 개의 그래프를 설정할 수 있습니다.

1) 캡처 소스 -> SampleGrabber -> GMFBridgeSink 2) GMFBridgeSource -> MP3 인코더 -> filewriter 3) GMFBridgeSource -

GMFBridge가 재생 중에 동적 그래프 사이를 전환 할 수 있습니다> 렌더러 (또는 무언가) . 그래서 1) 특정 레벨의 오디오를 감지하고 2)로 연결할 때까지 일반적으로 3)에 연결됩니다. 일단 오디오 레벨이 다시 3로 떨어집니다.

이것이 최선의 해결책인지 잘 모르겠지만 해결책 또는 출발점입니다. 아마도 다른 사람이 다른 방법을 제안 할 수 있습니다. 행운을 빕니다.

+0

내가 v-C++에 익숙하지 않아서 그다지 이해하지 못했지만, 지금 해보려고 노력할 것입니다. – Sam

관련 문제