| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <title>JSDoc: Class: RawAudioRecorder</title> |
| |
| <script src="scripts/prettify/prettify.js"> </script> |
| <script src="scripts/prettify/lang-css.js"> </script> |
| <!--[if lt IE 9]> |
| <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> |
| <![endif]--> |
| <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> |
| <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> |
| </head> |
| |
| <body> |
| |
| <div id="main"> |
| |
| <h1 class="page-title">Class: RawAudioRecorder</h1> |
| |
| |
| |
| |
| |
| |
| <section> |
| |
| <header> |
| |
| <h2><span class="attribs"><span class="type-signature"></span></span> |
| <span class="ancestors"><a href="Guacamole.html">Guacamole</a>.</span>RawAudioRecorder<span class="signature">(stream, mimetype)</span><span class="type-signature"></span></h2> |
| |
| |
| </header> |
| |
| <article> |
| <div class="container-overview"> |
| |
| |
| |
| |
| |
| |
| <h4 class="name" id="RawAudioRecorder"><span class="type-signature"></span>new RawAudioRecorder<span class="signature">(stream, mimetype)</span><span class="type-signature"></span></h4> |
| |
| |
| |
| |
| |
| |
| <div class="description"> |
| Implementation of Guacamole.AudioRecorder providing support for raw PCM |
| format audio. This recorder relies only on the Web Audio API and does not |
| require any browser-level support for its audio formats. |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h5>Parameters:</h5> |
| |
| |
| <table class="params"> |
| <thead> |
| <tr> |
| |
| <th>Name</th> |
| |
| |
| <th>Type</th> |
| |
| |
| |
| |
| |
| <th class="last">Description</th> |
| </tr> |
| </thead> |
| |
| <tbody> |
| |
| |
| <tr> |
| |
| <td class="name"><code>stream</code></td> |
| |
| |
| <td class="type"> |
| |
| |
| <span class="param-type"><a href="Guacamole.OutputStream.html">Guacamole.OutputStream</a></span> |
| |
| |
| |
| </td> |
| |
| |
| |
| |
| |
| <td class="description last">The Guacamole.OutputStream to write audio data to.</td> |
| </tr> |
| |
| |
| |
| <tr> |
| |
| <td class="name"><code>mimetype</code></td> |
| |
| |
| <td class="type"> |
| |
| |
| <span class="param-type">String</span> |
| |
| |
| |
| </td> |
| |
| |
| |
| |
| |
| <td class="description last">The mimetype of the audio data to send along the provided stream, which |
| must be a "audio/L8" or "audio/L16" mimetype with necessary parameters, |
| such as: "audio/L16;rate=44100,channels=2".</td> |
| </tr> |
| |
| |
| </tbody> |
| </table> |
| |
| |
| |
| |
| |
| |
| <dl class="details"> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dt class="tag-source">Source:</dt> |
| <dd class="tag-source"><ul class="dummy"><li> |
| <a href="AudioRecorder.js.html">AudioRecorder.js</a>, <a href="AudioRecorder.js.html#line134">line 134</a> |
| </li></ul></dd> |
| |
| |
| |
| |
| |
| |
| |
| </dl> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| </div> |
| |
| |
| <h3 class="subsection-title">Extends</h3> |
| |
| |
| |
| |
| <ul> |
| <li><a href="Guacamole.AudioRecorder.html">Guacamole.AudioRecorder</a></li> |
| </ul> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h3 class="subsection-title">Members</h3> |
| |
| |
| |
| <h4 class="name" id="~mediaStream"><span class="type-signature">(inner) </span>mediaStream<span class="type-signature"> :MediaStream</span></h4> |
| |
| |
| |
| |
| <div class="description"> |
| The audio stream provided by the browser, if allowed. If no stream has |
| yet been received, this will be null. |
| </div> |
| |
| |
| |
| <h5>Type:</h5> |
| <ul> |
| <li> |
| |
| <span class="param-type">MediaStream</span> |
| |
| |
| </li> |
| </ul> |
| |
| |
| |
| |
| |
| <dl class="details"> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dt class="tag-source">Source:</dt> |
| <dd class="tag-source"><ul class="dummy"><li> |
| <a href="AudioRecorder.js.html">AudioRecorder.js</a>, <a href="AudioRecorder.js.html#line252">line 252</a> |
| </li></ul></dd> |
| |
| |
| |
| |
| |
| |
| |
| </dl> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h3 class="subsection-title">Methods</h3> |
| |
| |
| |
| |
| |
| |
| |
| <h4 class="name" id=".getSupportedTypes"><span class="type-signature">(static) </span>getSupportedTypes<span class="signature">()</span><span class="type-signature"> → {Array.<String>}</span></h4> |
| |
| |
| |
| |
| |
| |
| <div class="description"> |
| Returns a list of all mimetypes supported by Guacamole.RawAudioRecorder. Only |
| the core mimetypes themselves will be listed. Any mimetype parameters, even |
| required ones, will not be included in the list. For example, "audio/L8" is |
| a raw audio mimetype that may be supported, but it is invalid without |
| additional parameters. Something like "audio/L8;rate=44100" would be valid, |
| however (see https://tools.ietf.org/html/rfc4856). |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dl class="details"> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dt class="tag-source">Source:</dt> |
| <dd class="tag-source"><ul class="dummy"><li> |
| <a href="AudioRecorder.js.html">AudioRecorder.js</a>, <a href="AudioRecorder.js.html#line559">line 559</a> |
| </li></ul></dd> |
| |
| |
| |
| |
| |
| |
| |
| </dl> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h5>Returns:</h5> |
| |
| |
| <div class="param-desc"> |
| A list of all mimetypes supported by Guacamole.RawAudioRecorder, |
| excluding any parameters. If the necessary JavaScript APIs for recording |
| raw audio are absent, this list will be empty. |
| </div> |
| |
| |
| |
| <dl> |
| <dt> |
| Type |
| </dt> |
| <dd> |
| |
| <span class="param-type">Array.<String></span> |
| |
| |
| </dd> |
| </dl> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h4 class="name" id=".isSupportedType"><span class="type-signature">(static) </span>isSupportedType<span class="signature">(mimetype)</span><span class="type-signature"> → {Boolean}</span></h4> |
| |
| |
| |
| |
| |
| |
| <div class="description"> |
| Determines whether the given mimetype is supported by |
| Guacamole.RawAudioRecorder. |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h5>Parameters:</h5> |
| |
| |
| <table class="params"> |
| <thead> |
| <tr> |
| |
| <th>Name</th> |
| |
| |
| <th>Type</th> |
| |
| |
| |
| |
| |
| <th class="last">Description</th> |
| </tr> |
| </thead> |
| |
| <tbody> |
| |
| |
| <tr> |
| |
| <td class="name"><code>mimetype</code></td> |
| |
| |
| <td class="type"> |
| |
| |
| <span class="param-type">String</span> |
| |
| |
| |
| </td> |
| |
| |
| |
| |
| |
| <td class="description last">The mimetype to check.</td> |
| </tr> |
| |
| |
| </tbody> |
| </table> |
| |
| |
| |
| |
| |
| |
| <dl class="details"> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dt class="tag-source">Source:</dt> |
| <dd class="tag-source"><ul class="dummy"><li> |
| <a href="AudioRecorder.js.html">AudioRecorder.js</a>, <a href="AudioRecorder.js.html#line536">line 536</a> |
| </li></ul></dd> |
| |
| |
| |
| |
| |
| |
| |
| </dl> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h5>Returns:</h5> |
| |
| |
| <div class="param-desc"> |
| true if the given mimetype is supported by Guacamole.RawAudioRecorder, |
| false otherwise. |
| </div> |
| |
| |
| |
| <dl> |
| <dt> |
| Type |
| </dt> |
| <dd> |
| |
| <span class="param-type">Boolean</span> |
| |
| |
| </dd> |
| </dl> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h3 class="subsection-title">Events</h3> |
| |
| |
| |
| |
| |
| |
| |
| <h4 class="name" id="event:onclose">onclose</h4> |
| |
| |
| |
| |
| |
| |
| <div class="description"> |
| Callback which is invoked when the audio recording process has stopped |
| and the underlying Guacamole stream has been closed normally. Audio will |
| only resume recording if a new Guacamole.AudioRecorder is started. This |
| Guacamole.AudioRecorder instance MAY NOT be reused. |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dl class="details"> |
| |
| |
| |
| |
| |
| |
| <dt class="inherited-from">Inherited From:</dt> |
| <dd class="inherited-from"><ul class="dummy"><li> |
| <a href="Guacamole.AudioRecorder.html#event:onclose">Guacamole.AudioRecorder#event:onclose</a> |
| </li></ul></dd> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dt class="tag-source">Source:</dt> |
| <dd class="tag-source"><ul class="dummy"><li> |
| <a href="AudioRecorder.js.html">AudioRecorder.js</a>, <a href="AudioRecorder.js.html#line40">line 40</a> |
| </li></ul></dd> |
| |
| |
| |
| |
| |
| |
| |
| </dl> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <h4 class="name" id="event:onerror">onerror</h4> |
| |
| |
| |
| |
| |
| |
| <div class="description"> |
| Callback which is invoked when the audio recording process cannot |
| continue due to an error, if it has started at all. The underlying |
| Guacamole stream is automatically closed. Future attempts to record |
| audio should not be made, and this Guacamole.AudioRecorder instance |
| MAY NOT be reused. |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dl class="details"> |
| |
| |
| |
| |
| |
| |
| <dt class="inherited-from">Inherited From:</dt> |
| <dd class="inherited-from"><ul class="dummy"><li> |
| <a href="Guacamole.AudioRecorder.html#event:onerror">Guacamole.AudioRecorder#event:onerror</a> |
| </li></ul></dd> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <dt class="tag-source">Source:</dt> |
| <dd class="tag-source"><ul class="dummy"><li> |
| <a href="AudioRecorder.js.html">AudioRecorder.js</a>, <a href="AudioRecorder.js.html#line51">line 51</a> |
| </li></ul></dd> |
| |
| |
| |
| |
| |
| |
| |
| </dl> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| </article> |
| |
| </section> |
| |
| |
| |
| |
| </div> |
| |
| <nav> |
| <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="Guacamole.ArrayBufferReader.html">ArrayBufferReader</a></li><li><a href="Guacamole.ArrayBufferWriter.html">ArrayBufferWriter</a></li><li><a href="Guacamole.AudioPlayer.html">AudioPlayer</a></li><li><a href="Guacamole.AudioRecorder.html">AudioRecorder</a></li><li><a href="Guacamole.BlobReader.html">BlobReader</a></li><li><a href="Guacamole.BlobWriter.html">BlobWriter</a></li><li><a href="Guacamole.ChainedTunnel.html">ChainedTunnel</a></li><li><a href="Guacamole.Client.html">Client</a></li><li><a href="Guacamole.DataURIReader.html">DataURIReader</a></li><li><a href="Guacamole.Display.html">Display</a></li><li><a href="Guacamole.Display.VisibleLayer.html">VisibleLayer</a></li><li><a href="Guacamole.HTTPTunnel.html">HTTPTunnel</a></li><li><a href="Guacamole.InputSink.html">InputSink</a></li><li><a href="Guacamole.InputStream.html">InputStream</a></li><li><a href="Guacamole.IntegerPool.html">IntegerPool</a></li><li><a href="Guacamole.JSONReader.html">JSONReader</a></li><li><a href="Guacamole.Keyboard.html">Keyboard</a></li><li><a href="Guacamole.Keyboard.ModifierState.html">ModifierState</a></li><li><a href="Guacamole.Layer.html">Layer</a></li><li><a href="Guacamole.Layer.Pixel.html">Pixel</a></li><li><a href="Guacamole.Mouse.html">Mouse</a></li><li><a href="Guacamole.Mouse.State.html">State</a></li><li><a href="Guacamole.Mouse.Touchpad.html">Touchpad</a></li><li><a href="Guacamole.Mouse.Touchscreen.html">Touchscreen</a></li><li><a href="Guacamole.Object.html">Object</a></li><li><a href="Guacamole.OnScreenKeyboard.html">OnScreenKeyboard</a></li><li><a href="Guacamole.OnScreenKeyboard.Key.html">Key</a></li><li><a href="Guacamole.OnScreenKeyboard.Layout.html">Layout</a></li><li><a href="Guacamole.OutputStream.html">OutputStream</a></li><li><a href="Guacamole.Parser.html">Parser</a></li><li><a href="Guacamole.RawAudioFormat.html">RawAudioFormat</a></li><li><a href="Guacamole.RawAudioPlayer.html">RawAudioPlayer</a></li><li><a href="Guacamole.RawAudioRecorder.html">RawAudioRecorder</a></li><li><a href="Guacamole.SessionRecording.html">SessionRecording</a></li><li><a href="Guacamole.StaticHTTPTunnel.html">StaticHTTPTunnel</a></li><li><a href="Guacamole.Status.html">Status</a></li><li><a href="Guacamole.StringReader.html">StringReader</a></li><li><a href="Guacamole.StringWriter.html">StringWriter</a></li><li><a href="Guacamole.Tunnel.html">Tunnel</a></li><li><a href="Guacamole.VideoPlayer.html">VideoPlayer</a></li><li><a href="Guacamole.WebSocketTunnel.html">WebSocketTunnel</a></li></ul><h3>Events</h3><ul><li><a href="Guacamole.ArrayBufferReader.html#event:ondata">ondata</a></li><li><a href="Guacamole.ArrayBufferReader.html#event:onend">onend</a></li><li><a href="Guacamole.ArrayBufferWriter.html#event:onack">onack</a></li><li><a href="Guacamole.AudioRecorder.html#event:onclose">onclose</a></li><li><a href="Guacamole.AudioRecorder.html#event:onerror">onerror</a></li><li><a href="Guacamole.BlobReader.html#event:onend">onend</a></li><li><a href="Guacamole.BlobReader.html#event:onprogress">onprogress</a></li><li><a href="Guacamole.BlobWriter.html#event:onack">onack</a></li><li><a href="Guacamole.BlobWriter.html#event:oncomplete">oncomplete</a></li><li><a href="Guacamole.BlobWriter.html#event:onerror">onerror</a></li><li><a href="Guacamole.BlobWriter.html#event:onprogress">onprogress</a></li><li><a href="Guacamole.ChainedTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.ChainedTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.ChainedTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.Client.html#event:onaudio">onaudio</a></li><li><a href="Guacamole.Client.html#event:onclipboard">onclipboard</a></li><li><a href="Guacamole.Client.html#event:onerror">onerror</a></li><li><a href="Guacamole.Client.html#event:onfile">onfile</a></li><li><a href="Guacamole.Client.html#event:onfilesystem">onfilesystem</a></li><li><a href="Guacamole.Client.html#event:onname">onname</a></li><li><a href="Guacamole.Client.html#event:onpipe">onpipe</a></li><li><a href="Guacamole.Client.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.Client.html#event:onsync">onsync</a></li><li><a href="Guacamole.Client.html#event:onvideo">onvideo</a></li><li><a href="Guacamole.DataURIReader.html#event:onend">onend</a></li><li><a href="Guacamole.Display.html#event:oncursor">oncursor</a></li><li><a href="Guacamole.Display.html#event:onresize">onresize</a></li><li><a href="Guacamole.HTTPTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.HTTPTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.HTTPTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.InputStream.html#event:onblob">onblob</a></li><li><a href="Guacamole.InputStream.html#event:onend">onend</a></li><li><a href="Guacamole.JSONReader.html#event:onend">onend</a></li><li><a href="Guacamole.JSONReader.html#event:onprogress">onprogress</a></li><li><a href="Guacamole.Keyboard.html#event:onkeydown">onkeydown</a></li><li><a href="Guacamole.Keyboard.html#event:onkeyup">onkeyup</a></li><li><a href="Guacamole.Mouse.Touchpad.html#event:onmousedown">onmousedown</a></li><li><a href="Guacamole.Mouse.Touchpad.html#event:onmousemove">onmousemove</a></li><li><a href="Guacamole.Mouse.Touchpad.html#event:onmouseup">onmouseup</a></li><li><a href="Guacamole.Mouse.Touchscreen.html#event:onmousedown">onmousedown</a></li><li><a href="Guacamole.Mouse.Touchscreen.html#event:onmousemove">onmousemove</a></li><li><a href="Guacamole.Mouse.Touchscreen.html#event:onmouseup">onmouseup</a></li><li><a href="Guacamole.Mouse.html#event:onmousedown">onmousedown</a></li><li><a href="Guacamole.Mouse.html#event:onmousemove">onmousemove</a></li><li><a href="Guacamole.Mouse.html#event:onmouseout">onmouseout</a></li><li><a href="Guacamole.Mouse.html#event:onmouseup">onmouseup</a></li><li><a href="Guacamole.Object.html#event:onbody">onbody</a></li><li><a href="Guacamole.Object.html#event:onundefine">onundefine</a></li><li><a href="Guacamole.OnScreenKeyboard.html#event:onkeydown">onkeydown</a></li><li><a href="Guacamole.OnScreenKeyboard.html#event:onkeyup">onkeyup</a></li><li><a href="Guacamole.OutputStream.html#event:onack">onack</a></li><li><a href="Guacamole.Parser.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.RawAudioRecorder.html#event:onclose">onclose</a></li><li><a href="Guacamole.RawAudioRecorder.html#event:onerror">onerror</a></li><li><a href="Guacamole.SessionRecording._PlaybackTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.SessionRecording._PlaybackTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.SessionRecording._PlaybackTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.SessionRecording.html#event:onpause">onpause</a></li><li><a href="Guacamole.SessionRecording.html#event:onplay">onplay</a></li><li><a href="Guacamole.SessionRecording.html#event:onprogress">onprogress</a></li><li><a href="Guacamole.SessionRecording.html#event:onseek">onseek</a></li><li><a href="Guacamole.StaticHTTPTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.StaticHTTPTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.StaticHTTPTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.StringReader.html#event:onend">onend</a></li><li><a href="Guacamole.StringReader.html#event:ontext">ontext</a></li><li><a href="Guacamole.StringWriter.html#event:onack">onack</a></li><li><a href="Guacamole.Tunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.Tunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.Tunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.WebSocketTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.WebSocketTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.WebSocketTunnel.html#event:onstatechange">onstatechange</a></li></ul><h3>Namespaces</h3><ul><li><a href="Guacamole.html">Guacamole</a></li><li><a href="Guacamole.AudioContextFactory.html">AudioContextFactory</a></li></ul> |
| </nav> |
| |
| <br class="clear"> |
| |
| <footer> |
| Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri Dec 21 2018 13:47:10 GMT-0800 (PST) |
| </footer> |
| |
| <script> prettyPrint(); </script> |
| <script src="scripts/linenumber.js"> </script> |
| <!-- Google Analytics --> |
| <script type="text/javascript"> |
| (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ |
| (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), |
| m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) |
| })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); |
| |
| ga('create', 'UA-75289145-1', 'auto'); |
| ga('send', 'pageview'); |
| </script> |
| </body> |
| </html> |