File tree Expand file tree Collapse file tree 2 files changed +10
-19
lines changed Expand file tree Collapse file tree 2 files changed +10
-19
lines changed Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change @@ -22,8 +22,10 @@ var L16 = require('./webaudio-l16-stream.js');
2222var FormatStream = require ( './format-stream.js' ) ;
2323var assign = require ( 'object.assign/polyfill' ) ( ) ;
2424var WritableElementStream = require ( './writable-element-stream' ) ;
25+ var Readable = require ( 'stream' ) . Readable ;
2526
2627var preservedMicStream ;
28+ var bitBucket = new Readable ;
2729
2830/**
2931 * @module watson-speech/speech-to-text/recognize-microphone
@@ -62,6 +64,7 @@ module.exports = function recognizeMicrophone(options) {
6264 var keepMic = options . keepMicrophone ;
6365 var getMicStream ;
6466 if ( keepMic && preservedMicStream ) {
67+ preservedMicStream . unpipe ( bitBucket ) ;
6568 getMicStream = Promise . resolve ( preservedMicStream ) ;
6669 } else {
6770 getMicStream = getUserMedia ( { video : false , audio : true } ) . then ( function ( mic ) {
@@ -85,6 +88,7 @@ module.exports = function recognizeMicrophone(options) {
8588
8689 function end ( ) {
8790 micStream . unpipe ( l16Stream ) ;
91+ micStream . pipe ( bitBucket ) ; // otherwise it will buffer the audio from in between calls and prepend it to the next one
8892 l16Stream . end ( ) ;
8993 }
9094 // trigger on both stop and end events:
You can’t perform that action at this time.
0 commit comments