From e8162f483f02e0ad5c2a7fefdd79f217c2c35194 Mon Sep 17 00:00:00 2001 From: Vanilagy <1696106+Vanilagy@users.noreply.github.com> Date: Sat, 15 Aug 2026 17:50:47 +0200 Subject: [PATCH] Add @mediabunny/dts extension package --- .github/workflows/release.yml | 5 + .gitignore | 1 + docs/.vitepress/config.mts | 1 + docs/api-config.json | 1 + docs/codec-registry/dts.md | 2 +- docs/guide/extensions/dts.md | 37 ++ docs/guide/supported-formats-and-codecs.md | 2 +- examples/file-compression/file-compression.ts | 2 + examples/hls-transcoding/hls-transcoding.ts | 2 + examples/media-player/media-player.ts | 2 + .../thumbnail-generation.ts | 2 + package-lock.json | 19 + package.json | 2 +- packages/aac-encoder/package.json | 2 +- packages/ac3/package.json | 2 +- packages/dts/.gitattributes | 1 + packages/dts/LICENSE | 373 ++++++++++++++++++ packages/dts/README.md | 106 +++++ packages/dts/api-extractor.json | 37 ++ packages/dts/build/dts.js | Bin 0 -> 927592 bytes packages/dts/package.json | 59 +++ packages/dts/src/bridge.c | 321 +++++++++++++++ packages/dts/src/codec.worker.ts | 306 ++++++++++++++ packages/dts/src/decoder.ts | 80 ++++ packages/dts/src/encoder.ts | 197 +++++++++ packages/dts/src/index.ts | 23 ++ packages/dts/src/shared.ts | 100 +++++ packages/dts/src/worker-client.ts | 109 +++++ packages/dts/tsconfig.json | 24 ++ packages/dts/tsdoc.json | 4 + packages/server/src/audio-encoder.ts | 23 +- scripts/build.sh | 5 + scripts/bundle.ts | 32 ++ scripts/check.sh | 3 + scripts/ensure-license-headers.ts | 1 + shared/dts-misc.ts | 33 ++ src/media-sink.ts | 14 +- test/browser/mpeg-ts-muxing.test.ts | 2 +- test/node/dts.test.ts | 236 +++++++++++ vite.config.ts | 2 + 40 files changed, 2142 insertions(+), 31 deletions(-) create mode 100644 docs/guide/extensions/dts.md create mode 100644 packages/dts/.gitattributes create mode 100644 packages/dts/LICENSE create mode 100644 packages/dts/README.md create mode 100644 packages/dts/api-extractor.json create mode 100644 packages/dts/build/dts.js create mode 100644 packages/dts/package.json create mode 100644 packages/dts/src/bridge.c create mode 100644 packages/dts/src/codec.worker.ts create mode 100644 packages/dts/src/decoder.ts create mode 100644 packages/dts/src/encoder.ts create mode 100644 packages/dts/src/index.ts create mode 100644 packages/dts/src/shared.ts create mode 100644 packages/dts/src/worker-client.ts create mode 100644 packages/dts/tsconfig.json create mode 100644 packages/dts/tsdoc.json create mode 100644 shared/dts-misc.ts diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 744c4a1..550b77c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -75,6 +75,11 @@ jobs: packages/ac3/dist/bundles/mediabunny-ac3.mjs packages/ac3/dist/bundles/mediabunny-ac3.min.mjs packages/ac3/dist/mediabunny-ac3.d.ts + packages/dts/dist/bundles/mediabunny-dts.js + packages/dts/dist/bundles/mediabunny-dts.min.js + packages/dts/dist/bundles/mediabunny-dts.mjs + packages/dts/dist/bundles/mediabunny-dts.min.mjs + packages/dts/dist/mediabunny-dts.d.ts packages/aac-encoder/dist/bundles/mediabunny-aac-encoder.js packages/aac-encoder/dist/bundles/mediabunny-aac-encoder.min.js packages/aac-encoder/dist/bundles/mediabunny-aac-encoder.mjs diff --git a/.gitignore b/.gitignore index 30c66a0..8546073 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ node_modules packages/mp3-encoder/dist packages/ac3/dist +packages/dts/dist packages/aac-encoder/dist packages/flac-encoder/dist packages/server/dist diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 9720265..24dbe67 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -125,6 +125,7 @@ export default withMermaid({ { text: 'mp3-encoder', link: '/guide/extensions/mp3-encoder' }, { text: 'aac-encoder', link: '/guide/extensions/aac-encoder' }, { text: 'ac3', link: '/guide/extensions/ac3' }, + { text: 'dts', link: '/guide/extensions/dts' }, { text: 'flac-encoder', link: '/guide/extensions/flac-encoder' }, { text: 'prores', link: '/guide/extensions/prores' }, ], diff --git a/docs/api-config.json b/docs/api-config.json index b56656e..39b9878 100644 --- a/docs/api-config.json +++ b/docs/api-config.json @@ -25,6 +25,7 @@ "@mediabunny/server": "Adds full video/audio decoder and encoder support to Mediabunny running in server-side environments such as Node, Bun, or Deno.", "@mediabunny/mp3-encoder": "Adds MP3 encoder support to Mediabunny.", "@mediabunny/ac3": "Adds AC-3/E-AC-3 decoder and encoder support to Mediabunny.", + "@mediabunny/dts": "Adds DTS decoder and encoder support to Mediabunny.", "@mediabunny/aac-encoder": "Polyfills AAC encoder support to Mediabunny.", "@mediabunny/flac-encoder": "Adds FLAC encoder support to Mediabunny.", "@mediabunny/prores": "Adds Apple ProRes decoder support to Mediabunny." diff --git a/docs/codec-registry/dts.md b/docs/codec-registry/dts.md index 3f0d5b6..88ef8b2 100644 --- a/docs/codec-registry/dts.md +++ b/docs/codec-registry/dts.md @@ -1,5 +1,5 @@ --- -description: DTS (DTS Coherent Acoustics) audio codec definition, defining legal codec strings, decoder configs, and packet data formats. +description: DTS audio codec definition, defining legal codec strings, decoder configs, and packet data formats. --- + +``` + +This will expose the global objects `Mediabunny` and `MediabunnyDts`. Use `mediabunny-dts.d.ts` to provide types for these globals. You can download the built distribution files from the [releases page](https://github.com/Vanilagy/mediabunny/releases). + +## Usage + +```ts +import { registerDtsDecoder, registerDtsEncoder } from '@mediabunny/dts'; + +registerDtsDecoder(); +registerDtsEncoder(); +``` +That's it - Mediabunny now uses the registered DTS decoder and encoder automatically. diff --git a/docs/guide/supported-formats-and-codecs.md b/docs/guide/supported-formats-and-codecs.md index 6158de2..bc4c537 100644 --- a/docs/guide/supported-formats-and-codecs.md +++ b/docs/guide/supported-formats-and-codecs.md @@ -114,7 +114,7 @@ For HLS, the supported codecs depend on the segment format chosen. [^mp3]: MP3 encoding is not supported by WebCodecs. You can polyfill it with the [`@mediabunny/mp3-encoder`](./extensions/mp3-encoder) extension package. [^flac]: FLAC encoding is not supported by WebCodecs. You can polyfill it with the [`@mediabunny/flac-encoder`](./extensions/flac-encoder) extension package. [^ac3]: AC-3 and E-AC-3 are not natively supported by WebCodecs. To encode or decode these codecs, you can use the [`@mediabunny/ac3`](./extensions/ac3) extension package. -[^dts]: DTS is not supported by WebCodecs. The [`@mediabunny/server`](./extensions/server) extension package provides both decoding and encoding support for server-side environments. +[^dts]: DTS is not natively supported by WebCodecs. To encode or decode it, you can use the [`@mediabunny/dts`](./extensions/dts) extension package. [^webm]: WebM only supports a small subset of the codecs supported by Matroska. However, this library can technically read all codecs from a WebM that are supported by Matroska. [^webvtt]: WebVTT can only be written, not read. diff --git a/examples/file-compression/file-compression.ts b/examples/file-compression/file-compression.ts index 5f9370b..cba16e8 100644 --- a/examples/file-compression/file-compression.ts +++ b/examples/file-compression/file-compression.ts @@ -10,12 +10,14 @@ import { UrlSource, } from 'mediabunny'; import { registerAc3Decoder } from '@mediabunny/ac3'; +import { registerDtsDecoder } from '@mediabunny/dts'; import { registerProresDecoder } from '@mediabunny/prores'; import SampleFileUrl from '../../docs/assets/big-buck-bunny-trimmed.mp4'; // Enable codecs that aren't natively supported by WebCodecs. registerAc3Decoder(); +registerDtsDecoder(); registerProresDecoder(); (document.querySelector('#sample-file-download') as HTMLAnchorElement).href = SampleFileUrl; diff --git a/examples/hls-transcoding/hls-transcoding.ts b/examples/hls-transcoding/hls-transcoding.ts index fc13c1d..a85fdde 100644 --- a/examples/hls-transcoding/hls-transcoding.ts +++ b/examples/hls-transcoding/hls-transcoding.ts @@ -12,12 +12,14 @@ import { UrlSource, } from 'mediabunny'; import { registerAc3Decoder } from '@mediabunny/ac3'; +import { registerDtsDecoder } from '@mediabunny/dts'; import { registerProresDecoder } from '@mediabunny/prores'; import SampleFileUrl from '../../docs/assets/big-buck-bunny-trimmed.mp4'; // Enable codecs that aren't natively supported by WebCodecs. registerAc3Decoder(); +registerDtsDecoder(); registerProresDecoder(); (document.querySelector('#sample-file-download') as HTMLAnchorElement).href = SampleFileUrl; diff --git a/examples/media-player/media-player.ts b/examples/media-player/media-player.ts index 6d851e2..1572163 100644 --- a/examples/media-player/media-player.ts +++ b/examples/media-player/media-player.ts @@ -9,12 +9,14 @@ import { WrappedCanvas, } from 'mediabunny'; import { registerAc3Decoder } from '@mediabunny/ac3'; +import { registerDtsDecoder } from '@mediabunny/dts'; import { registerProresDecoder } from '@mediabunny/prores'; import SampleFileUrl from '../../docs/assets/big-buck-bunny-trimmed.mp4'; // Enable codecs that aren't natively supported by WebCodecs. registerAc3Decoder(); +registerDtsDecoder(); registerProresDecoder(); (document.querySelector('#sample-file-download') as HTMLAnchorElement).href = SampleFileUrl; diff --git a/examples/thumbnail-generation/thumbnail-generation.ts b/examples/thumbnail-generation/thumbnail-generation.ts index 69a995a..7add9bc 100644 --- a/examples/thumbnail-generation/thumbnail-generation.ts +++ b/examples/thumbnail-generation/thumbnail-generation.ts @@ -1,11 +1,13 @@ import { Input, ALL_FORMATS, BlobSource, UrlSource, CanvasSink } from 'mediabunny'; import { registerAc3Decoder } from '@mediabunny/ac3'; +import { registerDtsDecoder } from '@mediabunny/dts'; import { registerProresDecoder } from '@mediabunny/prores'; import SampleFileUrl from '../../docs/assets/big-buck-bunny-trimmed.mp4'; // Enable codecs that aren't natively supported by WebCodecs. registerAc3Decoder(); +registerDtsDecoder(); registerProresDecoder(); (document.querySelector('#sample-file-download') as HTMLAnchorElement).href = SampleFileUrl; diff --git a/package-lock.json b/package-lock.json index e8a6e4e..63832d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1453,6 +1453,10 @@ "resolved": "packages/ac3", "link": true }, + "node_modules/@mediabunny/dts": { + "resolved": "packages/dts", + "link": true + }, "node_modules/@mediabunny/flac-encoder": { "resolved": "packages/flac-encoder", "link": true @@ -12982,6 +12986,21 @@ "mediabunny": "^1.0.0" } }, + "packages/dts": { + "name": "@mediabunny/dts", + "version": "1.54.0", + "license": "MPL-2.0", + "devDependencies": { + "@types/emscripten": "^1.40.1" + }, + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/Vanilagy" + }, + "peerDependencies": { + "mediabunny": "^1.0.0" + } + }, "packages/flac-encoder": { "name": "@mediabunny/flac-encoder", "version": "1.54.0", diff --git a/package.json b/package.json index b3ea4ae..651137d 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,7 @@ "docs:dev": "vitepress dev docs", "docs:build": "npm run build && npm run docs:generate && vitepress build docs && npm run examples:build && cp dist/mediabunny.d.ts dist-docs/", "docs:preview": "vitepress preview docs", - "docs:generate": "tsx scripts/generate-api-docs.ts src/index.ts packages/mp3-encoder/src/index.ts packages/ac3/src/index.ts packages/aac-encoder/src/index.ts packages/flac-encoder/src/index.ts packages/prores/src/index.ts packages/server/src/index.ts docs/api-config.json", + "docs:generate": "tsx scripts/generate-api-docs.ts src/index.ts packages/mp3-encoder/src/index.ts packages/ac3/src/index.ts packages/dts/src/index.ts packages/aac-encoder/src/index.ts packages/flac-encoder/src/index.ts packages/prores/src/index.ts packages/server/src/index.ts docs/api-config.json", "dev": "vite", "examples:build": "vite build", "fix-build-import-paths": "tsx scripts/add-import-extensions.ts", diff --git a/packages/aac-encoder/package.json b/packages/aac-encoder/package.json index 0efade3..4cf829a 100644 --- a/packages/aac-encoder/package.json +++ b/packages/aac-encoder/package.json @@ -2,7 +2,7 @@ "name": "@mediabunny/aac-encoder", "author": "Vanilagy", "version": "1.54.0", - "description": "AAC encoder extension for Mediabunny, based on FFmpeg.", + "description": "AAC encoder extension for Mediabunny, based on libavcodec.", "main": "./dist/bundles/mediabunny-aac-encoder.mjs", "module": "./dist/bundles/mediabunny-aac-encoder.mjs", "types": "./dist/modules/src/index.d.ts", diff --git a/packages/ac3/package.json b/packages/ac3/package.json index eb7be18..2b2fbe6 100644 --- a/packages/ac3/package.json +++ b/packages/ac3/package.json @@ -2,7 +2,7 @@ "name": "@mediabunny/ac3", "author": "Vanilagy", "version": "1.54.0", - "description": "AC-3 and E-AC-3 (Dolby Digital) decoder and encoder extension for Mediabunny, based on FFmpeg.", + "description": "AC-3 and E-AC-3 (Dolby Digital) decoder and encoder extension for Mediabunny, based on libavcodec.", "main": "./dist/bundles/mediabunny-ac3.mjs", "module": "./dist/bundles/mediabunny-ac3.mjs", "types": "./dist/modules/src/index.d.ts", diff --git a/packages/dts/.gitattributes b/packages/dts/.gitattributes new file mode 100644 index 0000000..72ef19a --- /dev/null +++ b/packages/dts/.gitattributes @@ -0,0 +1 @@ +build/* linguist-generated diff --git a/packages/dts/LICENSE b/packages/dts/LICENSE new file mode 100644 index 0000000..d0a1fa1 --- /dev/null +++ b/packages/dts/LICENSE @@ -0,0 +1,373 @@ +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at https://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. diff --git a/packages/dts/README.md b/packages/dts/README.md new file mode 100644 index 0000000..7f74a3e --- /dev/null +++ b/packages/dts/README.md @@ -0,0 +1,106 @@ +# @mediabunny/dts + +[![](https://img.shields.io/npm/v/@mediabunny/dts)](https://www.npmjs.com/package/@mediabunny/dts) +[![](https://img.shields.io/bundlephobia/minzip/@mediabunny/dts)](https://bundlephobia.com/package/@mediabunny/dts) +[![](https://img.shields.io/npm/dm/@mediabunny/dts)](https://www.npmjs.com/package/@mediabunny/dts) +[![](https://img.shields.io/discord/1390044844285497344?logo=discord&label=Discord)](https://discord.gg/hmpkyYuS4U) + +
+ +
+ +Browsers have no support for the DTS audio codec in their WebCodecs implementations. This extension package provides both a decoder and encoder for use with [Mediabunny](https://github.com/Vanilagy/mediabunny), allowing you to decode and encode this codec directly in the browser. It is implemented using Mediabunny's [custom coder API](https://mediabunny.dev/guide/supported-formats-and-codecs#custom-coders) and uses a fast, size-optimized WASM build of [FFmpeg](https://ffmpeg.org/)'s DTS coders under the hood. + +> This package, like the rest of Mediabunny, is enabled by its [sponsors](https://mediabunny.dev/#sponsors) and their donations. If you've derived value from this package, please consider [leaving a donation](https://github.com/sponsors/Vanilagy)! 💘 + +## Installation + +This library peer-depends on Mediabunny. Install both using npm: +```bash +npm install mediabunny @mediabunny/dts +``` + +Alternatively, directly include them using a script tag: +```html + + +``` + +This will expose the global objects `Mediabunny` and `MediabunnyDts`. Use `mediabunny-dts.d.ts` to provide types for these globals. You can download the built distribution files from the [releases page](https://github.com/Vanilagy/mediabunny/releases). + +## Usage + +```ts +import { registerDtsDecoder, registerDtsEncoder } from '@mediabunny/dts'; + +registerDtsDecoder(); +registerDtsEncoder(); +``` +That's it - Mediabunny now uses the registered DTS decoder and encoder automatically. + +## Building and development + +For simplicity, all built WASM artifacts are included in the repo, since these rarely change. However, here are the instructions for building them from scratch: + +[Install Emscripten](https://emscripten.org/docs/getting_started/downloads.html) and clone [FFmpeg](https://github.com/FFmpeg/FFmpeg). Then, from the Mediabunny root and with Emscripten sourced in: + +```bash +export FFMPEG_PATH=/path/to/ffmpeg +export MEDIABUNNY_ROOT=$PWD + +# Build FFmpeg +cd $FFMPEG_PATH +emmake make distclean +emconfigure ./configure \ + --target-os=none \ + --arch=x86_32 \ + --enable-cross-compile \ + --disable-asm \ + --disable-x86asm \ + --disable-inline-asm \ + --disable-programs \ + --disable-doc \ + --disable-debug \ + --disable-all \ + --disable-everything \ + --disable-autodetect \ + --disable-pthreads \ + --disable-runtime-cpudetect \ + --enable-avcodec \ + --enable-decoder=dca \ + --enable-encoder=dca \ + --cc="emcc" \ + --cxx=em++ \ + --ar=emar \ + --ranlib=emranlib \ + --extra-cflags="-DNDEBUG -Oz -flto -msimd128" \ + --extra-ldflags="-Oz -flto" +emmake make + +# Compile the bridge between JavaScript and FFmpeg's API +cd $MEDIABUNNY_ROOT/packages/dts +emcc src/bridge.c \ + $FFMPEG_PATH/libavcodec/libavcodec.a \ + $FFMPEG_PATH/libavutil/libavutil.a \ + -I$FFMPEG_PATH \ + -s MODULARIZE=1 \ + -s EXPORT_ES6=1 \ + -s SINGLE_FILE=1 \ + -s ALLOW_MEMORY_GROWTH=1 \ + -s ENVIRONMENT=web,worker \ + -s FILESYSTEM=0 \ + -s MALLOC=emmalloc \ + -s SUPPORT_LONGJMP=0 \ + -s EXPORTED_RUNTIME_METHODS=cwrap,HEAPU8 \ + -s EXPORTED_FUNCTIONS=_malloc,_free \ + -msimd128 \ + -flto \ + -Oz \ + -o build/dts.js +``` + +This generates `build/dts.js`, which contains both the JavaScript "glue code" as well as the compiled WASM inlined. + +### Building the package + +Then, the complete JavaScript package can be built alongside the rest of Mediabunny by running `npm run build` in Mediabunny's root. diff --git a/packages/dts/api-extractor.json b/packages/dts/api-extractor.json new file mode 100644 index 0000000..8cb42c0 --- /dev/null +++ b/packages/dts/api-extractor.json @@ -0,0 +1,37 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "mainEntryPointFilePath": "dist/modules/src/index.d.ts", + "bundledPackages": [], + "compiler": {}, + "apiReport": { + "enabled": false + }, + "docModel": { + "enabled": false + }, + "dtsRollup": { + "enabled": true, + "untrimmedFilePath": "dist/mediabunny-dts.d.ts" + }, + "tsdocMetadata": { + "enabled": false + }, + "messages": { + "compilerMessageReporting": { + "default": { + "logLevel": "warning" + } + }, + "extractorMessageReporting": { + "default": { + "logLevel": "warning" + } + }, + "tsdocMessageReporting": { + "default": { + "logLevel": "warning" + } + } + }, + "newlineKind": "lf" +} diff --git a/packages/dts/build/dts.js b/packages/dts/build/dts.js new file mode 100644 index 0000000000000000000000000000000000000000..ee435075b92bc851bbdfe37e446649856d5f7eb9 GIT binary patch literal 927592 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⋙Swc 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 +#include +#include +#include +#include "libavcodec/avcodec.h" +#include "libavutil/opt.h" +#include "libavutil/channel_layout.h" + +typedef struct { + AVCodecContext *codec_ctx; + AVPacket *packet; + AVFrame *frame; +} DecoderContext; + +EMSCRIPTEN_KEEPALIVE +DecoderContext *init_decoder() { + const AVCodec *codec = avcodec_find_decoder(AV_CODEC_ID_DTS); + if (!codec) return NULL; + + AVCodecContext *codec_ctx = avcodec_alloc_context3(codec); + if (!codec_ctx) return NULL; + + if (avcodec_open2(codec_ctx, codec, NULL) < 0) { + avcodec_free_context(&codec_ctx); + return NULL; + } + + AVPacket *packet = av_packet_alloc(); + if (!packet) { + avcodec_free_context(&codec_ctx); + return NULL; + } + + AVFrame *frame = av_frame_alloc(); + if (!frame) { + av_packet_free(&packet); + avcodec_free_context(&codec_ctx); + return NULL; + } + + DecoderContext *ctx = malloc(sizeof(DecoderContext)); + if (!ctx) { + av_frame_free(&frame); + av_packet_free(&packet); + avcodec_free_context(&codec_ctx); + return NULL; + } + + ctx->codec_ctx = codec_ctx; + ctx->packet = packet; + ctx->frame = frame; + + return ctx; +} + +EMSCRIPTEN_KEEPALIVE +uint8_t *configure_decode_packet(DecoderContext *ctx, int size) { + if (av_new_packet(ctx->packet, size) < 0) { + return NULL; + } + + return ctx->packet->data; +} + +EMSCRIPTEN_KEEPALIVE +int decode_packet(DecoderContext *ctx, int64_t pts) { + ctx->packet->pts = pts; + int ret = avcodec_send_packet(ctx->codec_ctx, ctx->packet); + av_packet_unref(ctx->packet); + if (ret < 0) return ret; + + ret = avcodec_receive_frame(ctx->codec_ctx, ctx->frame); + if (ret < 0) return ret; + + return 0; +} + +EMSCRIPTEN_KEEPALIVE +int get_decoded_format(DecoderContext *ctx) { + return ctx->frame->format; +} + +EMSCRIPTEN_KEEPALIVE +uint8_t *get_decoded_plane_ptr(DecoderContext *ctx, int plane) { + return ctx->frame->data[plane]; +} + +EMSCRIPTEN_KEEPALIVE +int get_decoded_channels(DecoderContext *ctx) { + return ctx->frame->ch_layout.nb_channels; +} + +EMSCRIPTEN_KEEPALIVE +int get_decoded_sample_rate(DecoderContext *ctx) { + return ctx->frame->sample_rate; +} + +EMSCRIPTEN_KEEPALIVE +int get_decoded_sample_count(DecoderContext *ctx) { + return ctx->frame->nb_samples; +} + +EMSCRIPTEN_KEEPALIVE +int64_t get_decoded_pts(DecoderContext *ctx) { + return ctx->frame->pts; +} + +EMSCRIPTEN_KEEPALIVE +void flush_decoder(DecoderContext *ctx) { + avcodec_send_packet(ctx->codec_ctx, NULL); + while (avcodec_receive_frame(ctx->codec_ctx, ctx->frame) == 0) {} + avcodec_flush_buffers(ctx->codec_ctx); +} + +EMSCRIPTEN_KEEPALIVE +void close_decoder(DecoderContext *ctx) { + av_frame_free(&ctx->frame); + av_packet_free(&ctx->packet); + avcodec_free_context(&ctx->codec_ctx); + free(ctx); +} + +typedef struct { + AVCodecContext *codec_ctx; + AVPacket *packet; + AVFrame *frame; + float *input_buffer; + int input_buffer_size; + int64_t encoded_pts; + int encoded_duration; +} EncoderContext; + +/** + * DTS insists on the side-based surround layouts and rejects the back-based ones that av_channel_layout_default hands + * out for 4, 5 and 6 channels. + */ +static int set_dts_channel_layout(AVChannelLayout *layout, int channels) { + switch (channels) { + case 1: { + AVChannelLayout mono = AV_CHANNEL_LAYOUT_MONO; + return av_channel_layout_copy(layout, &mono); + } + case 2: { + AVChannelLayout stereo = AV_CHANNEL_LAYOUT_STEREO; + return av_channel_layout_copy(layout, &stereo); + } + case 4: { + AVChannelLayout quad_side = AV_CHANNEL_LAYOUT_2_2; + return av_channel_layout_copy(layout, &quad_side); + } + case 5: { + AVChannelLayout five_zero = AV_CHANNEL_LAYOUT_5POINT0; + return av_channel_layout_copy(layout, &five_zero); + } + case 6: { + AVChannelLayout five_one = AV_CHANNEL_LAYOUT_5POINT1; + return av_channel_layout_copy(layout, &five_one); + } + default: + return -1; + } +} + +EMSCRIPTEN_KEEPALIVE +EncoderContext *init_encoder(int channels, int sample_rate, int bitrate) { + const AVCodec *codec = avcodec_find_encoder(AV_CODEC_ID_DTS); + if (!codec) return NULL; + + AVCodecContext *codec_ctx = avcodec_alloc_context3(codec); + if (!codec_ctx) return NULL; + + codec_ctx->sample_fmt = AV_SAMPLE_FMT_S32; + codec_ctx->sample_rate = sample_rate; + codec_ctx->bit_rate = bitrate; + codec_ctx->time_base = (AVRational){1, sample_rate}; + + // FFmpeg marks its DTS encoder experimental, so it refuses to open at the default compliance level + codec_ctx->strict_std_compliance = FF_COMPLIANCE_EXPERIMENTAL; + + if (set_dts_channel_layout(&codec_ctx->ch_layout, channels) < 0) { + avcodec_free_context(&codec_ctx); + return NULL; + } + + if (avcodec_open2(codec_ctx, codec, NULL) < 0) { + avcodec_free_context(&codec_ctx); + return NULL; + } + + AVPacket *packet = av_packet_alloc(); + if (!packet) { + avcodec_free_context(&codec_ctx); + return NULL; + } + + AVFrame *frame = av_frame_alloc(); + if (!frame) { + av_packet_free(&packet); + avcodec_free_context(&codec_ctx); + return NULL; + } + + // The frame has a fixed format, so let's create it now: + frame->format = AV_SAMPLE_FMT_S32; + frame->sample_rate = sample_rate; + frame->nb_samples = codec_ctx->frame_size; + av_channel_layout_copy(&frame->ch_layout, &codec_ctx->ch_layout); + + if (av_frame_get_buffer(frame, 0) < 0) { + av_frame_free(&frame); + av_packet_free(&packet); + avcodec_free_context(&codec_ctx); + return NULL; + } + + EncoderContext *ctx = malloc(sizeof(EncoderContext)); + if (!ctx) { + av_frame_free(&frame); + av_packet_free(&packet); + avcodec_free_context(&codec_ctx); + return NULL; + } + + ctx->codec_ctx = codec_ctx; + ctx->packet = packet; + ctx->frame = frame; + ctx->input_buffer = NULL; + ctx->input_buffer_size = 0; + ctx->encoded_pts = 0; + ctx->encoded_duration = 0; + + return ctx; +} + +EMSCRIPTEN_KEEPALIVE +int get_encoder_frame_size(EncoderContext *ctx) { + return ctx->codec_ctx->frame_size; +} + +EMSCRIPTEN_KEEPALIVE +float *get_encode_input_ptr(EncoderContext *ctx, int size) { + if (ctx->input_buffer_size < size) { + free(ctx->input_buffer); + ctx->input_buffer = malloc(size); + if (!ctx->input_buffer) { + ctx->input_buffer_size = 0; + return NULL; + } + ctx->input_buffer_size = size; + } + return ctx->input_buffer; +} + +EMSCRIPTEN_KEEPALIVE +int encode_frame(EncoderContext *ctx, int64_t pts) { + int channels = ctx->codec_ctx->ch_layout.nb_channels; + int frame_size = ctx->frame->nb_samples; + + ctx->frame->pts = pts; + + // DTS encodes from s32, which is a packed format, so the samples stay interleaved and all land in data[0] + float *input = ctx->input_buffer; + int32_t *output = (int32_t *)ctx->frame->data[0]; + for (int i = 0; i < frame_size * channels; i++) { + float sample = input[i]; + if (sample > 1.0f) sample = 1.0f; + if (sample < -1.0f) sample = -1.0f; + output[i] = (int32_t)(sample * 2147483647.0f); + } + + int ret = avcodec_send_frame(ctx->codec_ctx, ctx->frame); + if (ret < 0) return ret; + + ret = avcodec_receive_packet(ctx->codec_ctx, ctx->packet); + if (ret < 0) return ret; + + ctx->encoded_pts = ctx->packet->pts; + ctx->encoded_duration = ctx->packet->duration; + + return ctx->packet->size; +} + +EMSCRIPTEN_KEEPALIVE +void flush_encoder(EncoderContext *ctx) { + avcodec_send_frame(ctx->codec_ctx, NULL); + while (avcodec_receive_packet(ctx->codec_ctx, ctx->packet) == 0) { + av_packet_unref(ctx->packet); + } +} + +EMSCRIPTEN_KEEPALIVE +uint8_t *get_encoded_data(EncoderContext *ctx) { + return ctx->packet->data; +} + +EMSCRIPTEN_KEEPALIVE +int64_t get_encoded_pts(EncoderContext *ctx) { + return ctx->encoded_pts; +} + +EMSCRIPTEN_KEEPALIVE +int get_encoded_duration(EncoderContext *ctx) { + return ctx->encoded_duration; +} + +EMSCRIPTEN_KEEPALIVE +void close_encoder(EncoderContext *ctx) { + free(ctx->input_buffer); + av_frame_free(&ctx->frame); + av_packet_free(&ctx->packet); + avcodec_free_context(&ctx->codec_ctx); + free(ctx); +} diff --git a/packages/dts/src/codec.worker.ts b/packages/dts/src/codec.worker.ts new file mode 100644 index 0000000..6cf9c80 --- /dev/null +++ b/packages/dts/src/codec.worker.ts @@ -0,0 +1,306 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import createModule from '../build/dts'; +import type { WorkerCommand, WorkerResponse, WorkerResponseData } from './shared'; + +type ExtendedEmscriptenModule = EmscriptenModule & { + cwrap: typeof cwrap; +}; + +let module: ExtendedEmscriptenModule; +let modulePromise: Promise | null = null; + +let initDecoderFn: () => number; +let configureDecodePacket: (ctx: number, size: number) => number; +let decodePacket: (ctx: number, pts: bigint) => number; +let getDecodedFormat: (ctx: number) => number; +let getDecodedPlanePtr: (ctx: number, plane: number) => number; +let getDecodedChannels: (ctx: number) => number; +let getDecodedSampleRate: (ctx: number) => number; +let getDecodedSampleCount: (ctx: number) => number; +let getDecodedPts: (ctx: number) => bigint; +let flushDecoderFn: (ctx: number) => void; +let closeDecoderFn: (ctx: number) => void; + +let initEncoderFn: (channels: number, sampleRate: number, bitrate: number) => number; +let getEncoderFrameSize: (ctx: number) => number; +let getEncodeInputPtr: (ctx: number, size: number) => number; +let encodeFrameFn: (ctx: number, pts: bigint) => number; +let flushEncoderFn: (ctx: number) => void; +let getEncodedData: (ctx: number) => number; +let getEncodedPts: (ctx: number) => bigint; +let getEncodedDuration: (ctx: number) => number; +let closeEncoderFn: (ctx: number) => void; + +const ensureModule = async () => { + if (!module) { + if (modulePromise) { + // If we don't do this we can have a race condition + return modulePromise; + } + + modulePromise = createModule() as Promise; + module = await modulePromise; + modulePromise = null; + + initDecoderFn = module.cwrap('init_decoder', 'number', []); + configureDecodePacket = module.cwrap('configure_decode_packet', 'number', ['number', 'number']); + decodePacket = module.cwrap('decode_packet', 'number', ['number', 'number']) as unknown as typeof decodePacket; + getDecodedFormat = module.cwrap('get_decoded_format', 'number', ['number']); + getDecodedPlanePtr = module.cwrap('get_decoded_plane_ptr', 'number', ['number', 'number']); + getDecodedChannels = module.cwrap('get_decoded_channels', 'number', ['number']); + getDecodedSampleRate = module.cwrap('get_decoded_sample_rate', 'number', ['number']); + getDecodedSampleCount = module.cwrap('get_decoded_sample_count', 'number', ['number']); + getDecodedPts = module.cwrap('get_decoded_pts', 'number', ['number']) as unknown as typeof getDecodedPts; + flushDecoderFn = module.cwrap('flush_decoder', null, ['number']); + closeDecoderFn = module.cwrap('close_decoder', null, ['number']); + + initEncoderFn = module.cwrap('init_encoder', 'number', ['number', 'number', 'number']); + getEncoderFrameSize = module.cwrap('get_encoder_frame_size', 'number', ['number']); + getEncodeInputPtr = module.cwrap('get_encode_input_ptr', 'number', ['number', 'number']); + encodeFrameFn = module.cwrap('encode_frame', 'number', ['number', 'number']) as unknown as typeof encodeFrameFn; + flushEncoderFn = module.cwrap('flush_encoder', null, ['number']); + getEncodedData = module.cwrap('get_encoded_data', 'number', ['number']); + getEncodedPts = module.cwrap('get_encoded_pts', 'number', ['number']) as unknown as typeof getEncodedPts; + getEncodedDuration = module.cwrap('get_encoded_duration', 'number', ['number']); + closeEncoderFn = module.cwrap('close_encoder', null, ['number']); + } +}; + +const initDecoder = async () => { + await ensureModule(); + + const ctx = initDecoderFn(); + if (ctx === 0) { + throw new Error('Failed to initialize DTS decoder.'); + } + + return { ctx, frameSize: 0 }; +}; + +// Keys are AVSampleFormat enum values +const AV_FORMAT_MAP: Record = { + 0: { format: 'u8', bytesPerSample: 1, planar: false }, + 1: { format: 's16', bytesPerSample: 2, planar: false }, + 2: { format: 's32', bytesPerSample: 4, planar: false }, + 3: { format: 'f32', bytesPerSample: 4, planar: false }, + 5: { format: 'u8-planar', bytesPerSample: 1, planar: true }, + 6: { format: 's16-planar', bytesPerSample: 2, planar: true }, + 7: { format: 's32-planar', bytesPerSample: 4, planar: true }, + 8: { format: 'f32-planar', bytesPerSample: 4, planar: true }, +}; + +const decode = (ctx: number, encodedData: ArrayBuffer, timestamp: number) => { + const bytes = new Uint8Array(encodedData); + + const dataPtr = configureDecodePacket(ctx, bytes.length); + if (dataPtr === 0) { + throw new Error('Failed to configure decode packet.'); + } + + module.HEAPU8.set(bytes, dataPtr); + + const ret = decodePacket(ctx, BigInt(timestamp)); + if (ret < 0) { + throw new Error(`Decode failed with error code ${ret}.`); + } + + const avFormat = getDecodedFormat(ctx); + const info = AV_FORMAT_MAP[avFormat]; + if (!info) { + throw new Error(`Unsupported AVSampleFormat: ${avFormat}`); + } + + const channels = getDecodedChannels(ctx); + const sampleRate = getDecodedSampleRate(ctx); + const sampleCount = getDecodedSampleCount(ctx); + const pts = Number(getDecodedPts(ctx)); + + let pcmData: ArrayBuffer; + if (info.planar) { + const planeSize = sampleCount * info.bytesPerSample; + const buffer = new Uint8Array(planeSize * channels); + + for (let ch = 0; ch < channels; ch++) { + const ptr = getDecodedPlanePtr(ctx, ch); + buffer.set(module.HEAPU8.subarray(ptr, ptr + planeSize), ch * planeSize); + } + + pcmData = buffer.buffer; + } else { + const totalSize = sampleCount * channels * info.bytesPerSample; + const ptr = getDecodedPlanePtr(ctx, 0); + pcmData = module.HEAPU8.slice(ptr, ptr + totalSize).buffer; + } + + return { pcmData, format: info.format, channels, sampleRate, sampleCount, pts }; +}; + +const initEncoder = async ( + numberOfChannels: number, + sampleRate: number, + bitrate: number, +) => { + await ensureModule(); + + const ctx = initEncoderFn(numberOfChannels, sampleRate, bitrate); + if (ctx === 0) { + throw new Error('Failed to initialize DTS encoder.'); + } + + return { ctx, frameSize: getEncoderFrameSize(ctx) }; +}; + +const encode = (ctx: number, audioData: ArrayBuffer, timestamp: number) => { + const audioBytes = new Uint8Array(audioData); + + const inputPtr = getEncodeInputPtr(ctx, audioBytes.length); + if (inputPtr === 0) { + throw new Error('Failed to allocate encoder input buffer.'); + } + module.HEAPU8.set(audioBytes, inputPtr); + + const bytesWritten = encodeFrameFn(ctx, BigInt(timestamp)); + if (bytesWritten < 0) { + throw new Error(`Encode failed with error code ${bytesWritten}.`); + } + + const ptr = getEncodedData(ctx); + const encodedData = module.HEAPU8.slice(ptr, ptr + bytesWritten).buffer; + const pts = Number(getEncodedPts(ctx)); + const duration = getEncodedDuration(ctx); + + return { encodedData, pts, duration }; +}; + +const flushEncoder = (ctx: number) => { + flushEncoderFn(ctx); +}; + +const onMessage = (data: { id: number; command: WorkerCommand }) => { + const { id, command } = data; + + const handleCommand = async (): Promise => { + try { + let result: WorkerResponseData; + const transferables: Transferable[] = []; + + switch (command.type) { + case 'init-decoder': { + const { ctx, frameSize } = await initDecoder(); + result = { type: command.type, ctx, frameSize }; + }; break; + + case 'decode': { + const decoded = decode(command.data.ctx, command.data.encodedData, command.data.timestamp); + result = { + type: command.type, + pcmData: decoded.pcmData, + format: decoded.format, + channels: decoded.channels, + sampleRate: decoded.sampleRate, + sampleCount: decoded.sampleCount, + pts: decoded.pts, + }; + transferables.push(decoded.pcmData); + }; break; + + case 'flush-decoder': { + flushDecoderFn(command.data.ctx); + result = { type: command.type }; + }; break; + + case 'close-decoder': { + closeDecoderFn(command.data.ctx); + result = { type: command.type }; + }; break; + + case 'init-encoder': { + const { ctx, frameSize } = await initEncoder( + command.data.numberOfChannels, + command.data.sampleRate, + command.data.bitrate, + ); + result = { type: command.type, ctx, frameSize }; + }; break; + + case 'encode': { + const encoded = encode( + command.data.ctx, + command.data.audioData, + command.data.timestamp, + ); + result = { + type: command.type, + encodedData: encoded.encodedData, + pts: encoded.pts, + duration: encoded.duration, + }; + transferables.push(encoded.encodedData); + }; break; + + case 'flush-encoder': { + flushEncoder(command.data.ctx); + result = { type: command.type }; + }; break; + + case 'close-encoder': { + closeEncoderFn(command.data.ctx); + result = { type: command.type }; + }; break; + } + + const response: WorkerResponse = { + id, + success: true, + data: result, + }; + sendMessage(response, transferables); + } catch (error: unknown) { + const response: WorkerResponse = { + id, + success: false, + error, + }; + sendMessage(response); + } + }; + + void handleCommand(); +}; + +const sendMessage = (data: unknown, transferables?: Transferable[]) => { + if (parentPort) { + parentPort.postMessage(data, transferables ?? []); + } else { + self.postMessage(data, { transfer: transferables ?? [] }); + } +}; + +let parentPort: { + postMessage: (data: unknown, transferables?: Transferable[]) => void; + on: (event: string, listener: (data: never) => void) => void; +} | null = null; + +if (typeof self === 'undefined') { + const workerModule = 'worker_threads'; + // eslint-disable-next-line @stylistic/max-len + // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-require-imports, @typescript-eslint/no-unsafe-member-access + parentPort = require(workerModule).parentPort; +} + +if (parentPort) { + parentPort.on('message', onMessage); +} else { + self.addEventListener('message', event => onMessage(event.data as { id: number; command: WorkerCommand })); +} + +// Prevents the worker for being randomly closed by Firefox +// https://github.com/Vanilagy/mediabunny/issues/435 +setInterval(() => {}, 1000); diff --git a/packages/dts/src/decoder.ts b/packages/dts/src/decoder.ts new file mode 100644 index 0000000..0b5dfdb --- /dev/null +++ b/packages/dts/src/decoder.ts @@ -0,0 +1,80 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { + CustomAudioDecoder, + AudioCodec, + AudioSample, + EncodedPacket, + registerDecoder, +} from 'mediabunny'; +import { sendCommand, refWorker, unrefWorker } from './worker-client'; + +class DtsDecoder extends CustomAudioDecoder { + private ctx = 0; + + static override supports(codec: AudioCodec): boolean { + return codec === 'dts'; + } + + async init() { + await refWorker(); + + const result = await sendCommand({ + type: 'init-decoder', + data: {}, + }); + this.ctx = result.ctx; + } + + async decode(packet: EncodedPacket) { + const encodedData = packet.data.slice().buffer; + const timestamp = Math.round(packet.timestamp * this.config.sampleRate); + + const result = await sendCommand({ + type: 'decode', + data: { ctx: this.ctx, encodedData, timestamp }, + }, [encodedData]); + + const sample = new AudioSample({ + data: result.pcmData, + format: result.format, + numberOfChannels: result.channels, + sampleRate: result.sampleRate, + timestamp: result.pts / result.sampleRate, + }); + this.onSample(sample); + } + + async flush() { + await sendCommand({ type: 'flush-decoder', data: { ctx: this.ctx } }); + } + + async close() { + void sendCommand({ type: 'close-decoder', data: { ctx: this.ctx } }); + await unrefWorker(); + } +} + +let registered = false; + +/** + * Registers a DTS audio decoder, which Mediabunny will then use automatically when applicable. Make sure to call this + * function before starting any decoding task. + * + * @group \@mediabunny/dts + * @public + */ +export const registerDtsDecoder = () => { + if (registered) { + return; + } + registered = true; + + registerDecoder(DtsDecoder); +}; diff --git a/packages/dts/src/encoder.ts b/packages/dts/src/encoder.ts new file mode 100644 index 0000000..7b8ecd2 --- /dev/null +++ b/packages/dts/src/encoder.ts @@ -0,0 +1,197 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { + CustomAudioEncoder, + AudioCodec, + AudioSample, + EncodedPacket, + registerEncoder, +} from 'mediabunny'; +import { sendCommand, refWorker, unrefWorker } from './worker-client'; +import { assert } from './shared'; +import { DTS_CHANNEL_COUNTS, DTS_SAMPLE_RATES, dtsBitrateFits } from '../../../shared/dts-misc'; + +class DtsEncoder extends CustomAudioEncoder { + private ctx = 0; + private encoderFrameSize = 0; + private sampleRate = 0; + private numberOfChannels = 0; + private chunkMetadata: EncodedAudioChunkMetadata = {}; + + // Accumulate interleaved f32 samples until we have a full frame + private pendingBuffer = new Float32Array(2 ** 16); + private pendingFrames = 0; + private nextSampleTimestampInSamples: number | null = null; + private nextPacketTimestampInSamples: number | null = null; + + static override supports(codec: AudioCodec, config: AudioEncoderConfig): boolean { + return codec === 'dts' + && DTS_CHANNEL_COUNTS.includes(config.numberOfChannels) + && DTS_SAMPLE_RATES.includes(config.sampleRate) + && config.bitrate !== undefined + && dtsBitrateFits(config.bitrate, config.sampleRate, config.numberOfChannels); + } + + async init() { + await refWorker(); + + assert(this.config.bitrate !== undefined); + this.sampleRate = this.config.sampleRate; + this.numberOfChannels = this.config.numberOfChannels; + + const result = await sendCommand({ + type: 'init-encoder', + data: { + numberOfChannels: this.config.numberOfChannels, + sampleRate: this.config.sampleRate, + bitrate: this.config.bitrate, + }, + }); + + this.ctx = result.ctx; + this.encoderFrameSize = result.frameSize; + + this.resetInternalState(); + } + + private resetInternalState() { + this.pendingFrames = 0; + this.nextSampleTimestampInSamples = null; + this.nextPacketTimestampInSamples = null; + + this.chunkMetadata = { + decoderConfig: { + codec: 'dtsc', + numberOfChannels: this.config.numberOfChannels, + sampleRate: this.config.sampleRate, + }, + }; + } + + async encode(audioSample: AudioSample) { + if (this.nextSampleTimestampInSamples === null) { + this.nextSampleTimestampInSamples = Math.round(audioSample.timestamp * this.sampleRate); + this.nextPacketTimestampInSamples = this.nextSampleTimestampInSamples; + } + + const channels = this.numberOfChannels; + const incomingFrames = audioSample.numberOfFrames; + + // Extract interleaved f32 data + const totalBytes = audioSample.allocationSize({ format: 'f32', planeIndex: 0 }); + const audioBytes = new Uint8Array(totalBytes); + audioSample.copyTo(audioBytes, { format: 'f32', planeIndex: 0 }); + const incomingData = new Float32Array(audioBytes.buffer); + + const requiredSamples = (this.pendingFrames + incomingFrames) * channels; + if (requiredSamples > this.pendingBuffer.length) { + let newSize = this.pendingBuffer.length; + while (newSize < requiredSamples) { + newSize *= 2; + } + const newBuffer = new Float32Array(newSize); + newBuffer.set(this.pendingBuffer.subarray(0, this.pendingFrames * channels)); + this.pendingBuffer = newBuffer; + } + this.pendingBuffer.set(incomingData, this.pendingFrames * channels); + this.pendingFrames += incomingFrames; + + while (this.pendingFrames >= this.encoderFrameSize) { + await this.encodeOneFrame(); + } + } + + async flush() { + // Pad remaining samples with silence to fill a full frame + if (this.pendingFrames > 0) { + const channels = this.numberOfChannels; + const frameSize = this.encoderFrameSize; + const usedSamples = this.pendingFrames * channels; + const frameSamples = frameSize * channels; + + this.pendingBuffer.fill(0, usedSamples, frameSamples); + this.pendingFrames = frameSize; + + await this.encodeOneFrame(); + } + + await sendCommand({ type: 'flush-encoder', data: { ctx: this.ctx } }); + + this.resetInternalState(); + } + + close() { + void sendCommand({ type: 'close-encoder', data: { ctx: this.ctx } }); + void unrefWorker(); + } + + private async encodeOneFrame() { + assert(this.nextSampleTimestampInSamples !== null); + assert(this.nextPacketTimestampInSamples !== null); + + const channels = this.numberOfChannels; + const frameSize = this.encoderFrameSize; + const frameSamples = frameSize * channels; + + const frameData = this.pendingBuffer.slice(0, frameSamples); + + // Shift remaining using copyWithin + this.pendingFrames -= frameSize; + if (this.pendingFrames > 0) { + this.pendingBuffer.copyWithin(0, frameSamples, frameSamples + this.pendingFrames * channels); + } + + const audioData = frameData.buffer; + const result = await sendCommand({ + type: 'encode', + data: { + ctx: this.ctx, + audioData, + timestamp: this.nextSampleTimestampInSamples, + }, + }, [audioData]); + + this.nextSampleTimestampInSamples += frameSize; + + // We always get exactly one packet because we encode the correct frame size + const packet = new EncodedPacket( + new Uint8Array(result.encodedData), + 'key', + this.nextPacketTimestampInSamples / this.sampleRate, + result.duration / this.sampleRate, + ); + + this.nextPacketTimestampInSamples += result.duration; + + this.onPacket( + packet, + this.chunkMetadata, + ); + + this.chunkMetadata = {}; + } +} + +let registered = false; + +/** + * Registers a DTS audio encoder, which Mediabunny will then use automatically when applicable. Make sure to call this + * function before starting any encoding task. + * + * @group \@mediabunny/dts + * @public + */ +export const registerDtsEncoder = () => { + if (registered) { + return; + } + registered = true; + + registerEncoder(DtsEncoder); +}; diff --git a/packages/dts/src/index.ts b/packages/dts/src/index.ts new file mode 100644 index 0000000..3344b00 --- /dev/null +++ b/packages/dts/src/index.ts @@ -0,0 +1,23 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { Logging } from 'mediabunny'; + +const DTS_LOADED_SYMBOL = Symbol.for('@mediabunny/dts loaded'); +if ((globalThis as Record)[DTS_LOADED_SYMBOL]) { + Logging._error( + '[WARNING]\n@mediabunny/dts was loaded twice.' + + ' This will likely cause the encoder/decoder not to work correctly.' + + ' Check if multiple dependencies are importing different versions of @mediabunny/dts,' + + ' or if something is being bundled incorrectly.', + ); +} +(globalThis as Record)[DTS_LOADED_SYMBOL] = true; + +export { registerDtsDecoder } from './decoder'; +export { registerDtsEncoder } from './encoder'; diff --git a/packages/dts/src/shared.ts b/packages/dts/src/shared.ts new file mode 100644 index 0000000..27757c1 --- /dev/null +++ b/packages/dts/src/shared.ts @@ -0,0 +1,100 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +export type WorkerCommand = { + type: 'init-decoder'; + data: Record; +} | { + type: 'decode'; + data: { + ctx: number; + encodedData: ArrayBuffer; + timestamp: number; + }; +} | { + type: 'flush-decoder'; + data: { + ctx: number; + }; +} | { + type: 'close-decoder'; + data: { + ctx: number; + }; +} | { + type: 'init-encoder'; + data: { + numberOfChannels: number; + sampleRate: number; + bitrate: number; + }; +} | { + type: 'encode'; + data: { + ctx: number; + audioData: ArrayBuffer; + timestamp: number; + }; +} | { + type: 'flush-encoder'; + data: { + ctx: number; + }; +} | { + type: 'close-encoder'; + data: { + ctx: number; + }; +}; + +export type WorkerResponseData = { + type: 'init-decoder'; + ctx: number; + frameSize: number; +} | { + type: 'decode'; + pcmData: ArrayBuffer; + format: AudioSampleFormat; + channels: number; + sampleRate: number; + sampleCount: number; + pts: number; +} | { + type: 'flush-decoder'; +} | { + type: 'close-decoder'; +} | { + type: 'init-encoder'; + ctx: number; + frameSize: number; +} | { + type: 'encode'; + encodedData: ArrayBuffer; + pts: number; + duration: number; +} | { + type: 'flush-encoder'; +} | { + type: 'close-encoder'; +}; + +export type WorkerResponse = { + id: number; +} & ({ + success: true; + data: WorkerResponseData; +} | { + success: false; + error: unknown; +}); + +export function assert(x: unknown): asserts x { + if (!x) { + throw new Error('Assertion failed.'); + } +} diff --git a/packages/dts/src/worker-client.ts b/packages/dts/src/worker-client.ts new file mode 100644 index 0000000..15c6b8f --- /dev/null +++ b/packages/dts/src/worker-client.ts @@ -0,0 +1,109 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { assert, type WorkerCommand, type WorkerResponse, type WorkerResponseData } from './shared'; +// @ts-expect-error An esbuild plugin handles this, TypeScript doesn't need to understand +import createWorker from './codec.worker'; + +type ExtendedWorker = Worker & { + ref?: () => void; + unref?: () => void; +}; + +let workerPromise: Promise | null; +let nextMessageId = 0; +const pendingMessages = new Map void; + reject: (reason?: unknown) => void; +}>(); + +let refCount = 0; +let keepAliveInterval: ReturnType | null = null; + +export const refWorker = async () => { + refCount++; + if (refCount === 1) { + keepAliveInterval = setInterval(() => {}, 2 ** 31 - 1); + const worker = await ensureWorker(); + worker.ref?.(); + } +}; + +export const unrefWorker = async () => { + refCount--; + if (refCount === 0) { + if (keepAliveInterval !== null) { + clearInterval(keepAliveInterval); + keepAliveInterval = null; + } + + const worker = await workerPromise; + if (worker) { + if (worker.unref) { + worker.unref(); // If we don't do this, then the Node process never terminates by itself + // Keep the worker around tho + } else if (typeof window === 'undefined') { + // Non-browser environment without unref - terminate instead + worker.terminate(); + workerPromise = null; + } + } + } +}; + +export const sendCommand = async ( + command: WorkerCommand & { type: T }, + transferables?: Transferable[], +) => { + const worker = await ensureWorker(); + + return new Promise((resolve, reject) => { + const id = nextMessageId++; + pendingMessages.set(id, { + resolve: resolve as (value: WorkerResponseData) => void, + reject, + }); + + if (transferables) { + worker.postMessage({ id, command }, transferables); + } else { + worker.postMessage({ id, command }); + } + }); +}; + +const ensureWorker = () => { + return workerPromise ??= (async () => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call + const worker = (await createWorker()) as ExtendedWorker; + worker.unref?.(); // Start unreffed + + const onMessage = (data: WorkerResponse) => { + const pending = pendingMessages.get(data.id); + assert(pending !== undefined); + + pendingMessages.delete(data.id); + if (data.success) { + pending.resolve(data.data); + } else { + pending.reject(data.error); + } + }; + + if (worker.addEventListener) { + worker.addEventListener('message', event => onMessage(event.data as WorkerResponse)); + } else { + const nodeWorker = worker as unknown as { + on: (event: string, listener: (data: never) => void) => void; + }; + nodeWorker.on('message', onMessage); + } + + return worker; + })(); +}; diff --git a/packages/dts/tsconfig.json b/packages/dts/tsconfig.json new file mode 100644 index 0000000..27a7ef1 --- /dev/null +++ b/packages/dts/tsconfig.json @@ -0,0 +1,24 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "composite": true, + "outDir": "./dist/modules", + "declaration": true, + "declarationMap": true, + "stripInternal": true, + "noEmit": false, + "moduleResolution": "nodenext", + "module": "nodenext", + "allowJs": true, + "paths": { + "mediabunny": ["../../src/index.ts"], + }, + }, + "include": [ + "./src/**/*", + "./build/**/*", + ], + "references": [ + { "path": "../../src" } + ] +} diff --git a/packages/dts/tsdoc.json b/packages/dts/tsdoc.json new file mode 100644 index 0000000..51d29d3 --- /dev/null +++ b/packages/dts/tsdoc.json @@ -0,0 +1,4 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json", + "extends": ["../../tsdoc.json"] +} diff --git a/packages/server/src/audio-encoder.ts b/packages/server/src/audio-encoder.ts index 172a0f5..ac3c99b 100644 --- a/packages/server/src/audio-encoder.ts +++ b/packages/server/src/audio-encoder.ts @@ -23,17 +23,13 @@ import { buildAdtsHeaderTemplate, parseAacAudioSpecificConfig, } from '../../../shared/aac-misc'; +import { DTS_CHANNEL_COUNTS, DTS_SAMPLE_RATES, dtsBitrateFits } from '../../../shared/dts-misc'; const AAC_SAMPLE_RATES = [96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050, 16000, 12000, 11025, 8000, 7350]; const OPUS_SAMPLE_RATES = [8000, 12000, 16000, 24000, 48000]; const MP3_SAMPLE_RATES = [8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000]; const AC3_SAMPLE_RATES = [32000, 44100, 48000]; -const DTS_SAMPLE_RATES = [8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000]; - -/** DTS only has layouts for these channel counts; 3 and 7 have no mapping. */ -const DTS_CHANNEL_COUNTS = [1, 2, 4, 5, 6]; -const DTS_MAX_FRAME_SIZE = 16384; const FRAME_SIZE_FALLBACK = 1024; // Just 'cause @@ -421,20 +417,3 @@ const resolveBitrate = (config: AudioEncoderConfig, codec: AudioCodec) => { return config.bitrate ?? new Quality('medium')._toAudioBitrate(codec) ?? 0; }; -/** - * The DTS encoder needs each frame to be big enough to hold the per-channel side info and rejects the whole - * configuration when it isn't, so this mirrors the check from FFmpeg's dcaenc.c. - */ -const dtsBitrateFits = (bitrate: number, sampleRate: number, numberOfChannels: number) => { - if (bitrate < 32000 || bitrate > 3840000) { - return false; - } - - const hasLfe = numberOfChannels === 6; - const fullbandChannels = numberOfChannels - (hasLfe ? 1 : 0); - - const frameBits = 32 * Math.ceil(Math.ceil(bitrate * 512 / sampleRate) / 32); - const minFrameBits = 132 + (493 + 28 * 32) * fullbandChannels + (hasLfe ? 72 : 0); - - return frameBits >= minFrameBits && frameBits <= 8 * DTS_MAX_FRAME_SIZE; -}; diff --git a/scripts/build.sh b/scripts/build.sh index 0ffad0a..dec1389 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -7,6 +7,7 @@ set -e rm -rf dist rm -rf packages/mp3-encoder/dist rm -rf packages/ac3/dist +rm -rf packages/dts/dist rm -rf packages/aac-encoder/dist rm -rf packages/flac-encoder/dist rm -rf packages/prores/dist @@ -19,6 +20,7 @@ tsx scripts/ensure-license-headers.ts tsc -p src --stripInternal false # Don't strip internals since the packages may use them tsc -p packages/mp3-encoder tsc -p packages/ac3 +tsc -p packages/dts tsc -p packages/aac-encoder tsc -p packages/flac-encoder tsc -p packages/prores @@ -39,6 +41,7 @@ tsx scripts/bundle.ts api-extractor run api-extractor run -c packages/mp3-encoder/api-extractor.json api-extractor run -c packages/ac3/api-extractor.json +api-extractor run -c packages/dts/api-extractor.json api-extractor run -c packages/aac-encoder/api-extractor.json api-extractor run -c packages/flac-encoder/api-extractor.json api-extractor run -c packages/prores/api-extractor.json @@ -48,6 +51,7 @@ api-extractor run -c packages/server/api-extractor.json tsx scripts/check-docblocks.ts dist/mediabunny.d.ts tsx scripts/check-docblocks.ts packages/mp3-encoder/dist/mediabunny-mp3-encoder.d.ts tsx scripts/check-docblocks.ts packages/ac3/dist/mediabunny-ac3.d.ts +tsx scripts/check-docblocks.ts packages/dts/dist/mediabunny-dts.d.ts tsx scripts/check-docblocks.ts packages/aac-encoder/dist/mediabunny-aac-encoder.d.ts tsx scripts/check-docblocks.ts packages/flac-encoder/dist/mediabunny-flac-encoder.d.ts tsx scripts/check-docblocks.ts packages/prores/dist/mediabunny-prores.d.ts @@ -60,6 +64,7 @@ npm run docs:generate -- --dry echo 'export as namespace Mediabunny;' >> dist/mediabunny.d.ts echo 'export as namespace MediabunnyMp3Encoder;' >> packages/mp3-encoder/dist/mediabunny-mp3-encoder.d.ts echo 'export as namespace MediabunnyAc3;' >> packages/ac3/dist/mediabunny-ac3.d.ts +echo 'export as namespace MediabunnyDts;' >> packages/dts/dist/mediabunny-dts.d.ts echo 'export as namespace MediabunnyAacEncoder;' >> packages/aac-encoder/dist/mediabunny-aac-encoder.d.ts echo 'export as namespace MediabunnyFlacEncoder;' >> packages/flac-encoder/dist/mediabunny-flac-encoder.d.ts echo 'export as namespace MediabunnyProres;' >> packages/prores/dist/mediabunny-prores.d.ts diff --git a/scripts/bundle.ts b/scripts/bundle.ts index 1b2c29e..43633fd 100644 --- a/scripts/bundle.ts +++ b/scripts/bundle.ts @@ -161,6 +161,37 @@ const ac3Variants = await createVariants( }, ); +const dtsVariants = await createVariants( + 'packages/dts/src/index.ts', + 'MediabunnyDts', + 'packages/dts/dist/bundles/mediabunny-dts', + 'js', // The bundles are purely for the browser, not for Node (due to the peer dependency) + { + plugins: [ + PluginExternalGlobal.externalGlobalPlugin({ + mediabunny: 'Mediabunny', + }), + inlineWorkerPlugin({ + define: { + 'import.meta.url': '""', + }, + legalComments: 'none', + }), + ], + }, + { + external: ['mediabunny'], + plugins: [ + inlineWorkerPlugin({ + define: { + 'import.meta.url': '""', + }, + legalComments: 'none', + }), + ], + }, +); + const aacEncoderVariants = await createVariants( 'packages/aac-encoder/src/index.ts', 'MediabunnyAacEncoder', @@ -262,6 +293,7 @@ const contexts = [ ...mediabunnyVariants, ...mp3EncoderVariants, ...ac3Variants, + ...dtsVariants, ...aacEncoderVariants, ...flacEncoderVariants, ...proresVariants, diff --git a/scripts/check.sh b/scripts/check.sh index ed2d185..40eef51 100755 --- a/scripts/check.sh +++ b/scripts/check.sh @@ -10,6 +10,9 @@ tsc -p packages/mp3-encoder rm -rf packages/ac3/dist/modules tsc -p packages/ac3 +rm -rf packages/dts/dist/modules +tsc -p packages/dts + rm -rf packages/aac-encoder/dist/modules tsc -p packages/aac-encoder diff --git a/scripts/ensure-license-headers.ts b/scripts/ensure-license-headers.ts index 44b2dbe..bcb93e2 100644 --- a/scripts/ensure-license-headers.ts +++ b/scripts/ensure-license-headers.ts @@ -38,6 +38,7 @@ checkDirectory(path.join(__dirname, '..', 'src')); checkDirectory(path.join(__dirname, '..', 'shared')); checkDirectory(path.join(__dirname, '..', 'packages', 'mp3-encoder', 'src')); checkDirectory(path.join(__dirname, '..', 'packages', 'ac3', 'src')); +checkDirectory(path.join(__dirname, '..', 'packages', 'dts', 'src')); checkDirectory(path.join(__dirname, '..', 'packages', 'flac-encoder', 'src')); checkDirectory(path.join(__dirname, '..', 'packages', 'aac-encoder', 'src')); checkDirectory(path.join(__dirname, '..', 'packages', 'prores', 'src')); diff --git a/shared/dts-misc.ts b/shared/dts-misc.ts new file mode 100644 index 0000000..d85cf8d --- /dev/null +++ b/shared/dts-misc.ts @@ -0,0 +1,33 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +/** Sample rates the core can be encoded at (Table 5-5) */ +export const DTS_SAMPLE_RATES = [8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000]; + +/** Channel counts DTS has a speaker layout for; 3 and 7 have no mapping */ +export const DTS_CHANNEL_COUNTS = [1, 2, 4, 5, 6]; + +const DTS_MAX_FRAME_SIZE = 16384; + +/** + * The DTS encoder needs each frame to be big enough to hold the per-channel side info and rejects the whole + * configuration when it isn't, so this mirrors the check from FFmpeg's dcaenc.c. + */ +export const dtsBitrateFits = (bitrate: number, sampleRate: number, numberOfChannels: number) => { + if (bitrate < 32000 || bitrate > 3840000) { + return false; + } + + const hasLfe = numberOfChannels === 6; + const fullbandChannels = numberOfChannels - (hasLfe ? 1 : 0); + + const frameBits = 32 * Math.ceil(Math.ceil(bitrate * 512 / sampleRate) / 32); + const minFrameBits = 132 + (493 + 28 * 32) * fullbandChannels + (hasLfe ? 72 : 0); + + return frameBits >= minFrameBits && frameBits <= 8 * DTS_MAX_FRAME_SIZE; +}; diff --git a/src/media-sink.ts b/src/media-sink.ts index d67148d..01d82cf 100644 --- a/src/media-sink.ts +++ b/src/media-sink.ts @@ -1297,8 +1297,13 @@ class VideoDecoderWrapper extends DecoderWrapper { void this.customDecoderCallSerializer.call(() => this.customDecoder!.close()); } else { assert(this.decoder); - this.decoder.close(); - this.alphaDecoder?.close(); + + if (this.decoder.state !== 'closed') { + this.decoder.close(); + } + if (this.alphaDecoder && this.alphaDecoder.state !== 'closed') { + this.alphaDecoder.close(); + } this.colorQueue.forEach(x => x.close()); this.colorQueue.length = 0; @@ -2202,7 +2207,10 @@ class AudioDecoderWrapper extends DecoderWrapper { void this.customDecoderCallSerializer.call(() => this.customDecoder!.close()); } else { assert(this.decoder); - this.decoder.close(); + + if (this.decoder.state !== 'closed') { + this.decoder.close(); + } } } } diff --git a/test/browser/mpeg-ts-muxing.test.ts b/test/browser/mpeg-ts-muxing.test.ts index ac841f7..362453e 100644 --- a/test/browser/mpeg-ts-muxing.test.ts +++ b/test/browser/mpeg-ts-muxing.test.ts @@ -16,7 +16,7 @@ test('MPEG-TS output format', async () => { expect(format.mimeType).toBe('video/MP2T'); expect(format.fileExtension).toBe('.ts'); expect(format.supportsVideoRotationMetadata).toBe(false); - expect(format.getSupportedCodecs()).toEqual(['avc', 'hevc', 'aac', 'mp3', 'ac3', 'eac3']); + expect(format.getSupportedCodecs()).toEqual(['avc', 'hevc', 'aac', 'mp3', 'ac3', 'eac3', 'dts']); expect(format.getSupportedTrackCounts()).toEqual({ video: { min: 0, max: 16 }, audio: { min: 0, max: 32 }, diff --git a/test/node/dts.test.ts b/test/node/dts.test.ts index 6ddfa76..656e321 100644 --- a/test/node/dts.test.ts +++ b/test/node/dts.test.ts @@ -10,6 +10,11 @@ import { Conversion } from '../../src/conversion.js'; import { EncodedPacketSink } from '../../src/media-sink.js'; import { EncodedPacket } from '../../src/packet.js'; import { assert, uint8ArraysAreEqual } from '../../src/misc.js'; +import { AudioSampleSink } from '../../src/media-sink.js'; +import { AudioSampleSource } from '../../src/media-source.js'; +import { AudioSample } from '../../src/sample.js'; +import { canEncode, Quality } from '../../src/encode.js'; +import { registerDtsDecoder, registerDtsEncoder } from '@mediabunny/dts'; const __dirname = new URL('.', import.meta.url).pathname; @@ -89,6 +94,160 @@ test('Transmux esds MP4 into MPEG-TS', async () => { await expectTransmuxToPreservePackets(ESDS_FILE, new MpegTsOutputFormat(), MPEG_TS_TIMESTAMP_TOLERANCE); }); +test('Custom coder registration', async () => { + using input = new Input({ + source: new FilePathSource(path.join(__dirname, '..', 'public', DTSC_FILE)), + formats: ALL_FORMATS, + }); + + const track = await input.getPrimaryAudioTrack(); + assert(track); + + expect(await track.canDecode()).toBe(false); + expect(await canEncode('dts')).toBe(false); + + registerDtsDecoder(); + registerDtsEncoder(); + + expect(await track.canDecode()).toBe(true); + expect(await canEncode('dts')).toBe(true); +}); + +test('Decode with the extension', async () => { + registerDtsDecoder(); + + using input = new Input({ + source: new FilePathSource(path.join(__dirname, '..', 'public', DTSC_FILE)), + formats: ALL_FORMATS, + }); + + const track = await input.getPrimaryAudioTrack(); + assert(track); + + const { packetCount } = await track.computePacketStats(); + const sink = new AudioSampleSink(track); + + let sampleCount = 0; + let nextTimestamp = 0; + + for await (using sample of sink.samples()) { + expect(sample.timestamp).toBeCloseTo(nextTimestamp); + expect(sample.duration).toBeCloseTo(512 / 24000); + expect(sample.format).toBe('f32-planar'); + expect(sample.numberOfChannels).toBe(2); + expect(sample.sampleRate).toBe(24000); + + nextTimestamp += sample.duration; + sampleCount++; + } + + expect(sampleCount).toBe(packetCount); +}); + +test('Encode with the extension', async () => { + registerDtsEncoder(); + + const output = await encodeSineWaveToMp4(0, new Mp4OutputFormat()); + + using input = new Input({ + source: new BufferSource(output), + formats: ALL_FORMATS, + }); + + const track = await input.getPrimaryAudioTrack(); + assert(track); + + expect(await track.getCodec()).toBe('dts'); + expect(await track.getSampleRate()).toBe(ENCODE_SAMPLE_RATE); + expect(await track.getNumberOfChannels()).toBe(ENCODE_CHANNELS); + + const decoderConfig = await track.getDecoderConfig(); + assert(decoderConfig); + expect(decoderConfig.codec).toBe('dtsc'); + expect(decoderConfig.description).toBeUndefined(); + + const sink = new EncodedPacketSink(track); + let packetCount = 0; + + for await (const packet of sink.packets()) { + expect(packet.type).toBe('key'); + packetCount++; + } + + expect(packetCount).toBeGreaterThan(0); + expect(await track.computeDuration()).toBeCloseTo(ENCODE_DURATION, 1); +}); + +test('Round-trip through the extension', async () => { + registerDtsDecoder(); + registerDtsEncoder(); + + const output = await encodeSineWaveToMp4(0, new Mp4OutputFormat()); + + using input = new Input({ + source: new BufferSource(output), + formats: ALL_FORMATS, + }); + + const track = await input.getPrimaryAudioTrack(); + assert(track); + + const sink = new AudioSampleSink(track); + const chunks: Float32Array[] = []; + let decodedFrames = 0; + + for await (using sample of sink.samples()) { + expect(sample.numberOfChannels).toBe(ENCODE_CHANNELS); + expect(sample.sampleRate).toBe(ENCODE_SAMPLE_RATE); + decodedFrames += sample.numberOfFrames; + + const chunk = new Float32Array( + new ArrayBuffer(sample.allocationSize({ format: 'f32-planar', planeIndex: 0 })), + ); + sample.copyTo(chunk, { format: 'f32-planar', planeIndex: 0 }); + chunks.push(chunk); + } + + expect(decodedFrames).toBeGreaterThanOrEqual(ENCODE_SAMPLE_RATE * ENCODE_DURATION); + + const signal = new Float32Array(chunks.reduce((sum, chunk) => sum + chunk.length, 0)); + let offset = 0; + for (const chunk of chunks) { + signal.set(chunk, offset); + offset += chunk.length; + } + + expect(sine440Score(signal, ENCODE_SAMPLE_RATE, 440)).toBeGreaterThan(0.98); +}); + +test('Encode with huge timestamps', async () => { + registerDtsDecoder(); + registerDtsEncoder(); + + const timestamp = 1e9; + const output = await encodeSineWaveToMp4(timestamp, new Mp4OutputFormat({ fastStart: 'fragmented' })); + + using input = new Input({ + source: new BufferSource(output), + formats: ALL_FORMATS, + }); + + const track = await input.getPrimaryAudioTrack(); + assert(track); + + const packetSink = new EncodedPacketSink(track); + const firstPacket = await packetSink.getFirstPacket(); + assert(firstPacket); + + expect(firstPacket.timestamp).toBe(timestamp); + + const sampleSink = new AudioSampleSink(track); + const firstSample = (await sampleSink.samples(timestamp).next()).value; + assert(firstSample); + + expect(firstSample.timestamp).toBe(timestamp); +}); + const expectStreamShape = async (input: Input) => { const packets = await readAllPackets(input); @@ -169,3 +328,80 @@ const readAllPackets = async (input: Input) => { return packets; }; + +const ENCODE_SAMPLE_RATE = 48000; +const ENCODE_CHANNELS = 2; +const ENCODE_DURATION = 2; +const ENCODE_BITRATE = 768000; + +const encodeSineWaveToMp4 = async (startTimestamp: number, format: Mp4OutputFormat) => { + const totalFrames = ENCODE_SAMPLE_RATE * ENCODE_DURATION; + const data = new Float32Array(totalFrames * ENCODE_CHANNELS); + + for (let i = 0; i < totalFrames; i++) { + const value = Math.sin(2 * Math.PI * 440 * i / ENCODE_SAMPLE_RATE); + for (let channel = 0; channel < ENCODE_CHANNELS; channel++) { + data[i * ENCODE_CHANNELS + channel] = value; + } + } + + const output = new Output({ format, target: new BufferTarget() }); + const source = new AudioSampleSource({ codec: 'dts', quality: new Quality({ bitrate: ENCODE_BITRATE }) }); + output.addAudioTrack(source); + + await output.start(); + + const sample = new AudioSample({ + data, + format: 'f32', + numberOfChannels: ENCODE_CHANNELS, + sampleRate: ENCODE_SAMPLE_RATE, + timestamp: startTimestamp, + }); + await source.add(sample); + sample.close(); + source.close(); + + await output.finalize(); + + const { buffer } = output.target; + assert(buffer); + + return buffer; +}; + +/** Returns the fraction of the signal's energy explained by a pure sine at `freq`. */ +const sine440Score = (x: Float32Array, sampleRate: number, freq: number) => { + const w = 2 * Math.PI * freq / sampleRate; + + let ss = 0, cc = 0, sc = 0; + let xs = 0, xc = 0; + let xx = 0; + + for (let n = 0; n < x.length; n++) { + const s = Math.sin(w * n); + const c = Math.cos(w * n); + + ss += s * s; + cc += c * c; + sc += s * c; + + xs += x[n]! * s; + xc += x[n]! * c; + xx += x[n]! * x[n]!; + } + + const det = ss * cc - sc * sc; + + const a = (xs * cc - xc * sc) / det; + const b = (xc * ss - xs * sc) / det; + + let fitEnergy = 0; + + for (let n = 0; n < x.length; n++) { + const y = a * Math.sin(w * n) + b * Math.cos(w * n); + fitEnergy += y * y; + } + + return fitEnergy / xx; +}; diff --git a/vite.config.ts b/vite.config.ts index 576ccc9..a9978e0 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -23,6 +23,8 @@ export default defineConfig({ 'mediabunny': path.resolve(__dirname, './dist/bundles/mediabunny.mjs'), '@mediabunny/ac3': path.resolve(__dirname, './packages/ac3/dist/bundles/mediabunny-ac3.mjs'), + '@mediabunny/dts': + path.resolve(__dirname, './packages/dts/dist/bundles/mediabunny-dts.mjs'), '@mediabunny/aac-encoder': path.resolve(__dirname, './packages/aac-encoder/dist/bundles/mediabunny-aac-encoder.mjs'), '@mediabunny/flac-encoder':