@svta/cml-iso-bmff 1.0.0-alpha.2 → 1.0.0-alpha.3

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/index.d.ts CHANGED
@@ -6,12 +6,12 @@
6
6
  */
7
7
  type AdditionalMetadataContainerBoxChild = any;
8
8
  /**
9
- * Additional Metadata Container Box - 'meta' - Container
9
+ * Additional Metadata Container Box - 'meco' - Container - 8.11.7.1
10
10
  *
11
11
  * @public
12
12
  */
13
13
  type AdditionalMetadataContainerBox = {
14
- type: "meta";
14
+ type: "meco";
15
15
  boxes: AdditionalMetadataContainerBoxChild[];
16
16
  };
17
17
  //#endregion
@@ -37,6 +37,14 @@ type AudioRenderingIndicationBox = FullBox & {
37
37
  audioRenderingIndication: number;
38
38
  };
39
39
  //#endregion
40
+ //#region src/boxes/AudioSampleEntryType.d.ts
41
+ /**
42
+ * The type of audio sample entry box.
43
+ *
44
+ * @public
45
+ */
46
+ type AudioSampleEntryType = "mp4a" | "enca";
47
+ //#endregion
40
48
  //#region src/boxes/SampleEntryBox.d.ts
41
49
  /**
42
50
  * ISO/IEC 14496-12:2015 - 8.5.2.2 Sample Entry
@@ -50,11 +58,17 @@ type SampleEntryBox = {
50
58
  //#endregion
51
59
  //#region src/boxes/AudioSampleEntryBox.d.ts
52
60
  /**
61
+ * Child boxes of AudioSampleEntryBox
62
+ *
63
+ * @public
64
+ */
65
+ type AudioSampleEntryBoxChild = any;
66
+ /**
53
67
  * ISO/IEC 14496-12:2012 - 8.5.2.2 mp4a box (use AudioSampleEntry definition and naming)
54
68
  *
55
69
  * @public
56
70
  */
57
- type AudioSampleEntryBox<T$1 extends "mp4a" | "enca" = "mp4a" | "enca"> = SampleEntryBox & {
71
+ type AudioSampleEntryBox<T$1 extends AudioSampleEntryType = AudioSampleEntryType> = SampleEntryBox & {
58
72
  type: T$1;
59
73
  reserved2: number[];
60
74
  channelcount: number;
@@ -62,7 +76,7 @@ type AudioSampleEntryBox<T$1 extends "mp4a" | "enca" = "mp4a" | "enca"> = Sample
62
76
  preDefined: number;
63
77
  reserved3: number;
64
78
  samplerate: number;
65
- esds: Uint8Array;
79
+ boxes: AudioSampleEntryBoxChild[];
66
80
  };
67
81
  //#endregion
68
82
  //#region src/boxes/ChunkLargeOffsetBox.d.ts
@@ -664,6 +678,12 @@ type VisualSampleEntryType = "avc1" | "avc2" | "avc3" | "avc4" | "hev1" | "hvc1"
664
678
  //#endregion
665
679
  //#region src/boxes/VisualSampleEntryBox.d.ts
666
680
  /**
681
+ * Child boxes of VisualSampleEntryBox
682
+ *
683
+ * @public
684
+ */
685
+ type VisualSampleEntryBoxChild = any;
686
+ /**
667
687
  * ISO/IEC 14496-15:2014 - 12.1.3.1 avc1/2/3/4, hev1, hvc1, encv
668
688
  *
669
689
  * @public
@@ -682,7 +702,7 @@ type VisualSampleEntryBox<T$1 extends VisualSampleEntryType = VisualSampleEntryT
682
702
  compressorName: number[];
683
703
  depth: number;
684
704
  preDefined3: number;
685
- config: Uint8Array;
705
+ boxes: VisualSampleEntryBoxChild[];
686
706
  };
687
707
  //#endregion
688
708
  //#region src/boxes/SampleDescriptionBox.d.ts
@@ -1382,6 +1402,12 @@ type Entity = {
1382
1402
  //#endregion
1383
1403
  //#region src/boxes/PreselectionGroupBox.d.ts
1384
1404
  /**
1405
+ * Child boxes of Preselection Group Box
1406
+ *
1407
+ * @public
1408
+ */
1409
+ type PreselectionGroupBoxChild = any;
1410
+ /**
1385
1411
  * ISO/IEC 14496-12:202x - 8.18.4.1 Preselection group box
1386
1412
  *
1387
1413
  * @public
@@ -1397,6 +1423,7 @@ type PreselectionGroupBox = FullBox & {
1397
1423
  preselectionTag?: string;
1398
1424
  selectionPriority?: number;
1399
1425
  interleavingTag?: string;
1426
+ boxes: PreselectionGroupBoxChild[];
1400
1427
  };
1401
1428
  //#endregion
1402
1429
  //#region src/boxes/ProducerReferenceTimeBox.d.ts
@@ -1731,6 +1758,14 @@ type IsoBoxMap = {
1731
1758
  */
1732
1759
  type IsoBox = IsoBoxMap[keyof IsoBoxMap];
1733
1760
  //#endregion
1761
+ //#region src/IsoBoxData.d.ts
1762
+ /**
1763
+ * ISO data
1764
+ *
1765
+ * @public
1766
+ */
1767
+ type IsoBoxData = ArrayBuffer | ArrayBufferView<ArrayBuffer>;
1768
+ //#endregion
1734
1769
  //#region src/IsoBoxReader.d.ts
1735
1770
  /**
1736
1771
  * ISO BMFF box reader
@@ -1812,7 +1847,7 @@ declare class IsoBoxReadView<R extends IsoBoxReaderMap = IsoBoxReaderMap> {
1812
1847
  * @param raw - The raw data to view.
1813
1848
  * @param config - The configuration for the IsoView.
1814
1849
  */
1815
- constructor(raw: ArrayBuffer | ArrayBufferView<ArrayBuffer>, config?: IsoBoxReadViewConfig<R>);
1850
+ constructor(raw: IsoBoxData, config?: IsoBoxReadViewConfig<R>);
1816
1851
  /**
1817
1852
  * The buffer of the data view.
1818
1853
  */
@@ -2011,7 +2046,6 @@ type IsoBoxContainerMap = {
2011
2046
  grpl: GroupsListBox;
2012
2047
  mdia: MediaBox;
2013
2048
  meco: AdditionalMetadataContainerBox;
2014
- meta: MetaBox;
2015
2049
  mfra: MovieFragmentRandomAccessBox;
2016
2050
  minf: MediaInformationBox;
2017
2051
  moof: MovieFragmentBox;
@@ -2036,14 +2070,6 @@ type IsoBoxContainerMap = {
2036
2070
  */
2037
2071
  type IsoBoxContainer = IsoBoxContainerMap[keyof IsoBoxContainerMap];
2038
2072
  //#endregion
2039
- //#region src/IsoBoxData.d.ts
2040
- /**
2041
- * ISO data
2042
- *
2043
- * @public
2044
- */
2045
- type IsoBoxData = ArrayBuffer | DataView<ArrayBuffer> | Uint8Array<ArrayBuffer>;
2046
- //#endregion
2047
2073
  //#region src/IsoBoxReaderReturn.d.ts
2048
2074
  /**
2049
2075
  * Return type for a box reader.
@@ -2099,7 +2125,7 @@ type IsoBoxWriteViewConfig = {
2099
2125
  *
2100
2126
  * @public
2101
2127
  */
2102
- type IsoBoxWriter<B$1> = (box: B$1, config: Required<IsoBoxWriteViewConfig>) => ArrayBufferView;
2128
+ type IsoBoxWriter<B$1> = (box: B$1, config: IsoBoxWriteViewConfig) => ArrayBufferView;
2103
2129
  //#endregion
2104
2130
  //#region src/IsoBoxWriteView.d.ts
2105
2131
  /**
@@ -2171,7 +2197,7 @@ declare class IsoBoxWriteView {
2171
2197
  *
2172
2198
  * @param data - The data to write.
2173
2199
  */
2174
- writeBytes: (data: Uint8Array) => void;
2200
+ writeBytes: (data: Uint8Array | Uint8Array[]) => void;
2175
2201
  /**
2176
2202
  * Writes an array of numbers to the data view.
2177
2203
  *
@@ -2244,6 +2270,68 @@ declare class IsoBoxReadableStream extends ReadableStream<Uint8Array> {
2244
2270
  constructor(boxes: Iterable<IsoBoxStreamable>, config?: IsoBoxWriteViewConfig);
2245
2271
  }
2246
2272
  //#endregion
2273
+ //#region src/readIsoBoxes.d.ts
2274
+ /**
2275
+ * Reads ISO boxes from a data source.
2276
+ *
2277
+ * @param raw - The raw ISO data
2278
+ * @param config - The configuration for the IsoView
2279
+ *
2280
+ * @returns The parsed boxes
2281
+ *
2282
+ * @example
2283
+ * {@includeCode ../test/readIsoBoxes.test.ts#example}
2284
+ *
2285
+ * @public
2286
+ */
2287
+ declare function readIsoBoxes<R extends IsoBoxReaderMap>(raw: IsoBoxData, config?: IsoBoxReadViewConfig<R>): IsoBoxReaderReturn<R>[];
2288
+ //#endregion
2289
+ //#region src/traverseIsoBoxes.d.ts
2290
+ /**
2291
+ * Traverse ISO boxes
2292
+ *
2293
+ * @param boxes - The boxes to traverse
2294
+ * @param depthFirst - Whether to traverse the boxes depth-first or breadth-first
2295
+ * @param maxDepth - The maximum depth to traverse. A value of 0 will only traverse the root boxes.
2296
+ *
2297
+ * @returns A generator of boxes
2298
+ *
2299
+ * @example
2300
+ * {@includeCode ../test/traverseIsoBoxes.test.ts#example}
2301
+ *
2302
+ * @public
2303
+ */
2304
+ declare function traverseIsoBoxes(boxes: Iterable<ParsedBox>, depthFirst?: boolean, maxDepth?: number): Generator<ParsedBox>;
2305
+ //#endregion
2306
+ //#region src/writeIsoBox.d.ts
2307
+ /**
2308
+ * Write an ISO box to a Uint8Array.
2309
+ *
2310
+ * @param box - The box to write
2311
+ * @param config - The configuration for the writer
2312
+ *
2313
+ * @returns The written box
2314
+ *
2315
+ * @public
2316
+ */
2317
+ declare function writeIsoBox(box: IsoBoxStreamable, config?: IsoBoxWriteViewConfig): Uint8Array;
2318
+ //#endregion
2319
+ //#region src/writeIsoBoxes.d.ts
2320
+ /**
2321
+ * Writes ISO boxes to a readable stream.
2322
+ *
2323
+ * @param boxes - The boxes to write
2324
+ * @param config - The configuration for the readable stream
2325
+ *
2326
+ * @returns A readable stream of the written boxes
2327
+ *
2328
+ * @example
2329
+ * {@includeCode ../test/writeIsoBoxes.test.ts#example}
2330
+ *
2331
+ * @public
2332
+ */
2333
+ declare function writeIsoBoxes(boxes: Iterable<IsoBoxStreamable>, config?: IsoBoxWriteViewConfig): Uint8Array[];
2334
+ //#endregion
2247
2335
  //#region src/readers/readArdi.d.ts
2248
2336
  /**
2249
2337
  * Parse a AudioRenderingIndicationBox from an IsoView
@@ -2256,6 +2344,19 @@ declare class IsoBoxReadableStream extends ReadableStream<Uint8Array> {
2256
2344
  */
2257
2345
  declare function readArdi(view: IsoBoxReadView): AudioRenderingIndicationBox;
2258
2346
  //#endregion
2347
+ //#region src/readers/readAudioSampleEntryBox.d.ts
2348
+ /**
2349
+ * Parse a AudioSampleEntryBox from an IsoView
2350
+ *
2351
+ * @param type - The type of AudioSampleEntryBox to read
2352
+ * @param view - The IsoView to read data from
2353
+ *
2354
+ * @returns A parsed AudioSampleEntryBox
2355
+ *
2356
+ * @public
2357
+ */
2358
+ declare function readAudioSampleEntryBox<T$1 extends AudioSampleEntryType>(type: T$1, view: IsoBoxReadView): AudioSampleEntryBox<T$1>;
2359
+ //#endregion
2259
2360
  //#region src/readers/readAvc1.d.ts
2260
2361
  /**
2261
2362
  * Parse a VisualSampleEntryBox from an IsoView
@@ -2916,6 +3017,19 @@ declare function readUrl(view: IsoBoxReadView): DataEntryUrlBox;
2916
3017
  */
2917
3018
  declare function readUrn(view: IsoBoxReadView): DataEntryUrnBox;
2918
3019
  //#endregion
3020
+ //#region src/readers/readVisualSampleEntryBox.d.ts
3021
+ /**
3022
+ * Parse a VisualSampleEntryBox from an IsoView
3023
+ *
3024
+ * @param type - The type of VisualSampleEntryBox to read
3025
+ * @param view - The IsoView to read data from
3026
+ *
3027
+ * @returns A parsed VisualSampleEntryBox
3028
+ *
3029
+ * @public
3030
+ */
3031
+ declare function readVisualSampleEntryBox<T$1 extends VisualSampleEntryType>(type: T$1, view: IsoBoxReadView): VisualSampleEntryBox<T$1>;
3032
+ //#endregion
2919
3033
  //#region src/readers/readVlab.d.ts
2920
3034
  /**
2921
3035
  * Parse a WebVTTSourceLabelBox from an IsoView
@@ -2962,39 +3076,6 @@ declare function readVttC(view: IsoBoxReadView): WebVttConfigurationBox;
2962
3076
  */
2963
3077
  declare function readVtte(_: IsoBoxReadView): WebVttEmptySampleBox;
2964
3078
  //#endregion
2965
- //#region src/readIsoBoxes.d.ts
2966
- /**
2967
- * Reads ISO boxes from a data source.
2968
- *
2969
- * @param raw - The raw ISO data
2970
- * @param config - The configuration for the IsoView
2971
- *
2972
- * @returns The parsed boxes
2973
- *
2974
- * @example
2975
- * {@includeCode ../test/readIsoBoxes.test.ts#example}
2976
- *
2977
- * @public
2978
- */
2979
- declare function readIsoBoxes<R extends IsoBoxReaderMap>(raw: IsoBoxData, config?: IsoBoxReadViewConfig<R>): IsoBoxReaderReturn<R>[];
2980
- //#endregion
2981
- //#region src/traverseIsoBoxes.d.ts
2982
- /**
2983
- * Traverse ISO boxes
2984
- *
2985
- * @param boxes - The boxes to traverse
2986
- * @param depthFirst - Whether to traverse the boxes depth-first or breadth-first
2987
- * @param maxDepth - The maximum depth to traverse. A value of 0 will only traverse the root boxes.
2988
- *
2989
- * @returns A generator of boxes
2990
- *
2991
- * @example
2992
- * {@includeCode ../test/traverseIsoBoxes.test.ts#example}
2993
- *
2994
- * @public
2995
- */
2996
- declare function traverseIsoBoxes(boxes: Iterable<ParsedBox>, depthFirst?: boolean, maxDepth?: number): Generator<ParsedBox>;
2997
- //#endregion
2998
3079
  //#region src/utils/CONTAINERS.d.ts
2999
3080
  /**
3000
3081
  * List of container box types
@@ -3027,45 +3108,32 @@ declare function isContainer(box: IsoBox | Box): box is IsoBoxContainer;
3027
3108
  */
3028
3109
  declare function isFullBox(box: any): box is FullBox;
3029
3110
  //#endregion
3030
- //#region src/writeIsoBox.d.ts
3031
- /**
3032
- * Write an ISO box to a Uint8Array.
3033
- *
3034
- * @param box - The box to write
3035
- * @param writers - The writers to use
3036
- * @returns The written box
3037
- *
3038
- * @public
3039
- */
3040
- declare function writeIsoBox(box: IsoBoxStreamable, config?: IsoBoxWriteViewConfig): Uint8Array;
3041
- //#endregion
3042
- //#region src/writeIsoBoxes.d.ts
3111
+ //#region src/writers/writeArdi.d.ts
3043
3112
  /**
3044
- * Writes ISO boxes to a readable stream.
3045
- *
3046
- * @param boxes - The boxes to write
3047
- * @param config - The configuration for the readable stream
3113
+ * Write an AudioRenderingIndicationBox to an IsoDataWriter.
3048
3114
  *
3049
- * @returns A readable stream of the written boxes
3115
+ * @param box - The AudioRenderingIndicationBox fields to write
3050
3116
  *
3051
- * @example
3052
- * {@includeCode ../test/writeIsoBoxes.test.ts#example}
3117
+ * @returns An IsoDataWriter containing the encoded box
3053
3118
  *
3054
3119
  * @public
3055
3120
  */
3056
- declare function writeIsoBoxes(boxes: Iterable<IsoBoxStreamable>, config?: IsoBoxWriteViewConfig): Uint8Array[];
3121
+ declare function writeArdi(box: AudioRenderingIndicationBox): IsoBoxWriteView;
3057
3122
  //#endregion
3058
- //#region src/writers/writeArdi.d.ts
3123
+ //#region src/writers/writeAudioSampleEntryBox.d.ts
3059
3124
  /**
3060
- * Write an AudioRenderingIndicationBox to an IsoDataWriter.
3125
+ * Write an AudioSampleEntryBox to an IsoDataWriter.
3061
3126
  *
3062
- * @param box - The AudioRenderingIndicationBox fields to write
3127
+ * ISO/IEC 14496-12:2012 - 12.2.3 Audio Sample Entry
3128
+ *
3129
+ * @param box - The AudioSampleEntryBox fields to write
3130
+ * @param config - The IsoBoxWriteViewConfig to use
3063
3131
  *
3064
3132
  * @returns An IsoDataWriter containing the encoded box
3065
3133
  *
3066
3134
  * @public
3067
3135
  */
3068
- declare function writeArdi(box: AudioRenderingIndicationBox): IsoBoxWriteView;
3136
+ declare function writeAudioSampleEntryBox<T$1 extends AudioSampleEntryType = AudioSampleEntryType>(box: AudioSampleEntryBox<T$1>, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3069
3137
  //#endregion
3070
3138
  //#region src/writers/writeAvc1.d.ts
3071
3139
  /**
@@ -3074,48 +3142,52 @@ declare function writeArdi(box: AudioRenderingIndicationBox): IsoBoxWriteView;
3074
3142
  * ISO/IEC 14496-12:2012 - 12.1.3 Visual Sample Entry
3075
3143
  *
3076
3144
  * @param box - The VisualSampleEntryBox fields to write
3145
+ * @param config - The IsoBoxWriteViewConfig to use
3077
3146
  *
3078
3147
  * @returns An IsoDataWriter containing the encoded box
3079
3148
  *
3080
3149
  * @public
3081
3150
  */
3082
- declare function writeAvc1(box: VisualSampleEntryBox<"avc1">): IsoBoxWriteView;
3151
+ declare function writeAvc1(box: VisualSampleEntryBox<"avc1">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3083
3152
  //#endregion
3084
3153
  //#region src/writers/writeAvc2.d.ts
3085
3154
  /**
3086
3155
  * Write a VisualSampleEntryBox (avc2) to an IsoDataWriter.
3087
3156
  *
3088
3157
  * @param box - The VisualSampleEntryBox fields to write
3158
+ * @param config - The IsoBoxWriteViewConfig to use
3089
3159
  *
3090
3160
  * @returns An IsoDataWriter containing the encoded box
3091
3161
  *
3092
3162
  * @public
3093
3163
  */
3094
- declare function writeAvc2(box: VisualSampleEntryBox<"avc2">): IsoBoxWriteView;
3164
+ declare function writeAvc2(box: VisualSampleEntryBox<"avc2">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3095
3165
  //#endregion
3096
3166
  //#region src/writers/writeAvc3.d.ts
3097
3167
  /**
3098
3168
  * Write a VisualSampleEntryBox (avc3) to an IsoDataWriter.
3099
3169
  *
3100
3170
  * @param box - The VisualSampleEntryBox fields to write
3171
+ * @param config - The IsoBoxWriteViewConfig to use
3101
3172
  *
3102
3173
  * @returns An IsoDataWriter containing the encoded box
3103
3174
  *
3104
3175
  * @public
3105
3176
  */
3106
- declare function writeAvc3(box: VisualSampleEntryBox<"avc3">): IsoBoxWriteView;
3177
+ declare function writeAvc3(box: VisualSampleEntryBox<"avc3">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3107
3178
  //#endregion
3108
3179
  //#region src/writers/writeAvc4.d.ts
3109
3180
  /**
3110
3181
  * Write a VisualSampleEntryBox (avc4) to an IsoDataWriter.
3111
3182
  *
3112
3183
  * @param box - The VisualSampleEntryBox fields to write
3184
+ * @param config - The IsoBoxWriteViewConfig to use
3113
3185
  *
3114
3186
  * @returns An IsoDataWriter containing the encoded box
3115
3187
  *
3116
3188
  * @public
3117
3189
  */
3118
- declare function writeAvc4(box: VisualSampleEntryBox<"avc4">): IsoBoxWriteView;
3190
+ declare function writeAvc4(box: VisualSampleEntryBox<"avc4">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3119
3191
  //#endregion
3120
3192
  //#region src/writers/writeCtts.d.ts
3121
3193
  /**
@@ -3136,6 +3208,7 @@ declare function writeCtts(box: CompositionTimeToSampleBox): IsoBoxWriteView;
3136
3208
  * Write a DataReferenceBox to an IsoDataWriter.
3137
3209
  *
3138
3210
  * @param box - The DataReferenceBox fields to write
3211
+ * @param config - The IsoBoxWriteViewConfig to use
3139
3212
  *
3140
3213
  * @returns An IsoDataWriter containing the encoded box
3141
3214
  *
@@ -3190,24 +3263,26 @@ declare function writeEmsg(box: EventMessageBox): IsoBoxWriteView;
3190
3263
  * Write an AudioSampleEntryBox (enca) to an IsoDataWriter.
3191
3264
  *
3192
3265
  * @param box - The AudioSampleEntryBox fields to write
3266
+ * @param config - The IsoBoxWriteViewConfig to use
3193
3267
  *
3194
3268
  * @returns An IsoDataWriter containing the encoded box
3195
3269
  *
3196
3270
  * @public
3197
3271
  */
3198
- declare function writeEnca(box: AudioSampleEntryBox<"enca">): IsoBoxWriteView;
3272
+ declare function writeEnca(box: AudioSampleEntryBox<"enca">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3199
3273
  //#endregion
3200
3274
  //#region src/writers/writeEncv.d.ts
3201
3275
  /**
3202
3276
  * Write a VisualSampleEntryBox (encv) to an IsoDataWriter.
3203
3277
  *
3204
3278
  * @param box - The VisualSampleEntryBox fields to write
3279
+ * @param config - The IsoBoxWriteViewConfig to use
3205
3280
  *
3206
3281
  * @returns An IsoDataWriter containing the encoded box
3207
3282
  *
3208
3283
  * @public
3209
3284
  */
3210
- declare function writeEncv(box: VisualSampleEntryBox<"encv">): IsoBoxWriteView;
3285
+ declare function writeEncv(box: VisualSampleEntryBox<"encv">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3211
3286
  //#endregion
3212
3287
  //#region src/writers/writeFree.d.ts
3213
3288
  /**
@@ -3270,24 +3345,26 @@ declare function writeHdlr(box: HandlerReferenceBox): IsoBoxWriteView;
3270
3345
  * Write a VisualSampleEntryBox (hev1) to an IsoDataWriter.
3271
3346
  *
3272
3347
  * @param box - The VisualSampleEntryBox fields to write
3348
+ * @param config - The IsoBoxWriteViewConfig to use
3273
3349
  *
3274
3350
  * @returns An IsoDataWriter containing the encoded box
3275
3351
  *
3276
3352
  * @public
3277
3353
  */
3278
- declare function writeHev1(box: VisualSampleEntryBox<"hev1">): IsoBoxWriteView;
3354
+ declare function writeHev1(box: VisualSampleEntryBox<"hev1">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3279
3355
  //#endregion
3280
3356
  //#region src/writers/writeHvc1.d.ts
3281
3357
  /**
3282
3358
  * Write a VisualSampleEntryBox (hvc1) to an IsoDataWriter.
3283
3359
  *
3284
3360
  * @param box - The VisualSampleEntryBox fields to write
3361
+ * @param config - The IsoBoxWriteViewConfig to use
3285
3362
  *
3286
3363
  * @returns An IsoDataWriter containing the encoded box
3287
3364
  *
3288
3365
  * @public
3289
3366
  */
3290
- declare function writeHvc1(box: VisualSampleEntryBox<"hvc1">): IsoBoxWriteView;
3367
+ declare function writeHvc1(box: VisualSampleEntryBox<"hvc1">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3291
3368
  //#endregion
3292
3369
  //#region src/writers/writeIden.d.ts
3293
3370
  /**
@@ -3386,12 +3463,13 @@ declare function writeMehd(box: MovieExtendsHeaderBox): IsoBoxWriteView;
3386
3463
  * ISO/IEC 14496-12:2012 - 8.11.1 Meta Box
3387
3464
  *
3388
3465
  * @param box - The MetaBox fields to write
3466
+ * @param config - The IsoBoxWriteViewConfig to use
3389
3467
  *
3390
3468
  * @returns An IsoDataWriter containing the encoded box
3391
3469
  *
3392
3470
  * @public
3393
3471
  */
3394
- declare function writeMeta(box: MetaBox): IsoBoxWriteView;
3472
+ declare function writeMeta(box: MetaBox, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3395
3473
  //#endregion
3396
3474
  //#region src/writers/writeMfhd.d.ts
3397
3475
  /**
@@ -3433,7 +3511,7 @@ declare function writeMfro(box: MovieFragmentRandomAccessOffsetBox): IsoBoxWrite
3433
3511
  *
3434
3512
  * @public
3435
3513
  */
3436
- declare function writeMp4a(box: AudioSampleEntryBox<"mp4a">): IsoBoxWriteView;
3514
+ declare function writeMp4a(box: AudioSampleEntryBox<"mp4a">, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3437
3515
  //#endregion
3438
3516
  //#region src/writers/writeMvhd.d.ts
3439
3517
  /**
@@ -3480,12 +3558,13 @@ declare function writePrft(box: ProducerReferenceTimeBox): IsoBoxWriteView;
3480
3558
  * Write a PreselectionGroupBox to an IsoDataWriter.
3481
3559
  *
3482
3560
  * @param box - The PreselectionGroupBox fields to write
3561
+ * @param config - The IsoBoxWriteViewConfig to use
3483
3562
  *
3484
3563
  * @returns An IsoDataWriter containing the encoded box
3485
3564
  *
3486
3565
  * @public
3487
3566
  */
3488
- declare function writePrsl(box: PreselectionGroupBox): IsoBoxWriteView;
3567
+ declare function writePrsl(box: PreselectionGroupBox, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3489
3568
  //#endregion
3490
3569
  //#region src/writers/writePssh.d.ts
3491
3570
  /**
@@ -3604,6 +3683,7 @@ declare function writeSthd(box: SubtitleMediaHeaderBox): IsoBoxWriteView;
3604
3683
  * Write a SampleDescriptionBox to an IsoDataWriter.
3605
3684
  *
3606
3685
  * @param box - The SampleDescriptionBox fields to write
3686
+ * @param config - The IsoBoxWriteViewConfig to use
3607
3687
  *
3608
3688
  * @returns An IsoDataWriter containing the encoded box
3609
3689
  *
@@ -3805,6 +3885,21 @@ declare function writeUrl(box: DataEntryUrlBox): IsoBoxWriteView;
3805
3885
  */
3806
3886
  declare function writeUrn(box: DataEntryUrnBox): IsoBoxWriteView;
3807
3887
  //#endregion
3888
+ //#region src/writers/writeVisualSampleEntryBox.d.ts
3889
+ /**
3890
+ * Write a VisualSampleEntryBox to an IsoDataWriter.
3891
+ *
3892
+ * ISO/IEC 14496-12:2012 - 12.1.3 Visual Sample Entry
3893
+ *
3894
+ * @param box - The VisualSampleEntryBox fields to write
3895
+ * @param config - The configuration for the writer
3896
+ *
3897
+ * @returns An IsoDataWriter containing the encoded box
3898
+ *
3899
+ * @public
3900
+ */
3901
+ declare function writeVisualSampleEntryBox<T$1 extends VisualSampleEntryType = VisualSampleEntryType>(box: VisualSampleEntryBox<T$1>, config: IsoBoxWriteViewConfig): IsoBoxWriteView;
3902
+ //#endregion
3808
3903
  //#region src/writers/writeVlab.d.ts
3809
3904
  /**
3810
3905
  * Write a WebVttSourceLabelBox to an IsoDataWriter.
@@ -3853,5 +3948,5 @@ declare function writeVttC(box: WebVttConfigurationBox): IsoBoxWriteView;
3853
3948
  */
3854
3949
  declare function writeVtte(_: WebVttEmptySampleBox): IsoBoxWriteView;
3855
3950
  //#endregion
3856
- export { AdditionalMetadataContainerBox, AdditionalMetadataContainerBoxChild, AudioRenderingIndicationBox, AudioSampleEntryBox, Box, BoxReturn, CONTAINERS, ChunkLargeOffsetBox, ChunkOffsetBox, CompactSampleSizeBox, CompositionTimeToSampleBox, CompositionTimeToSampleEntry, ContainerReturn, DATA, DataEntryUrlBox, DataEntryUrnBox, DataInformationBox, DataInformationBoxChild, DataReferenceBox, DecodingTimeSample, DecodingTimeToSampleBox, DegradationPriorityBox, EditBox, EditBoxChild, EditListBox, EditListEntry, EncryptedSample, Entity, EventMessageBox, ExtendedLanguageBox, FileTypeBox, FreeSpaceBox, FullBox, GroupsListBox, GroupsListBoxChild, HandlerReferenceBox, HintMediaHeaderBox, INT, IdentifiedMediaDataBox, IpmpInfoBox, IsoBox, IsoBoxContainer, IsoBoxContainerMap, IsoBoxData, IsoBoxMap, IsoBoxReadView, IsoBoxReadViewConfig, IsoBoxReadableStream, IsoBoxReader, IsoBoxReaderMap, IsoBoxReaderReturn, IsoBoxStreamable, IsoBoxWriteView, IsoBoxWriteViewConfig, IsoBoxWriter, IsoBoxWriterMap, IsoFieldTypeMap, IsoParsedBox, IsoTypedParsedBox, ItemExtent, ItemInfoBox, ItemInfoBoxChild, ItemInfoEntry, ItemLocation, ItemLocationBox, ItemProtectionBox, ItemProtectionBoxChild, ItemReferenceBox, ItemReferenceBoxChild, LabelBox, MediaBox, MediaBoxChild, MediaDataBox, MediaHeaderBox, MediaInformationBox, MediaInformationBoxChild, MetaBox, MetaBoxChild, MovieBox, MovieBoxChild, MovieExtendsBox, MovieExtendsBoxChild, MovieExtendsHeaderBox, MovieFragmentBox, MovieFragmentBoxChild, MovieFragmentHeaderBox, MovieFragmentRandomAccessBox, MovieFragmentRandomAccessBoxChild, MovieFragmentRandomAccessOffsetBox, MovieHeaderBox, NullMediaHeaderBox, OriginalFormatBox, ParsedBox, PreselectionGroupBox, PrimaryItemBox, ProducerReferenceTimeBox, ProtectionSchemeInformationBox, ProtectionSchemeInformationBoxChild, ProtectionSystemSpecificHeaderBox, STRING, SampleAuxiliaryInformationOffsetsBox, SampleAuxiliaryInformationSizesBox, SampleDependencyTypeBox, SampleDescriptionBox, SampleEncryptionBox, SampleEntryBox, SampleGroupDescriptionBox, SampleSizeBox, SampleTableBox, SampleTableBoxChild, SampleToChunkBox, SampleToChunkEntry, SampleToGroupBox, SampleToGroupEntry, SchemeInformationBox, SchemeInformationBoxChild, SchemeTypeBox, SegmentIndexBox, SegmentIndexReference, SegmentTypeBox, ShadowSyncEntry, ShadowSyncSampleBox, SingleItemTypeReferenceBox, SoundMediaHeaderBox, SubTrackBox, SubTrackBoxChild, Subsample, SubsampleEncryption, SubsampleEntry, SubsampleInformationBox, Subsegment, SubsegmentIndexBox, SubsegmentRange, SubtitleMediaHeaderBox, SyncSample, SyncSampleBox, TEMPLATE, TrackBox, TrackBoxChild, TrackEncryptionBox, TrackExtendsBox, TrackFragmentBaseMediaDecodeTimeBox, TrackFragmentBox, TrackFragmentBoxChild, TrackFragmentHeaderBox, TrackFragmentRandomAccessBox, TrackFragmentRandomAccessEntry, TrackHeaderBox, TrackKindBox, TrackReferenceBox, TrackReferenceBoxChild, TrackReferenceTypeBox, TrackRunBox, TrackRunSample, TypeBox, UINT, UTF8, UserDataBox, UserDataBoxChild, VideoMediaHeaderBox, VisualSampleEntryBox, VisualSampleEntryType, WebVttConfigurationBox, WebVttCueBox, WebVttCueChild, WebVttCueIdBox, WebVttCuePayloadBox, WebVttEmptySampleBox, WebVttSettingsBox, WebVttSourceLabelBox, co64, createIsoBoxReadableStream, isContainer, isFullBox, readArdi, readAvc1, readAvc2, readAvc3, readAvc4, readCtts, readDref, readElng, readElst, readEmsg, readEnca, readEncv, readFree, readFrma, readFtyp, readHdlr, readHev1, readHvc1, readIden, readImda, readIsoBoxes, readKind, readLabl, readMdat, readMdhd, readMehd, readMeta, readMfhd, readMfro, readMp4a, readMvhd, readPayl, readPrft, readPrsl, readPssh, readSchm, readSdtp, readSidx, readSkip, readSmhd, readSsix, readSthd, readStsd, readStss, readSttg, readStts, readStyp, readSubs, readTenc, readTfdt, readTfhd, readTfra, readTkhd, readTrex, readTrun, readUrl, readUrn, readVlab, readVmhd, readVttC, readVtte, stz2, traverseIsoBoxes, url, urn, writeArdi, writeAvc1, writeAvc2, writeAvc3, writeAvc4, writeCtts, writeDref, writeElng, writeElst, writeEmsg, writeEnca, writeEncv, writeFree, writeFrma, writeFtyp, writeHdlr, writeHev1, writeHvc1, writeIden, writeImda, writeIsoBox, writeIsoBoxes, writeKind, writeLabl, writeMdat, writeMdhd, writeMehd, writeMeta, writeMfhd, writeMfro, writeMp4a, writeMvhd, writePayl, writePrft, writePrsl, writePssh, writeSchm, writeSdtp, writeSidx, writeSkip, writeSmhd, writeSsix, writeSthd, writeStsd, writeStss, writeSttg, writeStts, writeStyp, writeSubs, writeTenc, writeTfdt, writeTfhd, writeTfra, writeTkhd, writeTrex, writeTrun, writeUrl, writeUrn, writeVlab, writeVmhd, writeVttC, writeVtte };
3951
+ export { AdditionalMetadataContainerBox, AdditionalMetadataContainerBoxChild, AudioRenderingIndicationBox, AudioSampleEntryBox, AudioSampleEntryBoxChild, AudioSampleEntryType, Box, BoxReturn, CONTAINERS, ChunkLargeOffsetBox, ChunkOffsetBox, CompactSampleSizeBox, CompositionTimeToSampleBox, CompositionTimeToSampleEntry, ContainerReturn, DATA, DataEntryUrlBox, DataEntryUrnBox, DataInformationBox, DataInformationBoxChild, DataReferenceBox, DecodingTimeSample, DecodingTimeToSampleBox, DegradationPriorityBox, EditBox, EditBoxChild, EditListBox, EditListEntry, EncryptedSample, Entity, EventMessageBox, ExtendedLanguageBox, FileTypeBox, FreeSpaceBox, FullBox, GroupsListBox, GroupsListBoxChild, HandlerReferenceBox, HintMediaHeaderBox, INT, IdentifiedMediaDataBox, IpmpInfoBox, IsoBox, IsoBoxContainer, IsoBoxContainerMap, IsoBoxData, IsoBoxMap, IsoBoxReadView, IsoBoxReadViewConfig, IsoBoxReadableStream, IsoBoxReader, IsoBoxReaderMap, IsoBoxReaderReturn, IsoBoxStreamable, IsoBoxWriteView, IsoBoxWriteViewConfig, IsoBoxWriter, IsoBoxWriterMap, IsoFieldTypeMap, IsoParsedBox, IsoTypedParsedBox, ItemExtent, ItemInfoBox, ItemInfoBoxChild, ItemInfoEntry, ItemLocation, ItemLocationBox, ItemProtectionBox, ItemProtectionBoxChild, ItemReferenceBox, ItemReferenceBoxChild, LabelBox, MediaBox, MediaBoxChild, MediaDataBox, MediaHeaderBox, MediaInformationBox, MediaInformationBoxChild, MetaBox, MetaBoxChild, MovieBox, MovieBoxChild, MovieExtendsBox, MovieExtendsBoxChild, MovieExtendsHeaderBox, MovieFragmentBox, MovieFragmentBoxChild, MovieFragmentHeaderBox, MovieFragmentRandomAccessBox, MovieFragmentRandomAccessBoxChild, MovieFragmentRandomAccessOffsetBox, MovieHeaderBox, NullMediaHeaderBox, OriginalFormatBox, ParsedBox, PreselectionGroupBox, PreselectionGroupBoxChild, PrimaryItemBox, ProducerReferenceTimeBox, ProtectionSchemeInformationBox, ProtectionSchemeInformationBoxChild, ProtectionSystemSpecificHeaderBox, STRING, SampleAuxiliaryInformationOffsetsBox, SampleAuxiliaryInformationSizesBox, SampleDependencyTypeBox, SampleDescriptionBox, SampleEncryptionBox, SampleEntryBox, SampleGroupDescriptionBox, SampleSizeBox, SampleTableBox, SampleTableBoxChild, SampleToChunkBox, SampleToChunkEntry, SampleToGroupBox, SampleToGroupEntry, SchemeInformationBox, SchemeInformationBoxChild, SchemeTypeBox, SegmentIndexBox, SegmentIndexReference, SegmentTypeBox, ShadowSyncEntry, ShadowSyncSampleBox, SingleItemTypeReferenceBox, SoundMediaHeaderBox, SubTrackBox, SubTrackBoxChild, Subsample, SubsampleEncryption, SubsampleEntry, SubsampleInformationBox, Subsegment, SubsegmentIndexBox, SubsegmentRange, SubtitleMediaHeaderBox, SyncSample, SyncSampleBox, TEMPLATE, TrackBox, TrackBoxChild, TrackEncryptionBox, TrackExtendsBox, TrackFragmentBaseMediaDecodeTimeBox, TrackFragmentBox, TrackFragmentBoxChild, TrackFragmentHeaderBox, TrackFragmentRandomAccessBox, TrackFragmentRandomAccessEntry, TrackHeaderBox, TrackKindBox, TrackReferenceBox, TrackReferenceBoxChild, TrackReferenceTypeBox, TrackRunBox, TrackRunSample, TypeBox, UINT, UTF8, UserDataBox, UserDataBoxChild, VideoMediaHeaderBox, VisualSampleEntryBox, VisualSampleEntryBoxChild, VisualSampleEntryType, WebVttConfigurationBox, WebVttCueBox, WebVttCueChild, WebVttCueIdBox, WebVttCuePayloadBox, WebVttEmptySampleBox, WebVttSettingsBox, WebVttSourceLabelBox, co64, createIsoBoxReadableStream, isContainer, isFullBox, readArdi, readAudioSampleEntryBox, readAvc1, readAvc2, readAvc3, readAvc4, readCtts, readDref, readElng, readElst, readEmsg, readEnca, readEncv, readFree, readFrma, readFtyp, readHdlr, readHev1, readHvc1, readIden, readImda, readIsoBoxes, readKind, readLabl, readMdat, readMdhd, readMehd, readMeta, readMfhd, readMfro, readMp4a, readMvhd, readPayl, readPrft, readPrsl, readPssh, readSchm, readSdtp, readSidx, readSkip, readSmhd, readSsix, readSthd, readStsd, readStss, readSttg, readStts, readStyp, readSubs, readTenc, readTfdt, readTfhd, readTfra, readTkhd, readTrex, readTrun, readUrl, readUrn, readVisualSampleEntryBox, readVlab, readVmhd, readVttC, readVtte, stz2, traverseIsoBoxes, url, urn, writeArdi, writeAudioSampleEntryBox, writeAvc1, writeAvc2, writeAvc3, writeAvc4, writeCtts, writeDref, writeElng, writeElst, writeEmsg, writeEnca, writeEncv, writeFree, writeFrma, writeFtyp, writeHdlr, writeHev1, writeHvc1, writeIden, writeImda, writeIsoBox, writeIsoBoxes, writeKind, writeLabl, writeMdat, writeMdhd, writeMehd, writeMeta, writeMfhd, writeMfro, writeMp4a, writeMvhd, writePayl, writePrft, writePrsl, writePssh, writeSchm, writeSdtp, writeSidx, writeSkip, writeSmhd, writeSsix, writeSthd, writeStsd, writeStss, writeSttg, writeStts, writeStyp, writeSubs, writeTenc, writeTfdt, writeTfhd, writeTfra, writeTkhd, writeTrex, writeTrun, writeUrl, writeUrn, writeVisualSampleEntryBox, writeVlab, writeVmhd, writeVttC, writeVtte };
3857
3952
  //# sourceMappingURL=index.d.ts.map