Аудио из Watson Text to Speech

Привет, я разрабатываю гибридное приложение в Кордове. Я хотел бы воспроизвести звук из приложения. Я получил ошибку, используя:

  1. Аудиотег внутри html
  2. Аудио объект javascript
  3. Ионный НативАудио

Я также пытался скачать файл и воспроизвести его, но когда я могу скачать, я могу только в какой-то папке, воспроизвести файл только в другой папке.

ИЗМЕНИТЬ некоторый код: где, если я открою URL-адрес из chrome, firefox или VLC, я правильно услышу звук Il browser non supporta l'audio

Код Javascript: и URL-адрес такой же, как указано выше

this.stream = new Audio(url);

this.stream.addEventListener('playing', (data) => {
  console.log(data);
});

this.stream.addEventListener('error', (error) => {
  console.log(error);
});
this.stream.play();

В консоли получаю:

Event {isTrusted: true, type: "playing", target: audio, currentTarget: audio, eventPhase: 2…}bubbles: falsecancelBubble: falsecancelable: truecurrentTarget: nulldefaultPrevented: falseeventPhase: 0isTrusted: trueisTrusted: truepath: Array[1]returnValue: truesrcElement: nulltarget: nulltimeStamp: 5007452.3950000005type: "playing"__proto__: Event
francesca-player.ts:35

Event {isTrusted: true, type: "error", target: audio, currentTarget: audio, eventPhase: 2…}bubbles: falsecancelBubble: falsecancelable: truecurrentTarget: nulldefaultPrevented: falseeventPhase: 0isTrusted: trueisTrusted: truepath: Array[1]returnValue: truesrcElement: nulltarget: nulltimeStamp: 5008322.655000001type: "error"__proto__: EventAT_TARGET: 2BLUR: 8192BUBBLING_PHASE: 3CAPTURING_PHASE: 1CHANGE: 32768CLICK: 64DBLCLICK: 128DRAGDROP: 2048FOCUS: 4096KEYDOWN: 256KEYPRESS: 1024KEYUP: 512MOUSEDOWN: 1MOUSEDRAG: 32MOUSEMOVE: 16MOUSEOUT: 8MOUSEOVER: 4MOUSEUP: 2NONE: 0SELECT: 16384bubbles: (...)get bubbles: ()cancelBubble: (...)get cancelBubble: ()set cancelBubble: ()cancelable: (...)get cancelable: ()constructor: Event()currentTarget: (...)get currentTarget: ()defaultPrevented: (...)get defaultPrevented: ()eventPhase: (...)get eventPhase: ()initEvent: initEvent()path: (...)get path: ()preventDefault: preventDefault()returnValue: (...)get returnValue: ()set returnValue: ()srcElement: (...)get srcElement: ()stopImmediatePropagation: stopImmediatePropagation()stopPropagation: stopPropagation()target: (...)get target: ()timeStamp: (...)get timeStamp: ()type: (...)get type: ()Symbol(Symbol.toStringTag): "Event"__proto__: Object

Кто-нибудь может мне помочь? Даниэле


person Neo1975    schedule 12.10.2016    source источник
comment
Пожалуйста, предоставьте больше кода и точное сообщение об ошибке   -  person Alexander Ciesielski    schedule 12.10.2016


Ответы (1)


Для записи звука необходимо использовать тег cordova-plugin-media-capture, а не тег <audio>. Подробнее читайте здесь: https://www.npmjs.com/package/cordova-plugin-media-capture

Кроме того, я бы предложил использовать плагин Cordova, который записывает звук в формате .wav для Android, поскольку Watson Speech to Text принимает только определенные аудиоформаты. Я использовал этот без особых проблем: https://github.com/petrica/wav-recorder

person MBillau    schedule 13.10.2016
comment
Спасибо за ответ. Мне не нужно записывать звук, а воспроизводить звук из http-источника. - person Neo1975; 14.10.2016