fs.writeFile을 사용하여 .wav 파일을 작성하려고합니다. 파일이 성공적으로 생성되었지만 8-13 바이트에 불과하므로 분명히 올바르게 작동하지 않습니다.자바 스크립트/노드에서 blob의 .wav 파일을 작성하는 방법
BLOB가 이미 오디오/WAV 인 경우 디스크에 쓸 수 있습니까? 아니면 Base64로 변환해야합니까? 모든 입력을 감상 할 수있다 Here
-
는 내가 아무 대답과 다른 유사한 스레드를 발견, 여기 손실에 꽤 많이 해요.
routerApp.controller('audiotest', function($scope) {
$scope.saveToDisk = function(){
var nw = require('nw.gui');
var fs = require('fs');
var path = require('path');
fs.writeFileSync('test.wav', $scope.recordedInput)
};
}
console.log($scope.recordedInput)
반환 Blob {size: 294956, type: "audio/wav"}
그것은 여기 정말 관련이없는,하지만 당신은 fs.writeFileSync()
에 직접 전달하는 버퍼에 다음 형식화 된 배열로 물방울을 변환 할 수 있습니다 내 HTML
<div class="row" ng-controller="audiotest">
<div class="row">
<button type="button" ng-click="saveToDisk()"> Write this sucker to disk </button>
</div>
<ng-audio-recorder id='audioInput' audio-model='recordedInput'>
<!-- Start controls, exposed via recorder-->
<div ng-if="recorder.isAvailable">
<button ng-click="recorder.startRecord()" type="button" ng-disabled="recorder.status.isRecording">
Start Record
</button>
<button ng-click="recorder.stopRecord()" type="button" ng-disabled="recorder.status.isRecording === false">
Stop Record
</button>
</ng-audio-recorder>
</div>
나는 확실히 당신이 무슨 일을하는지 이해하지 않지만, 어쨌든 내가 얻을 캐치되지 않는 형식 오류'buffer.js : 259 catch되지 않은 형식 오류 : 첫 번째 인수가 문자열 버퍼를해야합니다, ArrayBuffer, Array 또는 array-like object입니다. – angularchobo
'console.log (this.result)'가 콜백 내부에 표시되는 것은 무엇입니까? – mscdex
'[object ArrayBuffer]' – angularchobo