2a14756fc94f18e3bf301581eeed10d1157e69e95de3e0cec93c961249d43eed.json 21 KB

1
  1. {"ast":null,"code":"\"use strict\";\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar _asyncToGenerator = require(\"F:/workspace/202226701027/huinongbao-app/node_modules/@babel/runtime/helpers/asyncToGenerator.js\").default;\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PushAudioOutputStreamImpl = exports.PushAudioOutputStream = exports.PullAudioOutputStreamImpl = exports.PullAudioOutputStream = exports.AudioOutputStream = void 0;\n/* eslint-disable max-classes-per-file */\nconst Exports_js_1 = require(\"../../common/Exports.js\");\nconst Contracts_js_1 = require(\"../Contracts.js\");\nconst AudioOutputFormat_js_1 = require(\"./AudioOutputFormat.js\");\n/**\n * Represents audio output stream used for custom audio output configurations.\n * @class AudioOutputStream\n */\nclass AudioOutputStream {\n /**\n * Creates and initializes an instance.\n * @constructor\n */\n constructor() {\n return;\n }\n /**\n * Creates a memory backed PullAudioOutputStream with the specified audio format.\n * @member AudioOutputStream.createPullStream\n * @function\n * @public\n * @returns {PullAudioOutputStream} The audio output stream being created.\n */\n static createPullStream() {\n return PullAudioOutputStream.create();\n }\n}\nexports.AudioOutputStream = AudioOutputStream;\n/**\n * Represents memory backed push audio output stream used for custom audio output configurations.\n * @class PullAudioOutputStream\n */\nclass PullAudioOutputStream extends AudioOutputStream {\n /**\n * Creates a memory backed PullAudioOutputStream with the specified audio format.\n * @member PullAudioOutputStream.create\n * @function\n * @public\n * @returns {PullAudioOutputStream} The push audio output stream being created.\n */\n static create() {\n return new PullAudioOutputStreamImpl();\n }\n}\nexports.PullAudioOutputStream = PullAudioOutputStream;\n/**\n * Represents memory backed push audio output stream used for custom audio output configurations.\n * @private\n * @class PullAudioOutputStreamImpl\n */\nclass PullAudioOutputStreamImpl extends PullAudioOutputStream {\n /**\n * Creates and initializes an instance with the given values.\n * @constructor\n */\n constructor() {\n super();\n this.privId = Exports_js_1.createNoDashGuid();\n this.privStream = new Exports_js_1.Stream();\n }\n /**\n * Sets the format information to the stream. For internal use only.\n * @param {AudioStreamFormat} format - the format to be set.\n */\n set format(format) {\n if (format === undefined || format === null) {\n this.privFormat = AudioOutputFormat_js_1.AudioOutputFormatImpl.getDefaultOutputFormat();\n }\n this.privFormat = format;\n }\n /**\n * Format information for the audio\n */\n get format() {\n return this.privFormat;\n }\n /**\n * Checks if the stream is closed\n * @member PullAudioOutputStreamImpl.prototype.isClosed\n * @property\n * @public\n */\n get isClosed() {\n return this.privStream.isClosed;\n }\n /**\n * Gets the id of the stream\n * @member PullAudioOutputStreamImpl.prototype.id\n * @property\n * @public\n */\n id() {\n return this.privId;\n }\n /**\n * Reads audio data from the internal buffer.\n * @member PullAudioOutputStreamImpl.prototype.read\n * @function\n * @public\n * @param {ArrayBuffer} dataBuffer - An ArrayBuffer to store the read data.\n * @returns {Promise<number>} - Audio buffer length has been read.\n */\n read(dataBuffer) {\n var _this = this;\n return _asyncToGenerator(function* () {\n const intView = new Int8Array(dataBuffer);\n let totalBytes = 0;\n if (_this.privLastChunkView !== undefined) {\n if (_this.privLastChunkView.length > dataBuffer.byteLength) {\n intView.set(_this.privLastChunkView.slice(0, dataBuffer.byteLength));\n _this.privLastChunkView = _this.privLastChunkView.slice(dataBuffer.byteLength);\n return Promise.resolve(dataBuffer.byteLength);\n }\n intView.set(_this.privLastChunkView);\n totalBytes = _this.privLastChunkView.length;\n _this.privLastChunkView = undefined;\n }\n // Until we have the minimum number of bytes to send in a transmission, keep asking for more.\n while (totalBytes < dataBuffer.byteLength && !_this.privStream.isReadEnded) {\n const chunk = yield _this.privStream.read();\n if (chunk !== undefined && !chunk.isEnd) {\n let tmpBuffer;\n if (chunk.buffer.byteLength > dataBuffer.byteLength - totalBytes) {\n tmpBuffer = chunk.buffer.slice(0, dataBuffer.byteLength - totalBytes);\n _this.privLastChunkView = new Int8Array(chunk.buffer.slice(dataBuffer.byteLength - totalBytes));\n } else {\n tmpBuffer = chunk.buffer;\n }\n intView.set(new Int8Array(tmpBuffer), totalBytes);\n totalBytes += tmpBuffer.byteLength;\n } else {\n _this.privStream.readEnded();\n }\n }\n return totalBytes;\n })();\n }\n /**\n * Writes the audio data specified by making an internal copy of the data.\n * @member PullAudioOutputStreamImpl.prototype.write\n * @function\n * @public\n * @param {ArrayBuffer} dataBuffer - The audio buffer of which this function will make a copy.\n */\n write(dataBuffer) {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(this.privStream, \"must set format before writing\");\n this.privStream.writeStreamChunk({\n buffer: dataBuffer,\n isEnd: false,\n timeReceived: Date.now()\n });\n }\n /**\n * Closes the stream.\n * @member PullAudioOutputStreamImpl.prototype.close\n * @function\n * @public\n */\n close() {\n this.privStream.close();\n }\n}\nexports.PullAudioOutputStreamImpl = PullAudioOutputStreamImpl;\n/*\n * Represents audio output stream used for custom audio output configurations.\n * @class PushAudioOutputStream\n */\nclass PushAudioOutputStream extends AudioOutputStream {\n /**\n * Creates and initializes and instance.\n * @constructor\n */\n constructor() {\n super();\n }\n /**\n * Creates a PushAudioOutputStream that delegates to the specified callback interface for\n * write() and close() methods.\n * @member PushAudioOutputStream.create\n * @function\n * @public\n * @param {PushAudioOutputStreamCallback} callback - The custom audio output object,\n * derived from PushAudioOutputStreamCallback\n * @returns {PushAudioOutputStream} The push audio output stream being created.\n */\n static create(callback) {\n return new PushAudioOutputStreamImpl(callback);\n }\n}\nexports.PushAudioOutputStream = PushAudioOutputStream;\n/**\n * Represents audio output stream used for custom audio output configurations.\n * @private\n * @class PushAudioOutputStreamImpl\n */\nclass PushAudioOutputStreamImpl extends PushAudioOutputStream {\n /**\n * Creates a PushAudioOutputStream that delegates to the specified callback interface for\n * read() and close() methods.\n * @constructor\n * @param {PushAudioOutputStreamCallback} callback - The custom audio output object,\n * derived from PushAudioOutputStreamCallback\n */\n constructor(callback) {\n super();\n this.privId = Exports_js_1.createNoDashGuid();\n this.privCallback = callback;\n }\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n set format(format) {}\n write(buffer) {\n if (!!this.privCallback.write) {\n this.privCallback.write(buffer);\n }\n }\n close() {\n if (!!this.privCallback.close) {\n this.privCallback.close();\n }\n }\n id() {\n return this.privId;\n }\n}\nexports.PushAudioOutputStreamImpl = PushAudioOutputStreamImpl;","map":{"version":3,"names":["_asyncToGenerator","require","default","Object","defineProperty","exports","value","PushAudioOutputStreamImpl","PushAudioOutputStream","PullAudioOutputStreamImpl","PullAudioOutputStream","AudioOutputStream","Exports_js_1","Contracts_js_1","AudioOutputFormat_js_1","constructor","createPullStream","create","privId","createNoDashGuid","privStream","Stream","format","undefined","privFormat","AudioOutputFormatImpl","getDefaultOutputFormat","isClosed","id","read","dataBuffer","_this","intView","Int8Array","totalBytes","privLastChunkView","length","byteLength","set","slice","Promise","resolve","isReadEnded","chunk","isEnd","tmpBuffer","buffer","readEnded","write","Contracts","throwIfNullOrUndefined","writeStreamChunk","timeReceived","Date","now","close","callback","privCallback"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/microsoft-cognitiveservices-speech-sdk/distrib/lib/src/sdk/Audio/AudioOutputStream.js"],"sourcesContent":["\"use strict\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PushAudioOutputStreamImpl = exports.PushAudioOutputStream = exports.PullAudioOutputStreamImpl = exports.PullAudioOutputStream = exports.AudioOutputStream = void 0;\n/* eslint-disable max-classes-per-file */\nconst Exports_js_1 = require(\"../../common/Exports.js\");\nconst Contracts_js_1 = require(\"../Contracts.js\");\nconst AudioOutputFormat_js_1 = require(\"./AudioOutputFormat.js\");\n/**\n * Represents audio output stream used for custom audio output configurations.\n * @class AudioOutputStream\n */\nclass AudioOutputStream {\n /**\n * Creates and initializes an instance.\n * @constructor\n */\n constructor() {\n return;\n }\n /**\n * Creates a memory backed PullAudioOutputStream with the specified audio format.\n * @member AudioOutputStream.createPullStream\n * @function\n * @public\n * @returns {PullAudioOutputStream} The audio output stream being created.\n */\n static createPullStream() {\n return PullAudioOutputStream.create();\n }\n}\nexports.AudioOutputStream = AudioOutputStream;\n/**\n * Represents memory backed push audio output stream used for custom audio output configurations.\n * @class PullAudioOutputStream\n */\nclass PullAudioOutputStream extends AudioOutputStream {\n /**\n * Creates a memory backed PullAudioOutputStream with the specified audio format.\n * @member PullAudioOutputStream.create\n * @function\n * @public\n * @returns {PullAudioOutputStream} The push audio output stream being created.\n */\n static create() {\n return new PullAudioOutputStreamImpl();\n }\n}\nexports.PullAudioOutputStream = PullAudioOutputStream;\n/**\n * Represents memory backed push audio output stream used for custom audio output configurations.\n * @private\n * @class PullAudioOutputStreamImpl\n */\nclass PullAudioOutputStreamImpl extends PullAudioOutputStream {\n /**\n * Creates and initializes an instance with the given values.\n * @constructor\n */\n constructor() {\n super();\n this.privId = Exports_js_1.createNoDashGuid();\n this.privStream = new Exports_js_1.Stream();\n }\n /**\n * Sets the format information to the stream. For internal use only.\n * @param {AudioStreamFormat} format - the format to be set.\n */\n set format(format) {\n if (format === undefined || format === null) {\n this.privFormat = AudioOutputFormat_js_1.AudioOutputFormatImpl.getDefaultOutputFormat();\n }\n this.privFormat = format;\n }\n /**\n * Format information for the audio\n */\n get format() {\n return this.privFormat;\n }\n /**\n * Checks if the stream is closed\n * @member PullAudioOutputStreamImpl.prototype.isClosed\n * @property\n * @public\n */\n get isClosed() {\n return this.privStream.isClosed;\n }\n /**\n * Gets the id of the stream\n * @member PullAudioOutputStreamImpl.prototype.id\n * @property\n * @public\n */\n id() {\n return this.privId;\n }\n /**\n * Reads audio data from the internal buffer.\n * @member PullAudioOutputStreamImpl.prototype.read\n * @function\n * @public\n * @param {ArrayBuffer} dataBuffer - An ArrayBuffer to store the read data.\n * @returns {Promise<number>} - Audio buffer length has been read.\n */\n async read(dataBuffer) {\n const intView = new Int8Array(dataBuffer);\n let totalBytes = 0;\n if (this.privLastChunkView !== undefined) {\n if (this.privLastChunkView.length > dataBuffer.byteLength) {\n intView.set(this.privLastChunkView.slice(0, dataBuffer.byteLength));\n this.privLastChunkView = this.privLastChunkView.slice(dataBuffer.byteLength);\n return Promise.resolve(dataBuffer.byteLength);\n }\n intView.set(this.privLastChunkView);\n totalBytes = this.privLastChunkView.length;\n this.privLastChunkView = undefined;\n }\n // Until we have the minimum number of bytes to send in a transmission, keep asking for more.\n while (totalBytes < dataBuffer.byteLength && !this.privStream.isReadEnded) {\n const chunk = await this.privStream.read();\n if (chunk !== undefined && !chunk.isEnd) {\n let tmpBuffer;\n if (chunk.buffer.byteLength > dataBuffer.byteLength - totalBytes) {\n tmpBuffer = chunk.buffer.slice(0, dataBuffer.byteLength - totalBytes);\n this.privLastChunkView = new Int8Array(chunk.buffer.slice(dataBuffer.byteLength - totalBytes));\n }\n else {\n tmpBuffer = chunk.buffer;\n }\n intView.set(new Int8Array(tmpBuffer), totalBytes);\n totalBytes += tmpBuffer.byteLength;\n }\n else {\n this.privStream.readEnded();\n }\n }\n return totalBytes;\n }\n /**\n * Writes the audio data specified by making an internal copy of the data.\n * @member PullAudioOutputStreamImpl.prototype.write\n * @function\n * @public\n * @param {ArrayBuffer} dataBuffer - The audio buffer of which this function will make a copy.\n */\n write(dataBuffer) {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(this.privStream, \"must set format before writing\");\n this.privStream.writeStreamChunk({\n buffer: dataBuffer,\n isEnd: false,\n timeReceived: Date.now()\n });\n }\n /**\n * Closes the stream.\n * @member PullAudioOutputStreamImpl.prototype.close\n * @function\n * @public\n */\n close() {\n this.privStream.close();\n }\n}\nexports.PullAudioOutputStreamImpl = PullAudioOutputStreamImpl;\n/*\n * Represents audio output stream used for custom audio output configurations.\n * @class PushAudioOutputStream\n */\nclass PushAudioOutputStream extends AudioOutputStream {\n /**\n * Creates and initializes and instance.\n * @constructor\n */\n constructor() {\n super();\n }\n /**\n * Creates a PushAudioOutputStream that delegates to the specified callback interface for\n * write() and close() methods.\n * @member PushAudioOutputStream.create\n * @function\n * @public\n * @param {PushAudioOutputStreamCallback} callback - The custom audio output object,\n * derived from PushAudioOutputStreamCallback\n * @returns {PushAudioOutputStream} The push audio output stream being created.\n */\n static create(callback) {\n return new PushAudioOutputStreamImpl(callback);\n }\n}\nexports.PushAudioOutputStream = PushAudioOutputStream;\n/**\n * Represents audio output stream used for custom audio output configurations.\n * @private\n * @class PushAudioOutputStreamImpl\n */\nclass PushAudioOutputStreamImpl extends PushAudioOutputStream {\n /**\n * Creates a PushAudioOutputStream that delegates to the specified callback interface for\n * read() and close() methods.\n * @constructor\n * @param {PushAudioOutputStreamCallback} callback - The custom audio output object,\n * derived from PushAudioOutputStreamCallback\n */\n constructor(callback) {\n super();\n this.privId = Exports_js_1.createNoDashGuid();\n this.privCallback = callback;\n }\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n set format(format) { }\n write(buffer) {\n if (!!this.privCallback.write) {\n this.privCallback.write(buffer);\n }\n }\n close() {\n if (!!this.privCallback.close) {\n this.privCallback.close();\n }\n }\n id() {\n return this.privId;\n }\n}\nexports.PushAudioOutputStreamImpl = PushAudioOutputStreamImpl;\n\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}