Estoy tratando de cargar un archivo de audio en Angular. El propósito es poder reproducirlo y hacer un pequeño trabajo en él, como reproducir, detener, obtener la marca de tiempo del marcador de pausa, etc. Puedo cargar mediante el uso de entrada, FileReader y la etiqueta de audio:
Mecanografiado:
onAudioSelected(files: any) { let addedFile = files.addedFiles[0] console.log(addedFile) if (addedFile && addedFile.type.match(/audio\/*/)) { let reader = new FileReader(); reader.readAsDataURL(addedFile); reader.onload = (e: any) => { const resource = { file: addedFile, base64encode: reader.result as string, mimeType: addedFile.type, id: Math.floor(Math.random() * 100), title: addedFile.name, url: reader.result as string }; this.audio = resource; setTimeout(() => { this.initProgressBar() }, 300) }HTML
<audio #audioEl [src]="audio.url | safe" (timeupdate)="initProgressBar()"></audio>tubería segura
transform(value: string, ...args: unknown[]): unknown { return this.sanitizer.bypassSecurityTrustResourceUrl(value); }El problema es que al usar el desinfectante, podría tener algunos problemas Xss y necesito evitarlos. Si no uso el desinfectante, se produce el siguiente error:
err_unknown_url_scheme
y no soy capaz de reproducir el audio. Sería genial si alguien pudiera ayudarme, ¡muchas gracias!