@svta/cml-iso-bmff 0.19.0

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 (849) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +33 -0
  3. package/dist/BoxFilter.d.ts +9 -0
  4. package/dist/BoxFilter.d.ts.map +1 -0
  5. package/dist/BoxFilter.js +2 -0
  6. package/dist/BoxFilter.js.map +1 -0
  7. package/dist/BoxParser.d.ts +12 -0
  8. package/dist/BoxParser.d.ts.map +1 -0
  9. package/dist/BoxParser.js +2 -0
  10. package/dist/BoxParser.js.map +1 -0
  11. package/dist/BoxParserMap.d.ts +9 -0
  12. package/dist/BoxParserMap.d.ts.map +1 -0
  13. package/dist/BoxParserMap.js +2 -0
  14. package/dist/BoxParserMap.js.map +1 -0
  15. package/dist/CONTAINERS.d.ts +2 -0
  16. package/dist/CONTAINERS.d.ts.map +1 -0
  17. package/dist/CONTAINERS.js +26 -0
  18. package/dist/CONTAINERS.js.map +1 -0
  19. package/dist/IsoData.d.ts +8 -0
  20. package/dist/IsoData.d.ts.map +1 -0
  21. package/dist/IsoData.js +2 -0
  22. package/dist/IsoData.js.map +1 -0
  23. package/dist/IsoView.d.ts +145 -0
  24. package/dist/IsoView.d.ts.map +1 -0
  25. package/dist/IsoView.js +285 -0
  26. package/dist/IsoView.js.map +1 -0
  27. package/dist/IsoViewConfig.d.ts +18 -0
  28. package/dist/IsoViewConfig.d.ts.map +1 -0
  29. package/dist/IsoViewConfig.js +2 -0
  30. package/dist/IsoViewConfig.js.map +1 -0
  31. package/dist/boxes/AudioRenderingIndicationBox.d.ts +12 -0
  32. package/dist/boxes/AudioRenderingIndicationBox.d.ts.map +1 -0
  33. package/dist/boxes/AudioRenderingIndicationBox.js +2 -0
  34. package/dist/boxes/AudioRenderingIndicationBox.js.map +1 -0
  35. package/dist/boxes/AudioSampleEntryBox.d.ts +18 -0
  36. package/dist/boxes/AudioSampleEntryBox.d.ts.map +1 -0
  37. package/dist/boxes/AudioSampleEntryBox.js +2 -0
  38. package/dist/boxes/AudioSampleEntryBox.js.map +1 -0
  39. package/dist/boxes/Box.d.ts +15 -0
  40. package/dist/boxes/Box.d.ts.map +1 -0
  41. package/dist/boxes/Box.js +2 -0
  42. package/dist/boxes/Box.js.map +1 -0
  43. package/dist/boxes/ChunkLargeOffsetBox.d.ts +13 -0
  44. package/dist/boxes/ChunkLargeOffsetBox.d.ts.map +1 -0
  45. package/dist/boxes/ChunkLargeOffsetBox.js +2 -0
  46. package/dist/boxes/ChunkLargeOffsetBox.js.map +1 -0
  47. package/dist/boxes/ChunkOffsetBox.d.ts +13 -0
  48. package/dist/boxes/ChunkOffsetBox.d.ts.map +1 -0
  49. package/dist/boxes/ChunkOffsetBox.js +2 -0
  50. package/dist/boxes/ChunkOffsetBox.js.map +1 -0
  51. package/dist/boxes/CompTimeToSampleEntry.d.ts +11 -0
  52. package/dist/boxes/CompTimeToSampleEntry.d.ts.map +1 -0
  53. package/dist/boxes/CompTimeToSampleEntry.js +2 -0
  54. package/dist/boxes/CompTimeToSampleEntry.js.map +1 -0
  55. package/dist/boxes/CompactSampleSizeBox.d.ts +14 -0
  56. package/dist/boxes/CompactSampleSizeBox.d.ts.map +1 -0
  57. package/dist/boxes/CompactSampleSizeBox.js +2 -0
  58. package/dist/boxes/CompactSampleSizeBox.js.map +1 -0
  59. package/dist/boxes/CompositionTimeToSampleBox.d.ts +14 -0
  60. package/dist/boxes/CompositionTimeToSampleBox.d.ts.map +1 -0
  61. package/dist/boxes/CompositionTimeToSampleBox.js +2 -0
  62. package/dist/boxes/CompositionTimeToSampleBox.js.map +1 -0
  63. package/dist/boxes/CompositionTimeToSampleEntry.d.ts +11 -0
  64. package/dist/boxes/CompositionTimeToSampleEntry.d.ts.map +1 -0
  65. package/dist/boxes/CompositionTimeToSampleEntry.js +2 -0
  66. package/dist/boxes/CompositionTimeToSampleEntry.js.map +1 -0
  67. package/dist/boxes/ContainerBox.d.ts +11 -0
  68. package/dist/boxes/ContainerBox.d.ts.map +1 -0
  69. package/dist/boxes/ContainerBox.js +2 -0
  70. package/dist/boxes/ContainerBox.js.map +1 -0
  71. package/dist/boxes/DataEntryUrlBox.d.ts +12 -0
  72. package/dist/boxes/DataEntryUrlBox.d.ts.map +1 -0
  73. package/dist/boxes/DataEntryUrlBox.js +2 -0
  74. package/dist/boxes/DataEntryUrlBox.js.map +1 -0
  75. package/dist/boxes/DataEntryUrnBox.d.ts +13 -0
  76. package/dist/boxes/DataEntryUrnBox.d.ts.map +1 -0
  77. package/dist/boxes/DataEntryUrnBox.js +2 -0
  78. package/dist/boxes/DataEntryUrnBox.js.map +1 -0
  79. package/dist/boxes/DataInformationBox.d.ts +12 -0
  80. package/dist/boxes/DataInformationBox.d.ts.map +1 -0
  81. package/dist/boxes/DataInformationBox.js +2 -0
  82. package/dist/boxes/DataInformationBox.js.map +1 -0
  83. package/dist/boxes/DataReferenceBox.d.ts +15 -0
  84. package/dist/boxes/DataReferenceBox.d.ts.map +1 -0
  85. package/dist/boxes/DataReferenceBox.js +2 -0
  86. package/dist/boxes/DataReferenceBox.js.map +1 -0
  87. package/dist/boxes/DecodingTimeSample.d.ts +13 -0
  88. package/dist/boxes/DecodingTimeSample.d.ts.map +1 -0
  89. package/dist/boxes/DecodingTimeSample.js +2 -0
  90. package/dist/boxes/DecodingTimeSample.js.map +1 -0
  91. package/dist/boxes/DecodingTimeToSampleBox.d.ts +16 -0
  92. package/dist/boxes/DecodingTimeToSampleBox.d.ts.map +1 -0
  93. package/dist/boxes/DecodingTimeToSampleBox.js +2 -0
  94. package/dist/boxes/DecodingTimeToSampleBox.js.map +1 -0
  95. package/dist/boxes/DegradationPriorityBox.d.ts +12 -0
  96. package/dist/boxes/DegradationPriorityBox.d.ts.map +1 -0
  97. package/dist/boxes/DegradationPriorityBox.js +2 -0
  98. package/dist/boxes/DegradationPriorityBox.js.map +1 -0
  99. package/dist/boxes/EditBox.d.ts +12 -0
  100. package/dist/boxes/EditBox.d.ts.map +1 -0
  101. package/dist/boxes/EditBox.js +2 -0
  102. package/dist/boxes/EditBox.js.map +1 -0
  103. package/dist/boxes/EditListBox.d.ts +14 -0
  104. package/dist/boxes/EditListBox.d.ts.map +1 -0
  105. package/dist/boxes/EditListBox.js +2 -0
  106. package/dist/boxes/EditListBox.js.map +1 -0
  107. package/dist/boxes/EditListEntry.d.ts +13 -0
  108. package/dist/boxes/EditListEntry.d.ts.map +1 -0
  109. package/dist/boxes/EditListEntry.js +2 -0
  110. package/dist/boxes/EditListEntry.js.map +1 -0
  111. package/dist/boxes/EncryptedSample.d.ts +12 -0
  112. package/dist/boxes/EncryptedSample.d.ts.map +1 -0
  113. package/dist/boxes/EncryptedSample.js +2 -0
  114. package/dist/boxes/EncryptedSample.js.map +1 -0
  115. package/dist/boxes/Entity.d.ts +11 -0
  116. package/dist/boxes/Entity.d.ts.map +1 -0
  117. package/dist/boxes/Entity.js +2 -0
  118. package/dist/boxes/Entity.js.map +1 -0
  119. package/dist/boxes/EventMessageBox.d.ts +19 -0
  120. package/dist/boxes/EventMessageBox.d.ts.map +1 -0
  121. package/dist/boxes/EventMessageBox.js +2 -0
  122. package/dist/boxes/EventMessageBox.js.map +1 -0
  123. package/dist/boxes/ExtendedLanguageBox.d.ts +12 -0
  124. package/dist/boxes/ExtendedLanguageBox.d.ts.map +1 -0
  125. package/dist/boxes/ExtendedLanguageBox.js +2 -0
  126. package/dist/boxes/ExtendedLanguageBox.js.map +1 -0
  127. package/dist/boxes/Fields.d.ts +9 -0
  128. package/dist/boxes/Fields.d.ts.map +1 -0
  129. package/dist/boxes/Fields.js +2 -0
  130. package/dist/boxes/Fields.js.map +1 -0
  131. package/dist/boxes/FileTypeBox.d.ts +9 -0
  132. package/dist/boxes/FileTypeBox.d.ts.map +1 -0
  133. package/dist/boxes/FileTypeBox.js +2 -0
  134. package/dist/boxes/FileTypeBox.js.map +1 -0
  135. package/dist/boxes/FreeSpaceBox.d.ts +12 -0
  136. package/dist/boxes/FreeSpaceBox.d.ts.map +1 -0
  137. package/dist/boxes/FreeSpaceBox.js +2 -0
  138. package/dist/boxes/FreeSpaceBox.js.map +1 -0
  139. package/dist/boxes/FullBox.d.ts +12 -0
  140. package/dist/boxes/FullBox.d.ts.map +1 -0
  141. package/dist/boxes/FullBox.js +2 -0
  142. package/dist/boxes/FullBox.js.map +1 -0
  143. package/dist/boxes/HandlerReferenceBox.d.ts +15 -0
  144. package/dist/boxes/HandlerReferenceBox.d.ts.map +1 -0
  145. package/dist/boxes/HandlerReferenceBox.js +2 -0
  146. package/dist/boxes/HandlerReferenceBox.js.map +1 -0
  147. package/dist/boxes/HintMediaHeaderBox.d.ts +15 -0
  148. package/dist/boxes/HintMediaHeaderBox.d.ts.map +1 -0
  149. package/dist/boxes/HintMediaHeaderBox.js +2 -0
  150. package/dist/boxes/HintMediaHeaderBox.js.map +1 -0
  151. package/dist/boxes/IdentifiedMediaDataBox.d.ts +13 -0
  152. package/dist/boxes/IdentifiedMediaDataBox.d.ts.map +1 -0
  153. package/dist/boxes/IdentifiedMediaDataBox.js +2 -0
  154. package/dist/boxes/IdentifiedMediaDataBox.js.map +1 -0
  155. package/dist/boxes/IpmpInfoBox.d.ts +12 -0
  156. package/dist/boxes/IpmpInfoBox.d.ts.map +1 -0
  157. package/dist/boxes/IpmpInfoBox.js +2 -0
  158. package/dist/boxes/IpmpInfoBox.js.map +1 -0
  159. package/dist/boxes/IsoBmffBox.d.ts +10 -0
  160. package/dist/boxes/IsoBmffBox.d.ts.map +1 -0
  161. package/dist/boxes/IsoBmffBox.js +2 -0
  162. package/dist/boxes/IsoBmffBox.js.map +1 -0
  163. package/dist/boxes/IsoBmffBoxMap.d.ts +193 -0
  164. package/dist/boxes/IsoBmffBoxMap.d.ts.map +1 -0
  165. package/dist/boxes/IsoBmffBoxMap.js +2 -0
  166. package/dist/boxes/IsoBmffBoxMap.js.map +1 -0
  167. package/dist/boxes/IsoBox.d.ts +80 -0
  168. package/dist/boxes/IsoBox.d.ts.map +1 -0
  169. package/dist/boxes/IsoBox.js +2 -0
  170. package/dist/boxes/IsoBox.js.map +1 -0
  171. package/dist/boxes/IsoContainerBox.d.ts +27 -0
  172. package/dist/boxes/IsoContainerBox.d.ts.map +1 -0
  173. package/dist/boxes/IsoContainerBox.js +2 -0
  174. package/dist/boxes/IsoContainerBox.js.map +1 -0
  175. package/dist/boxes/ItemExtent.d.ts +12 -0
  176. package/dist/boxes/ItemExtent.d.ts.map +1 -0
  177. package/dist/boxes/ItemExtent.js +2 -0
  178. package/dist/boxes/ItemExtent.js.map +1 -0
  179. package/dist/boxes/ItemInfoBox.d.ts +13 -0
  180. package/dist/boxes/ItemInfoBox.d.ts.map +1 -0
  181. package/dist/boxes/ItemInfoBox.js +2 -0
  182. package/dist/boxes/ItemInfoBox.js.map +1 -0
  183. package/dist/boxes/ItemInfoEntry.d.ts +17 -0
  184. package/dist/boxes/ItemInfoEntry.d.ts.map +1 -0
  185. package/dist/boxes/ItemInfoEntry.js +2 -0
  186. package/dist/boxes/ItemInfoEntry.js.map +1 -0
  187. package/dist/boxes/ItemLocation.d.ts +15 -0
  188. package/dist/boxes/ItemLocation.d.ts.map +1 -0
  189. package/dist/boxes/ItemLocation.js +2 -0
  190. package/dist/boxes/ItemLocation.js.map +1 -0
  191. package/dist/boxes/ItemLocationBox.d.ts +18 -0
  192. package/dist/boxes/ItemLocationBox.d.ts.map +1 -0
  193. package/dist/boxes/ItemLocationBox.js +2 -0
  194. package/dist/boxes/ItemLocationBox.js.map +1 -0
  195. package/dist/boxes/ItemProtectionBox.d.ts +13 -0
  196. package/dist/boxes/ItemProtectionBox.d.ts.map +1 -0
  197. package/dist/boxes/ItemProtectionBox.js +2 -0
  198. package/dist/boxes/ItemProtectionBox.js.map +1 -0
  199. package/dist/boxes/ItemReferenceBox.d.ts +12 -0
  200. package/dist/boxes/ItemReferenceBox.d.ts.map +1 -0
  201. package/dist/boxes/ItemReferenceBox.js +2 -0
  202. package/dist/boxes/ItemReferenceBox.js.map +1 -0
  203. package/dist/boxes/LabelBox.d.ts +15 -0
  204. package/dist/boxes/LabelBox.d.ts.map +1 -0
  205. package/dist/boxes/LabelBox.js +2 -0
  206. package/dist/boxes/LabelBox.js.map +1 -0
  207. package/dist/boxes/MediaBox.d.ts +14 -0
  208. package/dist/boxes/MediaBox.d.ts.map +1 -0
  209. package/dist/boxes/MediaBox.js +2 -0
  210. package/dist/boxes/MediaBox.js.map +1 -0
  211. package/dist/boxes/MediaDataBox.d.ts +12 -0
  212. package/dist/boxes/MediaDataBox.d.ts.map +1 -0
  213. package/dist/boxes/MediaDataBox.js +2 -0
  214. package/dist/boxes/MediaDataBox.js.map +1 -0
  215. package/dist/boxes/MediaHeaderBox.d.ts +23 -0
  216. package/dist/boxes/MediaHeaderBox.d.ts.map +1 -0
  217. package/dist/boxes/MediaHeaderBox.js +2 -0
  218. package/dist/boxes/MediaHeaderBox.js.map +1 -0
  219. package/dist/boxes/MediaInformationBox.d.ts +17 -0
  220. package/dist/boxes/MediaInformationBox.d.ts.map +1 -0
  221. package/dist/boxes/MediaInformationBox.js +2 -0
  222. package/dist/boxes/MediaInformationBox.js.map +1 -0
  223. package/dist/boxes/MetaBox.d.ts +19 -0
  224. package/dist/boxes/MetaBox.d.ts.map +1 -0
  225. package/dist/boxes/MetaBox.js +2 -0
  226. package/dist/boxes/MetaBox.js.map +1 -0
  227. package/dist/boxes/MovieBox.d.ts +15 -0
  228. package/dist/boxes/MovieBox.d.ts.map +1 -0
  229. package/dist/boxes/MovieBox.js +2 -0
  230. package/dist/boxes/MovieBox.js.map +1 -0
  231. package/dist/boxes/MovieExtendsBox.d.ts +13 -0
  232. package/dist/boxes/MovieExtendsBox.d.ts.map +1 -0
  233. package/dist/boxes/MovieExtendsBox.js +2 -0
  234. package/dist/boxes/MovieExtendsBox.js.map +1 -0
  235. package/dist/boxes/MovieExtendsHeaderBox.d.ts +12 -0
  236. package/dist/boxes/MovieExtendsHeaderBox.d.ts.map +1 -0
  237. package/dist/boxes/MovieExtendsHeaderBox.js +2 -0
  238. package/dist/boxes/MovieExtendsHeaderBox.js.map +1 -0
  239. package/dist/boxes/MovieFragmentBox.d.ts +13 -0
  240. package/dist/boxes/MovieFragmentBox.d.ts.map +1 -0
  241. package/dist/boxes/MovieFragmentBox.js +2 -0
  242. package/dist/boxes/MovieFragmentBox.js.map +1 -0
  243. package/dist/boxes/MovieFragmentHeaderBox.d.ts +12 -0
  244. package/dist/boxes/MovieFragmentHeaderBox.d.ts.map +1 -0
  245. package/dist/boxes/MovieFragmentHeaderBox.js +2 -0
  246. package/dist/boxes/MovieFragmentHeaderBox.js.map +1 -0
  247. package/dist/boxes/MovieFragmentRandomAccessBox.d.ts +13 -0
  248. package/dist/boxes/MovieFragmentRandomAccessBox.d.ts.map +1 -0
  249. package/dist/boxes/MovieFragmentRandomAccessBox.js +2 -0
  250. package/dist/boxes/MovieFragmentRandomAccessBox.js.map +1 -0
  251. package/dist/boxes/MovieFragmentRandomAccessOffsetBox.d.ts +12 -0
  252. package/dist/boxes/MovieFragmentRandomAccessOffsetBox.d.ts.map +1 -0
  253. package/dist/boxes/MovieFragmentRandomAccessOffsetBox.js +2 -0
  254. package/dist/boxes/MovieFragmentRandomAccessOffsetBox.js.map +1 -0
  255. package/dist/boxes/MovieHeaderBox.d.ts +22 -0
  256. package/dist/boxes/MovieHeaderBox.d.ts.map +1 -0
  257. package/dist/boxes/MovieHeaderBox.js +2 -0
  258. package/dist/boxes/MovieHeaderBox.js.map +1 -0
  259. package/dist/boxes/NullMediaHeaderBox.d.ts +11 -0
  260. package/dist/boxes/NullMediaHeaderBox.d.ts.map +1 -0
  261. package/dist/boxes/NullMediaHeaderBox.js +2 -0
  262. package/dist/boxes/NullMediaHeaderBox.js.map +1 -0
  263. package/dist/boxes/OriginalFormatBox.d.ts +12 -0
  264. package/dist/boxes/OriginalFormatBox.d.ts.map +1 -0
  265. package/dist/boxes/OriginalFormatBox.js +2 -0
  266. package/dist/boxes/OriginalFormatBox.js.map +1 -0
  267. package/dist/boxes/PreselectionGroupBox.d.ts +21 -0
  268. package/dist/boxes/PreselectionGroupBox.d.ts.map +1 -0
  269. package/dist/boxes/PreselectionGroupBox.js +2 -0
  270. package/dist/boxes/PreselectionGroupBox.js.map +1 -0
  271. package/dist/boxes/PrimaryItemBox.d.ts +12 -0
  272. package/dist/boxes/PrimaryItemBox.d.ts.map +1 -0
  273. package/dist/boxes/PrimaryItemBox.js +2 -0
  274. package/dist/boxes/PrimaryItemBox.js.map +1 -0
  275. package/dist/boxes/ProducerReferenceTimeBox.d.ts +15 -0
  276. package/dist/boxes/ProducerReferenceTimeBox.d.ts.map +1 -0
  277. package/dist/boxes/ProducerReferenceTimeBox.js +2 -0
  278. package/dist/boxes/ProducerReferenceTimeBox.js.map +1 -0
  279. package/dist/boxes/ProtectionSchemeInformationBox.d.ts +15 -0
  280. package/dist/boxes/ProtectionSchemeInformationBox.d.ts.map +1 -0
  281. package/dist/boxes/ProtectionSchemeInformationBox.js +2 -0
  282. package/dist/boxes/ProtectionSchemeInformationBox.js.map +1 -0
  283. package/dist/boxes/ProtectionSystemSpecificHeaderBox.d.ts +16 -0
  284. package/dist/boxes/ProtectionSystemSpecificHeaderBox.d.ts.map +1 -0
  285. package/dist/boxes/ProtectionSystemSpecificHeaderBox.js +2 -0
  286. package/dist/boxes/ProtectionSystemSpecificHeaderBox.js.map +1 -0
  287. package/dist/boxes/SampleAuxiliaryInformationOffsetsBox.d.ts +15 -0
  288. package/dist/boxes/SampleAuxiliaryInformationOffsetsBox.d.ts.map +1 -0
  289. package/dist/boxes/SampleAuxiliaryInformationOffsetsBox.js +2 -0
  290. package/dist/boxes/SampleAuxiliaryInformationOffsetsBox.js.map +1 -0
  291. package/dist/boxes/SampleAuxiliaryInformationSizesBox.d.ts +16 -0
  292. package/dist/boxes/SampleAuxiliaryInformationSizesBox.d.ts.map +1 -0
  293. package/dist/boxes/SampleAuxiliaryInformationSizesBox.js +2 -0
  294. package/dist/boxes/SampleAuxiliaryInformationSizesBox.js.map +1 -0
  295. package/dist/boxes/SampleDependencyTypeBox.d.ts +12 -0
  296. package/dist/boxes/SampleDependencyTypeBox.d.ts.map +1 -0
  297. package/dist/boxes/SampleDependencyTypeBox.js +2 -0
  298. package/dist/boxes/SampleDependencyTypeBox.js.map +1 -0
  299. package/dist/boxes/SampleDescriptionBox.d.ts +14 -0
  300. package/dist/boxes/SampleDescriptionBox.d.ts.map +1 -0
  301. package/dist/boxes/SampleDescriptionBox.js +2 -0
  302. package/dist/boxes/SampleDescriptionBox.js.map +1 -0
  303. package/dist/boxes/SampleEncryptionBox.d.ts +14 -0
  304. package/dist/boxes/SampleEncryptionBox.d.ts.map +1 -0
  305. package/dist/boxes/SampleEncryptionBox.js +2 -0
  306. package/dist/boxes/SampleEncryptionBox.js.map +1 -0
  307. package/dist/boxes/SampleEntryBox.d.ts +12 -0
  308. package/dist/boxes/SampleEntryBox.d.ts.map +1 -0
  309. package/dist/boxes/SampleEntryBox.js +2 -0
  310. package/dist/boxes/SampleEntryBox.js.map +1 -0
  311. package/dist/boxes/SampleGroupDescriptionBox.d.ts +15 -0
  312. package/dist/boxes/SampleGroupDescriptionBox.d.ts.map +1 -0
  313. package/dist/boxes/SampleGroupDescriptionBox.js +2 -0
  314. package/dist/boxes/SampleGroupDescriptionBox.js.map +1 -0
  315. package/dist/boxes/SampleSizeBox.d.ts +14 -0
  316. package/dist/boxes/SampleSizeBox.d.ts.map +1 -0
  317. package/dist/boxes/SampleSizeBox.js +2 -0
  318. package/dist/boxes/SampleSizeBox.js.map +1 -0
  319. package/dist/boxes/SampleTableBox.d.ts +23 -0
  320. package/dist/boxes/SampleTableBox.d.ts.map +1 -0
  321. package/dist/boxes/SampleTableBox.js +2 -0
  322. package/dist/boxes/SampleTableBox.js.map +1 -0
  323. package/dist/boxes/SampleToChunkBox.d.ts +14 -0
  324. package/dist/boxes/SampleToChunkBox.d.ts.map +1 -0
  325. package/dist/boxes/SampleToChunkBox.js +2 -0
  326. package/dist/boxes/SampleToChunkBox.js.map +1 -0
  327. package/dist/boxes/SampleToChunkEntry.d.ts +12 -0
  328. package/dist/boxes/SampleToChunkEntry.d.ts.map +1 -0
  329. package/dist/boxes/SampleToChunkEntry.js +2 -0
  330. package/dist/boxes/SampleToChunkEntry.js.map +1 -0
  331. package/dist/boxes/SampleToGroupBox.d.ts +16 -0
  332. package/dist/boxes/SampleToGroupBox.d.ts.map +1 -0
  333. package/dist/boxes/SampleToGroupBox.js +2 -0
  334. package/dist/boxes/SampleToGroupBox.js.map +1 -0
  335. package/dist/boxes/SampleToGroupEntry.d.ts +11 -0
  336. package/dist/boxes/SampleToGroupEntry.d.ts.map +1 -0
  337. package/dist/boxes/SampleToGroupEntry.js +2 -0
  338. package/dist/boxes/SampleToGroupEntry.js.map +1 -0
  339. package/dist/boxes/SchemeInformationBox.d.ts +13 -0
  340. package/dist/boxes/SchemeInformationBox.d.ts.map +1 -0
  341. package/dist/boxes/SchemeInformationBox.js +2 -0
  342. package/dist/boxes/SchemeInformationBox.js.map +1 -0
  343. package/dist/boxes/SchemeTypeBox.d.ts +14 -0
  344. package/dist/boxes/SchemeTypeBox.d.ts.map +1 -0
  345. package/dist/boxes/SchemeTypeBox.js +2 -0
  346. package/dist/boxes/SchemeTypeBox.js.map +1 -0
  347. package/dist/boxes/SegmentIndexBox.d.ts +18 -0
  348. package/dist/boxes/SegmentIndexBox.d.ts.map +1 -0
  349. package/dist/boxes/SegmentIndexBox.js +2 -0
  350. package/dist/boxes/SegmentIndexBox.js.map +1 -0
  351. package/dist/boxes/SegmentIndexReference.d.ts +17 -0
  352. package/dist/boxes/SegmentIndexReference.d.ts.map +1 -0
  353. package/dist/boxes/SegmentIndexReference.js +2 -0
  354. package/dist/boxes/SegmentIndexReference.js.map +1 -0
  355. package/dist/boxes/SegmentTypeBox.d.ts +9 -0
  356. package/dist/boxes/SegmentTypeBox.d.ts.map +1 -0
  357. package/dist/boxes/SegmentTypeBox.js +2 -0
  358. package/dist/boxes/SegmentTypeBox.js.map +1 -0
  359. package/dist/boxes/ShadowSyncEntry.d.ts +11 -0
  360. package/dist/boxes/ShadowSyncEntry.d.ts.map +1 -0
  361. package/dist/boxes/ShadowSyncEntry.js +2 -0
  362. package/dist/boxes/ShadowSyncEntry.js.map +1 -0
  363. package/dist/boxes/ShadowSyncSampleBox.d.ts +14 -0
  364. package/dist/boxes/ShadowSyncSampleBox.d.ts.map +1 -0
  365. package/dist/boxes/ShadowSyncSampleBox.js +2 -0
  366. package/dist/boxes/ShadowSyncSampleBox.js.map +1 -0
  367. package/dist/boxes/SingleItemTypeReferenceBox.d.ts +13 -0
  368. package/dist/boxes/SingleItemTypeReferenceBox.d.ts.map +1 -0
  369. package/dist/boxes/SingleItemTypeReferenceBox.js +2 -0
  370. package/dist/boxes/SingleItemTypeReferenceBox.js.map +1 -0
  371. package/dist/boxes/SoundMediaHeaderBox.d.ts +13 -0
  372. package/dist/boxes/SoundMediaHeaderBox.d.ts.map +1 -0
  373. package/dist/boxes/SoundMediaHeaderBox.js +2 -0
  374. package/dist/boxes/SoundMediaHeaderBox.js.map +1 -0
  375. package/dist/boxes/Subsample.d.ts +13 -0
  376. package/dist/boxes/Subsample.d.ts.map +1 -0
  377. package/dist/boxes/Subsample.js +2 -0
  378. package/dist/boxes/Subsample.js.map +1 -0
  379. package/dist/boxes/SubsampleEncryption.d.ts +11 -0
  380. package/dist/boxes/SubsampleEncryption.d.ts.map +1 -0
  381. package/dist/boxes/SubsampleEncryption.js +2 -0
  382. package/dist/boxes/SubsampleEncryption.js.map +1 -0
  383. package/dist/boxes/SubsampleEntry.d.ts +13 -0
  384. package/dist/boxes/SubsampleEntry.d.ts.map +1 -0
  385. package/dist/boxes/SubsampleEntry.js +2 -0
  386. package/dist/boxes/SubsampleEntry.js.map +1 -0
  387. package/dist/boxes/SubsampleInformationBox.d.ts +14 -0
  388. package/dist/boxes/SubsampleInformationBox.d.ts.map +1 -0
  389. package/dist/boxes/SubsampleInformationBox.js +2 -0
  390. package/dist/boxes/SubsampleInformationBox.js.map +1 -0
  391. package/dist/boxes/Subsegment.d.ts +12 -0
  392. package/dist/boxes/Subsegment.d.ts.map +1 -0
  393. package/dist/boxes/Subsegment.js +2 -0
  394. package/dist/boxes/Subsegment.js.map +1 -0
  395. package/dist/boxes/SubsegmentIndexBox.d.ts +14 -0
  396. package/dist/boxes/SubsegmentIndexBox.d.ts.map +1 -0
  397. package/dist/boxes/SubsegmentIndexBox.js +2 -0
  398. package/dist/boxes/SubsegmentIndexBox.js.map +1 -0
  399. package/dist/boxes/SubsegmentRange.d.ts +11 -0
  400. package/dist/boxes/SubsegmentRange.d.ts.map +1 -0
  401. package/dist/boxes/SubsegmentRange.js +2 -0
  402. package/dist/boxes/SubsegmentRange.js.map +1 -0
  403. package/dist/boxes/SubtitleMediaHeaderBox.d.ts +11 -0
  404. package/dist/boxes/SubtitleMediaHeaderBox.d.ts.map +1 -0
  405. package/dist/boxes/SubtitleMediaHeaderBox.js +2 -0
  406. package/dist/boxes/SubtitleMediaHeaderBox.js.map +1 -0
  407. package/dist/boxes/SyncSample.d.ts +10 -0
  408. package/dist/boxes/SyncSample.d.ts.map +1 -0
  409. package/dist/boxes/SyncSample.js +2 -0
  410. package/dist/boxes/SyncSample.js.map +1 -0
  411. package/dist/boxes/SyncSampleBox.d.ts +14 -0
  412. package/dist/boxes/SyncSampleBox.d.ts.map +1 -0
  413. package/dist/boxes/SyncSampleBox.js +2 -0
  414. package/dist/boxes/SyncSampleBox.js.map +1 -0
  415. package/dist/boxes/TrackBox.d.ts +16 -0
  416. package/dist/boxes/TrackBox.d.ts.map +1 -0
  417. package/dist/boxes/TrackBox.js +2 -0
  418. package/dist/boxes/TrackBox.js.map +1 -0
  419. package/dist/boxes/TrackEncryptionBox.d.ts +14 -0
  420. package/dist/boxes/TrackEncryptionBox.d.ts.map +1 -0
  421. package/dist/boxes/TrackEncryptionBox.js +2 -0
  422. package/dist/boxes/TrackEncryptionBox.js.map +1 -0
  423. package/dist/boxes/TrackExtendsBox.d.ts +16 -0
  424. package/dist/boxes/TrackExtendsBox.d.ts.map +1 -0
  425. package/dist/boxes/TrackExtendsBox.js +2 -0
  426. package/dist/boxes/TrackExtendsBox.js.map +1 -0
  427. package/dist/boxes/TrackFragmentBaseMediaDecodeTimeBox.d.ts +12 -0
  428. package/dist/boxes/TrackFragmentBaseMediaDecodeTimeBox.d.ts.map +1 -0
  429. package/dist/boxes/TrackFragmentBaseMediaDecodeTimeBox.js +2 -0
  430. package/dist/boxes/TrackFragmentBaseMediaDecodeTimeBox.js.map +1 -0
  431. package/dist/boxes/TrackFragmentBox.d.ts +17 -0
  432. package/dist/boxes/TrackFragmentBox.d.ts.map +1 -0
  433. package/dist/boxes/TrackFragmentBox.js +2 -0
  434. package/dist/boxes/TrackFragmentBox.js.map +1 -0
  435. package/dist/boxes/TrackFragmentHeaderBox.d.ts +17 -0
  436. package/dist/boxes/TrackFragmentHeaderBox.d.ts.map +1 -0
  437. package/dist/boxes/TrackFragmentHeaderBox.js +2 -0
  438. package/dist/boxes/TrackFragmentHeaderBox.js.map +1 -0
  439. package/dist/boxes/TrackFragmentRandomAccessBox.d.ts +19 -0
  440. package/dist/boxes/TrackFragmentRandomAccessBox.d.ts.map +1 -0
  441. package/dist/boxes/TrackFragmentRandomAccessBox.js +2 -0
  442. package/dist/boxes/TrackFragmentRandomAccessBox.js.map +1 -0
  443. package/dist/boxes/TrackFragmentRandomAccessEntry.d.ts +14 -0
  444. package/dist/boxes/TrackFragmentRandomAccessEntry.d.ts.map +1 -0
  445. package/dist/boxes/TrackFragmentRandomAccessEntry.js +2 -0
  446. package/dist/boxes/TrackFragmentRandomAccessEntry.js.map +1 -0
  447. package/dist/boxes/TrackHeaderBox.d.ts +24 -0
  448. package/dist/boxes/TrackHeaderBox.d.ts.map +1 -0
  449. package/dist/boxes/TrackHeaderBox.js +2 -0
  450. package/dist/boxes/TrackHeaderBox.js.map +1 -0
  451. package/dist/boxes/TrackKindBox.d.ts +13 -0
  452. package/dist/boxes/TrackKindBox.d.ts.map +1 -0
  453. package/dist/boxes/TrackKindBox.js +2 -0
  454. package/dist/boxes/TrackKindBox.js.map +1 -0
  455. package/dist/boxes/TrackReferenceBox.d.ts +12 -0
  456. package/dist/boxes/TrackReferenceBox.d.ts.map +1 -0
  457. package/dist/boxes/TrackReferenceBox.js +2 -0
  458. package/dist/boxes/TrackReferenceBox.js.map +1 -0
  459. package/dist/boxes/TrackReferenceTypeBox.d.ts +12 -0
  460. package/dist/boxes/TrackReferenceTypeBox.d.ts.map +1 -0
  461. package/dist/boxes/TrackReferenceTypeBox.js +2 -0
  462. package/dist/boxes/TrackReferenceTypeBox.js.map +1 -0
  463. package/dist/boxes/TrackRunBox.d.ts +19 -0
  464. package/dist/boxes/TrackRunBox.d.ts.map +1 -0
  465. package/dist/boxes/TrackRunBox.js +2 -0
  466. package/dist/boxes/TrackRunBox.js.map +1 -0
  467. package/dist/boxes/TrackRunSample.d.ts +13 -0
  468. package/dist/boxes/TrackRunSample.d.ts.map +1 -0
  469. package/dist/boxes/TrackRunSample.js +2 -0
  470. package/dist/boxes/TrackRunSample.js.map +1 -0
  471. package/dist/boxes/TypeBox.d.ts +14 -0
  472. package/dist/boxes/TypeBox.d.ts.map +1 -0
  473. package/dist/boxes/TypeBox.js +2 -0
  474. package/dist/boxes/TypeBox.js.map +1 -0
  475. package/dist/boxes/UrlBox.d.ts +12 -0
  476. package/dist/boxes/UrlBox.d.ts.map +1 -0
  477. package/dist/boxes/UrlBox.js +2 -0
  478. package/dist/boxes/UrlBox.js.map +1 -0
  479. package/dist/boxes/UrnBox.d.ts +13 -0
  480. package/dist/boxes/UrnBox.d.ts.map +1 -0
  481. package/dist/boxes/UrnBox.js +2 -0
  482. package/dist/boxes/UrnBox.js.map +1 -0
  483. package/dist/boxes/UserDataBox.d.ts +12 -0
  484. package/dist/boxes/UserDataBox.d.ts.map +1 -0
  485. package/dist/boxes/UserDataBox.js +2 -0
  486. package/dist/boxes/UserDataBox.js.map +1 -0
  487. package/dist/boxes/VideoMediaHeaderBox.d.ts +13 -0
  488. package/dist/boxes/VideoMediaHeaderBox.d.ts.map +1 -0
  489. package/dist/boxes/VideoMediaHeaderBox.js +2 -0
  490. package/dist/boxes/VideoMediaHeaderBox.js.map +1 -0
  491. package/dist/boxes/VisualSampleEntryBox.d.ts +24 -0
  492. package/dist/boxes/VisualSampleEntryBox.d.ts.map +1 -0
  493. package/dist/boxes/VisualSampleEntryBox.js +2 -0
  494. package/dist/boxes/VisualSampleEntryBox.js.map +1 -0
  495. package/dist/boxes/WebVttConfigurationBox.d.ts +12 -0
  496. package/dist/boxes/WebVttConfigurationBox.d.ts.map +1 -0
  497. package/dist/boxes/WebVttConfigurationBox.js +2 -0
  498. package/dist/boxes/WebVttConfigurationBox.js.map +1 -0
  499. package/dist/boxes/WebVttCueIdBox.d.ts +12 -0
  500. package/dist/boxes/WebVttCueIdBox.d.ts.map +1 -0
  501. package/dist/boxes/WebVttCueIdBox.js +2 -0
  502. package/dist/boxes/WebVttCueIdBox.js.map +1 -0
  503. package/dist/boxes/WebVttCuePayloadBox.d.ts +12 -0
  504. package/dist/boxes/WebVttCuePayloadBox.d.ts.map +1 -0
  505. package/dist/boxes/WebVttCuePayloadBox.js +2 -0
  506. package/dist/boxes/WebVttCuePayloadBox.js.map +1 -0
  507. package/dist/boxes/WebVttEmptySampleBox.d.ts +11 -0
  508. package/dist/boxes/WebVttEmptySampleBox.d.ts.map +1 -0
  509. package/dist/boxes/WebVttEmptySampleBox.js +2 -0
  510. package/dist/boxes/WebVttEmptySampleBox.js.map +1 -0
  511. package/dist/boxes/WebVttSettingsBox.d.ts +12 -0
  512. package/dist/boxes/WebVttSettingsBox.d.ts.map +1 -0
  513. package/dist/boxes/WebVttSettingsBox.js +2 -0
  514. package/dist/boxes/WebVttSettingsBox.js.map +1 -0
  515. package/dist/boxes/WebVttSourceLabelBox.d.ts +12 -0
  516. package/dist/boxes/WebVttSourceLabelBox.d.ts.map +1 -0
  517. package/dist/boxes/WebVttSourceLabelBox.js +2 -0
  518. package/dist/boxes/WebVttSourceLabelBox.js.map +1 -0
  519. package/dist/createIsoView.d.ts +16 -0
  520. package/dist/createIsoView.d.ts.map +1 -0
  521. package/dist/createIsoView.js +16 -0
  522. package/dist/createIsoView.js.map +1 -0
  523. package/dist/fields/DATA.d.ts +8 -0
  524. package/dist/fields/DATA.d.ts.map +1 -0
  525. package/dist/fields/DATA.js +8 -0
  526. package/dist/fields/DATA.js.map +1 -0
  527. package/dist/fields/INT.d.ts +8 -0
  528. package/dist/fields/INT.d.ts.map +1 -0
  529. package/dist/fields/INT.js +8 -0
  530. package/dist/fields/INT.js.map +1 -0
  531. package/dist/fields/STRING.d.ts +8 -0
  532. package/dist/fields/STRING.d.ts.map +1 -0
  533. package/dist/fields/STRING.js +8 -0
  534. package/dist/fields/STRING.js.map +1 -0
  535. package/dist/fields/TEMPLATE.d.ts +8 -0
  536. package/dist/fields/TEMPLATE.d.ts.map +1 -0
  537. package/dist/fields/TEMPLATE.js +8 -0
  538. package/dist/fields/TEMPLATE.js.map +1 -0
  539. package/dist/fields/UINT.d.ts +8 -0
  540. package/dist/fields/UINT.d.ts.map +1 -0
  541. package/dist/fields/UINT.js +8 -0
  542. package/dist/fields/UINT.js.map +1 -0
  543. package/dist/fields/UTF8.d.ts +8 -0
  544. package/dist/fields/UTF8.d.ts.map +1 -0
  545. package/dist/fields/UTF8.js +8 -0
  546. package/dist/fields/UTF8.js.map +1 -0
  547. package/dist/filterBoxes.d.ts +16 -0
  548. package/dist/filterBoxes.d.ts.map +1 -0
  549. package/dist/filterBoxes.js +32 -0
  550. package/dist/filterBoxes.js.map +1 -0
  551. package/dist/filterBoxesByType.d.ts +17 -0
  552. package/dist/filterBoxesByType.d.ts.map +1 -0
  553. package/dist/filterBoxesByType.js +20 -0
  554. package/dist/filterBoxesByType.js.map +1 -0
  555. package/dist/findBox.d.ts +18 -0
  556. package/dist/findBox.d.ts.map +1 -0
  557. package/dist/findBox.js +37 -0
  558. package/dist/findBox.js.map +1 -0
  559. package/dist/findBoxByType.d.ts +17 -0
  560. package/dist/findBoxByType.d.ts.map +1 -0
  561. package/dist/findBoxByType.js +17 -0
  562. package/dist/findBoxByType.js.map +1 -0
  563. package/dist/index.d.ts +206 -0
  564. package/dist/index.d.ts.map +1 -0
  565. package/dist/index.js +68 -0
  566. package/dist/index.js.map +1 -0
  567. package/dist/parseBoxes.d.ts +16 -0
  568. package/dist/parseBoxes.d.ts.map +1 -0
  569. package/dist/parseBoxes.js +20 -0
  570. package/dist/parseBoxes.js.map +1 -0
  571. package/dist/parsers/ardi.d.ts +15 -0
  572. package/dist/parsers/ardi.d.ts.map +1 -0
  573. package/dist/parsers/ardi.js +18 -0
  574. package/dist/parsers/ardi.js.map +1 -0
  575. package/dist/parsers/avc1.d.ts +15 -0
  576. package/dist/parsers/avc1.d.ts.map +1 -0
  577. package/dist/parsers/avc1.js +33 -0
  578. package/dist/parsers/avc1.js.map +1 -0
  579. package/dist/parsers/avc2.d.ts +15 -0
  580. package/dist/parsers/avc2.d.ts.map +1 -0
  581. package/dist/parsers/avc2.js +15 -0
  582. package/dist/parsers/avc2.js.map +1 -0
  583. package/dist/parsers/avc3.d.ts +15 -0
  584. package/dist/parsers/avc3.d.ts.map +1 -0
  585. package/dist/parsers/avc3.js +15 -0
  586. package/dist/parsers/avc3.js.map +1 -0
  587. package/dist/parsers/avc4.d.ts +15 -0
  588. package/dist/parsers/avc4.d.ts.map +1 -0
  589. package/dist/parsers/avc4.js +15 -0
  590. package/dist/parsers/avc4.js.map +1 -0
  591. package/dist/parsers/ctts.d.ts +15 -0
  592. package/dist/parsers/ctts.d.ts.map +1 -0
  593. package/dist/parsers/ctts.js +27 -0
  594. package/dist/parsers/ctts.js.map +1 -0
  595. package/dist/parsers/dref.d.ts +15 -0
  596. package/dist/parsers/dref.d.ts.map +1 -0
  597. package/dist/parsers/dref.js +23 -0
  598. package/dist/parsers/dref.js.map +1 -0
  599. package/dist/parsers/elng.d.ts +15 -0
  600. package/dist/parsers/elng.d.ts.map +1 -0
  601. package/dist/parsers/elng.js +18 -0
  602. package/dist/parsers/elng.js.map +1 -0
  603. package/dist/parsers/elst.d.ts +15 -0
  604. package/dist/parsers/elst.d.ts.map +1 -0
  605. package/dist/parsers/elst.js +30 -0
  606. package/dist/parsers/elst.js.map +1 -0
  607. package/dist/parsers/emsg.d.ts +15 -0
  608. package/dist/parsers/emsg.d.ts.map +1 -0
  609. package/dist/parsers/emsg.js +33 -0
  610. package/dist/parsers/emsg.js.map +1 -0
  611. package/dist/parsers/enca.d.ts +15 -0
  612. package/dist/parsers/enca.d.ts.map +1 -0
  613. package/dist/parsers/enca.js +15 -0
  614. package/dist/parsers/enca.js.map +1 -0
  615. package/dist/parsers/encv.d.ts +15 -0
  616. package/dist/parsers/encv.d.ts.map +1 -0
  617. package/dist/parsers/encv.js +15 -0
  618. package/dist/parsers/encv.js.map +1 -0
  619. package/dist/parsers/free.d.ts +15 -0
  620. package/dist/parsers/free.d.ts.map +1 -0
  621. package/dist/parsers/free.js +17 -0
  622. package/dist/parsers/free.js.map +1 -0
  623. package/dist/parsers/frma.d.ts +15 -0
  624. package/dist/parsers/frma.d.ts.map +1 -0
  625. package/dist/parsers/frma.js +17 -0
  626. package/dist/parsers/frma.js.map +1 -0
  627. package/dist/parsers/ftyp.d.ts +15 -0
  628. package/dist/parsers/ftyp.d.ts.map +1 -0
  629. package/dist/parsers/ftyp.js +24 -0
  630. package/dist/parsers/ftyp.js.map +1 -0
  631. package/dist/parsers/hdlr.d.ts +15 -0
  632. package/dist/parsers/hdlr.d.ts.map +1 -0
  633. package/dist/parsers/hdlr.js +22 -0
  634. package/dist/parsers/hdlr.js.map +1 -0
  635. package/dist/parsers/hev1.d.ts +15 -0
  636. package/dist/parsers/hev1.d.ts.map +1 -0
  637. package/dist/parsers/hev1.js +15 -0
  638. package/dist/parsers/hev1.js.map +1 -0
  639. package/dist/parsers/hvc1.d.ts +15 -0
  640. package/dist/parsers/hvc1.d.ts.map +1 -0
  641. package/dist/parsers/hvc1.js +15 -0
  642. package/dist/parsers/hvc1.js.map +1 -0
  643. package/dist/parsers/iden.d.ts +15 -0
  644. package/dist/parsers/iden.d.ts.map +1 -0
  645. package/dist/parsers/iden.js +17 -0
  646. package/dist/parsers/iden.js.map +1 -0
  647. package/dist/parsers/imda.d.ts +15 -0
  648. package/dist/parsers/imda.d.ts.map +1 -0
  649. package/dist/parsers/imda.js +18 -0
  650. package/dist/parsers/imda.js.map +1 -0
  651. package/dist/parsers/kind.d.ts +15 -0
  652. package/dist/parsers/kind.d.ts.map +1 -0
  653. package/dist/parsers/kind.js +19 -0
  654. package/dist/parsers/kind.js.map +1 -0
  655. package/dist/parsers/labl.d.ts +15 -0
  656. package/dist/parsers/labl.d.ts.map +1 -0
  657. package/dist/parsers/labl.js +22 -0
  658. package/dist/parsers/labl.js.map +1 -0
  659. package/dist/parsers/mdat.d.ts +15 -0
  660. package/dist/parsers/mdat.d.ts.map +1 -0
  661. package/dist/parsers/mdat.js +17 -0
  662. package/dist/parsers/mdat.js.map +1 -0
  663. package/dist/parsers/mdhd.d.ts +15 -0
  664. package/dist/parsers/mdhd.d.ts.map +1 -0
  665. package/dist/parsers/mdhd.js +31 -0
  666. package/dist/parsers/mdhd.js.map +1 -0
  667. package/dist/parsers/mehd.d.ts +15 -0
  668. package/dist/parsers/mehd.d.ts.map +1 -0
  669. package/dist/parsers/mehd.js +20 -0
  670. package/dist/parsers/mehd.js.map +1 -0
  671. package/dist/parsers/meta.d.ts +15 -0
  672. package/dist/parsers/meta.d.ts.map +1 -0
  673. package/dist/parsers/meta.js +15 -0
  674. package/dist/parsers/meta.js.map +1 -0
  675. package/dist/parsers/mfhd.d.ts +15 -0
  676. package/dist/parsers/mfhd.d.ts.map +1 -0
  677. package/dist/parsers/mfhd.js +18 -0
  678. package/dist/parsers/mfhd.js.map +1 -0
  679. package/dist/parsers/mfro.d.ts +15 -0
  680. package/dist/parsers/mfro.d.ts.map +1 -0
  681. package/dist/parsers/mfro.js +18 -0
  682. package/dist/parsers/mfro.js.map +1 -0
  683. package/dist/parsers/mp4a.d.ts +15 -0
  684. package/dist/parsers/mp4a.d.ts.map +1 -0
  685. package/dist/parsers/mp4a.js +27 -0
  686. package/dist/parsers/mp4a.js.map +1 -0
  687. package/dist/parsers/mvhd.d.ts +15 -0
  688. package/dist/parsers/mvhd.d.ts.map +1 -0
  689. package/dist/parsers/mvhd.js +33 -0
  690. package/dist/parsers/mvhd.js.map +1 -0
  691. package/dist/parsers/payl.d.ts +15 -0
  692. package/dist/parsers/payl.d.ts.map +1 -0
  693. package/dist/parsers/payl.js +17 -0
  694. package/dist/parsers/payl.js.map +1 -0
  695. package/dist/parsers/prft.d.ts +15 -0
  696. package/dist/parsers/prft.d.ts.map +1 -0
  697. package/dist/parsers/prft.js +23 -0
  698. package/dist/parsers/prft.js.map +1 -0
  699. package/dist/parsers/prsl.d.ts +15 -0
  700. package/dist/parsers/prsl.d.ts.map +1 -0
  701. package/dist/parsers/prsl.js +32 -0
  702. package/dist/parsers/prsl.js.map +1 -0
  703. package/dist/parsers/pssh.d.ts +15 -0
  704. package/dist/parsers/pssh.d.ts.map +1 -0
  705. package/dist/parsers/pssh.js +35 -0
  706. package/dist/parsers/pssh.js.map +1 -0
  707. package/dist/parsers/schm.d.ts +15 -0
  708. package/dist/parsers/schm.d.ts.map +1 -0
  709. package/dist/parsers/schm.js +22 -0
  710. package/dist/parsers/schm.js.map +1 -0
  711. package/dist/parsers/sdtp.d.ts +15 -0
  712. package/dist/parsers/sdtp.d.ts.map +1 -0
  713. package/dist/parsers/sdtp.js +19 -0
  714. package/dist/parsers/sdtp.js.map +1 -0
  715. package/dist/parsers/sidx.d.ts +15 -0
  716. package/dist/parsers/sidx.d.ts.map +1 -0
  717. package/dist/parsers/sidx.js +46 -0
  718. package/dist/parsers/sidx.js.map +1 -0
  719. package/dist/parsers/skip.d.ts +15 -0
  720. package/dist/parsers/skip.d.ts.map +1 -0
  721. package/dist/parsers/skip.js +16 -0
  722. package/dist/parsers/skip.js.map +1 -0
  723. package/dist/parsers/smhd.d.ts +15 -0
  724. package/dist/parsers/smhd.d.ts.map +1 -0
  725. package/dist/parsers/smhd.js +19 -0
  726. package/dist/parsers/smhd.js.map +1 -0
  727. package/dist/parsers/ssix.d.ts +15 -0
  728. package/dist/parsers/ssix.d.ts.map +1 -0
  729. package/dist/parsers/ssix.js +30 -0
  730. package/dist/parsers/ssix.js.map +1 -0
  731. package/dist/parsers/sthd.d.ts +15 -0
  732. package/dist/parsers/sthd.d.ts.map +1 -0
  733. package/dist/parsers/sthd.js +15 -0
  734. package/dist/parsers/sthd.js.map +1 -0
  735. package/dist/parsers/stsd.d.ts +16 -0
  736. package/dist/parsers/stsd.d.ts.map +1 -0
  737. package/dist/parsers/stsd.js +22 -0
  738. package/dist/parsers/stsd.js.map +1 -0
  739. package/dist/parsers/stss.d.ts +15 -0
  740. package/dist/parsers/stss.d.ts.map +1 -0
  741. package/dist/parsers/stss.js +24 -0
  742. package/dist/parsers/stss.js.map +1 -0
  743. package/dist/parsers/sttg.d.ts +15 -0
  744. package/dist/parsers/sttg.d.ts.map +1 -0
  745. package/dist/parsers/sttg.js +17 -0
  746. package/dist/parsers/sttg.js.map +1 -0
  747. package/dist/parsers/stts.d.ts +15 -0
  748. package/dist/parsers/stts.d.ts.map +1 -0
  749. package/dist/parsers/stts.js +26 -0
  750. package/dist/parsers/stts.js.map +1 -0
  751. package/dist/parsers/styp.d.ts +15 -0
  752. package/dist/parsers/styp.d.ts.map +1 -0
  753. package/dist/parsers/styp.js +15 -0
  754. package/dist/parsers/styp.js.map +1 -0
  755. package/dist/parsers/subs.d.ts +15 -0
  756. package/dist/parsers/subs.d.ts.map +1 -0
  757. package/dist/parsers/subs.js +37 -0
  758. package/dist/parsers/subs.js.map +1 -0
  759. package/dist/parsers/tenc.d.ts +15 -0
  760. package/dist/parsers/tenc.d.ts.map +1 -0
  761. package/dist/parsers/tenc.js +21 -0
  762. package/dist/parsers/tenc.js.map +1 -0
  763. package/dist/parsers/tfdt.d.ts +15 -0
  764. package/dist/parsers/tfdt.d.ts.map +1 -0
  765. package/dist/parsers/tfdt.js +20 -0
  766. package/dist/parsers/tfdt.js.map +1 -0
  767. package/dist/parsers/tfhd.d.ts +15 -0
  768. package/dist/parsers/tfhd.d.ts.map +1 -0
  769. package/dist/parsers/tfhd.js +25 -0
  770. package/dist/parsers/tfhd.js.map +1 -0
  771. package/dist/parsers/tfra.d.ts +15 -0
  772. package/dist/parsers/tfra.d.ts.map +1 -0
  773. package/dist/parsers/tfra.js +39 -0
  774. package/dist/parsers/tfra.js.map +1 -0
  775. package/dist/parsers/tkhd.d.ts +15 -0
  776. package/dist/parsers/tkhd.d.ts.map +1 -0
  777. package/dist/parsers/tkhd.js +35 -0
  778. package/dist/parsers/tkhd.js.map +1 -0
  779. package/dist/parsers/trex.d.ts +15 -0
  780. package/dist/parsers/trex.d.ts.map +1 -0
  781. package/dist/parsers/trex.js +22 -0
  782. package/dist/parsers/trex.js.map +1 -0
  783. package/dist/parsers/trun.d.ts +15 -0
  784. package/dist/parsers/trun.d.ts.map +1 -0
  785. package/dist/parsers/trun.js +48 -0
  786. package/dist/parsers/trun.js.map +1 -0
  787. package/dist/parsers/url.d.ts +15 -0
  788. package/dist/parsers/url.d.ts.map +1 -0
  789. package/dist/parsers/url.js +18 -0
  790. package/dist/parsers/url.js.map +1 -0
  791. package/dist/parsers/urn.d.ts +15 -0
  792. package/dist/parsers/urn.d.ts.map +1 -0
  793. package/dist/parsers/urn.js +19 -0
  794. package/dist/parsers/urn.js.map +1 -0
  795. package/dist/parsers/vlab.d.ts +15 -0
  796. package/dist/parsers/vlab.d.ts.map +1 -0
  797. package/dist/parsers/vlab.js +17 -0
  798. package/dist/parsers/vlab.js.map +1 -0
  799. package/dist/parsers/vmhd.d.ts +15 -0
  800. package/dist/parsers/vmhd.d.ts.map +1 -0
  801. package/dist/parsers/vmhd.js +20 -0
  802. package/dist/parsers/vmhd.js.map +1 -0
  803. package/dist/parsers/vttC.d.ts +15 -0
  804. package/dist/parsers/vttC.d.ts.map +1 -0
  805. package/dist/parsers/vttC.js +17 -0
  806. package/dist/parsers/vttC.js.map +1 -0
  807. package/dist/parsers/vtte.d.ts +12 -0
  808. package/dist/parsers/vtte.d.ts.map +1 -0
  809. package/dist/parsers/vtte.js +14 -0
  810. package/dist/parsers/vtte.js.map +1 -0
  811. package/dist/readers/IsoFieldTypeMap.d.ts +16 -0
  812. package/dist/readers/IsoFieldTypeMap.d.ts.map +1 -0
  813. package/dist/readers/IsoFieldTypeMap.js +2 -0
  814. package/dist/readers/IsoFieldTypeMap.js.map +1 -0
  815. package/dist/readers/readData.d.ts +2 -0
  816. package/dist/readers/readData.d.ts.map +1 -0
  817. package/dist/readers/readData.js +6 -0
  818. package/dist/readers/readData.js.map +1 -0
  819. package/dist/readers/readInt.d.ts +2 -0
  820. package/dist/readers/readInt.d.ts.map +1 -0
  821. package/dist/readers/readInt.js +25 -0
  822. package/dist/readers/readInt.js.map +1 -0
  823. package/dist/readers/readString.d.ts +2 -0
  824. package/dist/readers/readString.d.ts.map +1 -0
  825. package/dist/readers/readString.js +11 -0
  826. package/dist/readers/readString.js.map +1 -0
  827. package/dist/readers/readTemplate.d.ts +2 -0
  828. package/dist/readers/readTemplate.d.ts.map +1 -0
  829. package/dist/readers/readTemplate.js +9 -0
  830. package/dist/readers/readTemplate.js.map +1 -0
  831. package/dist/readers/readTerminatedString.d.ts +2 -0
  832. package/dist/readers/readTerminatedString.d.ts.map +1 -0
  833. package/dist/readers/readTerminatedString.js +16 -0
  834. package/dist/readers/readTerminatedString.js.map +1 -0
  835. package/dist/readers/readUint.d.ts +2 -0
  836. package/dist/readers/readUint.d.ts.map +1 -0
  837. package/dist/readers/readUint.js +32 -0
  838. package/dist/readers/readUint.js.map +1 -0
  839. package/dist/readers/readUtf8String.d.ts +11 -0
  840. package/dist/readers/readUtf8String.d.ts.map +1 -0
  841. package/dist/readers/readUtf8String.js +17 -0
  842. package/dist/readers/readUtf8String.js.map +1 -0
  843. package/dist/readers/readUtf8TerminatedString.d.ts +11 -0
  844. package/dist/readers/readUtf8TerminatedString.d.ts.map +1 -0
  845. package/dist/readers/readUtf8TerminatedString.js +29 -0
  846. package/dist/readers/readUtf8TerminatedString.js.map +1 -0
  847. package/dist/tsconfig.tsbuildinfo +1 -0
  848. package/dist/tsdoc-metadata.json +11 -0
  849. package/package.json +75 -0
@@ -0,0 +1,285 @@
1
+ import { CONTAINERS } from './CONTAINERS.js';
2
+ import { DATA } from './fields/DATA.js';
3
+ import { INT } from './fields/INT.js';
4
+ import { STRING } from './fields/STRING.js';
5
+ import { TEMPLATE } from './fields/TEMPLATE.js';
6
+ import { UINT } from './fields/UINT.js';
7
+ import { UTF8 } from './fields/UTF8.js';
8
+ import { readData } from './readers/readData.js';
9
+ import { readInt } from './readers/readInt.js';
10
+ import { readString } from './readers/readString.js';
11
+ import { readTemplate } from './readers/readTemplate.js';
12
+ import { readTerminatedString } from './readers/readTerminatedString.js';
13
+ import { readUint } from './readers/readUint.js';
14
+ import { readUtf8String } from './readers/readUtf8String.js';
15
+ import { readUtf8TerminatedString } from './readers/readUtf8TerminatedString.js';
16
+ /**
17
+ * ISO BMFF data view. Similar to DataView, but with additional methods for reading ISO BMFF data.
18
+ * It implements the iterator protocol, so it can be used in a for...of loop.
19
+ *
20
+ *
21
+ * @beta
22
+ */
23
+ export class IsoView {
24
+ /**
25
+ * Creates a new IsoView instance. Similar to DataView, but with additional
26
+ * methods for reading ISO BMFF data. It implements the iterator protocol,
27
+ * so it can be used in a for...of loop.
28
+ *
29
+ * @param raw - The raw data to view.
30
+ * @param config - The configuration for the IsoView.
31
+ */
32
+ constructor(raw, config) {
33
+ this.truncated = false;
34
+ /**
35
+ * Creates a new IsoView instance with a slice of the current data view.
36
+ *
37
+ * @param size - The size of the slice.
38
+ * @returns A new IsoView instance.
39
+ */
40
+ this.slice = (size) => {
41
+ const dataView = new DataView(this.dataView.buffer, this.offset, size);
42
+ this.offset += size;
43
+ return new IsoView(dataView, this.config);
44
+ };
45
+ this.read = (type, size = 0) => {
46
+ // TODO: Change all sizes from bits to bytes
47
+ const { dataView, offset } = this;
48
+ let result;
49
+ let cursor = size;
50
+ switch (type) {
51
+ case UINT:
52
+ result = readUint(dataView, offset, size);
53
+ break;
54
+ case INT:
55
+ result = readInt(dataView, offset, size);
56
+ break;
57
+ case TEMPLATE:
58
+ result = readTemplate(dataView, offset, size);
59
+ break;
60
+ case STRING:
61
+ if (size === -1) {
62
+ result = readTerminatedString(dataView, offset);
63
+ cursor = result.length + 1;
64
+ }
65
+ else {
66
+ result = readString(dataView, offset, size);
67
+ }
68
+ break;
69
+ case DATA:
70
+ result = readData(dataView, offset, size);
71
+ cursor = result.length;
72
+ break;
73
+ case UTF8:
74
+ if (size === -1) {
75
+ result = readUtf8TerminatedString(dataView, offset);
76
+ cursor = result.length + 1;
77
+ }
78
+ else {
79
+ result = readUtf8String(dataView, offset);
80
+ }
81
+ break;
82
+ default:
83
+ result = -1;
84
+ }
85
+ this.offset += cursor;
86
+ return result;
87
+ };
88
+ /**
89
+ * Reads a unsigned integer from the data view.
90
+ *
91
+ * @param size - The size of the integer in bytes.
92
+ * @returns The unsigned integer.
93
+ */
94
+ this.readUint = (size) => {
95
+ return this.read(UINT, size);
96
+ };
97
+ /**
98
+ * Reads a signed integer from the data view.
99
+ *
100
+ * @param size - The size of the integer in bytes.
101
+ * @returns The signed integer.
102
+ */
103
+ this.readInt = (size) => {
104
+ return this.read(INT, size);
105
+ };
106
+ /**
107
+ * Reads a string from the data view.
108
+ *
109
+ * @param size - The size of the string in bytes.
110
+ * @returns The string.
111
+ */
112
+ this.readString = (size) => {
113
+ return this.read(STRING, size);
114
+ };
115
+ /**
116
+ * Reads a template from the data view.
117
+ *
118
+ * @param size - The size of the template in bytes.
119
+ * @returns The template.
120
+ */
121
+ this.readTemplate = (size) => {
122
+ return this.read(TEMPLATE, size);
123
+ };
124
+ /**
125
+ * Reads a byte array from the data view.
126
+ *
127
+ * @param size - The size of the data in bytes.
128
+ * @returns The data.
129
+ */
130
+ this.readData = (size) => {
131
+ return this.read(DATA, size);
132
+ };
133
+ /**
134
+ * Reads a UTF-8 string from the data view.
135
+ *
136
+ * @param size - The size of the string in bytes.
137
+ * @returns The UTF-8 string.
138
+ */
139
+ this.readUtf8 = (size) => {
140
+ return this.read(UTF8, size);
141
+ };
142
+ /**
143
+ * Reads a full box from the data view.
144
+ *
145
+ * @returns The full box.
146
+ */
147
+ this.readFullBox = () => {
148
+ return {
149
+ version: this.readUint(1),
150
+ flags: this.readUint(3),
151
+ };
152
+ };
153
+ /**
154
+ * Reads an array of values from the data view.
155
+ *
156
+ * @param type - The type of the values.
157
+ * @param size - The size of the values in bytes.
158
+ * @param length - The number of values to read.
159
+ * @returns The array of values.
160
+ */
161
+ this.readArray = (type, size, length) => {
162
+ const value = [];
163
+ for (let i = 0; i < length; i++) {
164
+ value.push(this.read(type, size));
165
+ }
166
+ return value;
167
+ };
168
+ /**
169
+ * Reads a raw box from the data view.
170
+ *
171
+ * @returns The box.
172
+ */
173
+ this.readBox = () => {
174
+ const { dataView, offset } = this;
175
+ // read box size and type without advancing the cursor in case the box is truncated
176
+ let cursor = 0;
177
+ const box = {
178
+ size: readUint(dataView, offset, 4),
179
+ type: readString(dataView, offset + 4, 4),
180
+ };
181
+ cursor += 8;
182
+ if (box.size === 1) {
183
+ box.largesize = readUint(dataView, offset + cursor, 8);
184
+ cursor += 8;
185
+ }
186
+ const actualSize = box.largesize || box.size;
187
+ if (this.cursor + actualSize > dataView.byteLength) {
188
+ this.truncated = true;
189
+ throw new Error('Truncated box');
190
+ }
191
+ this.offset += cursor;
192
+ if (box.type === 'uuid') {
193
+ box.usertype = this.readArray('uint', 1, 16);
194
+ }
195
+ const viewSize = box.size === 0 ? this.bytesRemaining : actualSize - cursor;
196
+ box.data = this.slice(viewSize);
197
+ return box;
198
+ };
199
+ /**
200
+ * Reads a number of boxes from the data view.
201
+ *
202
+ * @param length - The number of boxes to read.
203
+ * @returns The boxes.
204
+ */
205
+ this.readBoxes = (length) => {
206
+ const result = [];
207
+ for (const box of this) {
208
+ result.push(box);
209
+ if (length > 0 && result.length >= length) {
210
+ break;
211
+ }
212
+ }
213
+ return result;
214
+ };
215
+ /**
216
+ * Reads a number of entries from the data view.
217
+ *
218
+ * @param length - The number of entries to read.
219
+ * @param map - The function to map the entries.
220
+ * @returns The entries.
221
+ */
222
+ this.readEntries = (length, map) => {
223
+ const result = [];
224
+ for (let i = 0; i < length; i++) {
225
+ result.push(map());
226
+ }
227
+ return result;
228
+ };
229
+ this.dataView = (raw instanceof ArrayBuffer) ? new DataView(raw) : (raw instanceof Uint8Array) ? new DataView(raw.buffer, raw.byteOffset, raw.byteLength) : raw;
230
+ this.offset = this.dataView.byteOffset;
231
+ this.config = config || { recursive: false, parsers: {} };
232
+ }
233
+ /**
234
+ * The current byteoffset in the data view.
235
+ */
236
+ get cursor() {
237
+ return this.offset - this.dataView.byteOffset;
238
+ }
239
+ /**
240
+ * Whether the end of the data view has been reached.
241
+ */
242
+ get done() {
243
+ return this.cursor >= this.dataView.byteLength || this.truncated;
244
+ }
245
+ /**
246
+ * The number of bytes remaining in the data view.
247
+ */
248
+ get bytesRemaining() {
249
+ return this.dataView.byteLength - this.cursor;
250
+ }
251
+ /**
252
+ * Iterates over the boxes in the data view.
253
+ *
254
+ * @returns A generator of boxes.
255
+ */
256
+ *[Symbol.iterator]() {
257
+ const { parsers = {}, recursive = false } = this.config;
258
+ while (!this.done) {
259
+ try {
260
+ const { type, data, ...rest } = this.readBox();
261
+ const box = { type, ...rest };
262
+ const parser = parsers[type] || parsers[type.trim()]; // url and urn boxes have a trailing space in their type field
263
+ if (parser) {
264
+ Object.assign(box, parser(data, this.config));
265
+ }
266
+ box.view = data;
267
+ if (CONTAINERS.includes(type)) {
268
+ const boxes = [];
269
+ for (const child of data) {
270
+ if (recursive) {
271
+ yield child;
272
+ }
273
+ boxes.push(child);
274
+ }
275
+ box.boxes = boxes;
276
+ }
277
+ yield box;
278
+ }
279
+ catch (error) {
280
+ break;
281
+ }
282
+ }
283
+ }
284
+ }
285
+ //# sourceMappingURL=IsoView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsoView.js","sourceRoot":"","sources":["../src/IsoView.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ContainerBox } from './boxes/ContainerBox.js';\nimport type { Fields } from './boxes/Fields.js';\nimport type { FullBox } from './boxes/FullBox.js';\nimport type { IsoBmffBox } from './boxes/IsoBmffBox.js';\nimport { CONTAINERS } from './CONTAINERS.js';\nimport { DATA } from './fields/DATA.js';\nimport { INT } from './fields/INT.js';\nimport { STRING } from './fields/STRING.js';\nimport { TEMPLATE } from './fields/TEMPLATE.js';\nimport { UINT } from './fields/UINT.js';\nimport { UTF8 } from './fields/UTF8.js';\nimport type { IsoViewConfig } from './IsoViewConfig.js';\nimport type { IsoFieldTypeMap } from './readers/IsoFieldTypeMap.js';\nimport { readData } from './readers/readData.js';\nimport { readInt } from './readers/readInt.js';\nimport { readString } from './readers/readString.js';\nimport { readTemplate } from './readers/readTemplate.js';\nimport { readTerminatedString } from './readers/readTerminatedString.js';\nimport { readUint } from './readers/readUint.js';\nimport { readUtf8String } from './readers/readUtf8String.js';\nimport { readUtf8TerminatedString } from './readers/readUtf8TerminatedString.js';\n\n/**\n * Raw ISO BMFF data box.\n *\n *\n * @beta\n */\nexport type RawBox = {\n\ttype: string;\n\tsize: number;\n\tlargesize?: number;\n\tusertype?: number[];\n\tdata: IsoView;\n};\n\n/**\n * ISO BMFF data view. Similar to DataView, but with additional methods for reading ISO BMFF data.\n * It implements the iterator protocol, so it can be used in a for...of loop.\n *\n *\n * @beta\n */\nexport class IsoView {\n\tprivate dataView: DataView<ArrayBuffer>;\n\tprivate offset: number;\n\tprivate config: IsoViewConfig;\n\tprivate truncated: boolean = false;\n\n\t/**\n\t * Creates a new IsoView instance. Similar to DataView, but with additional\n\t * methods for reading ISO BMFF data. It implements the iterator protocol,\n\t * so it can be used in a for...of loop.\n\t *\n\t * @param raw - The raw data to view.\n\t * @param config - The configuration for the IsoView.\n\t */\n\tconstructor(raw: ArrayBuffer | DataView<ArrayBuffer> | Uint8Array<ArrayBuffer>, config?: IsoViewConfig) {\n\t\tthis.dataView = (raw instanceof ArrayBuffer) ? new DataView<ArrayBuffer>(raw) : (raw instanceof Uint8Array) ? new DataView<ArrayBuffer>(raw.buffer, raw.byteOffset, raw.byteLength) : raw;\n\t\tthis.offset = this.dataView.byteOffset;\n\t\tthis.config = config || { recursive: false, parsers: {} };\n\t}\n\n\t/**\n\t * The current byteoffset in the data view.\n\t */\n\tget cursor(): number {\n\t\treturn this.offset - this.dataView.byteOffset;\n\t}\n\n\t/**\n\t * Whether the end of the data view has been reached.\n\t */\n\tget done(): boolean {\n\t\treturn this.cursor >= this.dataView.byteLength || this.truncated;\n\t}\n\n\t/**\n\t * The number of bytes remaining in the data view.\n\t */\n\tget bytesRemaining(): number {\n\t\treturn this.dataView.byteLength - this.cursor;\n\t}\n\n\t/**\n\t * Creates a new IsoView instance with a slice of the current data view.\n\t *\n\t * @param size - The size of the slice.\n\t * @returns A new IsoView instance.\n\t */\n\tslice = (size: number): IsoView => {\n\t\tconst dataView = new DataView(this.dataView.buffer, this.offset, size);\n\t\tthis.offset += size;\n\t\treturn new IsoView(dataView, this.config);\n\t};\n\n\tprivate read = <T extends keyof IsoFieldTypeMap>(type: T, size: number = 0): IsoFieldTypeMap[T] => {\n\t\t// TODO: Change all sizes from bits to bytes\n\t\tconst { dataView, offset } = this;\n\n\t\tlet result: any;\n\t\tlet cursor = size;\n\n\t\tswitch (type) {\n\t\t\tcase UINT:\n\t\t\t\tresult = readUint(dataView, offset, size);\n\t\t\t\tbreak;\n\n\t\t\tcase INT:\n\t\t\t\tresult = readInt(dataView, offset, size);\n\t\t\t\tbreak;\n\n\t\t\tcase TEMPLATE:\n\t\t\t\tresult = readTemplate(dataView, offset, size);\n\t\t\t\tbreak;\n\n\t\t\tcase STRING:\n\t\t\t\tif (size === -1) {\n\t\t\t\t\tresult = readTerminatedString(dataView, offset);\n\t\t\t\t\tcursor = result.length + 1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tresult = readString(dataView, offset, size);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase DATA:\n\t\t\t\tresult = readData(dataView, offset, size);\n\t\t\t\tcursor = result.length;\n\t\t\t\tbreak;\n\n\t\t\tcase UTF8:\n\t\t\t\tif (size === -1) {\n\t\t\t\t\tresult = readUtf8TerminatedString(dataView, offset);\n\t\t\t\t\tcursor = result.length + 1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tresult = readUtf8String(dataView, offset);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tdefault:\n\t\t\t\tresult = -1;\n\t\t}\n\n\t\tthis.offset += cursor;\n\n\t\treturn result;\n\t};\n\n\t/**\n\t * Reads a unsigned integer from the data view.\n\t *\n\t * @param size - The size of the integer in bytes.\n\t * @returns The unsigned integer.\n\t */\n\treadUint = (size: number): number => {\n\t\treturn this.read(UINT, size);\n\t};\n\n\t/**\n\t * Reads a signed integer from the data view.\n\t *\n\t * @param size - The size of the integer in bytes.\n\t * @returns The signed integer.\n\t */\n\treadInt = (size: number): number => {\n\t\treturn this.read(INT, size);\n\t};\n\n\t/**\n\t * Reads a string from the data view.\n\t *\n\t * @param size - The size of the string in bytes.\n\t * @returns The string.\n\t */\n\treadString = (size: number): string => {\n\t\treturn this.read(STRING, size);\n\t};\n\n\t/**\n\t * Reads a template from the data view.\n\t *\n\t * @param size - The size of the template in bytes.\n\t * @returns The template.\n\t */\n\treadTemplate = (size: number): number => {\n\t\treturn this.read(TEMPLATE, size);\n\t};\n\n\t/**\n\t * Reads a byte array from the data view.\n\t *\n\t * @param size - The size of the data in bytes.\n\t * @returns The data.\n\t */\n\treadData = (size: number): Uint8Array => {\n\t\treturn this.read(DATA, size);\n\t};\n\n\t/**\n\t * Reads a UTF-8 string from the data view.\n\t *\n\t * @param size - The size of the string in bytes.\n\t * @returns The UTF-8 string.\n\t */\n\treadUtf8 = (size?: number): string => {\n\t\treturn this.read(UTF8, size);\n\t};\n\n\t/**\n\t * Reads a full box from the data view.\n\t *\n\t * @returns The full box.\n\t */\n\treadFullBox = (): Fields<FullBox> => {\n\t\treturn {\n\t\t\tversion: this.readUint(1),\n\t\t\tflags: this.readUint(3),\n\t\t};\n\t};\n\n\t/**\n\t * Reads an array of values from the data view.\n\t *\n\t * @param type - The type of the values.\n\t * @param size - The size of the values in bytes.\n\t * @param length - The number of values to read.\n\t * @returns The array of values.\n\t */\n\treadArray = <T extends keyof IsoFieldTypeMap>(type: T, size: number, length: number): IsoFieldTypeMap[T][] => {\n\t\tconst value = [];\n\n\t\tfor (let i = 0; i < length; i++) {\n\t\t\tvalue.push(this.read(type, size));\n\t\t}\n\n\t\treturn value as IsoFieldTypeMap[T][];\n\t};\n\n\t/**\n\t * Reads a raw box from the data view.\n\t *\n\t * @returns The box.\n\t */\n\treadBox = (): RawBox => {\n\t\tconst { dataView, offset } = this;\n\n\t\t// read box size and type without advancing the cursor in case the box is truncated\n\t\tlet cursor = 0;\n\n\t\tconst box = {\n\t\t\tsize: readUint(dataView, offset, 4),\n\t\t\ttype: readString(dataView, offset + 4, 4),\n\t\t} as RawBox;\n\n\t\tcursor += 8;\n\n\t\tif (box.size === 1) {\n\t\t\tbox.largesize = readUint(dataView, offset + cursor, 8);\n\t\t\tcursor += 8;\n\t\t}\n\n\t\tconst actualSize = box.largesize || box.size;\n\t\tif (this.cursor + actualSize > dataView.byteLength) {\n\t\t\tthis.truncated = true;\n\t\t\tthrow new Error('Truncated box');\n\t\t}\n\n\t\tthis.offset += cursor;\n\t\tif (box.type === 'uuid') {\n\t\t\tbox.usertype = this.readArray('uint', 1, 16);\n\t\t}\n\n\t\tconst viewSize = box.size === 0 ? this.bytesRemaining : actualSize - cursor;\n\t\tbox.data = this.slice(viewSize);\n\n\t\treturn box;\n\t};\n\n\t/**\n\t * Reads a number of boxes from the data view.\n\t *\n\t * @param length - The number of boxes to read.\n\t * @returns The boxes.\n\t */\n\treadBoxes = <T = IsoBmffBox>(length: number): T[] => {\n\t\tconst result: T[] = [];\n\n\t\tfor (const box of this) {\n\t\t\tresult.push(box as T);\n\n\t\t\tif (length > 0 && result.length >= length) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t/**\n\t * Reads a number of entries from the data view.\n\t *\n\t * @param length - The number of entries to read.\n\t * @param map - The function to map the entries.\n\t * @returns The entries.\n\t */\n\treadEntries = <T>(length: number, map: () => T): T[] => {\n\t\tconst result: T[] = [];\n\n\t\tfor (let i = 0; i < length; i++) {\n\t\t\tresult.push(map());\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t/**\n\t * Iterates over the boxes in the data view.\n\t *\n\t * @returns A generator of boxes.\n\t */\n\t*[Symbol.iterator](): Generator<IsoBmffBox> {\n\t\tconst { parsers = {}, recursive = false } = this.config;\n\n\t\twhile (!this.done) {\n\t\t\ttry {\n\t\t\t\tconst { type, data, ...rest } = this.readBox();\n\t\t\t\tconst box = { type, ...rest } as IsoBmffBox;\n\t\t\t\tconst parser = parsers[type] || parsers[type.trim()]; // url and urn boxes have a trailing space in their type field\n\n\t\t\t\tif (parser) {\n\t\t\t\t\tObject.assign(box, parser(data, this.config));\n\t\t\t\t}\n\n\t\t\t\tbox.view = data;\n\n\t\t\t\tif (CONTAINERS.includes(type)) {\n\t\t\t\t\tconst boxes = [];\n\n\t\t\t\t\tfor (const child of data) {\n\t\t\t\t\t\tif (recursive) {\n\t\t\t\t\t\t\tyield child;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tboxes.push(child);\n\t\t\t\t\t}\n\n\t\t\t\t\t(box as ContainerBox<IsoBmffBox>).boxes = boxes;\n\t\t\t\t}\n\n\t\t\t\tyield box;\n\t\t\t}\n\t\t\tcatch (error) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -0,0 +1,18 @@
1
+ import type { BoxParserMap } from './BoxParserMap.js';
2
+ /**
3
+ * ISO View configuration
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type IsoViewConfig = {
9
+ /**
10
+ * A map of box parsers to their box types
11
+ */
12
+ parsers?: BoxParserMap;
13
+ /**
14
+ * Whether to parse boxes recursively
15
+ */
16
+ recursive?: boolean;
17
+ };
18
+ //# sourceMappingURL=IsoViewConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsoViewConfig.d.ts","sourceRoot":"","sources":["../src/IsoViewConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IsoViewConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsoViewConfig.js","sourceRoot":"","sources":["../src/IsoViewConfig.ts"],"names":[],"mappings":"","sourcesContent":["import type { BoxParserMap } from './BoxParserMap.js';\n\n/**\n * ISO View configuration\n *\n *\n * @beta\n */\nexport type IsoViewConfig = {\n\t/**\n\t * A map of box parsers to their box types\n\t */\n\tparsers?: BoxParserMap;\n\n\t/**\n\t * Whether to parse boxes recursively\n\t */\n\trecursive?: boolean;\n};\n"]}
@@ -0,0 +1,12 @@
1
+ import type { FullBox } from './FullBox.js';
2
+ /**
3
+ * ISO/IEC 14496-12:202x - 12.2.8 Audio rendering indication box
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type AudioRenderingIndicationBox = FullBox & {
9
+ type: 'ardi';
10
+ audioRenderingIndication: number;
11
+ };
12
+ //# sourceMappingURL=AudioRenderingIndicationBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AudioRenderingIndicationBox.d.ts","sourceRoot":"","sources":["../../src/boxes/AudioRenderingIndicationBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,GAAG;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,wBAAwB,EAAE,MAAM,CAAC;CACjC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AudioRenderingIndicationBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AudioRenderingIndicationBox.js","sourceRoot":"","sources":["../../src/boxes/AudioRenderingIndicationBox.ts"],"names":[],"mappings":"","sourcesContent":["import type { FullBox } from './FullBox.js';\n\n/**\n * ISO/IEC 14496-12:202x - 12.2.8 Audio rendering indication box\n *\n *\n * @beta\n */\nexport type AudioRenderingIndicationBox = FullBox & {\n\ttype: 'ardi';\n\taudioRenderingIndication: number;\n};\n"]}
@@ -0,0 +1,18 @@
1
+ import type { SampleEntryBox } from './SampleEntryBox.js';
2
+ /**
3
+ * ISO/IEC 14496-12:2012 - 8.5.2.2 mp4a box (use AudioSampleEntry definition and naming)
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type AudioSampleEntryBox<T extends 'mp4a' | 'enca' = 'mp4a' | 'enca'> = SampleEntryBox & {
9
+ type: T;
10
+ reserved2: number[];
11
+ channelcount: number;
12
+ samplesize: number;
13
+ preDefined: number;
14
+ reserved3: number;
15
+ samplerate: number;
16
+ esds: Uint8Array;
17
+ };
18
+ //# sourceMappingURL=AudioSampleEntryBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AudioSampleEntryBox.d.ts","sourceRoot":"","sources":["../../src/boxes/AudioSampleEntryBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,cAAc,GAAG;IAC/F,IAAI,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,UAAU,CAAC;CACjB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AudioSampleEntryBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AudioSampleEntryBox.js","sourceRoot":"","sources":["../../src/boxes/AudioSampleEntryBox.ts"],"names":[],"mappings":"","sourcesContent":["import type { SampleEntryBox } from './SampleEntryBox.js';\n\n/**\n * ISO/IEC 14496-12:2012 - 8.5.2.2 mp4a box (use AudioSampleEntry definition and naming)\n *\n *\n * @beta\n */\nexport type AudioSampleEntryBox<T extends 'mp4a' | 'enca' = 'mp4a' | 'enca'> = SampleEntryBox & {\n\ttype: T;\n\treserved2: number[];\n\tchannelcount: number;\n\tsamplesize: number;\n\tpreDefined: number;\n\treserved3: number;\n\tsamplerate: number;\n\tesds: Uint8Array;\n};\n"]}
@@ -0,0 +1,15 @@
1
+ import type { IsoView } from '../IsoView.js';
2
+ /**
3
+ * Base Box Type
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type Box = {
9
+ type: string;
10
+ size: number;
11
+ view: IsoView;
12
+ largesize?: number;
13
+ usertype?: number[];
14
+ };
15
+ //# sourceMappingURL=Box.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Box.d.ts","sourceRoot":"","sources":["../../src/boxes/Box.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,MAAM,GAAG,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Box.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Box.js","sourceRoot":"","sources":["../../src/boxes/Box.ts"],"names":[],"mappings":"","sourcesContent":["import type { IsoView } from '../IsoView.js';\n\n/**\n * Base Box Type\n *\n *\n * @beta\n */\nexport type Box = {\n\ttype: string;\n\tsize: number;\n\tview: IsoView;\n\tlargesize?: number;\n\tusertype?: number[];\n};\n"]}
@@ -0,0 +1,13 @@
1
+ import type { FullBox } from './FullBox.js';
2
+ /**
3
+ * Chunk Large Offset Box - 'co64'
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type ChunkLargeOffsetBox = FullBox & {
9
+ type: 'co64';
10
+ entryCount: number;
11
+ chunkOffset: number[];
12
+ };
13
+ //# sourceMappingURL=ChunkLargeOffsetBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChunkLargeOffsetBox.d.ts","sourceRoot":"","sources":["../../src/boxes/ChunkLargeOffsetBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ChunkLargeOffsetBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChunkLargeOffsetBox.js","sourceRoot":"","sources":["../../src/boxes/ChunkLargeOffsetBox.ts"],"names":[],"mappings":"","sourcesContent":["import type { FullBox } from './FullBox.js';\n\n/**\n * Chunk Large Offset Box - 'co64'\n *\n *\n * @beta\n */\nexport type ChunkLargeOffsetBox = FullBox & {\n\ttype: 'co64';\n\tentryCount: number;\n\tchunkOffset: number[];\n};\n"]}
@@ -0,0 +1,13 @@
1
+ import type { FullBox } from './FullBox.js';
2
+ /**
3
+ * Chunk Offset Box - 'stco'
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type ChunkOffsetBox = FullBox & {
9
+ type: 'stco';
10
+ entryCount: number;
11
+ chunkOffset: number[];
12
+ };
13
+ //# sourceMappingURL=ChunkOffsetBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChunkOffsetBox.d.ts","sourceRoot":"","sources":["../../src/boxes/ChunkOffsetBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ChunkOffsetBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChunkOffsetBox.js","sourceRoot":"","sources":["../../src/boxes/ChunkOffsetBox.ts"],"names":[],"mappings":"","sourcesContent":["import type { FullBox } from './FullBox.js';\n\n/**\n * Chunk Offset Box - 'stco'\n *\n *\n * @beta\n */\nexport type ChunkOffsetBox = FullBox & {\n\ttype: 'stco';\n\tentryCount: number;\n\tchunkOffset: number[];\n};\n"]}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Composition Time to Sample Entry
3
+ *
4
+ *
5
+ * @beta
6
+ */
7
+ export type CompTimeToSampleEntry = {
8
+ sampleCount: number;
9
+ sampleOffset: number;
10
+ };
11
+ //# sourceMappingURL=CompTimeToSampleEntry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompTimeToSampleEntry.d.ts","sourceRoot":"","sources":["../../src/boxes/CompTimeToSampleEntry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CompTimeToSampleEntry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompTimeToSampleEntry.js","sourceRoot":"","sources":["../../src/boxes/CompTimeToSampleEntry.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Composition Time to Sample Entry\n *\n *\n * @beta\n */\nexport type CompTimeToSampleEntry = {\n\tsampleCount: number;\n\tsampleOffset: number;\n};\n"]}
@@ -0,0 +1,14 @@
1
+ import type { FullBox } from './FullBox.js';
2
+ /**
3
+ * Compact Sample Size Box - 'stz2'
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type CompactSampleSizeBox = FullBox & {
9
+ type: 'stz2';
10
+ fieldSize: number;
11
+ sampleCount: number;
12
+ entrySize: number[];
13
+ };
14
+ //# sourceMappingURL=CompactSampleSizeBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompactSampleSizeBox.d.ts","sourceRoot":"","sources":["../../src/boxes/CompactSampleSizeBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CompactSampleSizeBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompactSampleSizeBox.js","sourceRoot":"","sources":["../../src/boxes/CompactSampleSizeBox.ts"],"names":[],"mappings":"","sourcesContent":["import type { FullBox } from './FullBox.js';\n\n/**\n * Compact Sample Size Box - 'stz2'\n *\n *\n * @beta\n */\nexport type CompactSampleSizeBox = FullBox & {\n\ttype: 'stz2';\n\tfieldSize: number;\n\tsampleCount: number;\n\tentrySize: number[];\n};\n"]}
@@ -0,0 +1,14 @@
1
+ import type { CompositionTimeToSampleEntry } from './CompositionTimeToSampleEntry.js';
2
+ import type { FullBox } from './FullBox.js';
3
+ /**
4
+ * ISO/IEC 14496-12:2012 - 8.6.1.3 Composition Time To Sample Box
5
+ *
6
+ *
7
+ * @beta
8
+ */
9
+ export type CompositionTimeToSampleBox = FullBox & {
10
+ type: 'ctts';
11
+ entryCount: number;
12
+ entries: CompositionTimeToSampleEntry[];
13
+ };
14
+ //# sourceMappingURL=CompositionTimeToSampleBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositionTimeToSampleBox.d.ts","sourceRoot":"","sources":["../../src/boxes/CompositionTimeToSampleBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,MAAM,0BAA0B,GAAG,OAAO,GAAG;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,4BAA4B,EAAE,CAAC;CACxC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CompositionTimeToSampleBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositionTimeToSampleBox.js","sourceRoot":"","sources":["../../src/boxes/CompositionTimeToSampleBox.ts"],"names":[],"mappings":"","sourcesContent":["import type { CompositionTimeToSampleEntry } from './CompositionTimeToSampleEntry.js';\nimport type { FullBox } from './FullBox.js';\n\n/**\n * ISO/IEC 14496-12:2012 - 8.6.1.3 Composition Time To Sample Box\n *\n *\n * @beta\n */\nexport type CompositionTimeToSampleBox = FullBox & {\n\ttype: 'ctts';\n\tentryCount: number;\n\tentries: CompositionTimeToSampleEntry[];\n};\n"]}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * A Composition Time To Sample Entry
3
+ *
4
+ *
5
+ * @beta
6
+ */
7
+ export type CompositionTimeToSampleEntry = {
8
+ sampleCount: number;
9
+ sampleOffset: number;
10
+ };
11
+ //# sourceMappingURL=CompositionTimeToSampleEntry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositionTimeToSampleEntry.d.ts","sourceRoot":"","sources":["../../src/boxes/CompositionTimeToSampleEntry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,4BAA4B,GAAG;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CompositionTimeToSampleEntry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositionTimeToSampleEntry.js","sourceRoot":"","sources":["../../src/boxes/CompositionTimeToSampleEntry.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * A Composition Time To Sample Entry\n *\n *\n * @beta\n */\nexport type CompositionTimeToSampleEntry = {\n\tsampleCount: number;\n\tsampleOffset: number;\n};\n"]}
@@ -0,0 +1,11 @@
1
+ import type { Box } from './Box.js';
2
+ /**
3
+ * Container Box
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type ContainerBox<T> = Box & {
9
+ boxes: Array<T>;
10
+ };
11
+ //# sourceMappingURL=ContainerBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContainerBox.d.ts","sourceRoot":"","sources":["../../src/boxes/ContainerBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAEpC;;;;;GAKG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,GAAG,GAAG;IACnC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;CAChB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ContainerBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContainerBox.js","sourceRoot":"","sources":["../../src/boxes/ContainerBox.ts"],"names":[],"mappings":"","sourcesContent":["import type { Box } from './Box.js';\n\n/**\n * Container Box\n *\n *\n * @beta\n */\nexport type ContainerBox<T> = Box & {\n\tboxes: Array<T>;\n};\n"]}
@@ -0,0 +1,12 @@
1
+ import type { FullBox } from './FullBox.js';
2
+ /**
3
+ * Data Entry Url Box - 'url '
4
+ *
5
+ *
6
+ * @beta
7
+ */
8
+ export type DataEntryUrlBox = FullBox & {
9
+ type: 'url ';
10
+ location?: string;
11
+ };
12
+ //# sourceMappingURL=DataEntryUrlBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataEntryUrlBox.d.ts","sourceRoot":"","sources":["../../src/boxes/DataEntryUrlBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC"}