@remotion/webcodecs 4.0.250 → 4.0.252

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/auto-select-writer.d.ts +1 -1
  2. package/dist/can-copy-audio-track.d.ts +2 -2
  3. package/dist/can-copy-video-track.d.ts +2 -2
  4. package/dist/can-copy-video-track.js +2 -1
  5. package/dist/choose-correct-hevc-profile.d.ts +5 -0
  6. package/dist/choose-correct-hevc-profile.js +42 -0
  7. package/dist/convert-media.d.ts +6 -5
  8. package/dist/convert-media.js +7 -5
  9. package/dist/create/iso-base-media/codec-specific/create-codec-specific-data.d.ts +11 -0
  10. package/dist/create/iso-base-media/codec-specific/create-codec-specific-data.js +29 -11
  11. package/dist/create/iso-base-media/codec-specific/hvc1.d.ts +2 -0
  12. package/dist/create/iso-base-media/codec-specific/hvc1.js +48 -0
  13. package/dist/create/iso-base-media/create-iso-base-media.js +8 -4
  14. package/dist/create/iso-base-media/serialize-track.js +3 -1
  15. package/dist/create/iso-base-media/trak/mdia/minf/stbl/stsd/create-hvcc.d.ts +1 -0
  16. package/dist/create/iso-base-media/trak/mdia/minf/stbl/stsd/create-hvcc.js +16 -0
  17. package/dist/create/matroska/cluster.d.ts +1 -1
  18. package/dist/create/matroska/create-matroska-media.js +8 -4
  19. package/dist/create/matroska/matroska-trackentry.js +6 -0
  20. package/dist/create/media-fn.d.ts +2 -3
  21. package/dist/create/wav/create-wav.js +8 -4
  22. package/dist/esm/buffer.mjs +5 -22
  23. package/dist/esm/index.mjs +435 -65
  24. package/dist/esm/web-fs.mjs +10 -25
  25. package/dist/get-available-containers.d.ts +1 -2
  26. package/dist/get-available-containers.js +3 -3
  27. package/dist/get-available-video-codecs.d.ts +1 -2
  28. package/dist/get-available-video-codecs.js +3 -4
  29. package/dist/get-codec-string.d.ts +7 -0
  30. package/dist/get-codec-string.js +21 -0
  31. package/dist/hevc-levels.d.ts +13 -0
  32. package/dist/hevc-levels.js +233 -0
  33. package/dist/index.d.ts +0 -1
  34. package/dist/on-audio-track-handler.d.ts +2 -2
  35. package/dist/on-audio-track.js +1 -0
  36. package/dist/on-video-track-handler.d.ts +2 -2
  37. package/dist/test/create-matroska.test.js +13 -13
  38. package/dist/test/remux-serverside.test.js +6 -2
  39. package/dist/test/stsd.test.js +2 -4
  40. package/dist/video-encoder-config.js +4 -6
  41. package/dist/video-encoder.js +4 -0
  42. package/dist/writers/buffer-implementation/writer.d.ts +1 -1
  43. package/dist/writers/buffer-implementation/writer.js +5 -4
  44. package/dist/writers/buffer.d.ts +1 -1
  45. package/dist/writers/web-fs.d.ts +1 -1
  46. package/dist/writers/web-fs.js +10 -7
  47. package/package.json +5 -5
  48. package/dist/esm/node-writer.mjs +0 -92
  49. package/dist/test/remux-serverside.d.ts +0 -1
  50. package/dist/test/remux-serverside.js +0 -12
  51. package/dist/writers/fs.d.ts +0 -4
  52. package/dist/writers/fs.js +0 -78
  53. package/dist/writers/node-writer.d.ts +0 -4
  54. package/dist/writers/node-writer.js +0 -77
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/webcodecs",
3
- "version": "4.0.250",
3
+ "version": "4.0.252",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "module": "dist/esm/index.mjs",
@@ -17,15 +17,15 @@
17
17
  "author": "Jonny Burger <jonny@remotion.dev>",
18
18
  "license": "Remotion License (See https://remotion.dev/docs/webcodecs#license)",
19
19
  "dependencies": {
20
- "@remotion/media-parser": "4.0.250",
21
- "@remotion/licensing": "4.0.250"
20
+ "@remotion/media-parser": "4.0.252",
21
+ "@remotion/licensing": "4.0.252"
22
22
  },
23
23
  "peerDependencies": {},
24
24
  "devDependencies": {
25
25
  "@types/dom-webcodecs": "0.1.11",
26
26
  "eslint": "9.14.0",
27
- "@remotion/example-videos": "4.0.250",
28
- "@remotion/eslint-config-internal": "4.0.250"
27
+ "@remotion/example-videos": "4.0.252",
28
+ "@remotion/eslint-config-internal": "4.0.252"
29
29
  },
30
30
  "keywords": [],
31
31
  "publishConfig": {
@@ -1,92 +0,0 @@
1
- var __create = Object.create;
2
- var __getProtoOf = Object.getPrototypeOf;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __toESM = (mod, isNodeMode, target) => {
7
- target = mod != null ? __create(__getProtoOf(mod)) : {};
8
- const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
9
- for (let key of __getOwnPropNames(mod))
10
- if (!__hasOwnProp.call(to, key))
11
- __defProp(to, key, {
12
- get: () => mod[key],
13
- enumerable: true
14
- });
15
- return to;
16
- };
17
- var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
18
-
19
- // src/writers/node-writer.ts
20
- var { default: fs} = (() => ({}));
21
- var createContent = (filename) => {
22
- return async () => {
23
- const writPromise = Promise.resolve();
24
- const remove = async () => {
25
- await fs.promises.unlink(filename).catch(() => {
26
- });
27
- };
28
- await remove();
29
- const writeStream = await new Promise((resolve, reject) => {
30
- fs.open(filename, "w", (err, fd) => {
31
- if (err) {
32
- reject(err);
33
- return;
34
- }
35
- resolve(fd);
36
- });
37
- });
38
- let written = 0;
39
- const write = async (arr) => {
40
- await new Promise((resolve, reject) => {
41
- fs.write(writeStream, arr, (err) => {
42
- if (err) {
43
- reject(err);
44
- }
45
- resolve();
46
- });
47
- });
48
- written += arr.byteLength;
49
- };
50
- const updateDataAt = async (position, data) => {
51
- return new Promise((resolve, reject) => {
52
- fs.write(writeStream, data, 0, data.length, position, (err) => {
53
- if (err) {
54
- reject(err);
55
- }
56
- resolve();
57
- });
58
- });
59
- };
60
- const writer = {
61
- write: (arr) => {
62
- writPromise.then(() => write(arr));
63
- return writPromise;
64
- },
65
- updateDataAt: (position, data) => {
66
- writPromise.then(() => updateDataAt(position, data));
67
- return writPromise;
68
- },
69
- waitForFinish: async () => {
70
- await writPromise;
71
- },
72
- getWrittenByteCount: () => written,
73
- remove,
74
- save: async () => {
75
- try {
76
- fs.closeSync(writeStream);
77
- const file = await fs.promises.readFile(filename);
78
- return new Blob([file]);
79
- } catch (e) {
80
- return Promise.reject(e);
81
- }
82
- }
83
- };
84
- return writer;
85
- };
86
- };
87
- var nodeWriter = (path) => {
88
- return { createContent: createContent(path) };
89
- };
90
- export {
91
- nodeWriter
92
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const node_1 = require("@remotion/media-parser/node");
4
- const bun_test_1 = require("bun:test");
5
- const convert_media_1 = require("../convert-media");
6
- (0, bun_test_1.test)('should be able to remux on server side', async () => {
7
- await (0, convert_media_1.convertMedia)({
8
- src: '/Users/jonathanburger/Downloads/odaje_glitch.mov',
9
- reader: node_1.nodeReader,
10
- container: 'mp4',
11
- });
12
- });
@@ -1,4 +0,0 @@
1
- import type { CreateContent } from './writer';
2
- export declare const fsWriter: (path: string) => {
3
- createContent: CreateContent;
4
- };
@@ -1,78 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.fsWriter = void 0;
7
- const fs_1 = __importDefault(require("fs"));
8
- const createContent = (filename) => {
9
- return async () => {
10
- let writPromise = Promise.resolve();
11
- const remove = () => {
12
- try {
13
- fs_1.default.unlinkSync(filename);
14
- }
15
- catch (_a) { }
16
- return Promise.resolve();
17
- };
18
- await remove();
19
- if (!fs_1.default.existsSync(filename)) {
20
- fs_1.default.writeFileSync(filename, '');
21
- }
22
- const writeStream = fs_1.default.openSync(filename, 'w');
23
- let written = 0;
24
- const write = async (data) => {
25
- await new Promise((resolve, reject) => {
26
- fs_1.default.write(writeStream, data, 0, data.byteLength, written, (err) => {
27
- if (err) {
28
- reject(err);
29
- return;
30
- }
31
- resolve();
32
- });
33
- });
34
- written += data.byteLength;
35
- };
36
- const updateDataAt = (position, data) => {
37
- return new Promise((resolve, reject) => {
38
- fs_1.default.write(writeStream, data, 0, data.byteLength, position, (err) => {
39
- if (err) {
40
- reject(err);
41
- return;
42
- }
43
- resolve();
44
- });
45
- });
46
- };
47
- const writer = {
48
- write: (arr) => {
49
- writPromise = writPromise.then(() => write(arr));
50
- return writPromise;
51
- },
52
- updateDataAt: (position, data) => {
53
- writPromise = writPromise.then(() => updateDataAt(position, data));
54
- return writPromise;
55
- },
56
- waitForFinish: async () => {
57
- await writPromise;
58
- },
59
- getWrittenByteCount: () => written,
60
- remove,
61
- save: async () => {
62
- try {
63
- fs_1.default.closeSync(writeStream);
64
- const file = await fs_1.default.promises.readFile(filename);
65
- return new Blob([file]);
66
- }
67
- catch (e) {
68
- return Promise.reject(e);
69
- }
70
- },
71
- };
72
- return writer;
73
- };
74
- };
75
- const fsWriter = (path) => {
76
- return { createContent: createContent(path) };
77
- };
78
- exports.fsWriter = fsWriter;
@@ -1,4 +0,0 @@
1
- import type { CreateContent } from './writer';
2
- export declare const nodeWriter: (path: string) => {
3
- createContent: CreateContent;
4
- };
@@ -1,77 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.nodeWriter = void 0;
7
- const node_fs_1 = __importDefault(require("node:fs"));
8
- const createContent = (filename) => {
9
- return async () => {
10
- const writPromise = Promise.resolve();
11
- const remove = async () => {
12
- await node_fs_1.default.promises.unlink(filename).catch(() => { });
13
- };
14
- await remove();
15
- const writeStream = await new Promise((resolve, reject) => {
16
- node_fs_1.default.open(filename, 'w', (err, fd) => {
17
- if (err) {
18
- reject(err);
19
- return;
20
- }
21
- resolve(fd);
22
- });
23
- });
24
- let written = 0;
25
- const write = async (arr) => {
26
- await new Promise((resolve, reject) => {
27
- node_fs_1.default.write(writeStream, arr, (err) => {
28
- if (err) {
29
- reject(err);
30
- }
31
- resolve();
32
- });
33
- });
34
- written += arr.byteLength;
35
- };
36
- const updateDataAt = async (position, data) => {
37
- return new Promise((resolve, reject) => {
38
- node_fs_1.default.write(writeStream, data, 0, data.length, position, (err) => {
39
- if (err) {
40
- reject(err);
41
- }
42
- resolve();
43
- });
44
- });
45
- };
46
- const writer = {
47
- write: (arr) => {
48
- writPromise.then(() => write(arr));
49
- return writPromise;
50
- },
51
- updateDataAt: (position, data) => {
52
- writPromise.then(() => updateDataAt(position, data));
53
- return writPromise;
54
- },
55
- waitForFinish: async () => {
56
- await writPromise;
57
- },
58
- getWrittenByteCount: () => written,
59
- remove,
60
- save: async () => {
61
- try {
62
- node_fs_1.default.closeSync(writeStream);
63
- const file = await node_fs_1.default.promises.readFile(filename);
64
- return new Blob([file]);
65
- }
66
- catch (e) {
67
- return Promise.reject(e);
68
- }
69
- },
70
- };
71
- return writer;
72
- };
73
- };
74
- const nodeWriter = (path) => {
75
- return { createContent: createContent(path) };
76
- };
77
- exports.nodeWriter = nodeWriter;