C#을 사용하여 라인 인에서 지속적으로 샘플링하는 가장 간단한 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/228659

문제

C#을 사용하여 PC의 오디오 라인에서 지속적으로 샘플링하고 싶습니다 (해당 데이터를 처리). 샘플링을하는 가장 좋은 방법은 무엇입니까?

도움이 되었습니까?

해결책

오픈 소스를 사용하여 일부 (기본) 오디오 캡처를 수행 할 수 있습니다. 나우 디오 .NET 오디오 라이브러리. Naudiodemo 프로젝트를 살펴보면 Wavein 함수를 사용하여 WAV 파일에 녹음하는 간단한 예를보십시오. Naudio는 이제 Wasapi (Windows Vista 이상)와 ASIO (사운드 카드에 ASIO 드라이버가있는 경우)를 사용하여 오디오를 캡처하는 기능이 포함되어 있습니다.

다른 팁

거기에 있습니다 알바스 오디오 도서관에도 무료가 아닌 도서관에는 비용을 지불하지 않지만 아름답게 작동하는 잔잔한 화면이 있습니다. 그리고 문서는 좋으며, 버그 나 무언가를 찾으면 지원도 괜찮습니다.

.NET 프레임 워크에는 사운드를 다루기위한 내장 라이브러리가 없지만 Win32에있는 경우 DirectSound와 같은 관리되지 않는 라이브러리를 사용하여이를 수행 할 수 있습니다.

Ianier Munoz 쇼 C#에서 전이중 오디오 플레이어를 작성하는 방법 웨인 P/호출을 통해 CodeProject에서. 그는 언급합니다 관리 DirectSound 보다 일반적인 방법으로.

Managed DirectX는 오디오의 직접 캡처를 지원하며 사용하기가 매우 쉽지만 더 이상 지원되지 않으며 작년에 DirectX SDK에서 제거되었습니다. 여전히 가능합니다 그것을 얻으십시오 2007 년 8 월 이전의 SDK 버전을 설치함으로써.

요구 사항을 엄격히 충족 시키지는 않지만 더 강력한 접근 방식은 DirectX SDK에서 원시 C ++ DirectSound API 주위에 C ++/CLI 래퍼 어셈블리를 만드는 것입니다. 그런 다음 C# 코드에서 직접 호출 할 수 있습니다. C ++ 및 COM에 대한 지식이 필요하지만 이것은 확실히 더 강력하고 유지 가능한 접근법입니다.

나는 과거 에이 두 기술을 모두 사용했으며 둘 다 잘 작동합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top