2014-06-19 4 views
0

플레이어가 네트워크를 통해 RTP 스트림을 보내는 wav 파일을 재생할 때 문제가 있습니다. 전송 된 웨이브 파일의 마지막 바이트는 00 00 00 ...으로 패딩되어 172 바이트 패킷이됩니다. 이러한 여분의 패딩은 들릴 때 파일 끝에 클릭 소리를 발생시킵니다. 이 클릭 소리를 피하려면 웨이브 파일을 (00 00 00 대신) 무음으로 채워야합니다. 패딩은 파일 끝에 플레이어가 0을 추가하지 않도록 전체 160 옥텟 프레임을 생성하는 방식이어야합니다.wav 파일의 끝에서 160 옥텟 프레임으로 끝내기

이렇게하려면 작은 유틸리티 프로그램을 작성해야합니다. 내가 자바 사운드 API를 탐험하고 꽤 많이 다른 파일과 함께 wav 파일을 추가하거나 출력 스트림에 비트를 작성하여 새로운 WAV 파일을 만들 발견했다.

전체 160 옥텟 프레임을 만들기 위해 wav 파일의 끝에 침묵을 쓰는 방법에 대한 도움이 필요합니다. 또한 침묵을 만들기 위해 0xff를 쓰면 침묵을 추가하기 위해 0을 덧 입힐 수 없습니까?

친절히 도움을 주시겠습니까? 감사.

답변

0

무음에 대한 PCM 값은 0입니다!

나는 RTP 스트리밍에 관해서 아무 것도 모릅니다. 그래서 이것을 회의론으로 생각하십시오. 나는 그 문제가 패딩 그 자체가 아니라고 생각한다. (실제로 0의 스트링이라면), 실제로 wav에서 패딩으로 바뀐다.

끝 부분에서 wav가 울리는 경우 갑자기 0으로 전환하는 것이 문제 일 수 있습니다. 0 값으로의 급격한 점프 대신에 테이퍼 형 볼륨을 제공해야 할 수도 있습니다.

RTP의 디코딩은 WAV 전송의 끝을 명확하게 인식 할 수 있습니까?