2009-10-19 3 views
0

어떤 이유에서, 아래의 스 니펫을 사용하여 WAV 파일을 재생할 때 높은 피치 노이즈와 같이 무작위로 재생됩니다. 항상 무작위로 발생하는 것은 아닙니다. 더 자주 재생 될 때 더 자주 발생하는 것 같습니다. WAV 속성은 아래 코드와 함께 사용하고 있습니다.C# - .WAV 재생 무작위로 높은 음정

WAV 속성 :

비트 레이트 - 750kbps
오디오 샘플 크기 - 16 비트
채널 - 1 (모노)
오디오 샘플 속도 - 44kHz의
오디오 포맷 - PCM

발췌문 :

System.Media.SoundPlayer myPlayer = new System.Media.SoundPlayer(Captcha.Properties.Resources.sound1); 
myPlayer.Play(); 

내가 플레이하는 방식 때문인가요? 파일 또는 파일 자체? 고맙습니다.

+0

다른 파일을 재생 해 보셨습니까? – timoxley

+0

방금 ​​다른 WAV 파일을 시도했지만 왜곡이 없습니다. 다음은 속성입니다 : - 88kbps 오디오 샘플 크기 - 8 비트 채널 - 1 (모노) 오디오 샘플 속도 - 11kHz 오디오 포맷 - 비트 레이트 PCM 아니에요 그래서 오디오 Savy은, 그래서 것 누군가 정확히이 일의 원인이 무엇인지 말해 줄 수 있습니까? – user

+0

Wav 등록 정보에 문제가 있습니다 : 16 (샘플 크기) * 44000 (샘플 속도)! = 750000 (kbps) (704000) –

답변

0

그래서이 이유는 WAV 파일 자체의 문제이거나 .NET의 버그 인 것 같습니다. 대부분 파일에 문제가있을 수 있으며 파일 작업을 통해 파일이 도움이되는지 아니면 다른 파일을 모두 사용하는지 확인합니다. 여러분 모두를 도와 주셔서 감사합니다.

+0

예. 외부 플레이어와 함께 연주하여 여전히 잡음이 들리는 지 확인하십시오. – dtroy

+0

방금 ​​Windows Media Player 11과 Songbird에서 약 8 분 동안 아무런 문제없이 방금 재생했습니다. – user

+0

이 프로젝트를 체크 아웃 할 수 있습니다 : http://naudio.codeplex.com/ 샘플은 다른 API로 오디오를 재생 해 봅니다. 문제가있는 API를 알려주는 데 도움이 될 수 있습니다. 예를 들어 DirectSound를 사용하여 작업 할 수 있습니다. – dtroy

0

Vista에서이 잡음이 들립니까?

WaveOut WIN32 API를 사용하여이 문제가 발생했습니다. PlaySound는 내부적으로 동일한 라이브러리 (Winmm)를 사용하여 사운드를 재생합니다.

이 노이즈는 특정 웨이브 파일과 윈도우 비스타에서만 나타납니다 (그리고 윈도우 7도 마찬가지입니다). 그것은 XP에서 잘 작동합니다. 나는 그 API의 새로운 구현의 버그라고 생각한다. Windows Media Player를 사용하여 WAV 파일을 재생하는 경우 DirectSound API를 사용하기 때문에 Vista에서 잘 재생됩니다.

지금 당장은 아무런 해결책이 없으며 앞으로 DirectSound를 사용하기 위해 구현을 변경하려고합니다.

+0

현재 Windows XP 32 비트 버전입니다. – user

1

오디오 문제가있는 것으로 보입니다. 다른 WAV 파일을 시도하십시오.

0

나는 과거에도 비슷한 문제가 있었고 문제가되는 컴퓨터의 오디오 드라이버를 교체하여 해결했습니다.

동일한 조건이지만 다른 시스템에서 문제를 재현 해보십시오.