2014-12-08 4 views
-1

NAudio 1.72 프로젝트를 사용하여 새 오디오 파일을 녹음하고 기존 wav 파일을 편집합니다. 172kbps wav 파일을 열어 파일의 일부를 녹음 할 때마다 재생은 다람쥐처럼 들리는 것으로 나타났습니다.녹음 된 오디오 파일이 다람쥐 음성으로 재생되는 이유는 무엇입니까?

새로 녹음 된 wav 파일의 비트 전송률은 128kbps입니다. 그리고 나는 128kbps의 wav 파일에 대해 다람쥐 문제를 발견하지 못했습니다. 비트율이 일치하지 않으므로 누구나 문제를 생각합니까?

어떻게 해결할 수 있습니까?

참고 : 저는 C#에서 코딩 중이며, NAudio 프로젝트 참조를 사용하여 wav 파일을 기록하고 편집합니다. WPF mediaelement를 사용하여 wav 파일을 재생합니다.

답변

-1

탐험을 조금 해본 결과, 다소 도움이되는 것으로 나타났습니다. 아직도 나는 회귀 문제가 있을까 두렵다. 아래의 전략을보다 효과적으로 작동시키기 위해 노력하고 있습니다.

아래의 방법은 176kbps wav 파일을 128kbps로 변환하고 잘 재생되지만 응용 프로그램이 충돌합니다.

private string OpenMedia(string filename) 
    { 
     using (var reader = new WaveFileReader(filename)) 
     { 
      int bitrate = reader.WaveFormat.AverageBytesPerSecond * 8; 
      if (bitrate > 128000) 
      { 
       MessageBox.Show("This wav file has a bit rate higher than 128 kbps : " + 

    bitrate); 

       int channel = reader.WaveFormat.Channels; 
       if (channel > 1) 
       { 
        MessageBox.Show("This wav file was not created in Mono channel : " + 

    channel); 
       } 
       int samplerate = reader.WaveFormat.SampleRate; 
       if (samplerate > 8000) 
       { 
        MessageBox.Show("This wav file has a sample rate > 8000 : " + samplerate); 
        var newFormat = new WaveFormat(8000, 16, 1); 
        using (var conversionStream = new WaveFormatConversionStream(newFormat, 

    reader)) 
        { 
         WaveFileWriter.CreateWaveFile(filename, conversionStream); 
        } 
       } 
      } 
     } 
     return filename; 
    }