@remotion/webcodecs 4.0.245 → 4.0.247
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.
- package/dist/audio-decoder.d.ts +2 -1
- package/dist/audio-encoder.d.ts +2 -1
- package/dist/auto-select-writer.d.ts +1 -1
- package/dist/auto-select-writer.js +4 -4
- package/dist/convert-encoded-chunk.d.ts +0 -1
- package/dist/convert-encoded-chunk.js +1 -21
- package/dist/convert-media.d.ts +2 -1
- package/dist/convert-media.js +4 -2
- package/dist/create/event-emitter.d.ts +31 -0
- package/dist/create/event-emitter.js +25 -0
- package/dist/create/iso-base-media/codec-specific/avc1.d.ts +2 -0
- package/dist/create/iso-base-media/codec-specific/avc1.js +48 -0
- package/dist/create/iso-base-media/codec-specific/create-codec-specific-data.d.ts +22 -0
- package/dist/create/iso-base-media/codec-specific/create-codec-specific-data.js +36 -0
- package/dist/create/iso-base-media/codec-specific/mp4a.d.ts +2 -0
- package/dist/create/iso-base-media/codec-specific/mp4a.js +74 -0
- package/dist/create/iso-base-media/create-colr.d.ts +6 -0
- package/dist/create/iso-base-media/create-colr.js +26 -0
- package/dist/create/iso-base-media/create-ftyp.d.ts +10 -0
- package/dist/create/iso-base-media/create-ftyp.js +22 -0
- package/dist/create/iso-base-media/create-ilst.d.ts +1 -0
- package/dist/create/iso-base-media/create-ilst.js +14 -0
- package/dist/create/iso-base-media/create-iso-base-media.d.ts +2 -0
- package/dist/create/iso-base-media/create-iso-base-media.js +184 -0
- package/dist/create/iso-base-media/create-mdia.d.ts +5 -0
- package/dist/create/iso-base-media/create-mdia.js +18 -0
- package/dist/create/iso-base-media/create-moov.d.ts +5 -0
- package/dist/create/iso-base-media/create-moov.js +18 -0
- package/dist/create/iso-base-media/create-mvhd.d.ts +10 -0
- package/dist/create/iso-base-media/create-mvhd.js +48 -0
- package/dist/create/iso-base-media/create-trak.d.ts +4 -0
- package/dist/create/iso-base-media/create-trak.js +17 -0
- package/dist/create/iso-base-media/create-udta.d.ts +1 -0
- package/dist/create/iso-base-media/create-udta.js +14 -0
- package/dist/create/iso-base-media/create-url.d.ts +1 -0
- package/dist/create/iso-base-media/create-url.js +16 -0
- package/dist/create/iso-base-media/example-stts.d.ts +3 -0
- package/dist/create/iso-base-media/example-stts.js +2797 -0
- package/dist/create/iso-base-media/ilst/create-cmt.d.ts +1 -0
- package/dist/create/iso-base-media/ilst/create-cmt.js +26 -0
- package/dist/create/iso-base-media/ilst/create-too.d.ts +1 -0
- package/dist/create/iso-base-media/ilst/create-too.js +27 -0
- package/dist/create/iso-base-media/mdia/create-mdhd.d.ts +6 -0
- package/dist/create/iso-base-media/mdia/create-mdhd.js +33 -0
- package/dist/create/iso-base-media/mp4-header.d.ts +6 -0
- package/dist/create/iso-base-media/mp4-header.js +48 -0
- package/dist/create/iso-base-media/primitives.d.ts +26 -0
- package/dist/create/iso-base-media/primitives.js +133 -0
- package/dist/create/iso-base-media/serialize-track.d.ts +9 -0
- package/dist/create/iso-base-media/serialize-track.js +63 -0
- package/dist/create/iso-base-media/trak/create-tkhd.d.ts +27 -0
- package/dist/create/iso-base-media/trak/create-tkhd.js +97 -0
- package/dist/create/iso-base-media/trak/mdia/create-minf.d.ts +4 -0
- package/dist/create/iso-base-media/trak/mdia/create-minf.js +19 -0
- package/dist/create/iso-base-media/trak/mdia/minf/create-dinf.d.ts +1 -0
- package/dist/create/iso-base-media/trak/mdia/minf/create-dinf.js +22 -0
- package/dist/create/iso-base-media/trak/mdia/minf/create-smhd.d.ts +1 -0
- package/dist/create/iso-base-media/trak/mdia/minf/create-smhd.js +20 -0
- package/dist/create/iso-base-media/trak/mdia/minf/create-stbl.d.ts +6 -0
- package/dist/create/iso-base-media/trak/mdia/minf/create-stbl.js +41 -0
- package/dist/create/iso-base-media/trak/mdia/minf/create-vmhd.d.ts +1 -0
- package/dist/create/iso-base-media/trak/mdia/minf/create-vmhd.js +20 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-ctts.d.ts +2 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-ctts.js +45 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stco.d.ts +2 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stco.js +28 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stsc.d.ts +2 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stsc.js +56 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stss.d.ts +2 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stss.js +23 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stsz.d.ts +2 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stsz.js +25 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stts.d.ts +2 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/create-stts.js +51 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/stsd/create-avc1.d.ts +1 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/stsd/create-avc1.js +20 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/stsd/create-avcc.d.ts +1 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/stsd/create-avcc.js +16 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/stsd/create-pasp.d.ts +1 -0
- package/dist/create/iso-base-media/trak/mdia/minf/stbl/stsd/create-pasp.js +13 -0
- package/dist/create/iso-base-media/udta/create-meta.d.ts +4 -0
- package/dist/create/iso-base-media/udta/create-meta.js +20 -0
- package/dist/create/iso-base-media/udta/meta/create-hdlr.d.ts +1 -0
- package/dist/create/iso-base-media/udta/meta/create-hdlr.js +32 -0
- package/dist/create/make-track-info.d.ts +20 -0
- package/dist/create/matroska/cluster-segment.d.ts +10 -0
- package/dist/create/matroska/cluster-segment.js +38 -0
- package/dist/create/matroska/cluster.d.ts +25 -0
- package/dist/create/matroska/cluster.js +76 -0
- package/dist/create/matroska/color.d.ts +2 -0
- package/dist/create/matroska/color.js +85 -0
- package/dist/create/matroska/create-matroska-media.d.ts +2 -0
- package/dist/create/matroska/create-matroska-media.js +189 -0
- package/dist/create/matroska/make-duration-with-padding.d.ts +1 -0
- package/dist/create/matroska/make-duration-with-padding.js +15 -0
- package/dist/create/matroska/matroska-cues.d.ts +6 -0
- package/dist/create/matroska/matroska-cues.js +49 -0
- package/dist/create/matroska/matroska-header.d.ts +1 -0
- package/dist/create/matroska/matroska-header.js +66 -0
- package/dist/create/matroska/matroska-info.d.ts +3 -0
- package/dist/create/matroska/matroska-info.js +33 -0
- package/dist/create/matroska/matroska-seek.d.ts +6 -0
- package/dist/create/matroska/matroska-seek.js +32 -0
- package/dist/create/matroska/matroska-segment.d.ts +3 -0
- package/dist/create/matroska/matroska-segment.js +13 -0
- package/dist/create/matroska/matroska-trackentry.d.ts +10 -0
- package/dist/create/matroska/matroska-trackentry.js +249 -0
- package/dist/create/matroska/matroska-utils.d.ts +30 -0
- package/dist/create/matroska/matroska-utils.js +292 -0
- package/dist/create/media-fn.d.ts +32 -0
- package/dist/create/progress-tracker.d.ts +9 -0
- package/dist/create/progress-tracker.js +67 -0
- package/dist/create/timescale.d.ts +1 -0
- package/dist/create/timescale.js +4 -0
- package/dist/create/wav/create-wav.d.ts +2 -0
- package/dist/create/wav/create-wav.js +110 -0
- package/dist/create/with-resolvers.d.ts +10 -0
- package/dist/create/with-resolvers.js +28 -0
- package/dist/esm/buffer.mjs +74 -0
- package/dist/esm/index.mjs +2518 -40
- package/dist/esm/web-fs.mjs +92 -0
- package/dist/from-unix-timestamp.d.ts +1 -0
- package/dist/from-unix-timestamp.js +11 -0
- package/dist/index.d.ts +1 -0
- package/dist/io-manager/io-synchronizer.d.ts +1 -1
- package/dist/io-manager/io-synchronizer.js +5 -4
- package/dist/io-manager/make-timeout-promise.js +2 -2
- package/dist/on-audio-track.d.ts +3 -1
- package/dist/on-video-track.d.ts +3 -1
- package/dist/select-container-creator.d.ts +1 -1
- package/dist/select-container-creator.js +6 -4
- package/dist/test/avc1.test.d.ts +1 -0
- package/dist/test/avc1.test.js +39 -0
- package/dist/test/avcc.test.d.ts +1 -0
- package/dist/test/avcc.test.js +15 -0
- package/dist/test/cmt.test.d.ts +1 -0
- package/dist/test/cmt.test.js +13 -0
- package/dist/test/colr.test.d.ts +1 -0
- package/dist/test/colr.test.js +16 -0
- package/dist/test/create-ftyp.test.d.ts +1 -0
- package/dist/test/create-ftyp.test.js +47 -0
- package/dist/test/create-matroska.test.d.ts +1 -0
- package/dist/test/create-matroska.test.js +101 -0
- package/dist/test/create-mvhd.test.d.ts +1 -0
- package/dist/test/create-mvhd.test.js +108 -0
- package/dist/test/ctts.test.d.ts +1 -0
- package/dist/test/ctts.test.js +49 -0
- package/dist/test/dinf.test.d.ts +1 -0
- package/dist/test/dinf.test.js +12 -0
- package/dist/test/ilst.test.d.ts +1 -0
- package/dist/test/ilst.test.js +22 -0
- package/dist/test/mdhd.test.d.ts +1 -0
- package/dist/test/mdhd.test.js +17 -0
- package/dist/test/meta.test.d.ts +1 -0
- package/dist/test/meta.test.js +26 -0
- package/dist/test/mp4a.test.d.ts +1 -0
- package/dist/test/mp4a.test.js +24 -0
- package/dist/test/pasp.test.d.ts +1 -0
- package/dist/test/pasp.test.js +12 -0
- package/dist/test/stbl.test.js +166 -0
- package/dist/test/stco.test.d.ts +1 -0
- package/dist/test/stco.test.js +34 -0
- package/dist/test/stsc.test.d.ts +1 -0
- package/dist/test/stsc.test.js +63 -0
- package/dist/test/stsd.test.d.ts +1 -0
- package/dist/test/stsd.test.js +264 -0
- package/dist/test/stss.test.d.ts +1 -0
- package/dist/test/stss.test.js +14 -0
- package/dist/test/stsz.test.d.ts +1 -0
- package/dist/test/stsz.test.js +43 -0
- package/dist/test/stts.test.d.ts +1 -0
- package/dist/test/stts.test.js +12 -0
- package/dist/test/tkhd.test.d.ts +1 -0
- package/dist/test/tkhd.test.js +175 -0
- package/dist/test/too.test.d.ts +1 -0
- package/dist/test/too.test.js +12 -0
- package/dist/test/url.test.d.ts +1 -0
- package/dist/test/url.test.js +11 -0
- package/dist/truthy.d.ts +3 -0
- package/dist/truthy.js +6 -0
- package/dist/video-decoder.d.ts +2 -1
- package/dist/video-encoder.d.ts +2 -1
- package/dist/writers/buffer-implementation/writer.d.ts +2 -0
- package/dist/writers/buffer-implementation/writer.js +54 -0
- package/dist/writers/buffer.d.ts +2 -0
- package/dist/writers/buffer.js +7 -0
- package/dist/writers/web-fs.d.ts +3 -0
- package/dist/writers/web-fs.js +75 -0
- package/dist/writers/writer.d.ts +15 -0
- package/package.json +36 -5
- package/dist/get-operation-id.js +0 -1
- package/dist/resizing/resizing.d.ts +0 -13
- package/dist/resizing.d.ts +0 -13
- package/dist/rotate-video-frame.d.ts +0 -9
- package/dist/rotate-video-frame.js +0 -53
- package/dist/scaling.d.ts +0 -13
- /package/dist/{resizing.js → create/make-track-info.js} +0 -0
- /package/dist/{resizing/resizing.js → create/media-fn.js} +0 -0
- /package/dist/{get-operation-id.d.ts → test/stbl.test.d.ts} +0 -0
- /package/dist/{scaling.js → writers/writer.js} +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const bun_test_1 = require("bun:test");
|
|
4
|
+
const create_ilst_1 = require("../create/iso-base-media/create-ilst");
|
|
5
|
+
const create_cmt_1 = require("../create/iso-base-media/ilst/create-cmt");
|
|
6
|
+
const create_too_1 = require("../create/iso-base-media/ilst/create-too");
|
|
7
|
+
const reference = new Uint8Array([
|
|
8
|
+
0x00, 0x00, 0x00, 0x5e, 0x69, 0x6c, 0x73, 0x74, 0x00, 0x00, 0x00, 0x24, 0xa9,
|
|
9
|
+
0x74, 0x6f, 0x6f, 0x00, 0x00, 0x00, 0x1c, 0x64, 0x61, 0x74, 0x61, 0x00, 0x00,
|
|
10
|
+
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x61, 0x76, 0x66, 0x36, 0x31, 0x2e,
|
|
11
|
+
0x37, 0x2e, 0x31, 0x30, 0x30, 0x00, 0x00, 0x00, 0x32, 0xa9, 0x63, 0x6d, 0x74,
|
|
12
|
+
0x00, 0x00, 0x00, 0x2a, 0x64, 0x61, 0x74, 0x61, 0x00, 0x00, 0x00, 0x01, 0x00,
|
|
13
|
+
0x00, 0x00, 0x00, 0x4d, 0x61, 0x64, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20,
|
|
14
|
+
0x52, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x34, 0x2e, 0x30, 0x2e,
|
|
15
|
+
0x32, 0x32, 0x37,
|
|
16
|
+
]);
|
|
17
|
+
(0, bun_test_1.test)('ilst', () => {
|
|
18
|
+
(0, bun_test_1.expect)((0, create_ilst_1.createIlst)([
|
|
19
|
+
(0, create_too_1.createToo)('Lavf61.7.100'),
|
|
20
|
+
(0, create_cmt_1.createCmt)('Made with Remotion 4.0.227'),
|
|
21
|
+
])).toEqual(reference);
|
|
22
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const bun_test_1 = require("bun:test");
|
|
4
|
+
const create_mdhd_1 = require("../create/iso-base-media/mdia/create-mdhd");
|
|
5
|
+
const reference = new Uint8Array([
|
|
6
|
+
0, 0, 0, 32, 109, 100, 104, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 95,
|
|
7
|
+
144, 1, 238, 98, 128, 85, 196, 0, 0,
|
|
8
|
+
]);
|
|
9
|
+
(0, bun_test_1.test)('mdhd', () => {
|
|
10
|
+
(0, bun_test_1.expect)(reference.length).toBe(32);
|
|
11
|
+
(0, bun_test_1.expect)((0, create_mdhd_1.createMdhd)({
|
|
12
|
+
creationTime: null,
|
|
13
|
+
modificationTime: null,
|
|
14
|
+
timescale: 90000,
|
|
15
|
+
duration: 360000,
|
|
16
|
+
})).toEqual(reference);
|
|
17
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const bun_test_1 = require("bun:test");
|
|
4
|
+
const create_ilst_1 = require("../create/iso-base-media/create-ilst");
|
|
5
|
+
const create_cmt_1 = require("../create/iso-base-media/ilst/create-cmt");
|
|
6
|
+
const create_too_1 = require("../create/iso-base-media/ilst/create-too");
|
|
7
|
+
const create_meta_1 = require("../create/iso-base-media/udta/create-meta");
|
|
8
|
+
const create_hdlr_1 = require("../create/iso-base-media/udta/meta/create-hdlr");
|
|
9
|
+
(0, bun_test_1.test)('meta atom', () => {
|
|
10
|
+
(0, bun_test_1.expect)((0, create_meta_1.createMeta)({
|
|
11
|
+
hdlr: (0, create_hdlr_1.createHdlr)('mdir'),
|
|
12
|
+
ilst: (0, create_ilst_1.createIlst)([
|
|
13
|
+
(0, create_too_1.createToo)('Lavf61.7.100'),
|
|
14
|
+
(0, create_cmt_1.createCmt)('Made with Remotion 4.0.227'),
|
|
15
|
+
]),
|
|
16
|
+
})).toEqual(new Uint8Array([
|
|
17
|
+
0, 0, 0, 139, 109, 101, 116, 97, 0, 0, 0, 0, 0, 0, 0, 33, 104, 100, 108,
|
|
18
|
+
114, 0, 0, 0, 0, 0, 0, 0, 0, 109, 100, 105, 114, 97, 112, 112, 108, 0, 0,
|
|
19
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94, 105, 108, 115, 116, 0, 0, 0, 36, 169,
|
|
20
|
+
116, 111, 111, 0, 0, 0, 28, 100, 97, 116, 97, 0, 0, 0, 1, 0, 0, 0, 0, 76,
|
|
21
|
+
97, 118, 102, 54, 49, 46, 55, 46, 49, 48, 48, 0, 0, 0, 50, 169, 99, 109,
|
|
22
|
+
116, 0, 0, 0, 42, 100, 97, 116, 97, 0, 0, 0, 1, 0, 0, 0, 0, 77, 97, 100,
|
|
23
|
+
101, 32, 119, 105, 116, 104, 32, 82, 101, 109, 111, 116, 105, 111, 110,
|
|
24
|
+
32, 52, 46, 48, 46, 50, 50, 55,
|
|
25
|
+
]));
|
|
26
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const bun_test_1 = require("bun:test");
|
|
4
|
+
const mp4a_1 = require("../create/iso-base-media/codec-specific/mp4a");
|
|
5
|
+
const reference = new Uint8Array([
|
|
6
|
+
0x00, 0x00, 0x00, 87, 0x6d, 0x70, 0x34, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
7
|
+
0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
|
|
8
|
+
0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0xbb, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
9
|
+
0x33, 0x65, 0x73, 0x64, 0x73, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x80, 0x80,
|
|
10
|
+
0x22, 0x00, 0x02, 0x00, 0x04, 0x80, 0x80, 0x80, 0x14, 0x40, 0x15, 0x00, 0x00,
|
|
11
|
+
0x00, 0x00, 0x04, 0xe1, 0xff, 0x00, 0x04, 0xd7, 0xba, 0x05, 0x80, 0x80, 0x80,
|
|
12
|
+
0x02, 0x11, 0x90, 0x06, 0x80, 0x80, 0x80, 0x01, 0x02,
|
|
13
|
+
]);
|
|
14
|
+
(0, bun_test_1.test)('mp4a', () => {
|
|
15
|
+
const result = (0, mp4a_1.createMp4a)({
|
|
16
|
+
type: 'mp4a-data',
|
|
17
|
+
channelCount: 2,
|
|
18
|
+
sampleRate: 48000,
|
|
19
|
+
avgBitrate: 317370,
|
|
20
|
+
maxBitrate: 319999,
|
|
21
|
+
codecPrivate: new Uint8Array([17, 144]),
|
|
22
|
+
});
|
|
23
|
+
(0, bun_test_1.expect)(result).toEqual(reference.slice(0, result.length + 7));
|
|
24
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const bun_test_1 = require("bun:test");
|
|
4
|
+
const create_pasp_1 = require("../create/iso-base-media/trak/mdia/minf/stbl/stsd/create-pasp");
|
|
5
|
+
const reference = new Uint8Array([
|
|
6
|
+
0x00, 0x00, 0x00, 0x10, 0x70, 0x61, 0x73, 0x70, 0x00, 0x00, 0x00, 0x01, 0x00,
|
|
7
|
+
0x00, 0x00, 0x01,
|
|
8
|
+
]);
|
|
9
|
+
(0, bun_test_1.test)('pasp box', () => {
|
|
10
|
+
const pasp = (0, create_pasp_1.createPasp)(1, 1);
|
|
11
|
+
(0, bun_test_1.expect)(pasp).toEqual(reference);
|
|
12
|
+
});
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
if (process.platform !== 'win32') {
|
|
26
|
+
// @ts-expect-error
|
|
27
|
+
const { expect, test } = await Promise.resolve().then(() => __importStar(require('bun:test')));
|
|
28
|
+
// @ts-expect-error
|
|
29
|
+
const { createAvc1Data } = await Promise.resolve().then(() => __importStar(require('../create/iso-base-media/codec-specific/avc1')));
|
|
30
|
+
// @ts-expect-error
|
|
31
|
+
const { exampleVideoSamplePositions } = await Promise.resolve().then(() => __importStar(require('../create/iso-base-media/example-stts')));
|
|
32
|
+
// @ts-expect-error
|
|
33
|
+
const { createStbl } = await Promise.resolve().then(() => __importStar(require('../create/iso-base-media/trak/mdia/minf/create-stbl')));
|
|
34
|
+
// @ts-expect-error
|
|
35
|
+
const { createAvccBox } = await Promise.resolve().then(() => __importStar(require('../create/iso-base-media/trak/mdia/minf/stbl/stsd/create-avcc')));
|
|
36
|
+
// @ts-expect-error
|
|
37
|
+
const { createPasp } = await Promise.resolve().then(() => __importStar(require('../create/iso-base-media/trak/mdia/minf/stbl/stsd/create-pasp')));
|
|
38
|
+
const sample = new Uint8Array([
|
|
39
|
+
0, 0, 8, 125, 115, 116, 98, 108, 0, 0, 0, 177, 115, 116, 115, 100, 0, 0, 0,
|
|
40
|
+
0, 0, 0, 0, 1, 0, 0, 0, 161, 97, 118, 99, 49, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
|
|
41
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 128, 1, 104, 0, 72, 0, 0, 0,
|
|
42
|
+
72, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
43
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 255, 255, 0, 0, 0,
|
|
44
|
+
59, 97, 118, 99, 67, 1, 100, 0, 30, 255, 225, 0, 30, 103, 100, 0, 30, 172,
|
|
45
|
+
217, 64, 160, 47, 249, 112, 22, 224, 64, 64, 180, 160, 0, 0, 3, 0, 32, 0, 0,
|
|
46
|
+
7, 129, 226, 197, 178, 192, 1, 0, 6, 104, 235, 224, 140, 178, 44, 253, 248,
|
|
47
|
+
248, 0, 0, 0, 0, 16, 112, 97, 115, 112, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 24,
|
|
48
|
+
115, 116, 116, 115, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 120, 0, 0, 11, 184, 0,
|
|
49
|
+
0, 0, 40, 115, 116, 115, 115, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 1, 0, 0, 0,
|
|
50
|
+
21, 0, 0, 0, 41, 0, 0, 0, 61, 0, 0, 0, 81, 0, 0, 0, 101, 0, 0, 3, 128, 99,
|
|
51
|
+
116, 116, 115, 0, 0, 0, 0, 0, 0, 0, 110, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0,
|
|
52
|
+
1, 0, 0, 58, 152, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
|
|
53
|
+
0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0,
|
|
54
|
+
0, 0, 1, 0, 0, 46, 224, 0, 0, 0, 2, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 35, 40,
|
|
55
|
+
0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 58,
|
|
56
|
+
152, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
|
|
57
|
+
11, 184, 0, 0, 0, 1, 0, 0, 46, 224, 0, 0, 0, 2, 0, 0, 11, 184, 0, 0, 0, 1,
|
|
58
|
+
0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0,
|
|
59
|
+
1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 3, 0, 0, 23, 112, 0, 0,
|
|
60
|
+
0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 58, 152, 0,
|
|
61
|
+
0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 11, 184,
|
|
62
|
+
0, 0, 0, 1, 0, 0, 58, 152, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0,
|
|
63
|
+
0, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0,
|
|
64
|
+
11, 184, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0,
|
|
65
|
+
0, 11, 184, 0, 0, 0, 2, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 58, 152, 0, 0, 0,
|
|
66
|
+
1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0,
|
|
67
|
+
0, 1, 0, 0, 58, 152, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0,
|
|
68
|
+
0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 2, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 46,
|
|
69
|
+
224, 0, 0, 0, 2, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0,
|
|
70
|
+
11, 184, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0,
|
|
71
|
+
0, 11, 184, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 46, 224, 0, 0, 0,
|
|
72
|
+
2, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 58, 152, 0,
|
|
73
|
+
0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 11, 184,
|
|
74
|
+
0, 0, 0, 1, 0, 0, 58, 152, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0,
|
|
75
|
+
0, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 58, 152, 0, 0, 0, 1, 0, 0,
|
|
76
|
+
23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0,
|
|
77
|
+
0, 23, 112, 0, 0, 0, 1, 0, 0, 58, 152, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0,
|
|
78
|
+
1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 58, 152, 0, 0,
|
|
79
|
+
0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 11, 184, 0,
|
|
80
|
+
0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184,
|
|
81
|
+
0, 0, 0, 2, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 58, 152, 0, 0, 0, 1, 0, 0, 23,
|
|
82
|
+
112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0,
|
|
83
|
+
35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0,
|
|
84
|
+
0, 58, 152, 0, 0, 0, 1, 0, 0, 23, 112, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1,
|
|
85
|
+
0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0,
|
|
86
|
+
1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 46, 224, 0, 0,
|
|
87
|
+
0, 2, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0,
|
|
88
|
+
0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 35, 40,
|
|
89
|
+
0, 0, 0, 1, 0, 0, 11, 184, 0, 0, 0, 1, 0, 0, 35, 40, 0, 0, 0, 1, 0, 0, 11,
|
|
90
|
+
184, 0, 0, 0, 40, 115, 116, 115, 99, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,
|
|
91
|
+
0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 244, 115,
|
|
92
|
+
116, 115, 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 0, 0, 30, 78, 0, 0, 12,
|
|
93
|
+
118, 0, 0, 6, 88, 0, 0, 3, 102, 0, 0, 2, 226, 0, 0, 11, 254, 0, 0, 3, 26, 0,
|
|
94
|
+
0, 11, 220, 0, 0, 3, 185, 0, 0, 2, 211, 0, 0, 13, 169, 0, 0, 3, 117, 0, 0,
|
|
95
|
+
10, 226, 0, 0, 21, 209, 0, 0, 11, 136, 0, 0, 5, 158, 0, 0, 10, 7, 0, 0, 13,
|
|
96
|
+
159, 0, 0, 10, 129, 0, 0, 6, 243, 0, 0, 54, 116, 0, 0, 15, 32, 0, 0, 5, 204,
|
|
97
|
+
0, 0, 15, 147, 0, 0, 6, 253, 0, 0, 15, 32, 0, 0, 13, 193, 0, 0, 14, 115, 0,
|
|
98
|
+
0, 14, 228, 0, 0, 5, 180, 0, 0, 17, 151, 0, 0, 7, 46, 0, 0, 4, 240, 0, 0, 4,
|
|
99
|
+
176, 0, 0, 13, 68, 0, 0, 9, 26, 0, 0, 4, 70, 0, 0, 4, 175, 0, 0, 7, 72, 0,
|
|
100
|
+
0, 3, 136, 0, 0, 61, 1, 0, 0, 18, 142, 0, 0, 4, 82, 0, 0, 9, 162, 0, 0, 11,
|
|
101
|
+
163, 0, 0, 21, 234, 0, 0, 7, 237, 0, 0, 2, 245, 0, 0, 3, 76, 0, 0, 20, 46,
|
|
102
|
+
0, 0, 5, 116, 0, 0, 3, 49, 0, 0, 4, 116, 0, 0, 9, 119, 0, 0, 9, 53, 0, 0,
|
|
103
|
+
12, 109, 0, 0, 4, 64, 0, 0, 3, 172, 0, 0, 7, 105, 0, 0, 3, 228, 0, 0, 75,
|
|
104
|
+
172, 0, 0, 11, 57, 0, 0, 3, 226, 0, 0, 8, 119, 0, 0, 9, 75, 0, 0, 3, 109, 0,
|
|
105
|
+
0, 2, 156, 0, 0, 5, 241, 0, 0, 7, 155, 0, 0, 3, 111, 0, 0, 2, 28, 0, 0, 2,
|
|
106
|
+
117, 0, 0, 5, 157, 0, 0, 3, 114, 0, 0, 2, 44, 0, 0, 2, 21, 0, 0, 3, 70, 0,
|
|
107
|
+
0, 3, 88, 0, 0, 1, 210, 0, 0, 2, 1, 0, 0, 76, 94, 0, 0, 7, 98, 0, 0, 3, 108,
|
|
108
|
+
0, 0, 1, 236, 0, 0, 2, 81, 0, 0, 6, 121, 0, 0, 3, 157, 0, 0, 2, 128, 0, 0,
|
|
109
|
+
3, 16, 0, 0, 5, 75, 0, 0, 6, 88, 0, 0, 3, 101, 0, 0, 5, 117, 0, 0, 5, 92, 0,
|
|
110
|
+
0, 5, 150, 0, 0, 5, 101, 0, 0, 2, 209, 0, 0, 4, 32, 0, 0, 4, 136, 0, 0, 3,
|
|
111
|
+
172, 0, 0, 77, 246, 0, 0, 9, 144, 0, 0, 4, 2, 0, 0, 2, 39, 0, 0, 1, 144, 0,
|
|
112
|
+
0, 6, 195, 0, 0, 1, 130, 0, 0, 4, 141, 0, 0, 1, 149, 0, 0, 3, 218, 0, 0, 1,
|
|
113
|
+
231, 0, 0, 1, 164, 0, 0, 3, 124, 0, 0, 1, 122, 0, 0, 3, 17, 0, 0, 1, 62, 0,
|
|
114
|
+
0, 2, 117, 0, 0, 1, 45, 0, 0, 4, 199, 0, 0, 2, 48, 0, 0, 1, 232, 115, 116,
|
|
115
|
+
99, 111, 0, 0, 0, 0, 0, 0, 0, 118, 0, 0, 22, 167, 0, 0, 78, 95, 0, 0, 88,
|
|
116
|
+
98, 0, 0, 94, 146, 0, 0, 113, 45, 0, 0, 119, 149, 0, 0, 138, 14, 0, 0, 145,
|
|
117
|
+
21, 0, 0, 154, 133, 0, 0, 174, 203, 0, 0, 181, 142, 0, 0, 199, 13, 0, 0,
|
|
118
|
+
224, 44, 0, 0, 242, 81, 0, 0, 251, 61, 0, 1, 11, 225, 0, 1, 28, 206, 0, 1,
|
|
119
|
+
45, 236, 0, 1, 59, 123, 0, 1, 117, 62, 0, 1, 138, 250, 0, 1, 148, 20, 0, 1,
|
|
120
|
+
170, 68, 0, 1, 180, 143, 0, 1, 202, 76, 0, 1, 222, 169, 0, 1, 240, 107, 0,
|
|
121
|
+
2, 5, 235, 0, 2, 14, 238, 0, 2, 39, 33, 0, 2, 49, 158, 0, 2, 61, 42, 0, 2,
|
|
122
|
+
69, 41, 0, 2, 89, 9, 0, 2, 104, 192, 0, 2, 112, 84, 0, 2, 123, 160, 0, 2,
|
|
123
|
+
134, 54, 0, 2, 144, 91, 0, 2, 208, 170, 0, 2, 233, 213, 0, 2, 244, 195, 0,
|
|
124
|
+
3, 1, 179, 0, 3, 19, 243, 0, 3, 45, 43, 0, 3, 59, 181, 0, 3, 65, 248, 0, 3,
|
|
125
|
+
75, 225, 0, 3, 99, 93, 0, 3, 111, 110, 0, 3, 121, 60, 0, 3, 128, 254, 0, 3,
|
|
126
|
+
145, 18, 0, 3, 157, 149, 0, 3, 176, 159, 0, 3, 184, 45, 0, 3, 194, 118, 0,
|
|
127
|
+
3, 208, 123, 0, 3, 215, 174, 0, 4, 41, 246, 0, 4, 56, 126, 0, 4, 66, 252, 0,
|
|
128
|
+
4, 78, 193, 0, 4, 94, 169, 0, 4, 101, 100, 0, 4, 110, 157, 0, 4, 123, 43, 0,
|
|
129
|
+
4, 134, 20, 0, 4, 144, 32, 0, 4, 149, 138, 0, 4, 158, 156, 0, 4, 167, 135,
|
|
130
|
+
0, 4, 177, 150, 0, 4, 186, 94, 0, 4, 191, 194, 0, 4, 201, 164, 0, 4, 208,
|
|
131
|
+
75, 0, 4, 216, 185, 0, 4, 222, 9, 0, 5, 49, 3, 0, 5, 59, 180, 0, 5, 69, 188,
|
|
132
|
+
0, 5, 78, 69, 0, 5, 83, 228, 0, 5, 96, 250, 0, 5, 103, 229, 0, 5, 113, 2, 0,
|
|
133
|
+
5, 119, 96, 0, 5, 131, 72, 0, 5, 144, 60, 0, 5, 150, 240, 0, 5, 163, 1, 0,
|
|
134
|
+
5, 171, 172, 0, 5, 183, 222, 0, 5, 192, 146, 0, 5, 201, 255, 0, 5, 209, 110,
|
|
135
|
+
0, 5, 220, 146, 0, 5, 230, 219, 0, 6, 56, 31, 0, 6, 72, 76, 0, 6, 79, 156,
|
|
136
|
+
0, 6, 88, 96, 0, 6, 93, 62, 0, 6, 106, 158, 0, 6, 114, 188, 0, 6, 122, 152,
|
|
137
|
+
0, 6, 130, 201, 0, 6, 137, 242, 0, 6, 146, 117, 0, 6, 151, 104, 0, 6, 161,
|
|
138
|
+
128, 0, 6, 166, 73, 0, 6, 175, 246, 0, 6, 183, 209, 0, 6, 189, 148, 0, 6,
|
|
139
|
+
197, 94, 0, 6, 205, 115,
|
|
140
|
+
]);
|
|
141
|
+
test('Create a full stbl atom', () => {
|
|
142
|
+
const privateData = new Uint8Array([
|
|
143
|
+
0x01, 0x64, 0x00, 0x1e, 0xff, 0xe1, 0x00, 0x1e, 0x67, 0x64, 0x00, 0x1e,
|
|
144
|
+
0xac, 0xd9, 0x40, 0xa0, 0x2f, 0xf9, 0x70, 0x16, 0xe0, 0x40, 0x40, 0xb4,
|
|
145
|
+
0xa0, 0x00, 0x00, 0x03, 0x00, 0x20, 0x00, 0x00, 0x07, 0x81, 0xe2, 0xc5,
|
|
146
|
+
0xb2, 0xc0, 0x01, 0x00, 0x06, 0x68, 0xeb, 0xe0, 0x8c, 0xb2, 0x2c, 0xfd,
|
|
147
|
+
0xf8, 0xf8, 0x00,
|
|
148
|
+
]);
|
|
149
|
+
const result = createStbl({
|
|
150
|
+
samplePositions: exampleVideoSamplePositions,
|
|
151
|
+
codecSpecificData: createAvc1Data({
|
|
152
|
+
pasp: createPasp(1, 1),
|
|
153
|
+
avccBox: createAvccBox(privateData),
|
|
154
|
+
width: 640,
|
|
155
|
+
height: 360,
|
|
156
|
+
horizontalResolution: 72,
|
|
157
|
+
verticalResolution: 72,
|
|
158
|
+
compressorName: '',
|
|
159
|
+
depth: 24,
|
|
160
|
+
type: 'avc1-data',
|
|
161
|
+
}),
|
|
162
|
+
isVideo: true,
|
|
163
|
+
});
|
|
164
|
+
expect(result).toEqual(sample);
|
|
165
|
+
});
|
|
166
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const bun_test_1 = require("bun:test");
|
|
4
|
+
const example_stts_1 = require("../create/iso-base-media/example-stts");
|
|
5
|
+
const create_stco_1 = require("../create/iso-base-media/trak/mdia/minf/stbl/create-stco");
|
|
6
|
+
const reference = new Uint8Array([
|
|
7
|
+
0, 0, 1, 232, 115, 116, 99, 111, 0, 0, 0, 0, 0, 0, 0, 118, 0, 0, 71, 195, 0,
|
|
8
|
+
0, 81, 197, 0, 0, 91, 68, 0, 0, 106, 144, 0, 0, 116, 71, 0, 0, 131, 113, 0, 0,
|
|
9
|
+
141, 199, 0, 0, 147, 232, 0, 0, 168, 46, 0, 0, 178, 64, 0, 0, 192, 112, 0, 0,
|
|
10
|
+
220, 222, 0, 0, 235, 180, 0, 0, 247, 239, 0, 1, 5, 68, 0, 1, 25, 128, 0, 1,
|
|
11
|
+
39, 79, 0, 1, 52, 223, 0, 1, 113, 239, 0, 1, 132, 94, 0, 1, 144, 198, 0, 1,
|
|
12
|
+
163, 167, 0, 1, 177, 65, 0, 1, 195, 175, 0, 1, 216, 13, 0, 1, 237, 28, 0, 1,
|
|
13
|
+
255, 79, 0, 2, 11, 159, 0, 2, 32, 133, 0, 2, 46, 79, 0, 2, 54, 142, 0, 2, 65,
|
|
14
|
+
218, 0, 2, 82, 109, 0, 2, 98, 35, 0, 2, 109, 6, 0, 2, 117, 3, 0, 2, 130, 232,
|
|
15
|
+
0, 2, 137, 190, 0, 2, 205, 92, 0, 2, 227, 56, 0, 2, 238, 39, 0, 2, 254, 101,
|
|
16
|
+
0, 3, 13, 86, 0, 3, 41, 221, 0, 3, 53, 24, 0, 3, 62, 170, 0, 3, 69, 68, 0, 3,
|
|
17
|
+
96, 15, 0, 3, 104, 209, 0, 3, 114, 159, 0, 3, 125, 176, 0, 3, 138, 117, 0, 3,
|
|
18
|
+
154, 71, 0, 3, 170, 2, 0, 3, 180, 223, 0, 3, 187, 217, 0, 3, 201, 223, 0, 3,
|
|
19
|
+
212, 95, 0, 4, 35, 90, 0, 4, 53, 47, 0, 4, 60, 96, 0, 4, 75, 115, 0, 4, 88,
|
|
20
|
+
12, 0, 4, 98, 22, 0, 4, 104, 0, 0, 4, 116, 142, 0, 4, 130, 198, 0, 4, 137,
|
|
21
|
+
131, 0, 4, 146, 60, 0, 4, 151, 255, 0, 4, 164, 57, 0, 4, 170, 249, 0, 4, 179,
|
|
22
|
+
194, 0, 4, 188, 115, 0, 4, 195, 8, 0, 4, 204, 252, 0, 4, 210, 29, 0, 4, 218,
|
|
23
|
+
186, 0, 5, 42, 103, 0, 5, 56, 101, 0, 5, 63, 32, 0, 5, 71, 168, 0, 5, 80, 150,
|
|
24
|
+
0, 5, 90, 93, 0, 5, 100, 151, 0, 5, 106, 101, 0, 5, 116, 18, 0, 5, 124, 171,
|
|
25
|
+
0, 5, 137, 160, 0, 5, 147, 161, 0, 5, 156, 101, 0, 5, 168, 93, 0, 5, 177, 66,
|
|
26
|
+
0, 5, 189, 67, 0, 5, 195, 99, 0, 5, 206, 31, 0, 5, 213, 246, 0, 5, 224, 62, 0,
|
|
27
|
+
6, 52, 209, 0, 6, 65, 175, 0, 6, 76, 78, 0, 6, 81, 195, 0, 6, 89, 240, 0, 6,
|
|
28
|
+
100, 1, 0, 6, 108, 32, 0, 6, 119, 73, 0, 6, 124, 45, 0, 6, 134, 163, 0, 6,
|
|
29
|
+
139, 217, 0, 6, 148, 25, 0, 6, 154, 228, 0, 6, 162, 250, 0, 6, 169, 90, 0, 6,
|
|
30
|
+
177, 52, 0, 6, 186, 70, 0, 6, 190, 193, 0, 6, 202, 37, 0, 6, 207, 163,
|
|
31
|
+
]);
|
|
32
|
+
(0, bun_test_1.test)('stco', () => {
|
|
33
|
+
(0, bun_test_1.expect)((0, create_stco_1.createStcoAtom)(example_stts_1.exampleAudioSamplePositions)).toEqual(reference);
|
|
34
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const reference = new Uint8Array([
|
|
4
|
+
0, 0, 4, 228, 115, 116, 115, 99, 0, 0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0,
|
|
5
|
+
0, 2, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 2,
|
|
6
|
+
0, 0, 0, 1, 0, 0, 0, 4, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 5, 0, 0, 0, 2, 0, 0,
|
|
7
|
+
0, 1, 0, 0, 0, 6, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 7, 0, 0, 0, 2, 0, 0, 0, 1,
|
|
8
|
+
0, 0, 0, 9, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 10, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0,
|
|
9
|
+
0, 11, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 12, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0,
|
|
10
|
+
13, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 14, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 15,
|
|
11
|
+
0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 16, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 18, 0,
|
|
12
|
+
0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 19, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 20, 0, 0,
|
|
13
|
+
0, 1, 0, 0, 0, 1, 0, 0, 0, 21, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 22, 0, 0, 0,
|
|
14
|
+
1, 0, 0, 0, 1, 0, 0, 0, 23, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 25, 0, 0, 0, 1,
|
|
15
|
+
0, 0, 0, 1, 0, 0, 0, 26, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 27, 0, 0, 0, 1, 0,
|
|
16
|
+
0, 0, 1, 0, 0, 0, 28, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 29, 0, 0, 0, 1, 0, 0,
|
|
17
|
+
0, 1, 0, 0, 0, 30, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 31, 0, 0, 0, 1, 0, 0, 0,
|
|
18
|
+
1, 0, 0, 0, 32, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 1,
|
|
19
|
+
0, 0, 0, 35, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 36, 0, 0, 0, 1, 0, 0, 0, 1, 0,
|
|
20
|
+
0, 0, 37, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 38, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0,
|
|
21
|
+
0, 39, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 41, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
22
|
+
42, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 43, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 44,
|
|
23
|
+
0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 45, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 46, 0,
|
|
24
|
+
0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 47, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 48, 0, 0,
|
|
25
|
+
0, 2, 0, 0, 0, 1, 0, 0, 0, 50, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 51, 0, 0, 0,
|
|
26
|
+
2, 0, 0, 0, 1, 0, 0, 0, 52, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 53, 0, 0, 0, 2,
|
|
27
|
+
0, 0, 0, 1, 0, 0, 0, 54, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 55, 0, 0, 0, 2, 0,
|
|
28
|
+
0, 0, 1, 0, 0, 0, 57, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 58, 0, 0, 0, 2, 0, 0,
|
|
29
|
+
0, 1, 0, 0, 0, 59, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 60, 0, 0, 0, 2, 0, 0, 0,
|
|
30
|
+
1, 0, 0, 0, 61, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 62, 0, 0, 0, 2, 0, 0, 0, 1,
|
|
31
|
+
0, 0, 0, 63, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 64, 0, 0, 0, 2, 0, 0, 0, 1, 0,
|
|
32
|
+
0, 0, 66, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 67, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0,
|
|
33
|
+
0, 68, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 69, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0,
|
|
34
|
+
70, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 71, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 73,
|
|
35
|
+
0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 74, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 75, 0,
|
|
36
|
+
0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 76, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 77, 0, 0,
|
|
37
|
+
0, 1, 0, 0, 0, 1, 0, 0, 0, 78, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 79, 0, 0, 0,
|
|
38
|
+
1, 0, 0, 0, 1, 0, 0, 0, 80, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 82, 0, 0, 0, 1,
|
|
39
|
+
0, 0, 0, 1, 0, 0, 0, 83, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 84, 0, 0, 0, 1, 0,
|
|
40
|
+
0, 0, 1, 0, 0, 0, 85, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 86, 0, 0, 0, 1, 0, 0,
|
|
41
|
+
0, 1, 0, 0, 0, 87, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 89, 0, 0, 0, 1, 0, 0, 0,
|
|
42
|
+
1, 0, 0, 0, 90, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 91, 0, 0, 0, 1, 0, 0, 0, 1,
|
|
43
|
+
0, 0, 0, 92, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 93, 0, 0, 0, 1, 0, 0, 0, 1, 0,
|
|
44
|
+
0, 0, 94, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 95, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0,
|
|
45
|
+
0, 96, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 98, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
46
|
+
99, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 100, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
47
|
+
101, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 102, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
48
|
+
103, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 105, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
49
|
+
106, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 107, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
50
|
+
108, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 109, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
51
|
+
110, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 111, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
52
|
+
112, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 114, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
53
|
+
115, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 116, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
|
|
54
|
+
117, 0, 0, 0, 7, 0, 0, 0, 1,
|
|
55
|
+
]);
|
|
56
|
+
const bun_test_1 = require("bun:test");
|
|
57
|
+
const example_stts_1 = require("../create/iso-base-media/example-stts");
|
|
58
|
+
const create_stsc_1 = require("../create/iso-base-media/trak/mdia/minf/stbl/create-stsc");
|
|
59
|
+
(0, bun_test_1.test)('stsc', () => {
|
|
60
|
+
(0, bun_test_1.expect)(reference.byteLength).toBe(1252);
|
|
61
|
+
const result = (0, create_stsc_1.createStsc)(example_stts_1.exampleAudioSamplePositions);
|
|
62
|
+
(0, bun_test_1.expect)(result).toEqual(reference);
|
|
63
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const media_parser_1 = require("@remotion/media-parser");
|
|
4
|
+
const bun_test_1 = require("bun:test");
|
|
5
|
+
(0, bun_test_1.test)('Should be able to parse a STSD audio box correctly', async () => {
|
|
6
|
+
const buffer = Uint8Array.from([
|
|
7
|
+
// box size
|
|
8
|
+
0, 0, 0, 159,
|
|
9
|
+
// data format "stsd"
|
|
10
|
+
115, 116, 115, 100,
|
|
11
|
+
// reserved
|
|
12
|
+
0, 0, 0, 0, 0, 0,
|
|
13
|
+
// number of entries
|
|
14
|
+
0, 1,
|
|
15
|
+
// size
|
|
16
|
+
0, 0, 0, 143,
|
|
17
|
+
// "mp4a"
|
|
18
|
+
109, 112, 52, 97,
|
|
19
|
+
// reserved
|
|
20
|
+
0, 0, 0, 0, 0, 0,
|
|
21
|
+
// data reference index
|
|
22
|
+
0, 1,
|
|
23
|
+
// version
|
|
24
|
+
0, 1,
|
|
25
|
+
// revision level
|
|
26
|
+
0, 0, 0, 0, 0, 0,
|
|
27
|
+
// revision level
|
|
28
|
+
0, 2, 0, 16, 255, 254, 0, 0, 172, 68, 0, 0, 0, 0, 4, 0, 0, 0, 0, 1, 0, 0, 0,
|
|
29
|
+
2, 0, 0, 0, 2, 0, 0, 0, 91, 119, 97, 118, 101, 0, 0, 0, 12, 102, 114, 109,
|
|
30
|
+
97, 109, 112, 52, 97, 0, 0, 0, 12, 109, 112, 52, 97, 0, 0, 0, 0, 0, 0, 0,
|
|
31
|
+
51, 101, 115, 100, 115, 0, 0, 0, 0, 3, 128, 128, 128, 34, 0, 0, 0, 4, 128,
|
|
32
|
+
128, 128, 20, 64, 20, 0, 24, 0, 0, 2, 238, 0, 0, 0, 0, 0, 5, 128, 128, 128,
|
|
33
|
+
2, 18, 16, 6, 128, 128, 128, 1, 2, 0, 0, 0, 8, 0, 0, 0, 0,
|
|
34
|
+
]);
|
|
35
|
+
const iterator = media_parser_1.MediaParserInternals.getArrayBufferIterator(buffer, null);
|
|
36
|
+
iterator.discard(8);
|
|
37
|
+
const parsed = await media_parser_1.MediaParserInternals.parseStsd({
|
|
38
|
+
iterator,
|
|
39
|
+
offset: 0,
|
|
40
|
+
size: 159,
|
|
41
|
+
state: media_parser_1.MediaParserInternals.makeParserState({
|
|
42
|
+
onAudioTrack: null,
|
|
43
|
+
onVideoTrack: () => () => undefined,
|
|
44
|
+
hasAudioTrackHandlers: true,
|
|
45
|
+
hasVideoTrackHandlers: true,
|
|
46
|
+
signal: undefined,
|
|
47
|
+
getIterator: () => null,
|
|
48
|
+
fields: {},
|
|
49
|
+
supportsContentRange: true,
|
|
50
|
+
}),
|
|
51
|
+
signal: null,
|
|
52
|
+
fields: {},
|
|
53
|
+
});
|
|
54
|
+
(0, bun_test_1.expect)(parsed).toEqual({
|
|
55
|
+
offset: 0,
|
|
56
|
+
boxSize: 159,
|
|
57
|
+
type: 'stsd-box',
|
|
58
|
+
numberOfEntries: 1,
|
|
59
|
+
samples: [
|
|
60
|
+
{
|
|
61
|
+
size: 143,
|
|
62
|
+
offset: 16,
|
|
63
|
+
format: 'mp4a',
|
|
64
|
+
dataReferenceIndex: 1,
|
|
65
|
+
version: 1,
|
|
66
|
+
revisionLevel: 0,
|
|
67
|
+
vendor: [0, 0, 0, 0],
|
|
68
|
+
numberOfChannels: 2,
|
|
69
|
+
type: 'audio',
|
|
70
|
+
sampleSize: 16,
|
|
71
|
+
compressionId: -2,
|
|
72
|
+
packetSize: 0,
|
|
73
|
+
samplesPerPacket: 1024,
|
|
74
|
+
bitsPerSample: 2,
|
|
75
|
+
bytesPerFrame: 2,
|
|
76
|
+
bytesPerPacket: 1,
|
|
77
|
+
sampleRate: 44100,
|
|
78
|
+
children: [
|
|
79
|
+
{
|
|
80
|
+
boxSize: 91,
|
|
81
|
+
boxType: 'wave',
|
|
82
|
+
children: [
|
|
83
|
+
{
|
|
84
|
+
boxSize: 12,
|
|
85
|
+
boxType: 'frma',
|
|
86
|
+
children: [],
|
|
87
|
+
offset: 76,
|
|
88
|
+
type: 'regular-box',
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
boxSize: 12,
|
|
92
|
+
boxType: 'mp4a',
|
|
93
|
+
children: [],
|
|
94
|
+
offset: 88,
|
|
95
|
+
type: 'regular-box',
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
descriptors: [
|
|
99
|
+
{
|
|
100
|
+
objectTypeIndication: 'aac',
|
|
101
|
+
type: 'decoder-config-descriptor',
|
|
102
|
+
asNumber: 64,
|
|
103
|
+
avgBitrate: 0,
|
|
104
|
+
bufferSizeDB: 6144,
|
|
105
|
+
maxBitrate: 192000,
|
|
106
|
+
streamType: 5,
|
|
107
|
+
decoderSpecificConfigs: [
|
|
108
|
+
{
|
|
109
|
+
audioObjectType: 2,
|
|
110
|
+
channelConfiguration: 2,
|
|
111
|
+
samplingFrequencyIndex: 4,
|
|
112
|
+
type: 'mp4a-specific-config',
|
|
113
|
+
asBytes: new Uint8Array([18, 16]),
|
|
114
|
+
},
|
|
115
|
+
],
|
|
116
|
+
upStream: 0,
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
type: 'sl-config-descriptor',
|
|
120
|
+
},
|
|
121
|
+
],
|
|
122
|
+
esId: 0,
|
|
123
|
+
sizeOfInstance: 34,
|
|
124
|
+
tag: 3,
|
|
125
|
+
type: 'esds-box',
|
|
126
|
+
version: 0,
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
boxSize: 8,
|
|
130
|
+
boxType: '\u0000\u0000\u0000\u0000',
|
|
131
|
+
children: [],
|
|
132
|
+
offset: 151,
|
|
133
|
+
type: 'regular-box',
|
|
134
|
+
},
|
|
135
|
+
],
|
|
136
|
+
offset: 68,
|
|
137
|
+
type: 'regular-box',
|
|
138
|
+
},
|
|
139
|
+
],
|
|
140
|
+
},
|
|
141
|
+
],
|
|
142
|
+
});
|
|
143
|
+
});
|
|
144
|
+
(0, bun_test_1.test)('Should be able to parse a STSD video box correctly', async () => {
|
|
145
|
+
const buffer = Uint8Array.from([
|
|
146
|
+
// box size
|
|
147
|
+
0, 0, 0, 158,
|
|
148
|
+
// data format "avc1"
|
|
149
|
+
97, 118, 99, 49,
|
|
150
|
+
// padding
|
|
151
|
+
0, 0, 0, 0, 0, 0,
|
|
152
|
+
// data reference index
|
|
153
|
+
0, 1,
|
|
154
|
+
// version
|
|
155
|
+
0, 0,
|
|
156
|
+
// revision level
|
|
157
|
+
0, 0,
|
|
158
|
+
// vendor
|
|
159
|
+
0, 0, 0, 0,
|
|
160
|
+
// temporal quality
|
|
161
|
+
0, 0, 0, 0,
|
|
162
|
+
// spatial quality
|
|
163
|
+
0, 0, 0, 0,
|
|
164
|
+
// width
|
|
165
|
+
4, 56,
|
|
166
|
+
// height
|
|
167
|
+
4, 56,
|
|
168
|
+
// horiz resolution
|
|
169
|
+
0, 72, 0, 0,
|
|
170
|
+
// vert resolution
|
|
171
|
+
0, 72, 0, 0,
|
|
172
|
+
// frame count
|
|
173
|
+
0, 0,
|
|
174
|
+
// compressor name
|
|
175
|
+
// 0
|
|
176
|
+
0, 0, 0, 1,
|
|
177
|
+
// 1
|
|
178
|
+
0, 0, 0, 0,
|
|
179
|
+
// 2
|
|
180
|
+
0, 0, 0, 0,
|
|
181
|
+
// 3
|
|
182
|
+
0, 0, 0, 0,
|
|
183
|
+
// 4
|
|
184
|
+
0, 0, 0, 0,
|
|
185
|
+
// 5
|
|
186
|
+
0, 0, 0, 0,
|
|
187
|
+
// 6
|
|
188
|
+
0, 0, 0, 0,
|
|
189
|
+
// 7
|
|
190
|
+
0, 0, 0, 0,
|
|
191
|
+
// 8
|
|
192
|
+
0, 0, 0, 0,
|
|
193
|
+
// depth
|
|
194
|
+
0, 24,
|
|
195
|
+
// color space
|
|
196
|
+
255, 255,
|
|
197
|
+
// avcC info (not parsed)
|
|
198
|
+
0, 0, 0, 56, 97, 118, 99, 67, 1, 100, 0, 32, 255, 225, 0, 27, 103, 100, 0,
|
|
199
|
+
32, 172, 217, 64, 68, 2, 39, 150, 92, 4, 64, 0, 0, 3, 0, 64, 0, 0, 12, 3,
|
|
200
|
+
198, 12, 101, 128, 1, 0, 6, 104, 235, 224, 140, 178, 44, 253, 248, 248, 0,
|
|
201
|
+
// pasp
|
|
202
|
+
0, 0, 0, 16, 112, 97, 115, 112, 0, 0, 0, 1, 0, 0, 0, 1,
|
|
203
|
+
]);
|
|
204
|
+
const parsed = await media_parser_1.MediaParserInternals.processSample({
|
|
205
|
+
iterator: media_parser_1.MediaParserInternals.getArrayBufferIterator(buffer, null),
|
|
206
|
+
state: media_parser_1.MediaParserInternals.makeParserState({
|
|
207
|
+
onAudioTrack: null,
|
|
208
|
+
onVideoTrack: () => () => undefined,
|
|
209
|
+
hasAudioTrackHandlers: true,
|
|
210
|
+
hasVideoTrackHandlers: true,
|
|
211
|
+
signal: undefined,
|
|
212
|
+
getIterator: () => null,
|
|
213
|
+
fields: {
|
|
214
|
+
structure: true,
|
|
215
|
+
},
|
|
216
|
+
supportsContentRange: true,
|
|
217
|
+
}),
|
|
218
|
+
signal: null,
|
|
219
|
+
logLevel: 'info',
|
|
220
|
+
fields: {},
|
|
221
|
+
});
|
|
222
|
+
(0, bun_test_1.expect)(parsed.sample).toEqual({
|
|
223
|
+
size: 158,
|
|
224
|
+
format: 'avc1',
|
|
225
|
+
dataReferenceIndex: 1,
|
|
226
|
+
version: 0,
|
|
227
|
+
revisionLevel: 0,
|
|
228
|
+
vendor: [0, 0, 0, 0],
|
|
229
|
+
type: 'video',
|
|
230
|
+
temporalQuality: 0,
|
|
231
|
+
spacialQuality: 0,
|
|
232
|
+
width: 1080,
|
|
233
|
+
height: 1080,
|
|
234
|
+
horizontalResolutionPpi: 72,
|
|
235
|
+
verticalResolutionPpi: 72,
|
|
236
|
+
dataSize: 0,
|
|
237
|
+
frameCountPerSample: 1,
|
|
238
|
+
compressorName: [
|
|
239
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
240
|
+
0, 0, 0, 0, 0, 0, 0,
|
|
241
|
+
],
|
|
242
|
+
offset: 0,
|
|
243
|
+
depth: 24,
|
|
244
|
+
colorTableId: -1,
|
|
245
|
+
descriptors: [
|
|
246
|
+
{
|
|
247
|
+
privateData: new Uint8Array([
|
|
248
|
+
1, 100, 0, 32, 255, 225, 0, 27, 103, 100, 0, 32, 172, 217, 64, 68, 2,
|
|
249
|
+
39, 150, 92, 4, 64, 0, 0, 3, 0, 64, 0, 0, 12, 3, 198, 12, 101, 128, 1,
|
|
250
|
+
0, 6, 104, 235, 224, 140, 178, 44, 253, 248, 248, 0,
|
|
251
|
+
]),
|
|
252
|
+
type: 'avcc-box',
|
|
253
|
+
configurationString: '640020',
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
boxSize: 16,
|
|
257
|
+
offset: 142,
|
|
258
|
+
type: 'pasp-box',
|
|
259
|
+
hSpacing: 1,
|
|
260
|
+
vSpacing: 1,
|
|
261
|
+
},
|
|
262
|
+
],
|
|
263
|
+
});
|
|
264
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|