2012-02-06 2 views
0

서버에서 Mp3의 프레임을 압축 해제 할 때 Mp3이 10-15 초 동안 재생되는 동안 위에서 언급 한 예외가 발생합니다. 내 응용 프로그램은 클라이언트/서버 응용 프로그램입니다 .Mp3 프레임을 작성하여 보내고 있습니다. Mp3 패킷을 네트워크 스트림을 통해 직렬화합니다. NAudio 오픈 소스 API프레임 압축 및 압축 해제 및 Mp3.I 재생은 스택 추적에서 다음 예외를 가져옵니다.ACM 스트림 변환 예외 표시 AcmNotPossible

NAudio.MmException.Try (MMRESULT 결과 문자열 함수)에 NAudio.Wave.Compression.AcmStreamHeader.Convert

(bytesToConvert INT32, INT32 & sourceBytesConverted)

NAudio.Wave에서 .Compression.AcmStream.Convert (Int32 bytesToConvert, Int32 & sourceBytesConverted)

at NAudio.Wave.AcmMp3FrameDecompressor.DecompressFrame (Mp3 프레임 프레임, B YTE []의 최종 도착, INT32 destOffset) Client.Audio.SoundPlayer.StreamMP3에서

(개체 상태)

답변

1

AcmNotPossible는 MP3의 ACM로 호출 acmStreamConvert 윈도우 함수에 의해 반환 된 오류 코드입니다 코덱. 이 오류는 유효하지 않은 MP3 프레임 또는 너무 많은 프레임을 한 번에 전달한 것 같습니다. MP3 전체 프레임을 얻고 있는지 확실합니까? 수신 한 데이터를 MP3 파일에 쓰고 예상대로 재생할 수 있는지 확인하여 문제를 디버깅하는 것이 좋습니다.

+0

잘못된 프레임이있을 수 있습니다. Naudio API에 대해 이야기하겠습니다. Naudio를 사용하여 Mp3Frame을 구문 분석하면 올바른 MP3 프레임이 Stream.there에서 반환 될 때만 구문 분석 할 수 있습니다. 한 인스턴스에서 하나의 프레임이 스트림에 기록되기 때문에 두 번째 확률입니다. – Samie

+1

프레임에 이상한 점이 있습니까? 다른 스테레오는 모노 인 반면 모노입니까? 그것은 다른 샘플 속도입니까? –

+0

모노 및 스테레오 프레임에 대해 설명해 주시겠습니까? 아니오! 모든 프레임에서 샘플 속도가 동일합니다. – Samie