2014-02-10 4 views
0

24 비트 wav 파일을 읽고 쓸 수있는 데 관심이 있습니다. 웹 오디오 api + recorderjs는 16 비트 웨이브에는 이상적이지만 전문가 용 오디오는 24 비트로 기록되고 조작됩니다. 만약 배열 버퍼에서 3 바이너리 바이트를 연결하고 그들을 int로 읽어 자바 스크립트에서 방법이 궁금하네요.홀수 바이트를 연결하고 Int로 읽기

솔루션 :

var sample = 0; 

for (var b = 0; b < bytesPerSample; b++) { 

    sample <<= 8; 
    sample |= data[b]; // data is a Uint8Array   

} 

답변

0

물론 :

var a = [0xc,0xa,0xb]; 
a.reduce(function(p,c){return p<<8|c;},0).toString(16) // "c0a0b" 
+0

그것은 내가 배열 버퍼 또는 입력 배열에 감소 사용할 수 없습니다 것 같다. –

+0

@RobbyAllsopp 한 번에 3 바이트 씩 읽고이 코드를 적용 할 수 있습니까? – Matt

+0

아, 네가 올바른 길로 나를 세웠다. 내 편집을 참조하십시오. –

관련 문제