From 6ea5689f655cfcdfd312ffbacdf8ba6057727b80 Mon Sep 17 00:00:00 2001 From: Monika <66684637+mhelf-dolby@users.noreply.github.com> Date: Fri, 27 Oct 2023 15:47:31 +0200 Subject: [PATCH 01/16] Updated readme files for sample applications (#277) * Updated readme files for sample applications * Incorporated review feedback --- packages/millicast-multiview-demo/.env.sample | 6 +-- packages/millicast-multiview-demo/README.md | 44 ++++++++++++++---- .../multiview_app_img.png | Bin 0 -> 422561 bytes packages/millicast-publisher-demo/.env.sample | 8 ++-- packages/millicast-publisher-demo/README.md | 37 +++++++++++---- .../publisher_app_img.png | Bin 0 -> 172924 bytes packages/millicast-viewer-demo/.env.sample | 6 +-- packages/millicast-viewer-demo/README.md | 36 ++++++++++---- .../millicast-webaudio-delay-demo/.env.sample | 3 ++ .../millicast-webaudio-delay-demo/README.md | 41 ++++++++++++---- .../delay_app_img.png | Bin 0 -> 39140 bytes 11 files changed, 136 insertions(+), 45 deletions(-) create mode 100644 packages/millicast-multiview-demo/multiview_app_img.png create mode 100644 packages/millicast-publisher-demo/publisher_app_img.png create mode 100644 packages/millicast-webaudio-delay-demo/.env.sample create mode 100644 packages/millicast-webaudio-delay-demo/delay_app_img.png diff --git a/packages/millicast-multiview-demo/.env.sample b/packages/millicast-multiview-demo/.env.sample index a8dff906..753a2d85 100644 --- a/packages/millicast-multiview-demo/.env.sample +++ b/packages/millicast-multiview-demo/.env.sample @@ -1,3 +1,3 @@ -# Make a .env file with the following vars -MILLICAST_ACCOUNT_ID=test -MILLICAST_STREAM_NAME=test \ No newline at end of file +# Create a .env file with the following variables: +MILLICAST_ACCOUNT_ID=yourAccountId +MILLICAST_STREAM_NAME=yourStreamName \ No newline at end of file diff --git a/packages/millicast-multiview-demo/README.md b/packages/millicast-multiview-demo/README.md index 00b415e8..a93397be 100644 --- a/packages/millicast-multiview-demo/README.md +++ b/packages/millicast-multiview-demo/README.md @@ -1,26 +1,52 @@ # Millicast Multiview Demo -## Setup -Add a `.env` file in current path. You can find the following example in `.env.sample`: +The Multiview demo application demonstrates multi view playback capabilities that you can add to your application using the Millicast SDK. You can use it for rendering multiple real-time video and audio streams simultaneously inside a browser. + + + +## Getting started + +1. Go to the [Dolby.io Streaming dashboard](https://dashboard.dolby.io/) and select your token. If you do not have a token, create it by clicking the **create** button. + +2. Open the **token details** tab and enable **multisource**. + +3. In the same tab, locate and copy your `account ID`. + +4. Select the **publishing** tab and copy your `stream name`. + +5. Open the Millicast SDK in a code editor, create a `.env` file in the `millicast-multiview-demo` folder, and add the following data to the file: + ```sh -# Make a .env file with the following vars MILLICAST_STREAM_NAME=yourStreamName MILLICAST_ACCOUNT_ID=yourAccountId ``` -Install all dependencies using: +This content is also available in the `.env.sample` file. + +6. Replace `yourStreamName` and `yourAccountId` with the data copied from the dashboard. + +7. Open a terminal in the `millicast-multiview-demo` folder. + +8. Install all dependencies: ```sh npm ci ``` - -## Run -To start running this demo, the following command will publish the app at `http://localhost:10005` and enter in watching mode. +9. Run the application: ```sh npm start ``` -## Changes -If any changes was applied in `public` directory. Make them effective by following command: +10. Open `http://localhost:10005` and test the application. + +To receive streams, you need to broadcast them first. You can do it either via the Dolby.io dashboard by clicking the **broadcast** button, located next to your token, or you can use the [Publisher](../millicast-publisher-demo/) demo application. After you start broadcasting, the Multiview application will be able to play the streamed content. + +The simplest way to receive two streams in the application is to open the dashboard in two browser tabs and start broadcasting a stream from each tab. It additionally requires opening **media settings** via the gear icon and providing a **source ID** for each stream. The ID is a stream name that simplifies stream identification. + +The application also lets you select the preferred layer, which refers to a simulcast bitrate. This option is available only after enabling **simulcast** in the **media settings**. + +## Introducing updates +After introducing any changes to the `public` directory, use the following command: ``` npm run prepare ``` + diff --git a/packages/millicast-multiview-demo/multiview_app_img.png b/packages/millicast-multiview-demo/multiview_app_img.png new file mode 100644 index 0000000000000000000000000000000000000000..d56c428bdaed133c741ac8137879f9814f7de20b GIT binary patch literal 422561 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≤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

5XppT+}p#^)L2U%!#!DO|JpVTtJHLB^&& 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 WmBv%=wT^5OJ + +We recommend using the application together with the [Viewer](../millicast-viewer-demo/) demo application to test the receiving side as well. + +## Getting started + +1. Go to the [Dolby.io Streaming dashboard](https://dashboard.dolby.io/) and select your token. If you do not have a token, create it by clicking the **create** button. + +2. Locate your `account ID` in the **token details** tab and copy the token. + +3. Select the **publishing** tab and copy your `publishing token` and `stream name`. + +4. Open the Millicast SDK in a code editor, create a `.env` file in the `millicast-publisher-demo` folder, and add the following data to the file: + ```sh -# Make a .env file with the following vars MILLICAST_STREAM_NAME=yourStreamName MILLICAST_ACCOUNT_ID=yourAccountId MILLICAST_PUBLISH_TOKEN=yourPublishToken ``` -Install all dependencies using: +This content is also available in the `.env.sample` file. + +5. Replace `yourStreamName`, `yourAccountId`, and `yourPublishToken` with the data copied from the dashboard. + +6. Open a terminal in the `millicast-publisher-demo` folder. + +7. Install all dependencies: ```sh npm ci ``` - -## Run -To start running this demo, the following command will publish the app at `http://localhost:10001` and enter in watching mode. +8. Run the application: ```sh npm start ``` -## Changes -If any changes was applied in `public` directory. Make them effective by following command: +9. Open `http://localhost:10001` and test the application. + +## Introducing updates +After introducing any changes to the `public` directory, use the following command: ``` npm run prepare ``` diff --git a/packages/millicast-publisher-demo/publisher_app_img.png b/packages/millicast-publisher-demo/publisher_app_img.png new file mode 100644 index 0000000000000000000000000000000000000000..7eea738fead9e5c0f8ec0c6b4c0bdafb7cdbde9c GIT binary patch literal 172924 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 d&|gFnX)f(P4NGt0mwtFx? literal 0 HcmV?d00001 From 2e2b731efd757b0264f72d79bfcf0ca5c5a5632a Mon Sep 17 00:00:00 2001 From: Shivank Dubey <110578314+dubeyShivank@users.noreply.github.com> Date: Thu, 2 Nov 2023 05:56:40 +1100 Subject: [PATCH 02/16] Fix typos (#290) * Fix typos forn for * Update another typo --- packages/millicast-sdk/docs-translations/en/Director.json | 4 ++-- packages/millicast-sdk/src/Director.js | 2 +- packages/millicast-sdk/src/types/index.d.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/millicast-sdk/docs-translations/en/Director.json b/packages/millicast-sdk/docs-translations/en/Director.json index d15d36d4..9c21d940 100644 --- a/packages/millicast-sdk/docs-translations/en/Director.json +++ b/packages/millicast-sdk/docs-translations/en/Director.json @@ -7,7 +7,7 @@ "

Millicast publisher Stream Name.

": "

Millicast publisher Stream Name.

", "

Millicast Account ID.

": "

Millicast Account ID.

", "

Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param.

": "

Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param.

", - "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasosn all calls will return a JWT token forn authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

": "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasosn all calls will return a JWT token forn authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

", + "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasons all calls will return a JWT token for authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

": "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasons all calls will return a JWT token for authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

", "

Set Director API endpoint where requests will be sent.

": "

Set Director API endpoint where requests will be sent.

", "

New Director API endpoint

": "

New Director API endpoint

", "

Get current Director API endpoint where requests will be sent.

\n

By default, https://director.millicast.com is the current API endpoint.

": "

Get current Director API endpoint where requests will be sent.

\n

By default, https://director.millicast.com is the current API endpoint.

", @@ -27,5 +27,5 @@ "

Deprecated, use options parameter instead Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param.

": "

Deprecated, use options parameter instead Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param.

", "

Promise object which represents the result of getting the subscribe connection data.

": "

Promise object which represents the result of getting the subscribe connection data.

", "

Object which represents a list of Ice servers.

": "

Object which represents a list of Ice servers.

", - "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasosn all calls will return a JWT token forn authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

": "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasosn all calls will return a JWT token forn authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

" + "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasons all calls will return a JWT token for authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

": "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasons all calls will return a JWT token for authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

" } \ No newline at end of file diff --git a/packages/millicast-sdk/src/Director.js b/packages/millicast-sdk/src/Director.js index 913c14b0..ecf93af9 100644 --- a/packages/millicast-sdk/src/Director.js +++ b/packages/millicast-sdk/src/Director.js @@ -35,7 +35,7 @@ let apiEndpoint = defaultApiEndpoint /** * Simplify API calls to find the best server and region to publish and subscribe to. - * For security reasosn all calls will return a [JWT](https://jwt.io) token forn authentication including the required + * For security reasons all calls will return a [JWT](https://jwt.io) token for authentication including the required * socket path to connect with. * * You will need your own Publishing token and Stream name, please refer to [Managing Your Tokens](https://docs.dolby.io/streaming-apis/docs/managing-your-tokens). diff --git a/packages/millicast-sdk/src/types/index.d.ts b/packages/millicast-sdk/src/types/index.d.ts index 48ab3534..ce543298 100644 --- a/packages/millicast-sdk/src/types/index.d.ts +++ b/packages/millicast-sdk/src/types/index.d.ts @@ -729,7 +729,7 @@ declare module '@millicast/sdk' { */ /** * Simplify API calls to find the best server and region to publish and subscribe to. - * For security reasosn all calls will return a [JWT](https://jwt.io) token forn authentication including the required + * For security reasons all calls will return a [JWT](https://jwt.io) token for authentication including the required * socket path to connect with. * * You will need your own Publishing token and Stream name, please refer to [Managing Your Tokens](https://docs.dolby.io/streaming-apis/docs/managing-your-tokens). From f72a771d802557252abe4a2e0e8667dec3a917d3 Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Mon, 4 Dec 2023 19:09:56 +0100 Subject: [PATCH 03/16] Fix in reconnection method (#293) * autoReconnect variable is now checked for reconnection attempt * Change autoReconnect check reconnect method should not check for autoReconnect var, instead initConnection should before calling reconnect --- packages/millicast-sdk/src/Publish.js | 4 ++-- packages/millicast-sdk/src/View.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/millicast-sdk/src/Publish.js b/packages/millicast-sdk/src/Publish.js index 4b235f29..42a851a7 100644 --- a/packages/millicast-sdk/src/Publish.js +++ b/packages/millicast-sdk/src/Publish.js @@ -154,11 +154,11 @@ export default class Publish extends BaseWebRTC { } catch (error) { logger.error('Error generating token.') if (error instanceof FetchError) { - if (error.status === 401) { + if (error.status === 401 || !this.autoReconnect) { // should not reconnect this.stopReconnection = true } else { - // should reconnect with exponential back off + // should reconnect with exponential back off if autoReconnect is true this.reconnect() } } diff --git a/packages/millicast-sdk/src/View.js b/packages/millicast-sdk/src/View.js index f41518a7..dfc9297e 100644 --- a/packages/millicast-sdk/src/View.js +++ b/packages/millicast-sdk/src/View.js @@ -201,11 +201,11 @@ export default class View extends BaseWebRTC { } catch (error) { logger.error('Error generating token.') if (error instanceof FetchError) { - if (error.status === 401) { + if (error.status === 401 || !this.autoReconnect) { // should not reconnect this.stopReconnection = true } else { - // should reconnect with exponential back off + // should reconnect with exponential back off if autoReconnect is true this.reconnect() } } From e6e10f785354fc0f9f48f19d2fb77f617f49c85b Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Mon, 4 Dec 2023 19:10:14 +0100 Subject: [PATCH 04/16] Add priority option for publishing (#291) * Add priority option parsing and docs * Add error handling * Added priority as query param on publisher app * Change docs link --------- Co-authored-by: montanaeli --- packages/millicast-publisher-demo/src/publisher.js | 10 +++++----- packages/millicast-sdk/src/Publish.js | 1 + packages/millicast-sdk/src/Signaling.js | 12 ++++++++++++ packages/millicast-sdk/src/types/index.d.ts | 4 ++++ 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/packages/millicast-publisher-demo/src/publisher.js b/packages/millicast-publisher-demo/src/publisher.js index 8f38553b..49cae85d 100644 --- a/packages/millicast-publisher-demo/src/publisher.js +++ b/packages/millicast-publisher-demo/src/publisher.js @@ -139,7 +139,11 @@ document.addEventListener("DOMContentLoaded", async (event) => { const BroadcastMillicastStream = async () => { try{ - await millicastPublishUserMedia.connect({ bandwidth, events: events }) + const params = new Proxy(new URLSearchParams(window.location.search), { + get: (searchParams, prop) => searchParams.get(prop), + }); + let priority = parseInt(params.priority); + await millicastPublishUserMedia.connect({ bandwidth, events: events, priority }) isBroadcasting = true; broadcastHandler(); setUserCount(); @@ -414,12 +418,9 @@ document.addEventListener("DOMContentLoaded", async (event) => { txt.style.position = 'fixed'; txt.style.left = '-9999px'; document.body.appendChild(txt); - //console.log('view: ', txt); let iOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; - //let txt = input; if (iOS) { - console.log('IS iOS!'); txt.setAttribute('contenteditable', true); txt.setAttribute('readonly', false); let range = document.createRange(); @@ -431,7 +432,6 @@ document.addEventListener("DOMContentLoaded", async (event) => { txt.setAttribute('contenteditable', false); txt.setAttribute('readonly', true); } else { - //console.log('NOT iOS!'); txt.select(); } document.execCommand('copy'); diff --git a/packages/millicast-sdk/src/Publish.js b/packages/millicast-sdk/src/Publish.js index 42a851a7..bb1ad384 100644 --- a/packages/millicast-sdk/src/Publish.js +++ b/packages/millicast-sdk/src/Publish.js @@ -63,6 +63,7 @@ export default class Publish extends BaseWebRTC { * @param {RTCConfiguration} options.peerConfig - Options to configure the new RTCPeerConnection. * @param {Boolean} [options.record] - Enable stream recording. If record is not provided, use default Token configuration. **Only available in Tokens with recording enabled.** * @param {Array} [options.events] - Specify which events will be delivered by the server (any of "active" | "inactive" | "viewercount").* + * @param {Number} [options.priority] - When multiple ingest streams are provided by the customer, add the ability to specify a priority between all ingest streams. Decimal integer between the range [-2^31, +2^31 - 1]. For more information, visit [our documentation](https://docs.dolby.io/streaming-apis/docs/backup-publishing). * @returns {Promise} Promise object which resolves when the broadcast started successfully. * @fires PeerConnection#connectionStateChange * @fires Signaling#broadcastEvent diff --git a/packages/millicast-sdk/src/Signaling.js b/packages/millicast-sdk/src/Signaling.js index 9cbb729a..1abc3b70 100644 --- a/packages/millicast-sdk/src/Signaling.js +++ b/packages/millicast-sdk/src/Signaling.js @@ -289,6 +289,18 @@ export default class Signaling extends EventEmitter { sourceId: optionsParsed.sourceId } + if (optionsParsed.priority) { + if ( + Number.isInteger(optionsParsed.priority) && + optionsParsed.priority >= -2147483648 && + optionsParsed.priority <= 2147483647 + ) { + data.priority = optionsParsed.priority + } else { + throw new Error('Invalid value for priority option. It should be a decimal integer between the range [-2^31, +2^31 - 1]') + } + } + if (optionsParsed.record !== null) { data.record = optionsParsed.record } diff --git a/packages/millicast-sdk/src/types/index.d.ts b/packages/millicast-sdk/src/types/index.d.ts index ce543298..3c72fa89 100644 --- a/packages/millicast-sdk/src/types/index.d.ts +++ b/packages/millicast-sdk/src/types/index.d.ts @@ -998,6 +998,10 @@ declare module '@millicast/sdk' { * - Specify which events will be delivered by the server (any of "active" | "inactive" | "viewercount").* */ events?: Array; + /** + * - When multiple ingest streams are provided by the customer, add the ability to specify a priority between all ingest streams. Decimal integer between the range [-2^31, +2^31 - 1]. For more information, visit [our documentation](https://docs.dolby.io/streaming-apis/docs/backup-publishing). + */ + priority?: Number; } export type ViewProjectSourceMapping = { From 6055ef40cb52c25e95b9d6b1a83b6a9da722d03f Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Wed, 13 Dec 2023 19:16:49 +0100 Subject: [PATCH 05/16] Add trackId as an inbound rtp stats report (#297) --- packages/millicast-sdk/src/PeerConnectionStats.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/millicast-sdk/src/PeerConnectionStats.js b/packages/millicast-sdk/src/PeerConnectionStats.js index 0b5baa34..d94a4e53 100644 --- a/packages/millicast-sdk/src/PeerConnectionStats.js +++ b/packages/millicast-sdk/src/PeerConnectionStats.js @@ -186,6 +186,7 @@ const addInboundRtpReport = (report, previousStats, statsObject) => { additionalData.jitter = report.jitter additionalData.id = report.id additionalData.mid = report.mid + additionalData.trackIdentifier = report.trackIdentifier additionalData.bitrate = 0 additionalData.packetsLostRatioPerSecond = 0 From ce80880f4e24ad05da33f2588f13c0eb28f9baaa Mon Sep 17 00:00:00 2001 From: Renzo Delfino <75499398+R-Delfino95@users.noreply.github.com> Date: Fri, 15 Dec 2023 14:35:24 -0300 Subject: [PATCH 06/16] Added retries to addRemoteTrack method. Change implementation to recursive method. (#296) Co-authored-by: Renzo Delfino Co-authored-by: Santiago Souto --- packages/millicast-sdk/src/PeerConnection.js | 52 +++++++++++--------- 1 file changed, 30 insertions(+), 22 deletions(-) diff --git a/packages/millicast-sdk/src/PeerConnection.js b/packages/millicast-sdk/src/PeerConnection.js index 88b636f3..37fae402 100644 --- a/packages/millicast-sdk/src/PeerConnection.js +++ b/packages/millicast-sdk/src/PeerConnection.js @@ -160,22 +160,17 @@ export default class PeerConnection extends EventEmitter { * @return {Promise} Promise that will be resolved when the RTCRtpTransceiver is assigned an mid value. */ async addRemoteTrack (media, streams) { - const transceiver = await (new Promise((resolve, reject) => { - try { - const transceiver = this.peer.addTransceiver(media, { - direction: 'recvonly' - }) - - transceiver.resolve = resolve - transceiver.streams = streams - } catch (e) { - reject(e) - } - })) - for (const stream of streams) { - stream.addTrack(transceiver.receiver.track) + try { + let transceiver = this.peer.addTransceiver(media, { + direction: 'recvonly', + streams + }) + transceiver = await getTransceiverWithMid(transceiver, streams) + return transceiver + } catch (e) { + logger.error('Error while adding the remote track: ', e) + throw e } - return transceiver } /** @@ -408,13 +403,6 @@ const addPeerEvents = (instanceClass, peer) => { logger.info('New track from peer.') logger.debug('Track event value: ', event) - // Listen for remote tracks events for resolving pending addRemoteTrack calls. - if (event?.transceiver?.resolve) { - const resolve = event.transceiver.resolve - delete (event.transceiver.resolve) - resolve(event.transceiver) - } - /** * New track event. * @@ -513,6 +501,26 @@ const addReceiveTransceivers = (peer, options) => { } } +const getTransceiverWithMid = async (transceiver, streams, retries = 0) => { + return new Promise((resolve, reject) => { + if (transceiver.mid) { + for (const stream of streams) { + stream.addTrack(transceiver.receiver.track) + } + resolve(transceiver) + } else if (retries >= 10) { + reject(new Error('Error, maximum number of retries has been reached')) + } else { + retries++ + setTimeout(() => { + getTransceiverWithMid(transceiver, streams, retries) + .then(resolve) + .catch(reject) + }, 50) + } + }) +} + const getConnectionState = (peer) => { const connectionState = peer.connectionState ?? peer.iceConnectionState switch (connectionState) { From 279f0e1af07013b3f6d0d7baa3d3ed6c6ed3bd97 Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Tue, 26 Dec 2023 20:37:34 +0100 Subject: [PATCH 07/16] Add promote attribute to project method (#299) --- packages/millicast-sdk/docs-translations/en/Publish.json | 3 ++- packages/millicast-sdk/docs-translations/en/View.json | 3 ++- packages/millicast-sdk/src/View.js | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/millicast-sdk/docs-translations/en/Publish.json b/packages/millicast-sdk/docs-translations/en/Publish.json index 96e998e1..a166230b 100644 --- a/packages/millicast-sdk/docs-translations/en/Publish.json +++ b/packages/millicast-sdk/docs-translations/en/Publish.json @@ -26,5 +26,6 @@ "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to broadcast a MediaStream.

\n

Before you can broadcast, you will need:

\n
    \n
  • \n

    MediaStream which has at most one audio track and at most one video track. This will be used for stream the contained tracks.

    \n
  • \n
  • \n

    A connection path that you can get from {@link Director} module or from your own implementation.

    \n
  • \n
": "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to broadcast a MediaStream.

\n

Before you can broadcast, you will need:

\n
    \n
  • \n

    MediaStream which has at most one audio track and at most one video track. This will be used for stream the contained tracks.

    \n
  • \n
  • \n

    A connection path that you can get from {@link Director} module or from your own implementation.

    \n
  • \n
", "

Specify which events will be delivered by the server (any of "active" | "inactive" | "viewercount").*

": "

Specify which events will be delivered by the server (any of "active" | "inactive" | "viewercount").*

", "

Initialize recording in an active stream and change the current record option.

": "

Initialize recording in an active stream and change the current record option.

", - "

Finalize recording in an active stream and change the current record option.

": "

Finalize recording in an active stream and change the current record option.

" + "

Finalize recording in an active stream and change the current record option.

": "

Finalize recording in an active stream and change the current record option.

", + "

When multiple ingest streams are provided by the customer, add the ability to specify a priority between all ingest streams. Decimal integer between the range [-2^31, +2^31 - 1]. For more information, visit our documentation.

": "

When multiple ingest streams are provided by the customer, add the ability to specify a priority between all ingest streams. Decimal integer between the range [-2^31, +2^31 - 1]. For more information, visit our documentation.

" } \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/View.json b/packages/millicast-sdk/docs-translations/en/View.json index 226e550a..500c49f3 100644 --- a/packages/millicast-sdk/docs-translations/en/View.json +++ b/packages/millicast-sdk/docs-translations/en/View.json @@ -43,5 +43,6 @@ "

Override which events will be delivered by the server (any of "active" | "inactive" | "vad" | "layers" | "viewercount").*

": "

Override which events will be delivered by the server (any of "active" | "inactive" | "vad" | "layers" | "viewercount").*

", "

Ask the server to use the playout delay header extension.

": "

Ask the server to use the playout delay header extension.

", "

Set minimum playout delay value.

": "

Set minimum playout delay value.

", - "

Set maximum playout delay value.

": "

Set maximum playout delay value.

" + "

Set maximum playout delay value.

": "

Set maximum playout delay value.

", + "

To remove all existing limitations from the source, such as restricted bitrate or resolution, set this to true.

": "

To remove all existing limitations from the source, such as restricted bitrate or resolution, set this to true.

" } \ No newline at end of file diff --git a/packages/millicast-sdk/src/View.js b/packages/millicast-sdk/src/View.js index dfc9297e..afe68215 100644 --- a/packages/millicast-sdk/src/View.js +++ b/packages/millicast-sdk/src/View.js @@ -146,6 +146,7 @@ export default class View extends BaseWebRTC { * @param {String} [mapping.media] - Track kind of the source ('audio' | 'video'), if not set the trackId will be used instead. * @param {String} [mapping.mediaId] - mid value of the rtp receiver in which the media is going to be projected. If no mediaId is defined, the first track from the main media stream with the same media type as the input source track will be used. * @param {LayerInfo} [mapping.layer] - Select the simulcast encoding layer and svc layers, only applicable to video tracks. + * @param {Boolean} [mapping.promote] - To remove all existing limitations from the source, such as restricted bitrate or resolution, set this to true. */ async project (sourceId, mapping) { for (const map of mapping) { From e413f07dd9732431a91551f44734f33516d57d9c Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Wed, 3 Jan 2024 20:22:43 +0100 Subject: [PATCH 08/16] Revert "Add ICE transport policy in Safari when iCloud Private Relay is enabled (#278)" (#300) Remove force TURN connection for all Safari users --- packages/millicast-sdk/src/View.js | 6 ------ 1 file changed, 6 deletions(-) diff --git a/packages/millicast-sdk/src/View.js b/packages/millicast-sdk/src/View.js index afe68215..0f6bb29f 100644 --- a/packages/millicast-sdk/src/View.js +++ b/packages/millicast-sdk/src/View.js @@ -4,7 +4,6 @@ import BaseWebRTC from './utils/BaseWebRTC' import Signaling, { signalingEvents } from './Signaling' import PeerConnection, { webRTCEvents } from './PeerConnection' import FetchError from './utils/FetchError' -import UserAgent from './utils/UserAgent' const logger = Logger.get('View') @@ -194,11 +193,6 @@ export default class View extends BaseWebRTC { subscriberData = await this.tokenGenerator() // Set the iceServers from the subscribe data into the peerConfig this.options.peerConfig.iceServers = subscriberData?.iceServers - // Only for Safari when iCloud Private Relay is enabled, this policy is needed - const browserData = new UserAgent() - if (browserData.isSafari()) { - this.options.peerConfig.iceTransportPolicy = 'relay' - } } catch (error) { logger.error('Error generating token.') if (error instanceof FetchError) { From 090bca6cfb62aa35e34e214be9ff747330d7b675 Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Fri, 12 Jan 2024 13:58:54 +0100 Subject: [PATCH 09/16] Fix circular dependency (#301) between Signaling.js and PeerConnection.js --- .../docs-translations/en/utils/Codecs.json | 5 +++ packages/millicast-sdk/src/PeerConnection.js | 2 +- packages/millicast-sdk/src/Publish.js | 3 +- packages/millicast-sdk/src/Signaling.js | 31 +------------------ packages/millicast-sdk/src/utils/Codecs.js | 29 +++++++++++++++++ .../step-definitions/Publish.steps.js | 3 +- 6 files changed, 40 insertions(+), 33 deletions(-) create mode 100644 packages/millicast-sdk/docs-translations/en/utils/Codecs.json create mode 100644 packages/millicast-sdk/src/utils/Codecs.js diff --git a/packages/millicast-sdk/docs-translations/en/utils/Codecs.json b/packages/millicast-sdk/docs-translations/en/utils/Codecs.json new file mode 100644 index 00000000..85a4cbea --- /dev/null +++ b/packages/millicast-sdk/docs-translations/en/utils/Codecs.json @@ -0,0 +1,5 @@ +{ + "

Enum of Millicast supported Video codecs

": "

Enum of Millicast supported Video codecs

", + "

Only available in Safari

": "

Only available in Safari

", + "

Enum of Millicast supported Audio codecs

": "

Enum of Millicast supported Audio codecs

" +} \ No newline at end of file diff --git a/packages/millicast-sdk/src/PeerConnection.js b/packages/millicast-sdk/src/PeerConnection.js index 37fae402..6e8be4c4 100644 --- a/packages/millicast-sdk/src/PeerConnection.js +++ b/packages/millicast-sdk/src/PeerConnection.js @@ -4,7 +4,7 @@ import PeerConnectionStats, { peerConnectionStatsEvents } from './PeerConnection import SdpParser from './utils/SdpParser' import UserAgent from './utils/UserAgent' import Logger from './Logger' -import { VideoCodec, AudioCodec } from './Signaling' +import { VideoCodec, AudioCodec } from './utils/Codecs' import mozGetCapabilities from './utils/FirefoxCapabilities' const logger = Logger.get('PeerConnection') diff --git a/packages/millicast-sdk/src/Publish.js b/packages/millicast-sdk/src/Publish.js index bb1ad384..ca00ef7b 100644 --- a/packages/millicast-sdk/src/Publish.js +++ b/packages/millicast-sdk/src/Publish.js @@ -3,7 +3,8 @@ import reemit from 're-emitter' import { atob } from 'Base64' import Logger from './Logger' import BaseWebRTC from './utils/BaseWebRTC' -import Signaling, { signalingEvents, VideoCodec } from './Signaling' +import Signaling, { signalingEvents } from './Signaling' +import { VideoCodec } from './utils/Codecs' import PeerConnection, { webRTCEvents } from './PeerConnection' import FetchError from './utils/FetchError' diff --git a/packages/millicast-sdk/src/Signaling.js b/packages/millicast-sdk/src/Signaling.js index 1abc3b70..e380f554 100644 --- a/packages/millicast-sdk/src/Signaling.js +++ b/packages/millicast-sdk/src/Signaling.js @@ -2,6 +2,7 @@ import EventEmitter from 'events' import TransactionManager from 'transaction-manager' import Logger from './Logger' import SdpParser from './utils/SdpParser' +import { VideoCodec } from './utils/Codecs' import PeerConnection from './PeerConnection' const logger = Logger.get('Signaling') @@ -13,36 +14,6 @@ export const signalingEvents = { broadcastEvent: 'broadcastEvent' } -/** - * Enum of Millicast supported Video codecs - * @readonly - * @enum {String} - * @property {String} VP8 - * @property {String} VP9 - * @property {String} H264 - * @property {String} AV1 - * @property {String} H265 - Only available in Safari - */ -export const VideoCodec = { - VP8: 'vp8', - VP9: 'vp9', - H264: 'h264', - AV1: 'av1', - H265: 'h265' -} - -/** - * Enum of Millicast supported Audio codecs - * @readonly - * @enum {String} - * @property {String} OPUS - * @property {String} MULTIOPUS - */ -export const AudioCodec = { - OPUS: 'opus', - MULTIOPUS: 'multiopus' -} - /** * @typedef {Object} LayerInfo * @property {String} encodingId - rid value of the simulcast encoding of the track (default: automatic selection) diff --git a/packages/millicast-sdk/src/utils/Codecs.js b/packages/millicast-sdk/src/utils/Codecs.js new file mode 100644 index 00000000..51e75a02 --- /dev/null +++ b/packages/millicast-sdk/src/utils/Codecs.js @@ -0,0 +1,29 @@ +/** + * Enum of Millicast supported Video codecs + * @readonly + * @enum {String} + * @property {String} VP8 + * @property {String} VP9 + * @property {String} H264 + * @property {String} AV1 + * @property {String} H265 - Only available in Safari + */ +export const VideoCodec = { + VP8: 'vp8', + VP9: 'vp9', + H264: 'h264', + AV1: 'av1', + H265: 'h265' +} + +/** + * Enum of Millicast supported Audio codecs + * @readonly + * @enum {String} + * @property {String} OPUS + * @property {String} MULTIOPUS + */ +export const AudioCodec = { + OPUS: 'opus', + MULTIOPUS: 'multiopus' +} diff --git a/packages/millicast-sdk/tests/features/step-definitions/Publish.steps.js b/packages/millicast-sdk/tests/features/step-definitions/Publish.steps.js index 43600c48..4fcc9d49 100644 --- a/packages/millicast-sdk/tests/features/step-definitions/Publish.steps.js +++ b/packages/millicast-sdk/tests/features/step-definitions/Publish.steps.js @@ -1,7 +1,8 @@ import { loadFeature, defineFeature } from 'jest-cucumber' import Publish from '../../../src/Publish' import PeerConnection from '../../../src/PeerConnection' -import Signaling, { VideoCodec } from '../../../src/Signaling' +import Signaling from '../../../src/Signaling' +import { VideoCodec } from '../../../src/utils/Codecs' import './__mocks__/MockRTCPeerConnection' import './__mocks__/MockMediaStream' import './__mocks__/MockBrowser' From e4ddd323179cb9f466626c32b3e9e8979a7a1d6e Mon Sep 17 00:00:00 2001 From: Vincent Song Date: Sat, 13 Jan 2024 04:24:09 +1100 Subject: [PATCH 10/16] added default values for connect options and renamed to getYourPublisherConnection in example code (#304) --- packages/millicast-sdk/src/Publish.js | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/millicast-sdk/src/Publish.js b/packages/millicast-sdk/src/Publish.js index ca00ef7b..344f933e 100644 --- a/packages/millicast-sdk/src/Publish.js +++ b/packages/millicast-sdk/src/Publish.js @@ -48,23 +48,23 @@ export default class Publish extends BaseWebRTC { * In the example, `getYourMediaStream` and `getYourPublisherConnection` is your own implementation. * @param {Object} options - General broadcast options. * @param {String} options.sourceId - Source unique id. Only avialable if stream is multisource. - * @param {Boolean} options.stereo - True to modify SDP for support stereo. Otherwise False. - * @param {Boolean} options.dtx - True to modify SDP for supporting dtx in opus. Otherwise False. - * @param {Boolean} options.absCaptureTime - True to modify SDP for supporting absolute capture time header extension. Otherwise False. - * @param {Boolean} options.dependencyDescriptor - True to modify SDP for supporting aom dependency descriptor header extension. Otherwise False. + * @param {Boolean} [options.stereo = false] - True to modify SDP for support stereo. Otherwise False. + * @param {Boolean} [options.dtx = false] - True to modify SDP for supporting dtx in opus. Otherwise False. + * @param {Boolean} [options.absCaptureTime = false] - True to modify SDP for supporting absolute capture time header extension. Otherwise False. + * @param {Boolean} [options.dependencyDescriptor = false] - True to modify SDP for supporting aom dependency descriptor header extension. Otherwise False. * @param {MediaStream|Array} options.mediaStream - MediaStream to offer in a stream. This object must have * 1 audio track and 1 video track, or at least one of them. Alternative you can provide both tracks in an array. * @param {Number} [options.bandwidth = 0] - Broadcast bandwidth. 0 for unlimited. * @param {Boolean} [options.disableVideo = false] - Disable the opportunity to send video stream. * @param {Boolean} [options.disableAudio = false] - Disable the opportunity to send audio stream. - * @param {VideoCodec} options.codec - Codec for publish stream. - * @param {Boolean} options.simulcast - Enable simulcast. **Only available in Google Chrome and with H.264 or VP8 video codecs.** - * @param {String} options.scalabilityMode - Selected scalability mode. You can get the available capabilities using PeerConnection.getCapabilities method. + * @param {VideoCodec} [options.codec = 'h264'] - Codec for publish stream. + * @param {Boolean} [options.simulcast = false] - Enable simulcast. **Only available in Google Chrome and with H.264 or VP8 video codecs.** + * @param {String} [options.scalabilityMode = null] - Selected scalability mode. You can get the available capabilities using PeerConnection.getCapabilities method. * **Only available in Google Chrome.** - * @param {RTCConfiguration} options.peerConfig - Options to configure the new RTCPeerConnection. - * @param {Boolean} [options.record] - Enable stream recording. If record is not provided, use default Token configuration. **Only available in Tokens with recording enabled.** - * @param {Array} [options.events] - Specify which events will be delivered by the server (any of "active" | "inactive" | "viewercount").* - * @param {Number} [options.priority] - When multiple ingest streams are provided by the customer, add the ability to specify a priority between all ingest streams. Decimal integer between the range [-2^31, +2^31 - 1]. For more information, visit [our documentation](https://docs.dolby.io/streaming-apis/docs/backup-publishing). + * @param {RTCConfiguration} [options.peerConfig = null] - Options to configure the new RTCPeerConnection. + * @param {Boolean} [options.record = false ] - Enable stream recording. If record is not provided, use default Token configuration. **Only available in Tokens with recording enabled.** + * @param {Array} [options.events = null] - Specify which events will be delivered by the server (any of "active" | "inactive" | "viewercount").* + * @param {Number} [options.priority = null] - When multiple ingest streams are provided by the customer, add the ability to specify a priority between all ingest streams. Decimal integer between the range [-2^31, +2^31 - 1]. For more information, visit [our documentation](https://docs.dolby.io/streaming-apis/docs/backup-publishing). * @returns {Promise} Promise object which resolves when the broadcast started successfully. * @fires PeerConnection#connectionStateChange * @fires Signaling#broadcastEvent @@ -73,7 +73,7 @@ export default class Publish extends BaseWebRTC { * import Publish from '@millicast/sdk' * * //Define callback for generate new token - * const tokenGenerator = () => getYourPublisherInformation(token, streamName) + * const tokenGenerator = () => getYourPublisherConnection(token, streamName) * * //Create a new instance * const streamName = "My Millicast Stream Name" From d1f3b50a468d9a6dcf7dfbe5f259a1ef8f8604b6 Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Mon, 15 Jan 2024 14:50:00 +0100 Subject: [PATCH 11/16] Documentation/remove docs translations (#305) * Remove docs-translations directory Is not needed * Ignore docs-translations --- .gitignore | 1 + .../docs-translations/en/Director.json | 31 --------- .../docs-translations/en/Logger.json | 29 -------- .../docs-translations/en/PeerConnection.json | 66 ------------------- .../en/PeerConnectionStats.json | 50 -------------- .../docs-translations/en/Publish.json | 31 --------- .../docs-translations/en/Signaling.json | 53 --------------- .../docs-translations/en/View.json | 48 -------------- .../en/utils/BaseWebRTC.json | 33 ---------- .../docs-translations/en/utils/Codecs.json | 5 -- .../docs-translations/en/utils/SdpParser.json | 41 ------------ 11 files changed, 1 insertion(+), 387 deletions(-) delete mode 100644 packages/millicast-sdk/docs-translations/en/Director.json delete mode 100644 packages/millicast-sdk/docs-translations/en/Logger.json delete mode 100644 packages/millicast-sdk/docs-translations/en/PeerConnection.json delete mode 100644 packages/millicast-sdk/docs-translations/en/PeerConnectionStats.json delete mode 100644 packages/millicast-sdk/docs-translations/en/Publish.json delete mode 100644 packages/millicast-sdk/docs-translations/en/Signaling.json delete mode 100644 packages/millicast-sdk/docs-translations/en/View.json delete mode 100644 packages/millicast-sdk/docs-translations/en/utils/BaseWebRTC.json delete mode 100644 packages/millicast-sdk/docs-translations/en/utils/Codecs.json delete mode 100644 packages/millicast-sdk/docs-translations/en/utils/SdpParser.json diff --git a/.gitignore b/.gitignore index ce14c323..638451e7 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ node_modules coverage dist docs +docs-translations .env test-environment.js **/.DS_Store \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/Director.json b/packages/millicast-sdk/docs-translations/en/Director.json deleted file mode 100644 index 9c21d940..00000000 --- a/packages/millicast-sdk/docs-translations/en/Director.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "

WebSocket available URLs.

": "

WebSocket available URLs.

", - "

Access token for signaling initialization.

": "

Access token for signaling initialization.

", - "

Millicast Publishing Token.

": "

Millicast Publishing Token.

", - "

Millicast Stream Name.

": "

Millicast Stream Name.

", - "

Millicast Stream Type.

": "

Millicast Stream Type.

", - "

Millicast publisher Stream Name.

": "

Millicast publisher Stream Name.

", - "

Millicast Account ID.

": "

Millicast Account ID.

", - "

Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param.

": "

Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param.

", - "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasons all calls will return a JWT token for authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

": "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasons all calls will return a JWT token for authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

", - "

Set Director API endpoint where requests will be sent.

": "

Set Director API endpoint where requests will be sent.

", - "

New Director API endpoint

": "

New Director API endpoint

", - "

Get current Director API endpoint where requests will be sent.

\n

By default, https://director.millicast.com is the current API endpoint.

": "

Get current Director API endpoint where requests will be sent.

\n

By default, https://director.millicast.com is the current API endpoint.

", - "

API base url

": "

API base url

", - "

Set Websocket Live domain from Director API response.\nIf it is set to empty, it will not parse the response.

": "

Set Websocket Live domain from Director API response.\nIf it is set to empty, it will not parse the response.

", - "

New Websocket Live domain

": "

New Websocket Live domain

", - "

Get current Websocket Live domain.

\n

By default is empty which corresponds to not parse the Director response.

": "

Get current Websocket Live domain.

\n

By default is empty which corresponds to not parse the Director response.

", - "

Websocket Live domain

": "

Websocket Live domain

", - "

Get publisher connection data.

": "

Get publisher connection data.

", - "

Millicast options or Deprecated Millicast Publishing Token.

": "

Millicast options or Deprecated Millicast Publishing Token.

", - "

Deprecated, use options parameter instead Millicast Stream Name.

": "

Deprecated, use options parameter instead Millicast Stream Name.

", - "

Deprecated, use options parameter instead Millicast Stream Type.

": "

Deprecated, use options parameter instead Millicast Stream Type.

", - "

Promise object which represents the result of getting the publishing connection path.

": "

Promise object which represents the result of getting the publishing connection path.

", - "

Get subscriber connection data.

": "

Get subscriber connection data.

", - "

Millicast options or Deprecated Millicast publisher Stream Name.

": "

Millicast options or Deprecated Millicast publisher Stream Name.

", - "

Deprecated, use options parameter instead Millicast Account ID.

": "

Deprecated, use options parameter instead Millicast Account ID.

", - "

Deprecated, use options parameter instead Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param.

": "

Deprecated, use options parameter instead Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param.

", - "

Promise object which represents the result of getting the subscribe connection data.

": "

Promise object which represents the result of getting the subscribe connection data.

", - "

Object which represents a list of Ice servers.

": "

Object which represents a list of Ice servers.

", - "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasons all calls will return a JWT token for authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

": "

Simplify API calls to find the best server and region to publish and subscribe to.\nFor security reasons all calls will return a JWT token for authentication including the required\nsocket path to connect with.

\n

You will need your own Publishing token and Stream name, please refer to Managing Your Tokens.

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/Logger.json b/packages/millicast-sdk/docs-translations/en/Logger.json deleted file mode 100644 index 1dd044ff..00000000 --- a/packages/millicast-sdk/docs-translations/en/Logger.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "

The numerical representation of the level.

": "

The numerical representation of the level.

", - "

Human readable name of the log level.

": "

Human readable name of the log level.

", - "

Manages all log messages from SDK modules, you can use this logger to add your custom\nmessages and set your custom log handlers to forward all messages to your own monitoring\nsystem.

\n

By default all loggers are set in level OFF (Logger.OFF), and there are available\nthe following log levels.

\n

This module is based on js-logger you can refer\nto its documentation or following our examples.

": "

Manages all log messages from SDK modules, you can use this logger to add your custom\nmessages and set your custom log handlers to forward all messages to your own monitoring\nsystem.

\n

By default all loggers are set in level OFF (Logger.OFF), and there are available\nthe following log levels.

\n

This module is based on js-logger you can refer\nto its documentation or following our examples.

", - "

Logger.TRACE

": "

Logger.TRACE

", - "

Logger.DEBUG

": "

Logger.DEBUG

", - "

Logger.INFO

": "

Logger.INFO

", - "

Logger.TIME

": "

Logger.TIME

", - "

Logger.WARN

": "

Logger.WARN

", - "

Logger.ERROR

": "

Logger.ERROR

", - "

Logger.OFF

": "

Logger.OFF

", - "

Get all logs generated during a session.\nAll logs are recollected besides the log level selected by the user.

": "

Get all logs generated during a session.\nAll logs are recollected besides the log level selected by the user.

", - "

All logs recollected from level TRACE.

": "

All logs recollected from level TRACE.

", - "

Get the maximum count of logs preserved during a session.

": "

Get the maximum count of logs preserved during a session.

", - "

Set the maximum count of logs to preserve during a session.\nBy default it is set to 10000.

": "

Set the maximum count of logs to preserve during a session.\nBy default it is set to 10000.

", - "

Max size of log history. Set 0 to disable history or -1 to unlimited log history.

": "

Max size of log history. Set 0 to disable history or -1 to unlimited log history.

", - "

Set log level to all loggers.

": "

Set log level to all loggers.

", - "

New log level to be set.

": "

New log level to be set.

", - "

Get global current logger level.\nAlso you can get the level of any particular logger.

": "

Get global current logger level.\nAlso you can get the level of any particular logger.

", - "

Gets or creates a named logger. Named loggers are used to group log messages\nthat refers to a common context.

": "

Gets or creates a named logger. Named loggers are used to group log messages\nthat refers to a common context.

", - "

Logger object with same properties and functions as Logger except\nhistory and handlers related functions.

": "

Logger object with same properties and functions as Logger except\nhistory and handlers related functions.

", - "

Callback which handles log messages.

": "

Callback which handles log messages.

", - "

Arguments object with the supplied log messages.

": "

Arguments object with the supplied log messages.

", - "

The currrent log level.

": "

The currrent log level.

", - "

The optional current logger name.

": "

The optional current logger name.

", - "

Add your custom log handler to Logger at the specified level.

": "

Add your custom log handler to Logger at the specified level.

", - "

Your custom log handler function.

": "

Your custom log handler function.

", - "

Log level to filter messages.

": "

Log level to filter messages.

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/PeerConnection.json b/packages/millicast-sdk/docs-translations/en/PeerConnection.json deleted file mode 100644 index 3bd771cb..00000000 --- a/packages/millicast-sdk/docs-translations/en/PeerConnection.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "

Manages WebRTC connection and SDP information between peers.

": "

Manages WebRTC connection and SDP information between peers.

", - "

Set TURN server location.

": "

Set TURN server location.

", - "

New TURN location

": "

New TURN location

", - "

Get current TURN location.

\n

By default, https://turn.millicast.com/webrtc/_turn is the current TURN location.

": "

Get current TURN location.

\n

By default, https://turn.millicast.com/webrtc/_turn is the current TURN location.

", - "

TURN url

": "

TURN url

", - "

Instance new RTCPeerConnection.

": "

Instance new RTCPeerConnection.

", - "

Peer configuration.

": "

Peer configuration.

", - "

Get current RTC peer connection.

": "

Get current RTC peer connection.

", - "

Object which represents the RTCPeerConnection.

": "

Object which represents the RTCPeerConnection.

", - "

Close RTC peer connection.

": "

Close RTC peer connection.

", - "

Get default RTC configuration with ICE servers from Milicast signaling server and merge it with the user configuration provided. User configuration has priority over defaults.

": "

Get default RTC configuration with ICE servers from Milicast signaling server and merge it with the user configuration provided. User configuration has priority over defaults.

", - "

Options to configure the new RTCPeerConnection.

": "

Options to configure the new RTCPeerConnection.

", - "

Promise object which represents the RTCConfiguration.

": "

Promise object which represents the RTCConfiguration.

", - "

Get Ice servers from a Millicast signaling server.

": "

Get Ice servers from a Millicast signaling server.

", - "

Deprecated, use .setTurnServerLocation() method instead URL of signaling server where Ice servers will be obtained.

": "

Deprecated, use .setTurnServerLocation() method instead URL of signaling server where Ice servers will be obtained.

", - "

Promise object which represents a list of Ice servers.

": "

Promise object which represents a list of Ice servers.

", - "

Set SDP information to remote peer.

": "

Set SDP information to remote peer.

", - "

New SDP to be set in the remote peer.

": "

New SDP to be set in the remote peer.

", - "

Promise object which resolves when SDP information was successfully set.

": "

Promise object which resolves when SDP information was successfully set.

", - "

Get the SDP modified depending the options. Optionally set the SDP information to local peer.

": "

Get the SDP modified depending the options. Optionally set the SDP information to local peer.

", - "

True to modify SDP for support stereo. Otherwise False.

": "

True to modify SDP for support stereo. Otherwise False.

", - "

True to modify SDP for supporting dtx in opus. Otherwise False.*

": "

True to modify SDP for supporting dtx in opus. Otherwise False.*

", - "

MediaStream to offer in a stream. This object must have\n1 audio track and 1 video track, or at least one of them. Alternative you can provide both tracks in an array.

": "

MediaStream to offer in a stream. This object must have\n1 audio track and 1 video track, or at least one of them. Alternative you can provide both tracks in an array.

", - "

Selected codec for support simulcast.

": "

Selected codec for support simulcast.

", - "

True to modify SDP for support simulcast. Only available in Google Chrome and with H.264 or VP8 video codecs.

": "

True to modify SDP for support simulcast. Only available in Google Chrome and with H.264 or VP8 video codecs.

", - "

Selected scalability mode. You can get the available capabilities using PeerConnection.getCapabilities method.\nOnly available in Google Chrome.

": "

Selected scalability mode. You can get the available capabilities using PeerConnection.getCapabilities method.\nOnly available in Google Chrome.

", - "

True to not support audio.

": "

True to not support audio.

", - "

True to not support video.

": "

True to not support video.

", - "

True to set the SDP to local peer.

": "

True to set the SDP to local peer.

", - "

Promise object which represents the SDP information of the created offer.

": "

Promise object which represents the SDP information of the created offer.

", - "

Add remote receving track.

": "

Add remote receving track.

", - "

Media kind ('audio' | 'video').

": "

Media kind ('audio' | 'video').

", - "

streams - Streams the stream will belong to.

": "

streams - Streams the stream will belong to.

", - "

Update remote SDP information to restrict bandwidth.

": "

Update remote SDP information to restrict bandwidth.

", - "

Remote SDP.

": "

Remote SDP.

", - "

New bitrate value in kbps or 0 unlimited bitrate.

": "

New bitrate value in kbps or 0 unlimited bitrate.

", - "

Updated SDP information with new bandwidth restriction.

": "

Updated SDP information with new bandwidth restriction.

", - "

Set SDP information to remote peer with bandwidth restriction.

": "

Set SDP information to remote peer with bandwidth restriction.

", - "

Promise object which resolves when bitrate was successfully updated.

": "

Promise object which resolves when bitrate was successfully updated.

", - "

Get peer connection state.

": "

Get peer connection state.

", - "

Promise object which represents the peer connection state.

": "

Promise object which represents the peer connection state.

", - "

Replace current audio or video track that is being broadcasted.

": "

Replace current audio or video track that is being broadcasted.

", - "

New audio or video track to replace the current one.

": "

New audio or video track to replace the current one.

", - "

Audio or video codec name.

": "

Audio or video codec name.

", - "

Audio or video codec mime type.

": "

Audio or video codec mime type.

", - "

In case of SVC support, a list of scalability modes supported.

": "

In case of SVC support, a list of scalability modes supported.

", - "

Only for audio, the number of audio channels supported.

": "

Only for audio, the number of audio channels supported.

", - "

An array specifying the URI of the header extension, as described in RFC 5285.

": "

An array specifying the URI of the header extension, as described in RFC 5285.

", - "

Gets user's browser media capabilities compared with Millicast Media Server support.

": "

Gets user's browser media capabilities compared with Millicast Media Server support.

", - "

Type of media for which you wish to get sender capabilities.

": "

Type of media for which you wish to get sender capabilities.

", - "

Object with all capabilities supported by user's browser and Millicast Media Server.

": "

Object with all capabilities supported by user's browser and Millicast Media Server.

", - "

Get sender tracks

": "

Get sender tracks

", - "

An array with all tracks in sender peer.

": "

An array with all tracks in sender peer.

", - "

Initialize the statistics monitoring of the RTCPeerConnection.

\n

It will be emitted every second.

": "

Initialize the statistics monitoring of the RTCPeerConnection.

\n

It will be emitted every second.

", - "

Stops the monitoring of RTCPeerConnection statistics.

": "

Stops the monitoring of RTCPeerConnection statistics.

", - "

Emits peer events.

": "

Emits peer events.

", - "

PeerConnection instance.

": "

PeerConnection instance.

", - "

Peer instance.

": "

Peer instance.

", - "

New track event.

": "

New track event.

", - "

Peer connection state change. Could be new, connecting, connected, disconnected, failed or closed.

": "

Peer connection state change. Could be new, connecting, connected, disconnected, failed or closed.

", - "

True to modify SDP for supporting absolute capture time header extension. Otherwise False.

": "

True to modify SDP for supporting absolute capture time header extension. Otherwise False.

", - "

True to modify SDP for supporting aom dependency descriptor header extension. Otherwise False.

": "

True to modify SDP for supporting aom dependency descriptor header extension. Otherwise False.

", - "

Streams the track will belong to.

": "

Streams the track will belong to.

", - "

Promise that will be resolved when the RTCRtpTransceiver is assigned an mid value.

": "

Promise that will be resolved when the RTCRtpTransceiver is assigned an mid value.

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/PeerConnectionStats.json b/packages/millicast-sdk/docs-translations/en/PeerConnectionStats.json deleted file mode 100644 index 690c7c51..00000000 --- a/packages/millicast-sdk/docs-translations/en/PeerConnectionStats.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "

All RTCPeerConnection stats without parsing. Reference {@link https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport}.

": "

All RTCPeerConnection stats without parsing. Reference {@link https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport}.

", - "

Parsed audio information.

": "

Parsed audio information.

", - "

Parsed video information.

": "

Parsed video information.

", - "

The available outbound capacity of the network connection. The higher the value, the more bandwidth you can assume is available for outgoing data. The value is reported in bits per second.

\n

This value comes from the nominated candidate-pair.

": "

The available outbound capacity of the network connection. The higher the value, the more bandwidth you can assume is available for outgoing data. The value is reported in bits per second.

\n

This value comes from the nominated candidate-pair.

", - "

Total round trip time is the total time in seconds that has elapsed between sending STUN requests and receiving the responses.

\n

This value comes from the nominated candidate-pair.

": "

Total round trip time is the total time in seconds that has elapsed between sending STUN requests and receiving the responses.

\n

This value comes from the nominated candidate-pair.

", - "

Current round trip time indicate the number of seconds it takes for data to be sent by this peer to the remote peer and back over the connection described by this pair of ICE candidates.

\n

This value comes from the nominated candidate-pair.

": "

Current round trip time indicate the number of seconds it takes for data to be sent by this peer to the remote peer and back over the connection described by this pair of ICE candidates.

\n

This value comes from the nominated candidate-pair.

", - "

Local candidate type from the nominated candidate-pair which indicates the type of ICE candidate the object represents.

": "

Local candidate type from the nominated candidate-pair which indicates the type of ICE candidate the object represents.

", - "

Parsed information of each inbound-rtp.

": "

Parsed information of each inbound-rtp.

", - "

inbound-rtp Id.

": "

inbound-rtp Id.

", - "

Current Jitter measured in seconds.

": "

Current Jitter measured in seconds.

", - "

Mime type if related report had codec report associated.

": "

Mime type if related report had codec report associated.

", - "

Current framerate if it's video report.

": "

Current framerate if it's video report.

", - "

Current frame height if it's video report.

": "

Current frame height if it's video report.

", - "

Current frame width if it's video report.

": "

Current frame width if it's video report.

", - "

Timestamp of report.

": "

Timestamp of report.

", - "

Total bytes received is an integer value which indicates the total number of bytes received so far from this synchronization source.

": "

Total bytes received is an integer value which indicates the total number of bytes received so far from this synchronization source.

", - "

Total packets received indicates the total number of packets of any kind that have been received on the connection described by the pair of candidates.

": "

Total packets received indicates the total number of packets of any kind that have been received on the connection described by the pair of candidates.

", - "

Total packets lost.

": "

Total packets lost.

", - "

Total packet lost ratio per second.

": "

Total packet lost ratio per second.

", - "

Total packet lost delta per second.

": "

Total packet lost delta per second.

", - "

Current bitrate in bits per second.

": "

Current bitrate in bits per second.

", - "

Parsed information of each outbound-rtp.

": "

Parsed information of each outbound-rtp.

", - "

outbound-rtp Id.

": "

outbound-rtp Id.

", - "

If it's video report, indicate the reason why the media quality in the stream is currently being reduced by the codec during encoding, or none if no quality reduction is being performed.

": "

If it's video report, indicate the reason why the media quality in the stream is currently being reduced by the codec during encoding, or none if no quality reduction is being performed.

", - "

Total bytes sent indicates the total number of payload bytes that hve been sent so far on the connection described by the candidate pair.

": "

Total bytes sent indicates the total number of payload bytes that hve been sent so far on the connection described by the candidate pair.

", - "

Initialize the statistics monitoring of the RTCPeerConnection.

": "

Initialize the statistics monitoring of the RTCPeerConnection.

", - "

Peer connection incoming stats.

": "

Peer connection incoming stats.

", - "

Parse incoming RTCPeerConnection stats.

": "

Parse incoming RTCPeerConnection stats.

", - "

RTCPeerConnection stats.

": "

RTCPeerConnection stats.

", - "

RTCPeerConnection stats parsed.

": "

RTCPeerConnection stats parsed.

", - "

Stops the monitoring of RTCPeerConnection statistics.

": "

Stops the monitoring of RTCPeerConnection statistics.

", - "

Parse and add incoming outbound-rtp report from RTCPeerConnection to final report.

": "

Parse and add incoming outbound-rtp report from RTCPeerConnection to final report.

", - "

JSON object which represents a report from RTCPeerConnection stats.

": "

JSON object which represents a report from RTCPeerConnection stats.

", - "

Previous stats parsed.

": "

Previous stats parsed.

", - "

Current stats object being parsed.

": "

Current stats object being parsed.

", - "

Parse and add incoming inbound-rtp report from RTCPeerConnection to final report.

": "

Parse and add incoming inbound-rtp report from RTCPeerConnection to final report.

", - "

Parse and add incoming candidate-pair report from RTCPeerConnection to final report.\nAlso adds associated local-candidate data to report.

": "

Parse and add incoming candidate-pair report from RTCPeerConnection to final report.\nAlso adds associated local-candidate data to report.

", - "

Get media type.

": "

Get media type.

", - "

Media type.

": "

Media type.

", - "

Get codec information from stats.

": "

Get codec information from stats.

", - "

Codec report ID.

": "

Codec report ID.

", - "

Object containing codec information.

": "

Object containing codec information.

", - "

Get common information for RTP reports.

": "

Get common information for RTP reports.

", - "

Object containing common information.

": "

Object containing common information.

", - "

Calculate the ratio packets lost

": "

Calculate the ratio packets lost

", - "

JSON object which represents a parsed report.

": "

JSON object which represents a parsed report.

", - "

Packets lost ratio

": "

Packets lost ratio

", - "

Calculate the delta packets lost

": "

Calculate the delta packets lost

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/Publish.json b/packages/millicast-sdk/docs-translations/en/Publish.json deleted file mode 100644 index a166230b..00000000 --- a/packages/millicast-sdk/docs-translations/en/Publish.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to broadcast a MediaStream.

\n

Before you can broadcast, you will need:

\n
    \n
  • \n

    MediaStream which has at most one audio track and at most one video track. This will be used for stream the contained tracks.

    \n
  • \n
  • \n

    A connection path that you can get from {@link Director} module or from your own implementation based on Get a Connection Path.

    \n
  • \n
": "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to broadcast a MediaStream.

\n

Before you can broadcast, you will need:

\n
    \n
  • \n

    MediaStream which has at most one audio track and at most one video track. This will be used for stream the contained tracks.

    \n
  • \n
  • \n

    A connection path that you can get from {@link Director} module or from your own implementation based on Get a Connection Path.

    \n
  • \n
", - "

Millicast existing stream name.

": "

Millicast existing stream name.

", - "

Callback function executed when a new token is needed.

": "

Callback function executed when a new token is needed.

", - "

Enable auto reconnect to stream.

": "

Enable auto reconnect to stream.

", - "

Starts broadcast to an existing stream name.

\n

In the example, getYourMediaStream and getYourPublisherConnection is your own implementation.

": "

Starts broadcast to an existing stream name.

\n

In the example, getYourMediaStream and getYourPublisherConnection is your own implementation.

", - "

General broadcast options.

": "

General broadcast options.

", - "

Source unique id. Only avialable if stream is multisource.

": "

Source unique id. Only avialable if stream is multisource.

", - "

True to modify SDP for support stereo. Otherwise False.

": "

True to modify SDP for support stereo. Otherwise False.

", - "

True to modify SDP for supporting dtx in opus. Otherwise False.

": "

True to modify SDP for supporting dtx in opus. Otherwise False.

", - "

True to modify SDP for supporting absolute capture time header extension. Otherwise False.

": "

True to modify SDP for supporting absolute capture time header extension. Otherwise False.

", - "

MediaStream to offer in a stream. This object must have\n1 audio track and 1 video track, or at least one of them. Alternative you can provide both tracks in an array.

": "

MediaStream to offer in a stream. This object must have\n1 audio track and 1 video track, or at least one of them. Alternative you can provide both tracks in an array.

", - "

Broadcast bandwidth. 0 for unlimited.

": "

Broadcast bandwidth. 0 for unlimited.

", - "

Disable the opportunity to send video stream.

": "

Disable the opportunity to send video stream.

", - "

Disable the opportunity to send audio stream.

": "

Disable the opportunity to send audio stream.

", - "

Codec for publish stream.

": "

Codec for publish stream.

", - "

Enable simulcast. Only available in Google Chrome and with H.264 or VP8 video codecs.

": "

Enable simulcast. Only available in Google Chrome and with H.264 or VP8 video codecs.

", - "

Selected scalability mode. You can get the available capabilities using PeerConnection.getCapabilities method.\nOnly available in Google Chrome.

": "

Selected scalability mode. You can get the available capabilities using PeerConnection.getCapabilities method.\nOnly available in Google Chrome.

", - "

Options to configure the new RTCPeerConnection.

": "

Options to configure the new RTCPeerConnection.

", - "

Enable stream recording. If record is not provided, use default Token configuration. Only available in Tokens with recording enabled.

": "

Enable stream recording. If record is not provided, use default Token configuration. Only available in Tokens with recording enabled.

", - "

Promise object which resolves when the broadcast started successfully.

": "

Promise object which resolves when the broadcast started successfully.

", - "

True to modify SDP for supporting aom dependency descriptor header extension. Otherwise False.

": "

True to modify SDP for supporting aom dependency descriptor header extension. Otherwise False.

", - "

Specify which events will be delivered by the server (any of "active" | "inactive").*

": "

Specify which events will be delivered by the server (any of "active" | "inactive").*

", - "

Initialize recording in an active stream.

": "

Initialize recording in an active stream.

", - "

Finalize recording in an active stream.

": "

Finalize recording in an active stream.

", - "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to broadcast a MediaStream.

\n

Before you can broadcast, you will need:

\n
    \n
  • \n

    MediaStream which has at most one audio track and at most one video track. This will be used for stream the contained tracks.

    \n
  • \n
  • \n

    A connection path that you can get from {@link Director} module or from your own implementation.

    \n
  • \n
": "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to broadcast a MediaStream.

\n

Before you can broadcast, you will need:

\n
    \n
  • \n

    MediaStream which has at most one audio track and at most one video track. This will be used for stream the contained tracks.

    \n
  • \n
  • \n

    A connection path that you can get from {@link Director} module or from your own implementation.

    \n
  • \n
", - "

Specify which events will be delivered by the server (any of "active" | "inactive" | "viewercount").*

": "

Specify which events will be delivered by the server (any of "active" | "inactive" | "viewercount").*

", - "

Initialize recording in an active stream and change the current record option.

": "

Initialize recording in an active stream and change the current record option.

", - "

Finalize recording in an active stream and change the current record option.

": "

Finalize recording in an active stream and change the current record option.

", - "

When multiple ingest streams are provided by the customer, add the ability to specify a priority between all ingest streams. Decimal integer between the range [-2^31, +2^31 - 1]. For more information, visit our documentation.

": "

When multiple ingest streams are provided by the customer, add the ability to specify a priority between all ingest streams. Decimal integer between the range [-2^31, +2^31 - 1]. For more information, visit our documentation.

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/Signaling.json b/packages/millicast-sdk/docs-translations/en/Signaling.json deleted file mode 100644 index f72c36da..00000000 --- a/packages/millicast-sdk/docs-translations/en/Signaling.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "

Enum of Millicast supported Video codecs

": "

Enum of Millicast supported Video codecs

", - "

Enum of Millicast supported Audio codecs

": "

Enum of Millicast supported Audio codecs

", - "

Enable VAD multiplexing for secondary sources.

": "

Enable VAD multiplexing for secondary sources.

", - "

Id of the main source that will be received by the default MediaStream.

": "

Id of the main source that will be received by the default MediaStream.

", - "

Do not receive media from the these source ids.

": "

Do not receive media from the these source ids.

", - "

Codec for publish stream.

": "

Codec for publish stream.

", - "

Enable stream recording. If record is not provided, use default Token configuration. Only available in Tokens with recording enabled.

": "

Enable stream recording. If record is not provided, use default Token configuration. Only available in Tokens with recording enabled.

", - "

Source unique id. Only available in Tokens with multisource enabled.*

": "

Source unique id. Only available in Tokens with multisource enabled.*

", - "

Starts WebSocket connection and manages the messages between peers.

": "

Starts WebSocket connection and manages the messages between peers.

", - "

General signaling options.

": "

General signaling options.

", - "

Millicast stream name to get subscribed.

": "

Millicast stream name to get subscribed.

", - "

WebSocket URL to signal Millicast server and establish a WebRTC connection.

": "

WebSocket URL to signal Millicast server and establish a WebRTC connection.

", - "

Starts a WebSocket connection with signaling server.

": "

Starts a WebSocket connection with signaling server.

", - "

Promise object which represents the [WebSocket object]{@link https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API} of the establshed connection.

": "

Promise object which represents the [WebSocket object]{@link https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API} of the establshed connection.

", - "

WebSocket connection was successfully established with signaling server.

": "

WebSocket connection was successfully established with signaling server.

", - "

WebSocket object which represents active connection.

": "

WebSocket object which represents active connection.

", - "

TransactionManager object that simplify WebSocket commands.

": "

TransactionManager object that simplify WebSocket commands.

", - "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - Fires when the live stream has been disconnected and is no longer available.

\n

More information here: {@link https://dash.millicast.com/docs.html?pg=how-to-broadcast-in-js#broadcast-events-sect}

": "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - Fires when the live stream has been disconnected and is no longer available.

\n

More information here: {@link https://dash.millicast.com/docs.html?pg=how-to-broadcast-in-js#broadcast-events-sect}

", - "

In this case the type of this message is "event".

": "

In this case the type of this message is "event".

", - "

Event name.

": "

Event name.

", - "

Custom event data.

": "

Custom event data.

", - "

WebSocket connection failed with signaling server.\nReturns url of WebSocket

": "

WebSocket connection failed with signaling server.\nReturns url of WebSocket

", - "

WebSocket connection with signaling server was successfully closed.

": "

WebSocket connection with signaling server was successfully closed.

", - "

Close WebSocket connection with Millicast server.

": "

Close WebSocket connection with Millicast server.

", - "

Establish WebRTC connection with Millicast Server as Subscriber role.

": "

Establish WebRTC connection with Millicast Server as Subscriber role.

", - "

The SDP information created by your offer.

": "

The SDP information created by your offer.

", - "

Signaling Subscribe Options or Deprecated Enable VAD multiplexing for secondary sources.

": "

Signaling Subscribe Options or Deprecated Enable VAD multiplexing for secondary sources.

", - "

Deprecated, use options parameter instead Id of the main source that will be received by the default MediaStream.

": "

Deprecated, use options parameter instead Id of the main source that will be received by the default MediaStream.

", - "

Deprecated, use options parameter instead Do not receive media from the these source ids.

": "

Deprecated, use options parameter instead Do not receive media from the these source ids.

", - "

Promise object which represents the SDP command response.

": "

Promise object which represents the SDP command response.

", - "

Establish WebRTC connection with Millicast Server as Publisher role.

": "

Establish WebRTC connection with Millicast Server as Publisher role.

", - "

Signaling Publish Options or Deprecated Codec for publish stream (h264 default).

": "

Signaling Publish Options or Deprecated Codec for publish stream (h264 default).

", - "

Deprecated, use options parameter instead Enable stream recording. If record is not provided, use default Token configuration. Only available in Tokens with recording enabled.

": "

Deprecated, use options parameter instead Enable stream recording. If record is not provided, use default Token configuration. Only available in Tokens with recording enabled.

", - "

Deprecated, use options parameter instead Source unique id. Only available in Tokens with multisource enabled.*

": "

Deprecated, use options parameter instead Source unique id. Only available in Tokens with multisource enabled.*

", - "

Send command to the server.

": "

Send command to the server.

", - "

Command name.

": "

Command name.

", - "

Command parameters.

": "

Command parameters.

", - "

Promise object which represents the command response.

": "

Promise object which represents the command response.

", - "

rid value of the simulcast encoding of the track (default: automatic selection)

": "

rid value of the simulcast encoding of the track (default: automatic selection)

", - "

The spatial layer id to send to the outgoing stream (default: max layer available)

": "

The spatial layer id to send to the outgoing stream (default: max layer available)

", - "

The temporaral layer id to send to the outgoing stream (default: max layer available)

": "

The temporaral layer id to send to the outgoing stream (default: max layer available)

", - "

Max spatial layer id (default: unlimited)

": "

Max spatial layer id (default: unlimited)

", - "

Max temporal layer id (default: unlimited)

": "

Max temporal layer id (default: unlimited)

", - "

Override which events will be delivered by the server ("active" | "inactive" | "vad" | "layers").

": "

Override which events will be delivered by the server ("active" | "inactive" | "vad" | "layers").

", - "

Select the simulcast encoding layer and svc layers for the main video track, leave empty for automatic layer selection based on bandwidth estimation.

": "

Select the simulcast encoding layer and svc layers for the main video track, leave empty for automatic layer selection based on bandwidth estimation.

", - "

Override which events will be delivered by the server ("active" | "inactive").

": "

Override which events will be delivered by the server ("active" | "inactive").

", - "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - Fires when the live stream has been disconnected and is no longer available.

\n

Viewercount - Fires when the viewer count changes.

\n

More information here: {@link https://docs.dolby.io/streaming-apis/docs/web#broadcast-events}

": "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - Fires when the live stream has been disconnected and is no longer available.

\n

Viewercount - Fires when the viewer count changes.

\n

More information here: {@link https://docs.dolby.io/streaming-apis/docs/web#broadcast-events}

", - "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - This event is not currently used, but is reserved for future usage.

\n

Viewercount - Fires when the viewer count changes.

\n

More information here: {@link https://docs.dolby.io/streaming-apis/docs/web#broadcast-events}

": "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - This event is not currently used, but is reserved for future usage.

\n

Viewercount - Fires when the viewer count changes.

\n

More information here: {@link https://docs.dolby.io/streaming-apis/docs/web#broadcast-events}

", - "

Only available in Safari

": "

Only available in Safari

", - "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - Fires when the stream has stopped for a given reason

\n

Vad - Fires when using multiplexed tracks for audio.

\n

Layers - Fires when there is an update of the state of the layers in a stream (when broadcasting with simulcast).

\n

Migrate - Fires when the server is having problems, is shutting down or when viewers need to move for load balancing purposes.

\n

Viewercount - Fires when the viewer count changes.

\n

More information here: {@link https://docs.dolby.io/streaming-apis/docs/web#broadcast-events}

": "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - Fires when the stream has stopped for a given reason

\n

Vad - Fires when using multiplexed tracks for audio.

\n

Layers - Fires when there is an update of the state of the layers in a stream (when broadcasting with simulcast).

\n

Migrate - Fires when the server is having problems, is shutting down or when viewers need to move for load balancing purposes.

\n

Viewercount - Fires when the viewer count changes.

\n

More information here: {@link https://docs.dolby.io/streaming-apis/docs/web#broadcast-events}

", - "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - Fires when the stream has stopped for a given reason.

\n

Vad - Fires when using multiplexed tracks for audio.

\n

Layers - Fires when there is an update of the state of the layers in a stream (when broadcasting with simulcast).

\n

Migrate - Fires when the server is having problems, is shutting down or when viewers need to move for load balancing purposes.

\n

Viewercount - Fires when the viewer count changes.

\n

More information here: {@link https://docs.dolby.io/streaming-apis/docs/web#broadcast-events}

": "

Passthrough of available Millicast broadcast events.

\n

Active - Fires when the live stream is, or has started broadcasting.

\n

Inactive - Fires when the stream has stopped broadcasting, but is still available.

\n

Stopped - Fires when the stream has stopped for a given reason.

\n

Vad - Fires when using multiplexed tracks for audio.

\n

Layers - Fires when there is an update of the state of the layers in a stream (when broadcasting with simulcast).

\n

Migrate - Fires when the server is having problems, is shutting down or when viewers need to move for load balancing purposes.

\n

Viewercount - Fires when the viewer count changes.

\n

More information here: {@link https://docs.dolby.io/streaming-apis/docs/web#broadcast-events}

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/View.json b/packages/millicast-sdk/docs-translations/en/View.json deleted file mode 100644 index 500c49f3..00000000 --- a/packages/millicast-sdk/docs-translations/en/View.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to view a live stream.

\n

Before you can view an active broadcast, you will need:

\n
    \n
  • A connection path that you can get from {@link Director} module or from your own implementation based on Get a Connection Path.
  • \n
": "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to view a live stream.

\n

Before you can view an active broadcast, you will need:

\n
    \n
  • A connection path that you can get from {@link Director} module or from your own implementation based on Get a Connection Path.
  • \n
", - "

Millicast existing Stream Name where you want to connect.

": "

Millicast existing Stream Name where you want to connect.

", - "

Callback function executed when a new token is needed.

": "

Callback function executed when a new token is needed.

", - "

Target HTML media element to mount stream.

": "

Target HTML media element to mount stream.

", - "

Enable auto reconnect to stream.

": "

Enable auto reconnect to stream.

", - "

Connects to an active stream as subscriber.

\n

In the example, addStreamToYourVideoTag and getYourSubscriberConnectionPath is your own implementation.

": "

Connects to an active stream as subscriber.

\n

In the example, addStreamToYourVideoTag and getYourSubscriberConnectionPath is your own implementation.

", - "

General subscriber options.

": "

General subscriber options.

", - "

True to modify SDP for supporting dtx in opus. Otherwise False.

": "

True to modify SDP for supporting dtx in opus. Otherwise False.

", - "

True to modify SDP for supporting absolute capture time header extension. Otherwise False.

": "

True to modify SDP for supporting absolute capture time header extension. Otherwise False.

", - "

Disable the opportunity to receive video stream.

": "

Disable the opportunity to receive video stream.

", - "

Disable the opportunity to receive audio stream.

": "

Disable the opportunity to receive audio stream.

", - "

Number of audio tracks to recieve VAD multiplexed audio for secondary sources.

": "

Number of audio tracks to recieve VAD multiplexed audio for secondary sources.

", - "

Id of the main source that will be received by the default MediaStream.

": "

Id of the main source that will be received by the default MediaStream.

", - "

Do not receive media from the these source ids.

": "

Do not receive media from the these source ids.

", - "

Override which events will be delivered by the server (any of "active" | "inactive" | "vad" | "layers").*

": "

Override which events will be delivered by the server (any of "active" | "inactive" | "vad" | "layers").*

", - "

Options to configure the new RTCPeerConnection.

": "

Options to configure the new RTCPeerConnection.

", - "

Select the simulcast encoding layer and svc layers for the main video track, leave empty for automatic layer selection based on bandwidth estimation.

": "

Select the simulcast encoding layer and svc layers for the main video track, leave empty for automatic layer selection based on bandwidth estimation.

", - "

rid value of the simulcast encoding of the track (default: automatic selection)

": "

rid value of the simulcast encoding of the track (default: automatic selection)

", - "

The spatial layer id to send to the outgoing stream (default: max layer available)

": "

The spatial layer id to send to the outgoing stream (default: max layer available)

", - "

The temporaral layer id to send to the outgoing stream (default: max layer available)

": "

The temporaral layer id to send to the outgoing stream (default: max layer available)

", - "

Max spatial layer id (default: unlimited)

": "

Max spatial layer id (default: unlimited)

", - "

Max temporal layer id (default: unlimited)

": "

Max temporal layer id (default: unlimited)

", - "

Promise object which resolves when the connection was successfully established.

": "

Promise object which resolves when the connection was successfully established.

", - "

Select the simulcast encoding layer and svc layers for the main video track

": "

Select the simulcast encoding layer and svc layers for the main video track

", - "

leave empty for automatic layer selection based on bandwidth estimation.

": "

leave empty for automatic layer selection based on bandwidth estimation.

", - "

Add remote receving track.

": "

Add remote receving track.

", - "

Media kind ('audio' | 'video').

": "

Media kind ('audio' | 'video').

", - "

streams - Streams the stream will belong to.

": "

streams - Streams the stream will belong to.

", - "

Start projecting source in selected media ids.

": "

Start projecting source in selected media ids.

", - "

Selected source id.

": "

Selected source id.

", - "

Mapping of the source track ids to the receiver mids

": "

Mapping of the source track ids to the receiver mids

", - "

Track id from the source (received on the "active" event), if not set the media kind will be used instead.

": "

Track id from the source (received on the "active" event), if not set the media kind will be used instead.

", - "

Track kind of the source ('audio' | 'video'), if not set the trackId will be used instead.

": "

Track kind of the source ('audio' | 'video'), if not set the trackId will be used instead.

", - "

mid value of the rtp receiver in which the media is going to be projected.

": "

mid value of the rtp receiver in which the media is going to be projected.

", - "

Select the simulcast encoding layer and svc layers, only applicable to video tracks.

": "

Select the simulcast encoding layer and svc layers, only applicable to video tracks.

", - "

Stop projecting attached source in selected media ids.

": "

Stop projecting attached source in selected media ids.

", - "

mid value of the receivers that are going to be detached.

": "

mid value of the receivers that are going to be detached.

", - "

Streams the track will belong to.

": "

Streams the track will belong to.

", - "

Promise that will be resolved when the RTCRtpTransceiver is assigned an mid value.

": "

Promise that will be resolved when the RTCRtpTransceiver is assigned an mid value.

", - "

mid value of the rtp receiver in which the media is going to be projected. If no mediaId is defined, the first track from the main media stream with the same media type as the input source track will be used.

": "

mid value of the rtp receiver in which the media is going to be projected. If no mediaId is defined, the first track from the main media stream with the same media type as the input source track will be used.

", - "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to view a live stream.

\n

Before you can view an active broadcast, you will need:

\n
    \n
  • A connection path that you can get from {@link Director} module or from your own implementation.
  • \n
": "

Manages connection with a secure WebSocket path to signal the Millicast server\nand establishes a WebRTC connection to view a live stream.

\n

Before you can view an active broadcast, you will need:

\n
    \n
  • A connection path that you can get from {@link Director} module or from your own implementation.
  • \n
", - "

Override which events will be delivered by the server (any of "active" | "inactive" | "vad" | "layers" | "viewercount").*

": "

Override which events will be delivered by the server (any of "active" | "inactive" | "vad" | "layers" | "viewercount").*

", - "

Ask the server to use the playout delay header extension.

": "

Ask the server to use the playout delay header extension.

", - "

Set minimum playout delay value.

": "

Set minimum playout delay value.

", - "

Set maximum playout delay value.

": "

Set maximum playout delay value.

", - "

To remove all existing limitations from the source, such as restricted bitrate or resolution, set this to true.

": "

To remove all existing limitations from the source, such as restricted bitrate or resolution, set this to true.

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/utils/BaseWebRTC.json b/packages/millicast-sdk/docs-translations/en/utils/BaseWebRTC.json deleted file mode 100644 index 26f8f811..00000000 --- a/packages/millicast-sdk/docs-translations/en/utils/BaseWebRTC.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "

Callback invoke when a new connection path is needed.

": "

Callback invoke when a new connection path is needed.

", - "

Promise object which represents the result of getting the new connection path.

\n

You can use your own token generator or use the Director available methods.

": "

Promise object which represents the result of getting the new connection path.

\n

You can use your own token generator or use the Director available methods.

", - "

Base class for common actions about peer connection and reconnect mechanism for Publishers and Viewer instances.

": "

Base class for common actions about peer connection and reconnect mechanism for Publishers and Viewer instances.

", - "

Millicast existing stream name.

": "

Millicast existing stream name.

", - "

Callback function executed when a new token is needed.

": "

Callback function executed when a new token is needed.

", - "

Logger instance from the extended classes.

": "

Logger instance from the extended classes.

", - "

Enable auto reconnect.

": "

Enable auto reconnect.

", - "

Get current RTC peer connection.

": "

Get current RTC peer connection.

", - "

Object which represents the RTCPeerConnection.

": "

Object which represents the RTCPeerConnection.

", - "

Stops connection.

": "

Stops connection.

", - "

Get if the current connection is active.

": "

Get if the current connection is active.

", - "
    \n
  • True if connected, false if not.
  • \n
": "
    \n
  • True if connected, false if not.
  • \n
", - "

Sets reconnection if autoReconnect is enabled.

": "

Sets reconnection if autoReconnect is enabled.

", - "

Reconnects to last broadcast.

": "

Reconnects to last broadcast.

", - "

Emits with every reconnection attempt made when an active stream\nstopped unexpectedly.

": "

Emits with every reconnection attempt made when an active stream\nstopped unexpectedly.

", - "

Next retry interval in milliseconds.

": "

Next retry interval in milliseconds.

", - "

Error object with cause of failure.

": "

Error object with cause of failure.

", - "

WebSocket available URLs.

": "

WebSocket available URLs.

", - "

Access token for signaling initialization.

": "

Access token for signaling initialization.

", - "

Object which represents a list of Ice servers.

": "

Object which represents a list of Ice servers.

", - "

Error object with cause of failure. Possible errors are:
"Signaling error: wsConnectionError" if there was an error in the Websocket connection.
"Connection state change: RTCPeerConnectionState disconnected" if there was an error in the RTCPeerConnection. "Attempting to reconnect" if the reconnect was trigered externally.

": "

Error object with cause of failure. Possible errors are:
"Signaling error: wsConnectionError" if there was an error in the Websocket connection.
"Connection state change: RTCPeerConnectionState disconnected" if there was an error in the RTCPeerConnection. "Attempting to reconnect" if the reconnect was trigered externally.

", - "

Error object with cause of failure. Possible errors are:

  • "Signaling error: wsConnectionError" if there was an error in the Websocket connection.
  • "Connection state change: RTCPeerConnectionState disconnected" if there was an error in the RTCPeerConnection.
  • "Attempting to reconnect" if the reconnect was trigered externally.

": "

Error object with cause of failure. Possible errors are:

  • "Signaling error: wsConnectionError" if there was an error in the Websocket connection.
  • "Connection state change: RTCPeerConnectionState disconnected" if there was an error in the RTCPeerConnection.
  • "Attempting to reconnect" if the reconnect was trigered externally.

", - "

Error object with cause of failure. Possible errors are:

  • Signaling error: wsConnectionError if there was an error in the Websocket connection.
  • Connection state change: RTCPeerConnectionState disconnected if there was an error in the RTCPeerConnection.
  • Attempting to reconnect if the reconnect was trigered externally.

": "

Error object with cause of failure. Possible errors are:

  • Signaling error: wsConnectionError if there was an error in the Websocket connection.
  • Connection state change: RTCPeerConnectionState disconnected if there was an error in the RTCPeerConnection.
  • Attempting to reconnect if the reconnect was trigered externally.

", - "

Error object with cause of failure. Possible errors are:

  • Signaling error: wsConnectionError if there was an error in the Websocket connection.
  • Connection state change: RTCPeerConnectionState disconnected if there was an error in the RTCPeerConnection.
  • Attempting to reconnect if the reconnect was trigered externally.
  • Or any internal error thrown by either Publish.connect or View.connect methods

": "

Error object with cause of failure. Possible errors are:

  • Signaling error: wsConnectionError if there was an error in the Websocket connection.
  • Connection state change: RTCPeerConnectionState disconnected if there was an error in the RTCPeerConnection.
  • Attempting to reconnect if the reconnect was trigered externally.
  • Or any internal error thrown by either Publish.connect or View.connect methods

", - "

Error object with cause of failure. Possible errors are:

  • Signaling error: wsConnectionError if there was an error in the Websocket connection.
  • Connection state change: RTCPeerConnectionState disconnected if there was an error in the RTCPeerConnection.
  • Attempting to reconnect if the reconnect was trigered externally.
  • Or any internal error thrown by either Publish.connect or View.connect methods

": "

Error object with cause of failure. Possible errors are:

  • Signaling error: wsConnectionError if there was an error in the Websocket connection.
  • Connection state change: RTCPeerConnectionState disconnected if there was an error in the RTCPeerConnection.
  • Attempting to reconnect if the reconnect was trigered externally.
  • Or any internal error thrown by either Publish.connect or View.connect methods

", - "

Test

": "

Test

", - "

The value that this property has is what will be sent in the first reconnect event within the error key of the payload

": "

The value that this property has is what will be sent in the first reconnect event within the error key of the payload

", - "

This object contains the error property that will be sent when trying to reconnect. It may be expanded to contain more information in the future.

": "

This object contains the error property that will be sent when trying to reconnect. It may be expanded to contain more information in the future.

", - "

The value that this property has is what will be sent in the first [reconnect event]{@link BaseWebRTC#event:reconnect} within the error key of the payload

": "

The value that this property has is what will be sent in the first [reconnect event]{@link BaseWebRTC#event:reconnect} within the error key of the payload.

", - "

The value sent in the first [reconnect event]{@link BaseWebRTC#event:reconnect} within the error key of the payload

": "

The value sent in the first [reconnect event]{@link BaseWebRTC#event:reconnect} within the error key of the payload.

", - "

This object contains the error property. It may be expanded to contain more information in the future.

": "

This object contains the error property. It may be expanded to contain more information in the future.

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/utils/Codecs.json b/packages/millicast-sdk/docs-translations/en/utils/Codecs.json deleted file mode 100644 index 85a4cbea..00000000 --- a/packages/millicast-sdk/docs-translations/en/utils/Codecs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "

Enum of Millicast supported Video codecs

": "

Enum of Millicast supported Video codecs

", - "

Only available in Safari

": "

Only available in Safari

", - "

Enum of Millicast supported Audio codecs

": "

Enum of Millicast supported Audio codecs

" -} \ No newline at end of file diff --git a/packages/millicast-sdk/docs-translations/en/utils/SdpParser.json b/packages/millicast-sdk/docs-translations/en/utils/SdpParser.json deleted file mode 100644 index 6ddd4324..00000000 --- a/packages/millicast-sdk/docs-translations/en/utils/SdpParser.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "

Simplify SDP parser.

": "

Simplify SDP parser.

", - "

Parse SDP for support simulcast.

\n

Only available in Google Chrome.

": "

Parse SDP for support simulcast.

\n

Only available in Google Chrome.

", - "

Current SDP.

": "

Current SDP.

", - "

Codec.

": "

Codec.

", - "

SDP parsed with simulcast support.

": "

SDP parsed with simulcast support.

", - "

Parse SDP for support stereo.

": "

Parse SDP for support stereo.

", - "

SDP parsed with stereo support.

": "

SDP parsed with stereo support.

", - "

Parse SDP for support dtx.

": "

Parse SDP for support dtx.

", - "

SDP parsed with dtx support.

": "

SDP parsed with dtx support.

", - "

Mangle SDP for adding absolute capture time header extension.

": "

Mangle SDP for adding absolute capture time header extension.

", - "

SDP mungled with abs-catpure-time header extension.

": "

SDP mungled with abs-catpure-time header extension.

", - "

Parse SDP for desired bitrate.

": "

Parse SDP for desired bitrate.

", - "

Bitrate value in kbps or 0 for unlimited bitrate.

": "

Bitrate value in kbps or 0 for unlimited bitrate.

", - "

SDP parsed with desired bitrate.

": "

SDP parsed with desired bitrate.

", - "

Remove SDP line.

": "

Remove SDP line.

", - "

SDP line to remove.

": "

SDP line to remove.

", - "

SDP without the line.

": "

SDP without the line.

", - "

Replace codec name of a SDP.

": "

Replace codec name of a SDP.

", - "

Codec name to be replaced.

": "

Codec name to be replaced.

", - "

New codec name to replace.

": "

New codec name to replace.

", - "

SDP updated with new codec name.

": "

SDP updated with new codec name.

", - "

Parse SDP for support multiopus.

\n

Only available in Google Chrome.

": "

Parse SDP for support multiopus.

\n

Only available in Google Chrome.

", - "

MediaStream offered in the stream.

": "

MediaStream offered in the stream.

", - "

SDP parsed with multiopus support.

": "

SDP parsed with multiopus support.

", - "

Gets all available payload type IDs of the current Session Description.

": "

Gets all available payload type IDs of the current Session Description.

", - "

All available payload type ids.

": "

All available payload type ids.

", - "

Gets all available header extension IDs of the current Session Description.

": "

Gets all available header extension IDs of the current Session Description.

", - "

All available header extension IDs.

": "

All available header extension IDs.

", - "

Checks if mediaStream has more than 2 audio channels.

": "

Checks if mediaStream has more than 2 audio channels.

", - "

MediaStream to verify.

": "

MediaStream to verify.

", - "

returns true if MediaStream has more than 2 channels.

": "

returns true if MediaStream has more than 2 channels.

", - "

Renegotiate remote sdp based on previous description.\nThis function will fill missing m-lines cloning on the remote description by cloning the codec and extensions already negotiated for that media

": "

Renegotiate remote sdp based on previous description.\nThis function will fill missing m-lines cloning on the remote description by cloning the codec and extensions already negotiated for that media

", - "

Updated local sdp

": "

Updated local sdp

", - "

Previous remote sdp

": "

Previous remote sdp

", - "

Mangle SDP for adding dependency descriptor header extension.

": "

Mangle SDP for adding dependency descriptor header extension.

", - "

Adds missing extensions of each video section in the localDescription

": "

Adds missing extensions of each video section in the localDescription

", - "

Previous local sdp

": "

Previous local sdp

", - "

Remote sdp

": "

Remote sdp

", - "

SDP updated with missing extensions.

": "

SDP updated with missing extensions.

" -} \ No newline at end of file From b39fc9a80d106b1978c4f5d812858fac4ed012c7 Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Mon, 15 Jan 2024 19:34:34 +0100 Subject: [PATCH 12/16] Remove deprecated options from the docs (#303) --- packages/millicast-sdk/src/Director.js | 8 ++------ packages/millicast-sdk/src/Signaling.js | 8 ++------ packages/millicast-sdk/src/types/index.d.ts | 16 ++++------------ 3 files changed, 8 insertions(+), 24 deletions(-) diff --git a/packages/millicast-sdk/src/Director.js b/packages/millicast-sdk/src/Director.js index ecf93af9..1c4ed4cd 100644 --- a/packages/millicast-sdk/src/Director.js +++ b/packages/millicast-sdk/src/Director.js @@ -84,9 +84,7 @@ export default class Director { /** * Get publisher connection data. - * @param {DirectorPublisherOptions | String} options - Millicast options or *Deprecated Millicast Publishing Token.* - * @param {String} [streamName] - *Deprecated, use options parameter instead* Millicast Stream Name. - * @param {("WebRtc" | "Rtmp")} [streamType] - *Deprecated, use options parameter instead* Millicast Stream Type. + * @param {DirectorPublisherOptions} options - Millicast options. * @returns {Promise} Promise object which represents the result of getting the publishing connection path. * @example const response = await Director.getPublisher(options) * @example @@ -136,9 +134,7 @@ export default class Director { /** * Get subscriber connection data. - * @param {DirectorSubscriberOptions | String} options - Millicast options or *Deprecated Millicast publisher Stream Name.* - * @param {String} [streamAccountId] - *Deprecated, use options parameter instead* Millicast Account ID. - * @param {String} [subscriberToken] - *Deprecated, use options parameter instead* Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param. + * @param {DirectorSubscriberOptions} options - Millicast options. * @returns {Promise} Promise object which represents the result of getting the subscribe connection data. * @example const response = await Director.getSubscriber(options) * @example diff --git a/packages/millicast-sdk/src/Signaling.js b/packages/millicast-sdk/src/Signaling.js index e380f554..fbae6dae 100644 --- a/packages/millicast-sdk/src/Signaling.js +++ b/packages/millicast-sdk/src/Signaling.js @@ -180,9 +180,7 @@ export default class Signaling extends EventEmitter { /** * Establish WebRTC connection with Millicast Server as Subscriber role. * @param {String} sdp - The SDP information created by your offer. - * @param {SignalingSubscribeOptions | Boolean} options - Signaling Subscribe Options or *Deprecated Enable VAD multiplexing for secondary sources.* - * @param {String} pinnedSourceId - *Deprecated, use options parameter instead* Id of the main source that will be received by the default MediaStream. - * @param {Array} excludedSourceIds - *Deprecated, use options parameter instead* Do not receive media from the these source ids. + * @param {SignalingSubscribeOptions} options - Signaling Subscribe Options. * @example const response = await millicastSignaling.subscribe(sdp) * @return {Promise} Promise object which represents the SDP command response. */ @@ -224,9 +222,7 @@ export default class Signaling extends EventEmitter { /** * Establish WebRTC connection with Millicast Server as Publisher role. * @param {String} sdp - The SDP information created by your offer. - * @param {SignalingPublishOptions | VideoCodec} options - Signaling Publish Options or *Deprecated Codec for publish stream (h264 default).* - * @param {Boolean} [record] - *Deprecated, use options parameter instead* Enable stream recording. If record is not provided, use default Token configuration. **Only available in Tokens with recording enabled.** - * @param {String} [sourceId] - *Deprecated, use options parameter instead* Source unique id. **Only available in Tokens with multisource enabled.*** + * @param {SignalingPublishOptions} options - Signaling Publish Options. * @example const response = await millicastSignaling.publish(sdp, {codec: 'h264'}) * @return {Promise} Promise object which represents the SDP command response. */ diff --git a/packages/millicast-sdk/src/types/index.d.ts b/packages/millicast-sdk/src/types/index.d.ts index 3c72fa89..a98e4e9d 100644 --- a/packages/millicast-sdk/src/types/index.d.ts +++ b/packages/millicast-sdk/src/types/index.d.ts @@ -436,9 +436,7 @@ declare module '@millicast/sdk' { /** * Establish WebRTC connection with Millicast Server as Subscriber role. * @param {String} sdp - The SDP information created by your offer. - * @param {SignalingSubscribeOptions | Boolean} options - Signaling Subscribe Options or *Deprecated Enable VAD multiplexing for secondary sources.* - * @param {String} pinnedSourceId - *Deprecated, use options parameter instead* Id of the main source that will be received by the default MediaStream. - * @param {Array} excludedSourceIds - *Deprecated, use options parameter instead* Do not receive media from the these source ids. + * @param {SignalingSubscribeOptions} options - Signaling Subscribe Options. * @example const response = await millicastSignaling.subscribe(sdp) * @return {Promise} Promise object which represents the SDP command response. */ @@ -446,9 +444,7 @@ declare module '@millicast/sdk' { /** * Establish WebRTC connection with Millicast Server as Publisher role. * @param {String} sdp - The SDP information created by your offer. - * @param {SignalingPublishOptions | VideoCodec} options - Signaling Publish Options or *Deprecated Codec for publish stream (h264 default).* - * @param {Boolean} [record] - *Deprecated, use options parameter instead* Enable stream recording. If record is not provided, use default Token configuration. **Only available in Tokens with recording enabled.** - * @param {String} [sourceId] - *Deprecated, use options parameter instead* Source unique id. **Only available in Tokens with multisource enabled.*** + * @param {SignalingPublishOptions} options - Signaling Publish Options. * @example const response = await millicastSignaling.publish(sdp, {codec: 'h264'}) * @return {Promise} Promise object which represents the SDP command response. */ @@ -765,9 +761,7 @@ declare module '@millicast/sdk' { static getLiveDomain(): string; /** * Get publisher connection data. - * @param {DirectorPublisherOptions | String} options - Millicast options or *Deprecated Millicast Publishing Token.* - * @param {String} [streamName] - *Deprecated, use options parameter instead* Millicast Stream Name. - * @param {("WebRtc" | "Rtmp")} [streamType] - *Deprecated, use options parameter instead* Millicast Stream Type. + * @param {DirectorPublisherOptions} options - Millicast options. * @returns {Promise} Promise object which represents the result of getting the publishing connection path. * @example const response = await Director.getPublisher(options) * @example @@ -795,9 +789,7 @@ declare module '@millicast/sdk' { static getPublisher(options: DirectorPublisherOptions | string, streamName?: string, streamType?: ("WebRtc" | "Rtmp")): Promise; /** * Get subscriber connection data. - * @param {DirectorSubscriberOptions | String} options - Millicast options or *Deprecated Millicast publisher Stream Name.* - * @param {String} [streamAccountId] - *Deprecated, use options parameter instead* Millicast Account ID. - * @param {String} [subscriberToken] - *Deprecated, use options parameter instead* Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param. + * @param {DirectorSubscriberOptions | String} options - Millicast options. * @returns {Promise} Promise object which represents the result of getting the subscribe connection data. * @example const response = await Director.getSubscriber(options) * @example From 32c308e0991c995b6346a64ea2e2cbbeb1ccb497 Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Mon, 15 Jan 2024 19:34:46 +0100 Subject: [PATCH 13/16] Add description of DTX purpose (#302) * Add description of DTX purpose Fix typos & update docs * Remove extre * from index.d.ts * Change setDTX description --- packages/millicast-sdk/src/types/index.d.ts | 2 +- packages/millicast-sdk/src/utils/SdpParser.js | 6 +++--- .../millicast-sdk/tests/features/SdpAbsCaptureTime.feature | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/millicast-sdk/src/types/index.d.ts b/packages/millicast-sdk/src/types/index.d.ts index a98e4e9d..be36775f 100644 --- a/packages/millicast-sdk/src/types/index.d.ts +++ b/packages/millicast-sdk/src/types/index.d.ts @@ -601,7 +601,7 @@ declare module '@millicast/sdk' { * Get the SDP modified depending the options. Optionally set the SDP information to local peer. * @param {Object} options * @param {Boolean} options.stereo - True to modify SDP for support stereo. Otherwise False. - * @param {Boolean} options.dtx - True to modify SDP for supporting dtx in opus. Otherwise False.* + * @param {Boolean} options.dtx - True to modify SDP for supporting dtx in opus. Otherwise False. * @param {MediaStream|Array} options.mediaStream - MediaStream to offer in a stream. This object must have * 1 audio track and 1 video track, or at least one of them. Alternative you can provide both tracks in an array. * @param {VideoCodec} options.codec - Selected codec for support simulcast. diff --git a/packages/millicast-sdk/src/utils/SdpParser.js b/packages/millicast-sdk/src/utils/SdpParser.js index 9b0310fe..5581317e 100644 --- a/packages/millicast-sdk/src/utils/SdpParser.js +++ b/packages/millicast-sdk/src/utils/SdpParser.js @@ -103,7 +103,7 @@ export default class SdpParser { } /** - * Parse SDP for support dtx. + * Set DTX (Discontinuous Transmission) to the connection. Advanced configuration of the opus audio codec that allows for a large reduction in the audio traffic. For example, when a participant is silent, the audio packets won't be transmitted. * @param {String} sdp - Current SDP. * @returns {String} SDP parsed with dtx support. * @example SdpParser.setDTX(sdp) @@ -122,7 +122,7 @@ export default class SdpParser { /** * Mangle SDP for adding absolute capture time header extension. * @param {String} sdp - Current SDP. - * @returns {String} SDP mungled with abs-catpure-time header extension. + * @returns {String} SDP mungled with abs-capture-time header extension. * @example SdpParser.setAbsoluteCaptureTime(sdp) */ static setAbsoluteCaptureTime (sdp) { @@ -142,7 +142,7 @@ export default class SdpParser { /** * Mangle SDP for adding dependency descriptor header extension. * @param {String} sdp - Current SDP. - * @returns {String} SDP mungled with abs-catpure-time header extension. + * @returns {String} SDP mungled with abs-capture-time header extension. * @example SdpParser.setAbsoluteCaptureTime(sdp) */ static setDependencyDescriptor (sdp) { diff --git a/packages/millicast-sdk/tests/features/SdpAbsCaptureTime.feature b/packages/millicast-sdk/tests/features/SdpAbsCaptureTime.feature index 412f3818..9890270e 100644 --- a/packages/millicast-sdk/tests/features/SdpAbsCaptureTime.feature +++ b/packages/millicast-sdk/tests/features/SdpAbsCaptureTime.feature @@ -1,4 +1,4 @@ -Feature: As a user I want to mungle my SDP for adding the absolute catpure time header extension so I can offer what I need to my peer +Feature: As a user I want to mungle my SDP for adding the absolute capture time header extension so I can offer what I need to my peer Scenario: Set abs-capture-time Given a local sdp without the header extension From 2082d67d6817147a68b38d666c9a2eb2ccb2bacb Mon Sep 17 00:00:00 2001 From: Vincent Song Date: Fri, 19 Jan 2024 16:48:33 +1100 Subject: [PATCH 14/16] Document: remove namespaces and add diagram (#307) * replaced namespace with module * added UML class diagram using mermaid * fixed UML diagram issue --- developer-info.md | 92 +++++++++++++ packages/millicast-sdk/src/Director.js | 83 +++++++----- packages/millicast-sdk/src/Logger.js | 116 ++++++++++------- packages/millicast-sdk/src/utils/SdpParser.js | 122 ++++++++++-------- 4 files changed, 278 insertions(+), 135 deletions(-) diff --git a/developer-info.md b/developer-info.md index a62ed80c..1e92bd00 100644 --- a/developer-info.md +++ b/developer-info.md @@ -51,3 +51,95 @@ Or if you want to navigate docs in your localhost run: npx lerna run start-docs --stream ``` In the logs you find the link where you can access to docs. By default is running at http://localhost:5000. + +### SDK Components +```mermaid +classDiagram + class EventEmitter { + +emit(eventName: string | symbol, ...args: any[]) boolean + +on(eventName: string | symbol, listener: (...args: any[]) => void) EventEmitter + } + class BaseWebRTC { + <> + +string streamName + #PeerConnection webRTCPeer + #Signaling signaling + #tokenGeneratorCallback tokenGenerator + +isActive() bool + +stop() + +async reconnect(data) + +getRTCPeerConnection() RTCPeerConnection + } + class PeerConnection{ + $getCapabilities() MillicastCapability + +async addRemoteTrack(media, streams) RTCRtpTransceiver + +async createRTCPeer(config) + +async closeRTCPeer() + +initStats() + +stopStats() + +async getRTCLocalSDP(options) string + +async setRTCRemoteSDP(sdp) + +updateBandwidthRestriction(sdp, bitrate) string + +async updateBitrate(bitrate) + } + class Signaling { + +async connect() WebSocket + +close() + +async cmd(command, data?) Object + +async publish(sdp, options) string + +async subscribe(sdp, options) string + } + class Publish { + +async connect(options) + +async record() + +async unrecord() + } + class View { + +async connect(options) + +async select(layer) + +async addRemoteTrack(media, streams) + +async project(sourceId, mapping) + +async unproject(mediaIds) + } + class Director { + <> + +getPublisher(publishToken, streamName, streamType?) + +getSubscriber(streamName, streamAccountId, subscribeToken?) + } + class SdpParser { + <> + +setStereo(sdp) string + +setDTX(sdp) string + +setVideoBitrate(sdp, bitrate) string + +setSimulcast(sdp, codec) string + } + class Logger { + <> + +get() Logger + +getLevel() LogLevel + +setLevel() + +debug(string) + +info(string) + +warn(string) + +error(string) + +time(string) + } + EventEmitter <|-- BaseWebRTC + EventEmitter <|-- PeerConnection + EventEmitter <|-- Signaling + BaseWebRTC <|-- Publish + BaseWebRTC <|-- View + BaseWebRTC *-- PeerConnection + BaseWebRTC *-- Signaling + Signaling <-- SdpParser + PeerConnection <-- SdpParser + Publish <-- Director : getPublisher + View <-- Director: getSubscriber + BaseWebRTC <-- Logger + Director <-- Logger + Signaling <-- Logger + PeerConnection <-- Logger + Publish <-- Logger + View <-- Logger + SdpParser <-- Logger +``` diff --git a/packages/millicast-sdk/src/Director.js b/packages/millicast-sdk/src/Director.js index 1c4ed4cd..5e1b9ec8 100644 --- a/packages/millicast-sdk/src/Director.js +++ b/packages/millicast-sdk/src/Director.js @@ -12,8 +12,18 @@ let liveWebsocketDomain = '' export const defaultApiEndpoint = config.MILLICAST_DIRECTOR_ENDPOINT let apiEndpoint = defaultApiEndpoint +/** + * @module Director + * @description Simplify API calls to find the best server and region to publish and subscribe to. + * For security reasons all calls will return a [JWT](https://jwt.io) token for authentication including the required + * socket path to connect with. + * + * You will need your own Publishing token and Stream name, please refer to [Managing Your Tokens](https://docs.dolby.io/streaming-apis/docs/managing-your-tokens). + */ + /** * @typedef {Object} MillicastDirectorResponse + * @global * @property {Array} urls - WebSocket available URLs. * @property {String} jwt - Access token for signaling initialization. * @property {Array} iceServers - Object which represents a list of Ice servers. @@ -21,6 +31,7 @@ let apiEndpoint = defaultApiEndpoint /** * @typedef {Object} DirectorPublisherOptions + * @global * @property {String} token - Millicast Publishing Token. * @property {String} streamName - Millicast Stream Name. * @property {("WebRtc" | "Rtmp")} [streamType] - Millicast Stream Type. @@ -28,62 +39,61 @@ let apiEndpoint = defaultApiEndpoint /** * @typedef {Object} DirectorSubscriberOptions + * @global * @property {String} streamName - Millicast publisher Stream Name. * @property {String} streamAccountId - Millicast Account ID. * @property {String} [subscriberToken] - Token to subscribe to secure streams. If you are subscribing to an unsecure stream, you can omit this param. */ -/** - * Simplify API calls to find the best server and region to publish and subscribe to. - * For security reasons all calls will return a [JWT](https://jwt.io) token for authentication including the required - * socket path to connect with. - * - * You will need your own Publishing token and Stream name, please refer to [Managing Your Tokens](https://docs.dolby.io/streaming-apis/docs/managing-your-tokens). - * @namespace - */ - -export default class Director { +const Director = { /** - * Set Director API endpoint where requests will be sent. - * + * @function + * @name setEndpoint + * @description Set Director API endpoint where requests will be sent. * @param {String} url - New Director API endpoint + * @returns {void} */ - static setEndpoint (url) { + setEndpoint: (url) => { apiEndpoint = url.replace(/\/$/, '') - } + }, /** - * Get current Director API endpoint where requests will be sent. - * - * By default, https://director.millicast.com is the current API endpoint. + * @function + * @name getEndpoint + * @description Get current Director API endpoint where requests will be sent. Default endpoint is 'https://director.millicast.com'. * @returns {String} API base url */ - static getEndpoint () { + getEndpoint: () => { return apiEndpoint - } + }, /** - * Set Websocket Live domain from Director API response. + * @function + * @name setLiveDomain + * @description Set Websocket Live domain from Director API response. * If it is set to empty, it will not parse the response. - * * @param {String} domain - New Websocket Live domain + * @returns {void} */ - static setLiveDomain (domain) { + setLiveDomain: (domain) => { liveWebsocketDomain = domain.replace(/\/$/, '') - } + }, /** - * Get current Websocket Live domain. - * + * @function + * @name getLiveDomain + * @description Get current Websocket Live domain. * By default is empty which corresponds to not parse the Director response. * @returns {String} Websocket Live domain */ - static getLiveDomain () { + getLiveDomain: () => { return liveWebsocketDomain - } + }, /** - * Get publisher connection data. + * @function + * @name getPublisher + * @description Get publisher connection data. * @param {DirectorPublisherOptions} options - Millicast options. * @returns {Promise} Promise object which represents the result of getting the publishing connection path. * @example const response = await Director.getPublisher(options) @@ -109,13 +119,12 @@ export default class Director { * //Start broadcast * await millicastPublish.connect(broadcastOptions) */ - - static async getPublisher (options, streamName = null, streamType = streamTypes.WEBRTC) { + getPublisher: async (options, streamName = null, streamType = streamTypes.WEBRTC) => { const optionsParsed = getPublisherOptions(options, streamName, streamType) logger.info('Getting publisher connection path for stream name: ', optionsParsed.streamName) const payload = { streamName: optionsParsed.streamName, streamType: optionsParsed.streamType } const headers = { 'Content-Type': 'application/json', Authorization: `Bearer ${optionsParsed.token}` } - const url = `${this.getEndpoint()}/api/director/publish` + const url = `${Director.getEndpoint()}/api/director/publish` try { const response = await fetch(url, { method: 'POST', headers, body: JSON.stringify(payload) }) let data = await response.json() @@ -130,10 +139,12 @@ export default class Director { logger.error('Error while getting publisher connection path. ', e) throw e } - } + }, /** - * Get subscriber connection data. + * @function + * @name getSubscriber + * @description Get subscriber connection data. * @param {DirectorSubscriberOptions} options - Millicast options. * @returns {Promise} Promise object which represents the result of getting the subscribe connection data. * @example const response = await Director.getSubscriber(options) @@ -163,7 +174,7 @@ export default class Director { * await millicastView.connect(options) */ - static async getSubscriber (options, streamAccountId = null, subscriberToken = null) { + getSubscriber: async (options, streamAccountId = null, subscriberToken = null) => { const optionsParsed = getSubscriberOptions(options, streamAccountId, subscriberToken) logger.info(`Getting subscriber connection data for stream name: ${optionsParsed.streamName} and account id: ${optionsParsed.streamAccountId}`) @@ -172,7 +183,7 @@ export default class Director { if (optionsParsed.subscriberToken) { headers = { ...headers, Authorization: `Bearer ${optionsParsed.subscriberToken}` } } - const url = `${this.getEndpoint()}/api/director/subscribe` + const url = `${Director.getEndpoint()}/api/director/subscribe` try { const response = await fetch(url, { method: 'POST', headers, body: JSON.stringify(payload) }) let data = await response.json() @@ -228,3 +239,5 @@ const parseIncomingDirectorResponse = (directorResponse) => { } return directorResponse } + +export default Director diff --git a/packages/millicast-sdk/src/Logger.js b/packages/millicast-sdk/src/Logger.js index 500fe75b..ac1ad728 100644 --- a/packages/millicast-sdk/src/Logger.js +++ b/packages/millicast-sdk/src/Logger.js @@ -1,5 +1,38 @@ import jsLogger from 'js-logger' +/** + * @module Logger + * @description Manages all log messages from SDK modules, you can use this logger to add your custom + * messages and set your custom log handlers to forward all messages to your own monitoring + * system. + * + * By default all loggers are set in level OFF (Logger.OFF), and there are available + * the following log levels. + * + * This module is based on [js-logger](https://github.com/jonnyreeves/js-logger) you can refer + * to its documentation or following our examples. + * @example + * // Log a message + * Logger.info('This is an info log', 445566) + * // [Global] 2021-04-05T15:58:44.893Z - This is an info log 445566 + * @example + * // Create a named logger + * const myLogger = Logger.get('CustomLogger') + * myLogger.setLevel(Logger.WARN) + * myLogger.warn('This is a warning log') + * // [CustomLogger] 2021-04-05T15:59:53.377Z - This is a warning log + * @example + * // Profiling + * // Start timing something + * Logger.time('Timer name') + * + * // ... some time passes ... + * + * // Stop timing something. + * Logger.timeEnd('Timer name') + * // Timer name: 35282.997802734375 ms + */ + jsLogger.useDefaults({ defaultLevel: jsLogger.TRACE }) const formatter = (messages, context) => { @@ -50,56 +83,26 @@ const customHandlers = [] /** * @typedef {Object} LogLevel + * @global * @property {Number} value - The numerical representation of the level. * @property {String} name - Human readable name of the log level. */ -/** - * Manages all log messages from SDK modules, you can use this logger to add your custom - * messages and set your custom log handlers to forward all messages to your own monitoring - * system. - * - * By default all loggers are set in level OFF (Logger.OFF), and there are available - * the following log levels. - * - * This module is based on [js-logger](https://github.com/jonnyreeves/js-logger) you can refer - * to its documentation or following our examples. - * - * - * @namespace - * @property {LogLevel} TRACE - Logger.TRACE - * @property {LogLevel} DEBUG - Logger.DEBUG - * @property {LogLevel} INFO - Logger.INFO - * @property {LogLevel} TIME - Logger.TIME - * @property {LogLevel} WARN - Logger.WARN - * @property {LogLevel} ERROR - Logger.ERROR - * @property {LogLevel} OFF - Logger.OFF - * @example - * // Log a message - * Logger.info('This is an info log', 445566) - * // [Global] 2021-04-05T15:58:44.893Z - This is an info log 445566 - * @example - * // Create a named logger - * const myLogger = Logger.get('CustomLogger') - * myLogger.setLevel(Logger.WARN) - * myLogger.warn('This is a warning log') - * // [CustomLogger] 2021-04-05T15:59:53.377Z - This is a warning log - * @example - * // Profiling - * // Start timing something - * Logger.time('Timer name') - * - * // ... some time passes ... - * - * // Stop timing something. - * Logger.timeEnd('Timer name') - * // Timer name: 35282.997802734375 ms - */ +/** @constant {LogLevel} TRACE - Logger.TRACE */ +/** @constant {LogLevel} DEBUG - Logger.DEBUG */ +/** @constant {LogLevel} INFO - Logger.INFO */ +/** @constant {LogLevel} TIME - Logger.TIME */ +/** @constant {LogLevel} WARN - Logger.WARN */ +/** @constant {LogLevel} ERROR - Logger.ERROR */ +/** @constant {LogLevel} OFF - Logger.OFF */ + const Logger = { ...jsLogger, enabledFor, /** - * Get all logs generated during a session. + * @function + * @name getHistory + * @description Get all logs generated during a session. * All logs are recollected besides the log level selected by the user. * @returns {Array} All logs recollected from level TRACE. * @example Logger.getHistory() @@ -112,19 +115,27 @@ const Logger = { */ getHistory: () => history, /** - * Get the maximum count of logs preserved during a session. + * @function + * @name getHistoryMaxSize + * @description Get the maximum count of logs preserved during a session. * @example Logger.getHistoryMaxSize() */ getHistoryMaxSize: () => maxLogHistorySize, + /** - * Set the maximum count of logs to preserve during a session. + * @function + * @name setHistoryMaxSize + * @description Set the maximum count of logs to preserve during a session. * By default it is set to 10000. * @param {Number} maxSize - Max size of log history. Set 0 to disable history or -1 to unlimited log history. * @example Logger.setHistoryMaxSize(100) */ setHistoryMaxSize: maxSize => { maxLogHistorySize = maxSize }, + /** - * Set log level to all loggers. + * @function + * @name setLevel + * @description Set log level to all loggers. * @param {LogLevel} level - New log level to be set. * @example * // Global Level @@ -139,8 +150,11 @@ const Logger = { namedLoggerLevels[key] = level } }, + /** - * Get global current logger level. + * @function + * @name getLevel + * @description Get global current logger level. * Also you can get the level of any particular logger. * @returns {LogLevel} * @example @@ -155,8 +169,11 @@ const Logger = { * // {value: 5, name: 'WARN'} */ getLevel: () => loggerLevel, + /** - * Gets or creates a named logger. Named loggers are used to group log messages + * @function + * @name get + * @description Gets or creates a named logger. Named loggers are used to group log messages * that refers to a common context. * @param {String} name * @returns {Object} Logger object with same properties and functions as Logger except @@ -187,13 +204,16 @@ const Logger = { * Callback which handles log messages. * * @callback loggerHandler + * @global * @param {any[]} messages - Arguments object with the supplied log messages. * @param {Object} context * @param {LogLevel} context.level - The currrent log level. * @param {String?} context.name - The optional current logger name. */ /** - * Add your custom log handler to Logger at the specified level. + * @function + * @name setHandler + * @description Add your custom log handler to Logger at the specified level. * @param {loggerHandler} handler - Your custom log handler function. * @param {LogLevel} level - Log level to filter messages. * @example diff --git a/packages/millicast-sdk/src/utils/SdpParser.js b/packages/millicast-sdk/src/utils/SdpParser.js index 5581317e..1fea3af8 100644 --- a/packages/millicast-sdk/src/utils/SdpParser.js +++ b/packages/millicast-sdk/src/utils/SdpParser.js @@ -23,21 +23,21 @@ const headerExtensionIdLowerRange = Array.from({ length: (lastHeaderExtensionIdL const headerExtensionIdUppperRange = Array.from({ length: (lastHeaderExtensionIdUpperRange - firstHeaderExtensionIdUpperRange) + 1 }, (_, i) => i + firstHeaderExtensionIdUpperRange) /** - * Simplify SDP parser. - * - * @namespace + * @module SdpParser + * @description Simplify SDP parser. */ -export default class SdpParser { +const SdpParser = { /** - * Parse SDP for support simulcast. - * + * @function + * @name setSimulcast + * @description Parse SDP for support simulcast. * **Only available in Google Chrome.** * @param {String} sdp - Current SDP. * @param {String} codec - Codec. * @returns {String} SDP parsed with simulcast support. * @example SdpParser.setSimulcast(sdp, 'h264') */ - static setSimulcast (sdp, codec) { + setSimulcast (sdp, codec) { logger.info('Setting simulcast. Codec: ', codec) const browserData = new UserAgent() if (!browserData.isChrome()) { @@ -83,15 +83,17 @@ export default class SdpParser { logger.error('Error setting SDP for simulcast: ', e) throw e } - } + }, /** - * Parse SDP for support stereo. + * @function + * @name setStereo + * @description Parse SDP for support stereo. * @param {String} sdp - Current SDP. * @returns {String} SDP parsed with stereo support. * @example SdpParser.setStereo(sdp) */ - static setStereo (sdp) { + setStereo (sdp) { logger.info('Replacing SDP response for support stereo') sdp = sdp.replace( /useinbandfec=1/g, @@ -100,15 +102,17 @@ export default class SdpParser { logger.info('Replaced SDP response for support stereo') logger.debug('New SDP value: ', sdp) return sdp - } + }, /** - * Set DTX (Discontinuous Transmission) to the connection. Advanced configuration of the opus audio codec that allows for a large reduction in the audio traffic. For example, when a participant is silent, the audio packets won't be transmitted. + * @function + * @name setDTX + * @description Set DTX (Discontinuous Transmission) to the connection. Advanced configuration of the opus audio codec that allows for a large reduction in the audio traffic. For example, when a participant is silent, the audio packets won't be transmitted. * @param {String} sdp - Current SDP. * @returns {String} SDP parsed with dtx support. * @example SdpParser.setDTX(sdp) */ - static setDTX (sdp) { + setDTX (sdp) { logger.info('Replacing SDP response for support dtx') sdp = sdp.replace( 'useinbandfec=1', @@ -117,15 +121,17 @@ export default class SdpParser { logger.info('Replaced SDP response for support dtx') logger.debug('New SDP value: ', sdp) return sdp - } + }, /** - * Mangle SDP for adding absolute capture time header extension. + * @function + * @name setAbsoluteCaptureTime + * @description Mangle SDP for adding absolute capture time header extension. * @param {String} sdp - Current SDP. * @returns {String} SDP mungled with abs-capture-time header extension. * @example SdpParser.setAbsoluteCaptureTime(sdp) */ - static setAbsoluteCaptureTime (sdp) { + setAbsoluteCaptureTime (sdp) { const id = SdpParser.getAvailableHeaderExtensionIdRange(sdp)[0] const header = 'a=extmap:' + id + ' http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time\r\n' @@ -137,15 +143,17 @@ export default class SdpParser { logger.debug('New SDP value: ', sdp) return sdp - } + }, /** - * Mangle SDP for adding dependency descriptor header extension. + * @function + * @name setDependencyDescriptor + * @description Mangle SDP for adding dependency descriptor header extension. * @param {String} sdp - Current SDP. * @returns {String} SDP mungled with abs-capture-time header extension. * @example SdpParser.setAbsoluteCaptureTime(sdp) */ - static setDependencyDescriptor (sdp) { + setDependencyDescriptor (sdp) { const id = SdpParser.getAvailableHeaderExtensionIdRange(sdp)[0] const header = 'a=extmap:' + id + ' https://aomediacodec.github.io/av1-rtp-spec/#dependency-descriptor-rtp-header-extension\r\n' @@ -157,16 +165,18 @@ export default class SdpParser { logger.debug('New SDP value: ', sdp) return sdp - } + }, /** - * Parse SDP for desired bitrate. + * @function + * @name setVideoBitrate + * @description Parse SDP for desired bitrate. * @param {String} sdp - Current SDP. * @param {Number} bitrate - Bitrate value in kbps or 0 for unlimited bitrate. * @returns {String} SDP parsed with desired bitrate. * @example SdpParser.setVideoBitrate(sdp, 1000) */ - static setVideoBitrate (sdp, bitrate) { + setVideoBitrate (sdp, bitrate) { if (bitrate < 1) { logger.info('Remove bitrate restrictions') sdp = sdp.replace(/b=AS:.*\r\n/, '').replace(/b=TIAS:.*\r\n/, '') @@ -179,16 +189,18 @@ export default class SdpParser { sdp = offer.toString() } return sdp - } + }, /** - * Remove SDP line. + * @function + * @name removeSdpLine + * @description Remove SDP line. * @param {String} sdp - Current SDP. * @param {String} sdpLine - SDP line to remove. * @returns {String} SDP without the line. * @example SdpParser.removeSdpLine(sdp, 'custom line') */ - static removeSdpLine (sdp, sdpLine) { + removeSdpLine (sdp, sdpLine) { logger.debug('SDP before trimming: ', sdp) sdp = sdp .split('\n') @@ -198,34 +210,37 @@ export default class SdpParser { .join('\n') logger.debug('SDP trimmed result: ', sdp) return sdp - } + }, /** - * Replace codec name of a SDP. + * @function + * @name adaptCodecName + * @description Replace codec name of a SDP. * @param {String} sdp - Current SDP. * @param {String} codec - Codec name to be replaced. * @param {String} newCodecName - New codec name to replace. * @returns {String} SDP updated with new codec name. */ - static adaptCodecName (sdp, codec, newCodecName) { + adaptCodecName (sdp, codec, newCodecName) { if (!sdp) { return sdp } const regex = new RegExp(`${codec}`, 'i') return sdp.replace(regex, newCodecName) - } + }, /** - * Parse SDP for support multiopus. - * + * @function + * @name setMultiopus + * @description Parse SDP for support multiopus. * **Only available in Google Chrome.** * @param {String} sdp - Current SDP. * @param {MediaStream} mediaStream - MediaStream offered in the stream. * @returns {String} SDP parsed with multiopus support. * @example SdpParser.setMultiopus(sdp, mediaStream) */ - static setMultiopus (sdp, mediaStream) { + setMultiopus (sdp, mediaStream) { const browserData = new UserAgent() if (!browserData.isFirefox() && (!mediaStream || hasAudioMultichannel(mediaStream))) { if (!sdp.includes('multiopus/48000/6')) { @@ -249,15 +264,16 @@ export default class SdpParser { } } return sdp - } + }, /** - * Gets all available payload type IDs of the current Session Description. - * + * @function + * @name getAvailablePayloadTypeRange + * @description Gets all available payload type IDs of the current Session Description. * @param {String} sdp - Current SDP. * @returns {Array} All available payload type ids. */ - static getAvailablePayloadTypeRange (sdp) { + getAvailablePayloadTypeRange (sdp) { const regex = /m=(?:.*) (?:.*) UDP\/TLS\/RTP\/SAVPF (.*)\r\n/gm const matches = sdp.matchAll(regex) @@ -269,15 +285,16 @@ export default class SdpParser { } return ptAvailable - } + }, /** - * Gets all available header extension IDs of the current Session Description. - * + * @function + * @name getAvailableHeaderExtensionIdRange + * @description Gets all available header extension IDs of the current Session Description. * @param {String} sdp - Current SDP. * @returns {Array} All available header extension IDs. */ - static getAvailableHeaderExtensionIdRange (sdp) { + getAvailableHeaderExtensionIdRange (sdp) { const regex = /a=extmap:(\d+)(?:.*)\r\n/gm const matches = sdp.matchAll(regex) @@ -289,16 +306,17 @@ export default class SdpParser { } return idAvailable - } + }, /** - * Renegotiate remote sdp based on previous description. + * @function + * @name renegotiate + * @description Renegotiate remote sdp based on previous description. * This function will fill missing m-lines cloning on the remote description by cloning the codec and extensions already negotiated for that media - * * @param {String} localDescription - Updated local sdp * @param {String} remoteDescription - Previous remote sdp */ - static renegotiate (localDescription, remoteDescription) { + renegotiate (localDescription, remoteDescription) { const offer = SDPInfo.parse(localDescription) const answer = SDPInfo.parse(remoteDescription) @@ -330,15 +348,17 @@ export default class SdpParser { } return answer.toString() - } + }, /** - * Adds missing extensions of each video section in the localDescription + * @function + * @name updateMissingVideoExtensions + * @description Adds missing extensions of each video section in the localDescription * @param {String} localDescription - Previous local sdp * @param {String} remoteDescription - Remote sdp * @returns {String} SDP updated with missing extensions. */ - static updateMissingVideoExtensions (localDescription, remoteDescription) { + updateMissingVideoExtensions (localDescription, remoteDescription) { const offer = SDPInfo.parse(localDescription) const answer = SDPInfo.parse(remoteDescription) // Get extensions of answer @@ -362,11 +382,9 @@ export default class SdpParser { } } -/** - * Checks if mediaStream has more than 2 audio channels. - * @param {MediaStream} mediaStream - MediaStream to verify. - * @returns {Boolean} returns true if MediaStream has more than 2 channels. - */ +// Checks if mediaStream has more than 2 audio channels. const hasAudioMultichannel = (mediaStream) => { return mediaStream.getAudioTracks().some(value => value.getSettings().channelCount > 2) } + +export default SdpParser From 656fb5430165dd85af50471f78234465c0421744 Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Mon, 22 Jan 2024 21:13:42 +0100 Subject: [PATCH 15/16] Expose SDK version through Logger.VERSION (#308) --- packages/millicast-sdk/src/Logger.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/millicast-sdk/src/Logger.js b/packages/millicast-sdk/src/Logger.js index ac1ad728..fdd614ff 100644 --- a/packages/millicast-sdk/src/Logger.js +++ b/packages/millicast-sdk/src/Logger.js @@ -1,4 +1,5 @@ import jsLogger from 'js-logger' +import { version } from '../package.json' /** * @module Logger @@ -231,7 +232,8 @@ const Logger = { * * Logger.setHandler(myHandler, Logger.INFO) */ - setHandler: (handler, level) => { customHandlers.push({ handler, level }) } + setHandler: (handler, level) => { customHandlers.push({ handler, level }) }, + VERSION: version } export default Logger From b64cc3b26e3844fdac4d4a9cc2a43c335cddcf6d Mon Sep 17 00:00:00 2001 From: Santiago Souto Date: Mon, 22 Jan 2024 18:38:49 -0300 Subject: [PATCH 16/16] Bump SDK version --- packages/millicast-sdk/package-lock.json | 4 ++-- packages/millicast-sdk/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/millicast-sdk/package-lock.json b/packages/millicast-sdk/package-lock.json index 1c7da9d6..194f5c6c 100644 --- a/packages/millicast-sdk/package-lock.json +++ b/packages/millicast-sdk/package-lock.json @@ -1,12 +1,12 @@ { "name": "@millicast/sdk", - "version": "0.1.42", + "version": "0.1.43", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@millicast/sdk", - "version": "0.1.42", + "version": "0.1.43", "license": "See in LICENSE file", "dependencies": { "@types/node": "^18.11.10", diff --git a/packages/millicast-sdk/package.json b/packages/millicast-sdk/package.json index 0a4edc21..7818d557 100644 --- a/packages/millicast-sdk/package.json +++ b/packages/millicast-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@millicast/sdk", - "version": "0.1.42", + "version": "0.1.43", "description": "SDK for building a realtime broadcaster using the Millicast platform.", "keywords": [ "sdk",

|jTXb+EUuWu;Y-nYbg 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 VO`+#PZO?%pWqEbEcQR%{{|Cp`*0TTr literal 0 HcmV?d00001 diff --git a/packages/millicast-viewer-demo/.env.sample b/packages/millicast-viewer-demo/.env.sample index 394d4556..c683658d 100644 --- a/packages/millicast-viewer-demo/.env.sample +++ b/packages/millicast-viewer-demo/.env.sample @@ -1,3 +1,3 @@ -# Make a .env file with the following vars -MILLICAST_STREAM_NAME=test -MILLICAST_ACCOUNT_ID=test \ No newline at end of file +# Create a .env file with the following variables: +MILLICAST_STREAM_NAME=yourStreamName +MILLICAST_ACCOUNT_ID=yourAccountId \ No newline at end of file diff --git a/packages/millicast-viewer-demo/README.md b/packages/millicast-viewer-demo/README.md index 444e8a0c..0171ff5e 100644 --- a/packages/millicast-viewer-demo/README.md +++ b/packages/millicast-viewer-demo/README.md @@ -1,26 +1,44 @@ # Millicast Viewer Demo -## Setup -Add a `.env` file in current path. You can find the following example in `.env.sample`: +The Viewer demo application demonstrates playback capability that you can add to your application using the Millicast SDK. You can use it to experience and test receiving high-value content with ultra-low latency. + +## Getting started + +1. Go to the [Dolby.io Streaming dashboard](https://dashboard.dolby.io/) and select your token. If you do not have a token, create it by clicking the **create** button. + +2. Locate your `account ID` in the **token details** tab and copy the token. + +3. Select the **publishing** tab and copy your `stream name`. + +4. Open the Millicast SDK in a code editor, create a `.env` file in the `millicast-viewer-demo` folder, and add the following data to the file: + ```sh -# Make a .env file with the following vars MILLICAST_STREAM_NAME=yourStreamName MILLICAST_ACCOUNT_ID=yourAccountId ``` -Install all dependencies using: +This content is also available in the `.env.sample` file. + +5. Replace `yourStreamName` and `yourAccountId` with the data copied from the dashboard. + +6. Open a terminal in the `millicast-viewer-demo` folder. + +7. Install all dependencies: ```sh npm ci ``` - -## Run -To start running this demo, the following command will publish the app at `http://localhost:10002` and enter in watching mode. +8. Run the application: ```sh npm start ``` -## Changes -If any changes was applied in `public` directory. Make them effective by following command: +9. Open `http://localhost:10002` and test the application. + +To receive a stream, you need to broadcast it first. You can do it either via the Dolby.io dashboard by clicking the **broadcast** button, located next to your token, or you can use the [Publisher](../millicast-publisher-demo/) demo application. After you start broadcasting, the Viewer application will be able to play the streamed content. + +## Introducing updates +After introducing any changes to the `public` directory, use the following command: ``` npm run prepare ``` + diff --git a/packages/millicast-webaudio-delay-demo/.env.sample b/packages/millicast-webaudio-delay-demo/.env.sample new file mode 100644 index 00000000..753a2d85 --- /dev/null +++ b/packages/millicast-webaudio-delay-demo/.env.sample @@ -0,0 +1,3 @@ +# Create a .env file with the following variables: +MILLICAST_ACCOUNT_ID=yourAccountId +MILLICAST_STREAM_NAME=yourStreamName \ No newline at end of file diff --git a/packages/millicast-webaudio-delay-demo/README.md b/packages/millicast-webaudio-delay-demo/README.md index cc2d0444..cd34e852 100644 --- a/packages/millicast-webaudio-delay-demo/README.md +++ b/packages/millicast-webaudio-delay-demo/README.md @@ -1,20 +1,45 @@ -# Millicast WebAudio Delay demo +# Millicast WebAudio Delay Demo + +The WebAudio Delay demo application lets you interact with audio delay between broadcasting and viewing a Dolby.io real-time stream. By moving the red slider you can increase the latency and compare its impact on your audio. + + + +## Getting started + +1. Go to the [Dolby.io Streaming dashboard](https://dashboard.dolby.io/) and select your token. If you do not have a token, create it by clicking the **create** button. + +2. Locate your `account ID` in the **token details** tab and copy the token. + +3. Select the **publishing** tab and copy your `stream name`. + +4. Open the Millicast SDK in a code editor, create a `.env` file in the `millicast-webaudio-delay-demo` folder, and add the following data to the file: -## Setup -Add a `.env` file in current path. You can find the following example in `.env.sample`: ```sh -# Make a .env file with the following vars MILLICAST_STREAM_NAME=yourStreamName MILLICAST_ACCOUNT_ID=yourAccountId ``` -Install all dependencies using: +This content is also available in the `.env.sample` file. + +5. Replace `yourStreamName` and `yourAccountId` with the data copied from the dashboard. + +6. Open a terminal in the `millicast-webaudio-delay-demo` folder. + +7. Install all dependencies: ```sh npm ci ``` - -## Run -To start running this demo, the following command will publish the app at `http://localhost:10003` and enter in watching mode. +8. Run the application: ```sh npm start ``` + +9. Open `http://localhost:10003` and test the application. + +You need to broadcast a stream to experience the latency. You can do it either via the Dolby.io dashboard by clicking the **broadcast** button, located next to your token, or you can use the [Publisher](../millicast-publisher-demo/) demo application. After you start broadcasting, you can move the red slider in the application to change the latency. To listen to the broadcasted audio, we recommend using the [Viewer](../millicast-viewer-demo/) demo application. + +## Introducing updates +After introducing any changes to the `public` directory, use the following command: +``` +npm run prepare +``` \ No newline at end of file diff --git a/packages/millicast-webaudio-delay-demo/delay_app_img.png b/packages/millicast-webaudio-delay-demo/delay_app_img.png new file mode 100644 index 0000000000000000000000000000000000000000..62867d527ba9c61c46e91dd415226c69b290e90d GIT binary patch literal 39140 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