typescript - چگونه میتوان کتابخانه ضبط صدا زیر را در آخرین نسخه انگولار پیادهسازی کرد؟
من سعی میکنم از کتابخانهی زیر برای ضبط صدای صوتی در انگولار استفاده کنم.
https://github.com/killroywashere/ng-audio-recorder
این نمونه کد برای استفاده از آن است:
import { NgAudioRecorderService, OutputFormat } from 'ng-audio-recorder';
...
@Component({...})
export class AppComponent {
constructor(private audioRecorderService: NgAudioRecorderService) {
this.audioRecorderService.recorderError.subscribe(recorderErrorCase => {
// Handle Error
})
}
startRecording() {
this.audioRecorderService.startRecording();
}
stopRecording() {
this.audioRecorderService.stopRecording(outputFormat).then((output) => {
// do post output steps
}).catch(errrorCase => {
// Handle Error
});
}
}
مشکل این است که مشخص نمیکند فرمت خروجی چیست و چگونه باید ضبط صدا پخش شود. آیا کسی میتواند در این باره کمک کند؟
پاسخ شماره ۱
شما میتوانید فرمت خروجی را به این صورت مشخص کنید:
onStopRecording() {
this.busyRecording = false;
this.recordingStarted = false;
let outputFormat = OutputFormat.WEBM_BLOB;
this.audioRecorderService.stopRecording(outputFormat).then((output: Blob) => {
this.blobData = output;
this.populatePlayer(output);
}).catch(errrorCase => {
this.toast.error(errrorCase);
});
}
توجه: this.blobData از نوع Blob است.
توجه کنید که ما خروجی را به صورت یک Blob مجبور کردیم. فرمت خروجی یا نوع WEBM_BLOB دارد یا نوع WEBM_BLOB_URL.
فایل ng-audio-recorder.service.d.ts شکایت خواهد کرد چون ما نوع خروجی را تغییر دادیم، اما میتوانید به این سرویس بروید و آن را به یک BLOB تغییر دهید. اگر این کار نکرد میتوانید به Angular بگویید که از این نوع خطاها چشمپوشی کند.
