나는 우리 서버에 사용자의 오디오 파일을 업로드하기 위해 recorder.js를 사용하고 있습니다. 이것은 크롬과 파이어 폭스 둘 다에서 작동하고 있습니다. 그러나 우리의 오디오 파일은 약 1 분이고 1 분 오디오 파일은 약 8MB 크기의 파일을 생성하는데 너무 커서 서버에 업로드하기에는 크지 않습니다.wav를 줄이는 방법 Recorder.js로 만든 파일 크기
나는 recorderWorker.js 파일 :
업데이트 인터리브 방식
function interleave(inputL, inputR)
{
var result = new Float32Array(inputL.length);
for (var i = 0; i < inputL.length; ++i)
result[i] = 0.5 * (inputL[i] + inputR[i]);
return result;
}
로 내 파일이 있었다이 위의 코드에 의해
/* channel count */
view.setUint16(22, 1, true);
로 설정 채널 수 4MB 크기의 절반 크기로 생성됩니다. 이 파일을 크롬에서 재생할 때 작동하지만 firefox 및 windows 미디어 플레이어에서이 파일을 시도 할 때 작동하지 않습니다. Firefox에서 파일을로드하지 못하고 Windows Media Player에서 "Windows Media Player에 문제가 발생했습니다. 파일을 재생하는 동안. " 메시지.
내가이 개 샘플을 만들었습니다
http://216.245.194.124/recorduploadsample.com/
http://216.245.194.124/recorduploadsample2.com/
이
첫 번째 샘플은 모두 크롬에서 작동하며 파이어 폭스와 기록 아무것도 후 우리가 녹음 된 사운드를 재생할 수 있습니다 ..
(이 큰 파일의 크기가 원래의 코드입니다)두 번째 샘플은 firefox이 아닌 크롬에서만 작동합니다 (파일 크기를 줄이기 위해 위의 코드를 업데이트 함).
오디오 파일의 해상도를 변경하여 파일 크기를 줄여야하고, 둘 다 firefox에서 작동해야합니다. .. 누구든지 졸을 제안 할 수 있니? 이것을 위해 ution? 사전에
덕분에
당신은 찾을 수이 관련 : 나는 비트 레이트를 변경하는 데 필요한 http://stackoverflow.com/questions/16296645/decrease-bitrate-on-wav-file-created-with-recorderjs, 물론 파일 크기도 줄어 듭니다. – icedwater
@icedwater 예 그 게시 및 그 기반으로 채널 수를 변경하고 interleave 메서드를 업데이트하지만 파이어 폭스가 아닌 크롬에서만 작동합니다 ... 또한 저해상도로 오디오를 녹음하여 파일 크기를 줄이려고합니다. 이걸 위해 무엇을 바꿔야합니까? – aagrawal
제 추측하세요? recorder.js 또는 firefox. 그러나 그것은 야생의 추측입니다. – icedwater