@libmedia/avutil 0.2.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 (451) hide show
  1. package/COPYING.LGPLv3 +165 -0
  2. package/README.md +13 -0
  3. package/dist/cjs/AVStream.d.ts +163 -0
  4. package/dist/cjs/AVStream.js +36 -0
  5. package/dist/cjs/AVStream.js.map +1 -0
  6. package/dist/cjs/audiosamplefmt.d.ts +225 -0
  7. package/dist/cjs/audiosamplefmt.js +6 -0
  8. package/dist/cjs/audiosamplefmt.js.map +1 -0
  9. package/dist/cjs/avformat.d.ts +51 -0
  10. package/dist/cjs/avformat.js +6 -0
  11. package/dist/cjs/avformat.js.map +1 -0
  12. package/dist/cjs/codec.d.ts +863 -0
  13. package/dist/cjs/codec.js +6 -0
  14. package/dist/cjs/codec.js.map +1 -0
  15. package/dist/cjs/codecs/aac.d.ts +115 -0
  16. package/dist/cjs/codecs/aac.js +131 -0
  17. package/dist/cjs/codecs/aac.js.map +1 -0
  18. package/dist/cjs/codecs/ac3.d.ts +73 -0
  19. package/dist/cjs/codecs/ac3.js +73 -0
  20. package/dist/cjs/codecs/ac3.js.map +1 -0
  21. package/dist/cjs/codecs/av1.d.ts +72 -0
  22. package/dist/cjs/codecs/av1.js +238 -0
  23. package/dist/cjs/codecs/av1.js.map +1 -0
  24. package/dist/cjs/codecs/dts.d.ts +17 -0
  25. package/dist/cjs/codecs/dts.js +40 -0
  26. package/dist/cjs/codecs/dts.js.map +1 -0
  27. package/dist/cjs/codecs/flac.d.ts +16 -0
  28. package/dist/cjs/codecs/flac.js +6 -0
  29. package/dist/cjs/codecs/flac.js.map +1 -0
  30. package/dist/cjs/codecs/h264.d.ts +137 -0
  31. package/dist/cjs/codecs/h264.js +374 -0
  32. package/dist/cjs/codecs/h264.js.map +1 -0
  33. package/dist/cjs/codecs/hevc.d.ts +163 -0
  34. package/dist/cjs/codecs/hevc.js +431 -0
  35. package/dist/cjs/codecs/hevc.js.map +1 -0
  36. package/dist/cjs/codecs/mp3.d.ts +13 -0
  37. package/dist/cjs/codecs/mp3.js +94 -0
  38. package/dist/cjs/codecs/mp3.js.map +1 -0
  39. package/dist/cjs/codecs/mpeg4.d.ts +7 -0
  40. package/dist/cjs/codecs/mpeg4.js +10 -0
  41. package/dist/cjs/codecs/mpeg4.js.map +1 -0
  42. package/dist/cjs/codecs/mpegvideo.d.ts +7 -0
  43. package/dist/cjs/codecs/mpegvideo.js +14 -0
  44. package/dist/cjs/codecs/mpegvideo.js.map +1 -0
  45. package/dist/cjs/codecs/opus.d.ts +23 -0
  46. package/dist/cjs/codecs/opus.js +53 -0
  47. package/dist/cjs/codecs/opus.js.map +1 -0
  48. package/dist/cjs/codecs/vp8.d.ts +27 -0
  49. package/dist/cjs/codecs/vp8.js +37 -0
  50. package/dist/cjs/codecs/vp8.js.map +1 -0
  51. package/dist/cjs/codecs/vp9.d.ts +42 -0
  52. package/dist/cjs/codecs/vp9.js +130 -0
  53. package/dist/cjs/codecs/vp9.js.map +1 -0
  54. package/dist/cjs/codecs/vvc.d.ts +178 -0
  55. package/dist/cjs/codecs/vvc.js +376 -0
  56. package/dist/cjs/codecs/vvc.js.map +1 -0
  57. package/dist/cjs/constant.d.ts +28 -0
  58. package/dist/cjs/constant.js +23 -0
  59. package/dist/cjs/constant.js.map +1 -0
  60. package/dist/cjs/error.d.ts +9 -0
  61. package/dist/cjs/error.js +9 -0
  62. package/dist/cjs/error.js.map +1 -0
  63. package/dist/cjs/function/analyzeAVFormat.d.ts +3 -0
  64. package/dist/cjs/function/analyzeAVFormat.js +34 -0
  65. package/dist/cjs/function/analyzeAVFormat.js.map +1 -0
  66. package/dist/cjs/function/analyzeUrlIOLoader.d.ts +7 -0
  67. package/dist/cjs/function/analyzeUrlIOLoader.js +89 -0
  68. package/dist/cjs/function/analyzeUrlIOLoader.js.map +1 -0
  69. package/dist/cjs/function/audioData2AVFrame.d.ts +2 -0
  70. package/dist/cjs/function/audioData2AVFrame.js +48 -0
  71. package/dist/cjs/function/audioData2AVFrame.js.map +1 -0
  72. package/dist/cjs/function/avframe2AudioData.d.ts +3 -0
  73. package/dist/cjs/function/avframe2AudioData.js +100 -0
  74. package/dist/cjs/function/avframe2AudioData.js.map +1 -0
  75. package/dist/cjs/function/avframe2VideoFrame.d.ts +6 -0
  76. package/dist/cjs/function/avframe2VideoFrame.js +114 -0
  77. package/dist/cjs/function/avframe2VideoFrame.js.map +1 -0
  78. package/dist/cjs/function/avpacket2EncodedAudioChunk.d.ts +2 -0
  79. package/dist/cjs/function/avpacket2EncodedAudioChunk.js +15 -0
  80. package/dist/cjs/function/avpacket2EncodedAudioChunk.js.map +1 -0
  81. package/dist/cjs/function/avpacket2EncodedVideoChunk.d.ts +2 -0
  82. package/dist/cjs/function/avpacket2EncodedVideoChunk.js +15 -0
  83. package/dist/cjs/function/avpacket2EncodedVideoChunk.js.map +1 -0
  84. package/dist/cjs/function/compileResource.d.ts +2 -0
  85. package/dist/cjs/function/compileResource.js +47 -0
  86. package/dist/cjs/function/compileResource.js.map +1 -0
  87. package/dist/cjs/function/encodedAudioChunk2AVPacket.d.ts +2 -0
  88. package/dist/cjs/function/encodedAudioChunk2AVPacket.js +23 -0
  89. package/dist/cjs/function/encodedAudioChunk2AVPacket.js.map +1 -0
  90. package/dist/cjs/function/encodedVideoChunk2AVPacket.d.ts +7 -0
  91. package/dist/cjs/function/encodedVideoChunk2AVPacket.js +30 -0
  92. package/dist/cjs/function/encodedVideoChunk2AVPacket.js.map +1 -0
  93. package/dist/cjs/function/getAudioCodec.d.ts +2 -0
  94. package/dist/cjs/function/getAudioCodec.js +13 -0
  95. package/dist/cjs/function/getAudioCodec.js.map +1 -0
  96. package/dist/cjs/function/getHardwarePreference.d.ts +1 -0
  97. package/dist/cjs/function/getHardwarePreference.js +16 -0
  98. package/dist/cjs/function/getHardwarePreference.js.map +1 -0
  99. package/dist/cjs/function/getVideoCodec.d.ts +2 -0
  100. package/dist/cjs/function/getVideoCodec.js +76 -0
  101. package/dist/cjs/function/getVideoCodec.js.map +1 -0
  102. package/dist/cjs/function/hasAlphaChannel.d.ts +2 -0
  103. package/dist/cjs/function/hasAlphaChannel.js +12 -0
  104. package/dist/cjs/function/hasAlphaChannel.js.map +1 -0
  105. package/dist/cjs/function/isHdr.d.ts +2 -0
  106. package/dist/cjs/function/isHdr.js +13 -0
  107. package/dist/cjs/function/isHdr.js.map +1 -0
  108. package/dist/cjs/function/videoFrame2AVFrame.d.ts +7 -0
  109. package/dist/cjs/function/videoFrame2AVFrame.js +111 -0
  110. package/dist/cjs/function/videoFrame2AVFrame.js.map +1 -0
  111. package/dist/cjs/implement/AVFramePoolImpl.d.ts +10 -0
  112. package/dist/cjs/implement/AVFramePoolImpl.js +54 -0
  113. package/dist/cjs/implement/AVFramePoolImpl.js.map +1 -0
  114. package/dist/cjs/implement/AVPCMBufferPoolImpl.d.ts +10 -0
  115. package/dist/cjs/implement/AVPCMBufferPoolImpl.js +52 -0
  116. package/dist/cjs/implement/AVPCMBufferPoolImpl.js.map +1 -0
  117. package/dist/cjs/implement/AVPacketPoolImpl.d.ts +10 -0
  118. package/dist/cjs/implement/AVPacketPoolImpl.js +54 -0
  119. package/dist/cjs/implement/AVPacketPoolImpl.js.map +1 -0
  120. package/dist/cjs/pixelFormatDescriptor.d.ts +100 -0
  121. package/dist/cjs/pixelFormatDescriptor.js +1075 -0
  122. package/dist/cjs/pixelFormatDescriptor.js.map +1 -0
  123. package/dist/cjs/pixfmt.d.ts +1294 -0
  124. package/dist/cjs/pixfmt.js +6 -0
  125. package/dist/cjs/pixfmt.js.map +1 -0
  126. package/dist/cjs/sampleFormatDescriptor.d.ts +6 -0
  127. package/dist/cjs/sampleFormatDescriptor.js +55 -0
  128. package/dist/cjs/sampleFormatDescriptor.js.map +1 -0
  129. package/dist/cjs/stringEnum.d.ts +105 -0
  130. package/dist/cjs/stringEnum.js +219 -0
  131. package/dist/cjs/stringEnum.js.map +1 -0
  132. package/dist/cjs/struct/audiosample.d.ts +64 -0
  133. package/dist/cjs/struct/audiosample.js +134 -0
  134. package/dist/cjs/struct/audiosample.js.map +1 -0
  135. package/dist/cjs/struct/avbuffer.d.ts +85 -0
  136. package/dist/cjs/struct/avbuffer.js +319 -0
  137. package/dist/cjs/struct/avbuffer.js.map +1 -0
  138. package/dist/cjs/struct/avcodecparameters.d.ts +163 -0
  139. package/dist/cjs/struct/avcodecparameters.js +380 -0
  140. package/dist/cjs/struct/avcodecparameters.js.map +1 -0
  141. package/dist/cjs/struct/avdict.d.ts +17 -0
  142. package/dist/cjs/struct/avdict.js +74 -0
  143. package/dist/cjs/struct/avdict.js.map +1 -0
  144. package/dist/cjs/struct/avframe.d.ts +559 -0
  145. package/dist/cjs/struct/avframe.js +720 -0
  146. package/dist/cjs/struct/avframe.js.map +1 -0
  147. package/dist/cjs/struct/avpacket.d.ts +125 -0
  148. package/dist/cjs/struct/avpacket.js +286 -0
  149. package/dist/cjs/struct/avpacket.js.map +1 -0
  150. package/dist/cjs/struct/avpcmbuffer.d.ts +44 -0
  151. package/dist/cjs/struct/avpcmbuffer.js +128 -0
  152. package/dist/cjs/struct/avpcmbuffer.js.map +1 -0
  153. package/dist/cjs/struct/avsubtitle.d.ts +30 -0
  154. package/dist/cjs/struct/avsubtitle.js +6 -0
  155. package/dist/cjs/struct/avsubtitle.js.map +1 -0
  156. package/dist/cjs/struct/rational.d.ts +15 -0
  157. package/dist/cjs/struct/rational.js +43 -0
  158. package/dist/cjs/struct/rational.js.map +1 -0
  159. package/dist/cjs/util/amf.d.ts +10 -0
  160. package/dist/cjs/util/amf.js +109 -0
  161. package/dist/cjs/util/amf.js.map +1 -0
  162. package/dist/cjs/util/av1syntax.d.ts +9 -0
  163. package/dist/cjs/util/av1syntax.js +53 -0
  164. package/dist/cjs/util/av1syntax.js.map +1 -0
  165. package/dist/cjs/util/avbuffer.d.ts +17 -0
  166. package/dist/cjs/util/avbuffer.js +147 -0
  167. package/dist/cjs/util/avbuffer.js.map +1 -0
  168. package/dist/cjs/util/avdict.d.ts +8 -0
  169. package/dist/cjs/util/avdict.js +69 -0
  170. package/dist/cjs/util/avdict.js.map +1 -0
  171. package/dist/cjs/util/avframe.d.ts +14 -0
  172. package/dist/cjs/util/avframe.js +233 -0
  173. package/dist/cjs/util/avframe.js.map +1 -0
  174. package/dist/cjs/util/avpacket.d.ts +22 -0
  175. package/dist/cjs/util/avpacket.js +171 -0
  176. package/dist/cjs/util/avpacket.js.map +1 -0
  177. package/dist/cjs/util/channel.d.ts +4 -0
  178. package/dist/cjs/util/channel.js +43 -0
  179. package/dist/cjs/util/channel.js.map +1 -0
  180. package/dist/cjs/util/codecparameters.d.ts +4 -0
  181. package/dist/cjs/util/codecparameters.js +69 -0
  182. package/dist/cjs/util/codecparameters.js.map +1 -0
  183. package/dist/cjs/util/common.d.ts +3 -0
  184. package/dist/cjs/util/common.js +16 -0
  185. package/dist/cjs/util/common.js.map +1 -0
  186. package/dist/cjs/util/crypto.d.ts +1 -0
  187. package/dist/cjs/util/crypto.js +8 -0
  188. package/dist/cjs/util/crypto.js.map +1 -0
  189. package/dist/cjs/util/expgolomb.d.ts +26 -0
  190. package/dist/cjs/util/expgolomb.js +35 -0
  191. package/dist/cjs/util/expgolomb.js.map +1 -0
  192. package/dist/cjs/util/intread.d.ts +9 -0
  193. package/dist/cjs/util/intread.js +36 -0
  194. package/dist/cjs/util/intread.js.map +1 -0
  195. package/dist/cjs/util/intwrite.d.ts +9 -0
  196. package/dist/cjs/util/intwrite.js +36 -0
  197. package/dist/cjs/util/intwrite.js.map +1 -0
  198. package/dist/cjs/util/mem.d.ts +5 -0
  199. package/dist/cjs/util/mem.js +48 -0
  200. package/dist/cjs/util/mem.js.map +1 -0
  201. package/dist/cjs/util/nalu.d.ts +12 -0
  202. package/dist/cjs/util/nalu.js +130 -0
  203. package/dist/cjs/util/nalu.js.map +1 -0
  204. package/dist/cjs/util/ntp.d.ts +1 -0
  205. package/dist/cjs/util/ntp.js +9 -0
  206. package/dist/cjs/util/ntp.js.map +1 -0
  207. package/dist/cjs/util/pcm.d.ts +4 -0
  208. package/dist/cjs/util/pcm.js +141 -0
  209. package/dist/cjs/util/pcm.js.map +1 -0
  210. package/dist/cjs/util/pixel.d.ts +11 -0
  211. package/dist/cjs/util/pixel.js +197 -0
  212. package/dist/cjs/util/pixel.js.map +1 -0
  213. package/dist/cjs/util/rational.d.ts +41 -0
  214. package/dist/cjs/util/rational.js +33 -0
  215. package/dist/cjs/util/rational.js.map +1 -0
  216. package/dist/cjs/util/sample.d.ts +7 -0
  217. package/dist/cjs/util/sample.js +46 -0
  218. package/dist/cjs/util/sample.js.map +1 -0
  219. package/dist/cjs/util/serialize.d.ts +64 -0
  220. package/dist/cjs/util/serialize.js +143 -0
  221. package/dist/cjs/util/serialize.js.map +1 -0
  222. package/dist/esm/AVStream.d.ts +163 -0
  223. package/dist/esm/AVStream.js +34 -0
  224. package/dist/esm/AVStream.js.map +1 -0
  225. package/dist/esm/audiosamplefmt.d.ts +225 -0
  226. package/dist/esm/audiosamplefmt.js +2 -0
  227. package/dist/esm/audiosamplefmt.js.map +1 -0
  228. package/dist/esm/avformat.d.ts +51 -0
  229. package/dist/esm/avformat.js +2 -0
  230. package/dist/esm/avformat.js.map +1 -0
  231. package/dist/esm/codec.d.ts +863 -0
  232. package/dist/esm/codec.js +2 -0
  233. package/dist/esm/codec.js.map +1 -0
  234. package/dist/esm/codecs/aac.d.ts +115 -0
  235. package/dist/esm/codecs/aac.js +132 -0
  236. package/dist/esm/codecs/aac.js.map +1 -0
  237. package/dist/esm/codecs/ac3.d.ts +73 -0
  238. package/dist/esm/codecs/ac3.js +63 -0
  239. package/dist/esm/codecs/ac3.js.map +1 -0
  240. package/dist/esm/codecs/av1.d.ts +72 -0
  241. package/dist/esm/codecs/av1.js +218 -0
  242. package/dist/esm/codecs/av1.js.map +1 -0
  243. package/dist/esm/codecs/dts.d.ts +17 -0
  244. package/dist/esm/codecs/dts.js +34 -0
  245. package/dist/esm/codecs/dts.js.map +1 -0
  246. package/dist/esm/codecs/flac.d.ts +16 -0
  247. package/dist/esm/codecs/flac.js +2 -0
  248. package/dist/esm/codecs/flac.js.map +1 -0
  249. package/dist/esm/codecs/h264.d.ts +137 -0
  250. package/dist/esm/codecs/h264.js +373 -0
  251. package/dist/esm/codecs/h264.js.map +1 -0
  252. package/dist/esm/codecs/hevc.d.ts +163 -0
  253. package/dist/esm/codecs/hevc.js +427 -0
  254. package/dist/esm/codecs/hevc.js.map +1 -0
  255. package/dist/esm/codecs/mp3.d.ts +13 -0
  256. package/dist/esm/codecs/mp3.js +95 -0
  257. package/dist/esm/codecs/mp3.js.map +1 -0
  258. package/dist/esm/codecs/mpeg4.d.ts +7 -0
  259. package/dist/esm/codecs/mpeg4.js +6 -0
  260. package/dist/esm/codecs/mpeg4.js.map +1 -0
  261. package/dist/esm/codecs/mpegvideo.d.ts +7 -0
  262. package/dist/esm/codecs/mpegvideo.js +10 -0
  263. package/dist/esm/codecs/mpegvideo.js.map +1 -0
  264. package/dist/esm/codecs/opus.d.ts +23 -0
  265. package/dist/esm/codecs/opus.js +49 -0
  266. package/dist/esm/codecs/opus.js.map +1 -0
  267. package/dist/esm/codecs/vp8.d.ts +27 -0
  268. package/dist/esm/codecs/vp8.js +30 -0
  269. package/dist/esm/codecs/vp8.js.map +1 -0
  270. package/dist/esm/codecs/vp9.d.ts +42 -0
  271. package/dist/esm/codecs/vp9.js +136 -0
  272. package/dist/esm/codecs/vp9.js.map +1 -0
  273. package/dist/esm/codecs/vvc.d.ts +178 -0
  274. package/dist/esm/codecs/vvc.js +369 -0
  275. package/dist/esm/codecs/vvc.js.map +1 -0
  276. package/dist/esm/constant.d.ts +28 -0
  277. package/dist/esm/constant.js +47 -0
  278. package/dist/esm/constant.js.map +1 -0
  279. package/dist/esm/error.d.ts +9 -0
  280. package/dist/esm/error.js +18 -0
  281. package/dist/esm/error.js.map +1 -0
  282. package/dist/esm/function/analyzeAVFormat.d.ts +3 -0
  283. package/dist/esm/function/analyzeAVFormat.js +30 -0
  284. package/dist/esm/function/analyzeAVFormat.js.map +1 -0
  285. package/dist/esm/function/analyzeUrlIOLoader.d.ts +7 -0
  286. package/dist/esm/function/analyzeUrlIOLoader.js +63 -0
  287. package/dist/esm/function/analyzeUrlIOLoader.js.map +1 -0
  288. package/dist/esm/function/audioData2AVFrame.d.ts +2 -0
  289. package/dist/esm/function/audioData2AVFrame.js +51 -0
  290. package/dist/esm/function/audioData2AVFrame.js.map +1 -0
  291. package/dist/esm/function/avframe2AudioData.d.ts +3 -0
  292. package/dist/esm/function/avframe2AudioData.js +104 -0
  293. package/dist/esm/function/avframe2AudioData.js.map +1 -0
  294. package/dist/esm/function/avframe2VideoFrame.d.ts +6 -0
  295. package/dist/esm/function/avframe2VideoFrame.js +117 -0
  296. package/dist/esm/function/avframe2VideoFrame.js.map +1 -0
  297. package/dist/esm/function/avpacket2EncodedAudioChunk.d.ts +2 -0
  298. package/dist/esm/function/avpacket2EncodedAudioChunk.js +13 -0
  299. package/dist/esm/function/avpacket2EncodedAudioChunk.js.map +1 -0
  300. package/dist/esm/function/avpacket2EncodedVideoChunk.d.ts +2 -0
  301. package/dist/esm/function/avpacket2EncodedVideoChunk.js +13 -0
  302. package/dist/esm/function/avpacket2EncodedVideoChunk.js.map +1 -0
  303. package/dist/esm/function/compileResource.d.ts +2 -0
  304. package/dist/esm/function/compileResource.js +17 -0
  305. package/dist/esm/function/compileResource.js.map +1 -0
  306. package/dist/esm/function/encodedAudioChunk2AVPacket.d.ts +2 -0
  307. package/dist/esm/function/encodedAudioChunk2AVPacket.js +28 -0
  308. package/dist/esm/function/encodedAudioChunk2AVPacket.js.map +1 -0
  309. package/dist/esm/function/encodedVideoChunk2AVPacket.d.ts +7 -0
  310. package/dist/esm/function/encodedVideoChunk2AVPacket.js +35 -0
  311. package/dist/esm/function/encodedVideoChunk2AVPacket.js.map +1 -0
  312. package/dist/esm/function/getAudioCodec.d.ts +2 -0
  313. package/dist/esm/function/getAudioCodec.js +10 -0
  314. package/dist/esm/function/getAudioCodec.js.map +1 -0
  315. package/dist/esm/function/getHardwarePreference.d.ts +1 -0
  316. package/dist/esm/function/getHardwarePreference.js +6 -0
  317. package/dist/esm/function/getHardwarePreference.js.map +1 -0
  318. package/dist/esm/function/getVideoCodec.d.ts +2 -0
  319. package/dist/esm/function/getVideoCodec.js +64 -0
  320. package/dist/esm/function/getVideoCodec.js.map +1 -0
  321. package/dist/esm/function/hasAlphaChannel.d.ts +2 -0
  322. package/dist/esm/function/hasAlphaChannel.js +10 -0
  323. package/dist/esm/function/hasAlphaChannel.js.map +1 -0
  324. package/dist/esm/function/isHdr.d.ts +2 -0
  325. package/dist/esm/function/isHdr.js +10 -0
  326. package/dist/esm/function/isHdr.js.map +1 -0
  327. package/dist/esm/function/videoFrame2AVFrame.d.ts +7 -0
  328. package/dist/esm/function/videoFrame2AVFrame.js +111 -0
  329. package/dist/esm/function/videoFrame2AVFrame.js.map +1 -0
  330. package/dist/esm/implement/AVFramePoolImpl.d.ts +10 -0
  331. package/dist/esm/implement/AVFramePoolImpl.js +32 -0
  332. package/dist/esm/implement/AVFramePoolImpl.js.map +1 -0
  333. package/dist/esm/implement/AVPCMBufferPoolImpl.d.ts +10 -0
  334. package/dist/esm/implement/AVPCMBufferPoolImpl.js +28 -0
  335. package/dist/esm/implement/AVPCMBufferPoolImpl.js.map +1 -0
  336. package/dist/esm/implement/AVPacketPoolImpl.d.ts +10 -0
  337. package/dist/esm/implement/AVPacketPoolImpl.js +32 -0
  338. package/dist/esm/implement/AVPacketPoolImpl.js.map +1 -0
  339. package/dist/esm/pixelFormatDescriptor.d.ts +100 -0
  340. package/dist/esm/pixelFormatDescriptor.js +1071 -0
  341. package/dist/esm/pixelFormatDescriptor.js.map +1 -0
  342. package/dist/esm/pixfmt.d.ts +1294 -0
  343. package/dist/esm/pixfmt.js +2 -0
  344. package/dist/esm/pixfmt.js.map +1 -0
  345. package/dist/esm/sampleFormatDescriptor.d.ts +6 -0
  346. package/dist/esm/sampleFormatDescriptor.js +51 -0
  347. package/dist/esm/sampleFormatDescriptor.js.map +1 -0
  348. package/dist/esm/stringEnum.d.ts +105 -0
  349. package/dist/esm/stringEnum.js +242 -0
  350. package/dist/esm/stringEnum.js.map +1 -0
  351. package/dist/esm/struct/audiosample.d.ts +64 -0
  352. package/dist/esm/struct/audiosample.js +123 -0
  353. package/dist/esm/struct/audiosample.js.map +1 -0
  354. package/dist/esm/struct/avbuffer.d.ts +85 -0
  355. package/dist/esm/struct/avbuffer.js +309 -0
  356. package/dist/esm/struct/avbuffer.js.map +1 -0
  357. package/dist/esm/struct/avcodecparameters.d.ts +163 -0
  358. package/dist/esm/struct/avcodecparameters.js +387 -0
  359. package/dist/esm/struct/avcodecparameters.js.map +1 -0
  360. package/dist/esm/struct/avdict.d.ts +17 -0
  361. package/dist/esm/struct/avdict.js +65 -0
  362. package/dist/esm/struct/avdict.js.map +1 -0
  363. package/dist/esm/struct/avframe.d.ts +559 -0
  364. package/dist/esm/struct/avframe.js +723 -0
  365. package/dist/esm/struct/avframe.js.map +1 -0
  366. package/dist/esm/struct/avpacket.d.ts +125 -0
  367. package/dist/esm/struct/avpacket.js +281 -0
  368. package/dist/esm/struct/avpacket.js.map +1 -0
  369. package/dist/esm/struct/avpcmbuffer.d.ts +44 -0
  370. package/dist/esm/struct/avpcmbuffer.js +120 -0
  371. package/dist/esm/struct/avpcmbuffer.js.map +1 -0
  372. package/dist/esm/struct/avsubtitle.d.ts +30 -0
  373. package/dist/esm/struct/avsubtitle.js +2 -0
  374. package/dist/esm/struct/avsubtitle.js.map +1 -0
  375. package/dist/esm/struct/rational.d.ts +15 -0
  376. package/dist/esm/struct/rational.js +37 -0
  377. package/dist/esm/struct/rational.js.map +1 -0
  378. package/dist/esm/util/amf.d.ts +10 -0
  379. package/dist/esm/util/amf.js +84 -0
  380. package/dist/esm/util/amf.js.map +1 -0
  381. package/dist/esm/util/av1syntax.d.ts +9 -0
  382. package/dist/esm/util/av1syntax.js +54 -0
  383. package/dist/esm/util/av1syntax.js.map +1 -0
  384. package/dist/esm/util/avbuffer.d.ts +17 -0
  385. package/dist/esm/util/avbuffer.js +138 -0
  386. package/dist/esm/util/avbuffer.js.map +1 -0
  387. package/dist/esm/util/avdict.d.ts +8 -0
  388. package/dist/esm/util/avdict.js +77 -0
  389. package/dist/esm/util/avdict.js.map +1 -0
  390. package/dist/esm/util/avframe.d.ts +14 -0
  391. package/dist/esm/util/avframe.js +218 -0
  392. package/dist/esm/util/avframe.js.map +1 -0
  393. package/dist/esm/util/avpacket.d.ts +22 -0
  394. package/dist/esm/util/avpacket.js +161 -0
  395. package/dist/esm/util/avpacket.js.map +1 -0
  396. package/dist/esm/util/channel.d.ts +4 -0
  397. package/dist/esm/util/channel.js +25 -0
  398. package/dist/esm/util/channel.js.map +1 -0
  399. package/dist/esm/util/codecparameters.d.ts +4 -0
  400. package/dist/esm/util/codecparameters.js +73 -0
  401. package/dist/esm/util/codecparameters.js.map +1 -0
  402. package/dist/esm/util/common.d.ts +3 -0
  403. package/dist/esm/util/common.js +14 -0
  404. package/dist/esm/util/common.js.map +1 -0
  405. package/dist/esm/util/crypto.d.ts +1 -0
  406. package/dist/esm/util/crypto.js +4 -0
  407. package/dist/esm/util/crypto.js.map +1 -0
  408. package/dist/esm/util/expgolomb.d.ts +26 -0
  409. package/dist/esm/util/expgolomb.js +36 -0
  410. package/dist/esm/util/expgolomb.js.map +1 -0
  411. package/dist/esm/util/intread.d.ts +9 -0
  412. package/dist/esm/util/intread.js +38 -0
  413. package/dist/esm/util/intread.js.map +1 -0
  414. package/dist/esm/util/intwrite.d.ts +9 -0
  415. package/dist/esm/util/intwrite.js +38 -0
  416. package/dist/esm/util/intwrite.js.map +1 -0
  417. package/dist/esm/util/mem.d.ts +5 -0
  418. package/dist/esm/util/mem.js +34 -0
  419. package/dist/esm/util/mem.js.map +1 -0
  420. package/dist/esm/util/nalu.d.ts +12 -0
  421. package/dist/esm/util/nalu.js +113 -0
  422. package/dist/esm/util/nalu.js.map +1 -0
  423. package/dist/esm/util/ntp.d.ts +1 -0
  424. package/dist/esm/util/ntp.js +5 -0
  425. package/dist/esm/util/ntp.js.map +1 -0
  426. package/dist/esm/util/pcm.d.ts +4 -0
  427. package/dist/esm/util/pcm.js +139 -0
  428. package/dist/esm/util/pcm.js.map +1 -0
  429. package/dist/esm/util/pixel.d.ts +11 -0
  430. package/dist/esm/util/pixel.js +180 -0
  431. package/dist/esm/util/pixel.js.map +1 -0
  432. package/dist/esm/util/rational.d.ts +41 -0
  433. package/dist/esm/util/rational.js +33 -0
  434. package/dist/esm/util/rational.js.map +1 -0
  435. package/dist/esm/util/sample.d.ts +7 -0
  436. package/dist/esm/util/sample.js +48 -0
  437. package/dist/esm/util/sample.js.map +1 -0
  438. package/dist/esm/util/serialize.d.ts +64 -0
  439. package/dist/esm/util/serialize.js +136 -0
  440. package/dist/esm/util/serialize.js.map +1 -0
  441. package/include/audiosample.h +186 -0
  442. package/include/avbuffer.h +104 -0
  443. package/include/avcodec.h +585 -0
  444. package/include/avcodecparameters.h +189 -0
  445. package/include/avdict.h +23 -0
  446. package/include/avframe.h +1053 -0
  447. package/include/avpacket.h +498 -0
  448. package/include/avpcmbuffer.h +82 -0
  449. package/include/pixfmt.h +204 -0
  450. package/include/rational.h +10 -0
  451. package/package.json +386 -0
@@ -0,0 +1,49 @@
1
+ import BufferReader from "@libmedia/common/io/BufferReader";
2
+
3
+ import BufferWriter from "@libmedia/common/io/BufferWriter";
4
+
5
+ import { avRescaleQ } from "../util/rational";
6
+
7
+ export const durations = [ 480, 960, 1920, 2880, 480, 960, 1920, 2880, 480, 960, 1920, 2880, 480, 960, 480, 960, 120, 240, 480, 960, 120, 240, 480, 960, 120, 240, 480, 960, 120, 240, 480, 960 ];
8
+
9
+ export function getBufferSamples(buffer) {
10
+ let toc = 0, frameDuration = 0, nframes = 0;
11
+ if (buffer.length < 1) return 0;
12
+ switch (toc = buffer[0], frameDuration = durations[toc >> 3], 3 & toc) {
13
+ case 0:
14
+ nframes = 1;
15
+ break;
16
+
17
+ case 1:
18
+ case 2:
19
+ nframes = 2;
20
+ break;
21
+
22
+ case 3:
23
+ if (buffer.length < 2) return 0;
24
+ nframes = 63 & buffer[1];
25
+ }
26
+ return nframes * frameDuration;
27
+ }
28
+
29
+ export function parseAVCodecParameters(stream, extradata) {
30
+ if (!extradata && stream.sideData[1] && (extradata = stream.sideData[1]), extradata && extradata.length >= 19) {
31
+ const reader = new BufferReader(extradata, !1);
32
+ reader.skip(9), stream.codecpar.chLayout.nbChannels = reader.readUint8(), stream.codecpar.initialPadding = reader.readUint16(),
33
+ stream.codecpar.sampleRate = reader.readUint32(), stream.codecpar.seekPreroll = Number(avRescaleQ(BigInt(80), {
34
+ den: 1e3,
35
+ num: 1
36
+ }, {
37
+ den: 48e3,
38
+ num: 1
39
+ }));
40
+ }
41
+ }
42
+
43
+ export function avCodecParameters2Extradata(codecpar) {
44
+ const extradata = new Uint8Array(19), writer = new BufferWriter(extradata, !1);
45
+ return writer.writeString("OpusHead"), writer.writeUint8(1), writer.writeUint8(codecpar.chLayout.nbChannels),
46
+ writer.writeUint16(codecpar.initialPadding), writer.writeUint32(codecpar.sampleRate),
47
+ extradata;
48
+ }
49
+ //# sourceMappingURL=opus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BufferReader","BufferWriter","avRescaleQ","durations","getBufferSamples","buffer","toc","frameDuration","nframes","length","parseAVCodecParameters","stream","extradata","sideData","reader","skip","codecpar","chLayout","nbChannels","readUint8","initialPadding","readUint16","sampleRate","readUint32","seekPreroll","Number","BigInt","den","num","avCodecParameters2Extradata","Uint8Array","writer","writeString","writeUint8","writeUint16","writeUint32"],"sources":["../../../codecs/opus.ts"],"mappings":"OA4BOA,kBAAY;;OACZC,kBAAY;;SACVC,kBAAY;;OAGd,MAAMC,YAAY,EAEvB,KAAK,KAAK,MAAM,MAEhB,KAAK,KAAK,MAAM,MAEhB,KAAK,KAAK,MAAM,MAEhB,KAAK,KAEL,KAAK,KAEL,KAAK,KAAK,KAAK,KAEf,KAAK,KAAK,KAAK,KAEf,KAAK,KAAK,KAAK,KAEf,KAAK,KAAK,KAAK;;OAIX,SAAUC,iBAAiBC;IAC/B,IAAIC,MAAM,GAAGC,gBAAgB,GAAGC,UAAU;IAE1C,IAAIH,OAAOI,SAAS,GAClB,OAAO;IAOT,QAJAH,MAAMD,OAAO,IAEbE,gBAAgBJ,UAAUG,OAAO,IAEnB,IAANA;MACN,KAAK;QACHE,UAAU;QACV;;MACF,KAAK;MAGL,KAAK;QACHA,UAAU;QACV;;MACF,KAAK;QACH,IAAIH,OAAOI,SAAS,GAClB,OAAO;QAETD,UAAsB,KAAZH,OAAO;;IAGrB,OAAOG,UAAUD;AACnB;;OAkBM,SAAUG,uBAAuBC,QAAkBC;IAIvD,KAHKA,aAAaD,OAAOE,SAAQ,OAC/BD,YAAYD,OAAOE,SAAQ,KAEzBD,aAAaA,UAAUH,UAAU,IAAI;QACvC,MAAMK,SAAS,IAAId,aAAaY,YAAW;QAC3CE,OAAOC,KAAK,IACZJ,OAAOK,SAASC,SAASC,aAAaJ,OAAOK,aAC7CR,OAAOK,SAASI,iBAAiBN,OAAOO;QACxCV,OAAOK,SAASM,aAAaR,OAAOS,cAEpCZ,OAAOK,SAASQ,cAAcC,OAAOvB,WAAUwB,OAAA,KAE7C;YACEC,KAAK;YACLC,KAAK;WAEP;YACED,KAAK;YACLC,KAAK;;AAGX;AACF;;OAEM,SAAUC,4BAA4Bb;IAC1C,MAAMJ,YAAY,IAAIkB,WAAW,KAE3BC,SAAS,IAAI9B,aAAaW,YAAW;IAQ3C,OANAmB,OAAOC,YAAY,aACnBD,OAAOE,WAAW,IAClBF,OAAOE,WAAWjB,SAASC,SAASC;IACpCa,OAAOG,YAAYlB,SAASI,iBAC5BW,OAAOI,YAAYnB,SAASM;IAErBV;AACT","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ import AVStream from "../AVStream";
2
+ import AVPacket from "../struct/avpacket";
3
+ import { Uint8ArrayInterface } from "@libmedia/common/io/interface";
4
+ export declare function parseAVCodecParameters(stream: AVStream, extradata?: Uint8ArrayInterface): void;
5
+ /**
6
+ * - 1 byte profile
7
+ * - 1 byte level
8
+ * - 4 bit bitdepth
9
+ * - 3 bit chroma_subsampling
10
+ * - 1 bit full_range_flag
11
+ * - 1 byte color_primaries
12
+ * - 1 byte color_trc
13
+ * - 1 byte color_space
14
+ *
15
+ * @param extradata
16
+ */
17
+ export declare function parseExtraData(extradata: Uint8ArrayInterface): {
18
+ profile: number;
19
+ level: number;
20
+ bitDepth: number;
21
+ chromaSubsampling: number;
22
+ fullRangeFlag: number;
23
+ colorPrimaries: number;
24
+ colorTrc: number;
25
+ colorSpace: number;
26
+ };
27
+ export declare function isIDR(avpacket: pointer<AVPacket>): boolean;
@@ -0,0 +1,30 @@
1
+ import { CTypeEnumRead as cheap__CTypeEnumRead__0 } from "@libmedia/cheap/ctypeEnumRead";
2
+
3
+ import BitReader from "@libmedia/common/io/BitReader";
4
+
5
+ export function parseAVCodecParameters(stream, extradata) {
6
+ if (!extradata && stream.sideData[1] && (extradata = stream.sideData[1]), extradata && extradata.length >= 6) {
7
+ const params = parseExtraData(extradata);
8
+ stream.codecpar.profile = params.profile, stream.codecpar.level = params.level;
9
+ }
10
+ }
11
+
12
+ export function parseExtraData(extradata) {
13
+ const bitReader = new BitReader(extradata.length);
14
+ bitReader.appendBuffer(extradata.subarray(4));
15
+ return {
16
+ profile: bitReader.readU(8),
17
+ level: bitReader.readU(8),
18
+ bitDepth: bitReader.readU(4),
19
+ chromaSubsampling: bitReader.readU(3),
20
+ fullRangeFlag: bitReader.readU1(),
21
+ colorPrimaries: bitReader.readU(8),
22
+ colorTrc: bitReader.readU(8),
23
+ colorSpace: bitReader.readU(8)
24
+ };
25
+ }
26
+
27
+ export function isIDR(avpacket) {
28
+ return !(cheap__CTypeEnumRead__0[2](cheap__CTypeEnumRead__0[20](avpacket + 24)) >>> 7);
29
+ }
30
+ //# sourceMappingURL=vp8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BitReader","parseAVCodecParameters","stream","extradata","sideData","length","params","parseExtraData","codecpar","profile","level","bitReader","appendBuffer","subarray","readU","bitDepth","chromaSubsampling","fullRangeFlag","readU1","colorPrimaries","colorTrc","colorSpace","isIDR","avpacket","cheap__CTypeEnumRead__0"],"sources":["../../../codecs/vp8.ts"],"mappings":";;OA4BOA,eAAS;;OAGV,SAAUC,uBAAuBC,QAAkBC;IAIvD,KAHKA,aAAaD,OAAOE,SAAQ,OAC/BD,YAAYD,OAAOE,SAAQ,KAEzBD,aAAaA,UAAUE,UAAU,GAAG;QACtC,MAAMC,SAASC,eAAeJ;QAC9BD,OAAOM,SAASC,UAAUH,OAAOG,SACjCP,OAAOM,SAASE,QAAQJ,OAAOI;AACjC;AACF;;OAcM,SAAUH,eAAeJ;IAC7B,MAAMQ,YAAY,IAAIX,UAAUG,UAAUE;IAC1CM,UAAUC,aAAaT,UAAUU,SAAS;IAU1C,OAAO;QACLJ,SAVcE,UAAUG,MAAM;QAW9BJ,OAVYC,UAAUG,MAAM;QAW5BC,UAVaJ,UAAUG,MAAM;QAW7BE,mBAVwBL,UAAUG,MAAM;QAWxCG,eAVoBN,UAAUO;QAW9BC,gBAVqBR,UAAUG,MAAM;QAWrCM,UAVeT,UAAUG,MAAM;QAW/BO,YAViBV,UAAUG,MAAM;;AAYrC;;OAEM,SAAUQ,MAAMC;IAEpB,SADWC,wBAAA,GAAAA,wBAAA,IAAYD,WAAQ,SACZ;AACrB","ignoreList":[]}
@@ -0,0 +1,42 @@
1
+ import AVStream from "../AVStream";
2
+ import { Uint8ArrayInterface } from "@libmedia/common/io/interface";
3
+ import AVCodecParameters from "../struct/avcodecparameters";
4
+ import AVPacket from "../struct/avpacket";
5
+ export declare const enum VP9Profile {
6
+ Profile0 = 0,
7
+ Profile1 = 1,
8
+ Profile2 = 2,
9
+ Profile3 = 3
10
+ }
11
+ export declare const VP9Profile2Name: Record<VP9Profile, string>;
12
+ export declare const LevelCapabilities: {
13
+ level: number;
14
+ maxResolution: number;
15
+ maxFrameRate: number;
16
+ }[];
17
+ export declare function getLevelByResolution(width: number, height: number, fps: number): number;
18
+ export declare function parseAVCodecParameters(stream: AVStream, extradata?: Uint8ArrayInterface): void;
19
+ /**
20
+ * - 1 byte profile
21
+ * - 1 byte level
22
+ * - 4 bit bitdepth
23
+ * - 3 bit chroma_subsampling
24
+ * - 1 bit full_range_flag
25
+ * - 1 byte color_primaries
26
+ * - 1 byte color_trc
27
+ * - 1 byte color_space
28
+ *
29
+ * @param extradata
30
+ */
31
+ export declare function parseExtraData(extradata: Uint8ArrayInterface): {
32
+ profile: number;
33
+ level: number;
34
+ bitDepth: number;
35
+ chromaSubsampling: number;
36
+ fullRangeFlag: number;
37
+ colorPrimaries: number;
38
+ colorTrc: number;
39
+ colorSpace: number;
40
+ };
41
+ export declare function generateExtradata(codecpar: pointer<AVCodecParameters>): Uint8Array;
42
+ export declare function isIDR(avpacket: pointer<AVPacket>): boolean;
@@ -0,0 +1,136 @@
1
+ import { CTypeEnumRead as cheap__CTypeEnumRead__0 } from "@libmedia/cheap/ctypeEnumRead";
2
+
3
+ import { Rational as cheap__Rational__4 } from "../struct/rational";
4
+
5
+ import cheap__structAccess__5 from "@libmedia/cheap/std/structAccess";
6
+
7
+ import BitReader from "@libmedia/common/io/BitReader";
8
+
9
+ import { NOPTS_VALUE } from "../constant";
10
+
11
+ import { PixelFormatDescriptorsMap } from "../pixelFormatDescriptor";
12
+
13
+ import { avQ2D } from "../util/rational";
14
+
15
+ import BufferWriter from "@libmedia/common/io/BufferWriter";
16
+
17
+ export const VP9Profile2Name = {
18
+ 0: "Profile0",
19
+ 1: "Profile1",
20
+ 2: "Profile2",
21
+ 3: "Profile3"
22
+ };
23
+
24
+ export const LevelCapabilities = [ {
25
+ level: 10,
26
+ maxResolution: 196608,
27
+ maxFrameRate: 30
28
+ }, {
29
+ level: 11,
30
+ maxResolution: 196608,
31
+ maxFrameRate: 60
32
+ }, {
33
+ level: 20,
34
+ maxResolution: 518400,
35
+ maxFrameRate: 30
36
+ }, {
37
+ level: 21,
38
+ maxResolution: 518400,
39
+ maxFrameRate: 60
40
+ }, {
41
+ level: 30,
42
+ maxResolution: 2073600,
43
+ maxFrameRate: 30
44
+ }, {
45
+ level: 31,
46
+ maxResolution: 2073600,
47
+ maxFrameRate: 60
48
+ }, {
49
+ level: 40,
50
+ maxResolution: 3686400,
51
+ maxFrameRate: 30
52
+ }, {
53
+ level: 41,
54
+ maxResolution: 3686400,
55
+ maxFrameRate: 60
56
+ }, {
57
+ level: 50,
58
+ maxResolution: 8294400,
59
+ maxFrameRate: 30
60
+ }, {
61
+ level: 51,
62
+ maxResolution: 8294400,
63
+ maxFrameRate: 60
64
+ }, {
65
+ level: 60,
66
+ maxResolution: 8847360,
67
+ maxFrameRate: 30
68
+ }, {
69
+ level: 61,
70
+ maxResolution: 8847360,
71
+ maxFrameRate: 60
72
+ }, {
73
+ level: 70,
74
+ maxResolution: 35389440,
75
+ maxFrameRate: 30
76
+ }, {
77
+ level: 71,
78
+ maxResolution: 35389440,
79
+ maxFrameRate: 60
80
+ } ];
81
+
82
+ export function getLevelByResolution(width, height, fps) {
83
+ const resolution = width * height;
84
+ for (const level of LevelCapabilities) if (resolution <= level.maxResolution && fps <= level.maxFrameRate) return level.level;
85
+ }
86
+
87
+ export function parseAVCodecParameters(stream, extradata) {
88
+ if (!extradata && stream.sideData[1] && (extradata = stream.sideData[1]), extradata && extradata.length >= 6) {
89
+ const params = parseExtraData(extradata);
90
+ stream.codecpar.profile = params.profile, stream.codecpar.level = params.level;
91
+ }
92
+ }
93
+
94
+ export function parseExtraData(extradata) {
95
+ const bitReader = new BitReader(extradata.length);
96
+ bitReader.appendBuffer(extradata);
97
+ return {
98
+ profile: bitReader.readU(8),
99
+ level: bitReader.readU(8),
100
+ bitDepth: bitReader.readU(4),
101
+ chromaSubsampling: bitReader.readU(3),
102
+ fullRangeFlag: bitReader.readU1(),
103
+ colorPrimaries: bitReader.readU(8),
104
+ colorTrc: bitReader.readU(8),
105
+ colorSpace: bitReader.readU(8)
106
+ };
107
+ }
108
+
109
+ export function generateExtradata(codecpar) {
110
+ const ioWriter = new BufferWriter(new Uint8Array(8)), vpcc = function(codecpar) {
111
+ let profile = cheap__CTypeEnumRead__0[15](codecpar + 48), level = cheap__CTypeEnumRead__0[15](codecpar + 52);
112
+ level === NOPTS_VALUE && (level = getLevelByResolution(cheap__CTypeEnumRead__0[15](codecpar + 56), cheap__CTypeEnumRead__0[15](codecpar + 60), avQ2D(cheap__structAccess__5(codecpar + 72, cheap__Rational__4))));
113
+ const desc = PixelFormatDescriptorsMap[cheap__CTypeEnumRead__0[15](codecpar + 28)];
114
+ let bitDepth = cheap__CTypeEnumRead__0[15](codecpar + 40), chromaSubsampling = 1;
115
+ desc && (bitDepth = desc.comp[0].depth, 1 === desc.log2ChromaW && 1 === desc.log2ChromaH ? 1 === cheap__CTypeEnumRead__0[15](codecpar + 100) && (chromaSubsampling = 0) : 1 === desc.log2ChromaW && 0 === desc.log2ChromaH ? chromaSubsampling = 2 : 0 === desc.log2ChromaW && 0 === desc.log2ChromaH && (chromaSubsampling = 3));
116
+ const fullRange = 2 === cheap__CTypeEnumRead__0[15](codecpar + 84) ? 1 : 0;
117
+ return profile === NOPTS_VALUE && bitDepth && (profile = 0 == chromaSubsampling || 1 == chromaSubsampling ? 8 == bitDepth ? 0 : 2 : 8 == bitDepth ? 1 : 3),
118
+ {
119
+ profile: profile,
120
+ level: level,
121
+ bitDepth: bitDepth,
122
+ chromaSubsampling: chromaSubsampling,
123
+ fullRange: fullRange
124
+ };
125
+ }(codecpar);
126
+ return ioWriter.writeUint8(vpcc.profile), ioWriter.writeUint8(vpcc.level), ioWriter.writeUint8(vpcc.bitDepth << 4 | vpcc.chromaSubsampling << 1 | vpcc.fullRange),
127
+ ioWriter.writeUint8(cheap__CTypeEnumRead__0[15](codecpar + 88)), ioWriter.writeUint8(cheap__CTypeEnumRead__0[15](codecpar + 92)),
128
+ ioWriter.writeUint8(cheap__CTypeEnumRead__0[15](codecpar + 96)), ioWriter.writeUint16(0),
129
+ ioWriter.getWroteBuffer();
130
+ }
131
+
132
+ export function isIDR(avpacket) {
133
+ const first = cheap__CTypeEnumRead__0[2](cheap__CTypeEnumRead__0[20](avpacket + 24)), profile = ((first >>> 4 & 1) << 1) + (first >>> 5 & 1);
134
+ return !(first >>> (3 === profile ? 2 : 3) & 1) && !(first >>> (3 === profile ? 1 : 2) & 1);
135
+ }
136
+ //# sourceMappingURL=vp9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BitReader","NOPTS_VALUE","PixelFormatDescriptorsMap","avQ2D","BufferWriter","VP9Profile2Name","LevelCapabilities","level","maxResolution","maxFrameRate","getLevelByResolution","width","height","fps","resolution","parseAVCodecParameters","stream","extradata","sideData","length","params","parseExtraData","codecpar","profile","bitReader","appendBuffer","readU","bitDepth","chromaSubsampling","fullRangeFlag","readU1","colorPrimaries","colorTrc","colorSpace","generateExtradata","ioWriter","Uint8Array","vpcc","cheap__CTypeEnumRead__0","cheap__structAccess__5","cheap__Rational__4","desc","comp","depth","log2ChromaW","log2ChromaH","fullRange","getVpccFeature","writeUint8","writeUint16","getWroteBuffer","isIDR","avpacket","first"],"sources":["../../../codecs/vp9.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,178 @@
1
+ import AVPacket from "../struct/avpacket";
2
+ import AVStream from "../AVStream";
3
+ import { Uint8ArrayInterface } from "@libmedia/common/io/interface";
4
+ import { Data } from "@libmedia/common/types/type";
5
+ export declare const enum VVCNaluType {
6
+ kTRAIL_NUT = 0,
7
+ kSTSA_NUT = 1,
8
+ kRADL_NUT = 2,
9
+ kRASL_NUT = 3,
10
+ kRSV_VCL_4 = 4,
11
+ kRSV_VCL_5 = 5,
12
+ kRSV_VCL_6 = 6,
13
+ kIDR_W_RADL = 7,
14
+ kIDR_N_LP = 8,
15
+ kCRA_NUT = 9,
16
+ kGDR_NUT = 10,
17
+ kRSV_IRAP_11 = 11,
18
+ kOPI_NUT = 12,
19
+ kDCI_NUT = 13,
20
+ kVPS_NUT = 14,
21
+ kSPS_NUT = 15,
22
+ kPPS_NUT = 16,
23
+ kPREFIX_APS_NUT = 17,
24
+ kSUFFIX_APS_NUT = 18,
25
+ kPH_NUT = 19,
26
+ kAUD_NUT = 20,
27
+ kEOS_NUT = 21,
28
+ kEOB_NUT = 22,
29
+ kPREFIX_SEI_NUT = 23,
30
+ kSUFFIX_SEI_NUT = 24,
31
+ kFD_NUT = 25,
32
+ kRSV_NVCL_26 = 26,
33
+ kRSV_NVCL_27 = 27,
34
+ kUNSPEC_28 = 28,
35
+ kUNSPEC_29 = 29,
36
+ kUNSPEC_30 = 30,
37
+ kUNSPEC_31 = 31
38
+ }
39
+ export declare const enum VVCSliceType {
40
+ kSliceNone = -1,
41
+ kSliceB = 0,
42
+ kSliceP = 1,
43
+ kSliceI = 2
44
+ }
45
+ export declare const enum VVCAPSType {
46
+ kALF = 0,
47
+ kLMCS = 1,
48
+ kSCALING = 2
49
+ }
50
+ /**
51
+ *
52
+ * vvcc 格式的 extradata 转 annexb vps sps pps
53
+ *
54
+ * bits
55
+ * - 5 reserved (11111)
56
+ * - 2 lengthSizeMinusOne
57
+ * - 1 ptl_present_flag
58
+ * if ptl_present_flag
59
+ * - 9 ols_idx
60
+ * - 3 num_sublayers
61
+ * - 2 constant_frame_rate
62
+ * - 2 chroma_format_idc
63
+ * - 3 bit_depth_minus8
64
+ * - 5 reserved (11111)
65
+ * VvcPTLRecord
66
+ * - 2 reserved (11)
67
+ * - 6 num_bytes_constraint_info
68
+ * - 7 general_profile_idc
69
+ * - 1 general_tier_flag
70
+ * - 8 general_level_idc
71
+ * - 1 general_level_idc
72
+ * - 1 ptl_multilayer_enabled_flag
73
+ * if num_bytes_constraint_info > 0
74
+ * for (i = 0; i < num_bytes_constraint_info - 1; i++)
75
+ * - 8 general_constraint_info[i]
76
+ * - 6 general_constraint_info[num_bytes_constraint_info - 1]
77
+ * else
78
+ * - 6 reserved
79
+ * if num_sublayers > 1
80
+ * - num_sublayers - 2 ptl_sublayer_level_present_flag
81
+ * - 8 - num_sublayers + 1 ptl_reserved_zero_bit
82
+ * for (i = num_sublayers -2; i >= 0; i--)
83
+ * if ptl_sublayer_present_mask & (1 << i)
84
+ * - 8 sublayer_level_idc[i]
85
+ * - 8 ptl_num_sub_profiles
86
+ * if ptl_num_sub_profiles
87
+ * for (i = 0; i < ptl_num_sub_profiles; i++)
88
+ * - 32 general_sub_profile_idc[i]
89
+ * - 16 max_picture_width
90
+ * - 16 max_picture_height
91
+ * - 16 avg_frame_rate
92
+ * - 8 numOfArrays
93
+ * - repeated of array (vps/sps/pps)
94
+ * - 1 array_completeness
95
+ * - 2 reserved (0)
96
+ * - 5 NAL_unit_type
97
+ * if nalu_type != VVC_NALU_DEC_PARAM && nalu_type != VVC_NALU_OPI
98
+ * - 16 numNalus
99
+ * else
100
+ * numNalus = 1
101
+ * - repeated once per NAL
102
+ * - 16 nalUnitLength
103
+ * - N NALU data
104
+ *
105
+ */
106
+ export declare function extradata2VpsSpsPps(extradata: Uint8ArrayInterface): {
107
+ vpss: any[];
108
+ spss: any[];
109
+ ppss: any[];
110
+ };
111
+ export declare function vpsSpsPps2Extradata(vpss: Uint8ArrayInterface[], spss: Uint8ArrayInterface[], ppss: Uint8ArrayInterface[]): Uint8Array;
112
+ export declare function annexbExtradata2AvccExtradata(data: Uint8ArrayInterface): Uint8Array;
113
+ /**
114
+ *
115
+ * annexb 格式的 NALU 转 avcc NALU
116
+ *
117
+ */
118
+ export declare function annexb2Avcc(data: Uint8ArrayInterface): {
119
+ bufferPointer: pointer<void>;
120
+ length: number;
121
+ extradata: Uint8Array;
122
+ key: boolean;
123
+ };
124
+ /**
125
+ * avcc 格式的 NALU 转 annexb NALU
126
+ *
127
+ */
128
+ export declare function avcc2Annexb(data: Uint8ArrayInterface, extradata?: Uint8ArrayInterface): {
129
+ bufferPointer: pointer<void>;
130
+ length: any;
131
+ key: boolean;
132
+ };
133
+ export declare function parseAvccExtraData(avpacket: pointer<AVPacket>, stream: AVStream): void;
134
+ export declare function parseAnnexbExtraData(avpacket: pointer<AVPacket>, force?: boolean): void;
135
+ export declare function parseAVCodecParametersBySps(stream: AVStream, sps: Uint8Array): void;
136
+ export declare function parseAVCodecParameters(stream: AVStream, extradata?: Uint8ArrayInterface): void;
137
+ export declare function isIDR(avpacket: pointer<AVPacket>, naluLengthSize?: int32): boolean;
138
+ export interface VvcSPS {
139
+ profile: number;
140
+ level: number;
141
+ width: number;
142
+ height: number;
143
+ chromaFormatIdc: number;
144
+ bitDepthMinus8: number;
145
+ generalProfileSpace: number;
146
+ tierFlag: number;
147
+ generalConstraintInfo: number[];
148
+ generalSubProfileIdc: number[];
149
+ ptlFrameOnlyConstraintFlag: number;
150
+ ptlMultilayerEnabledFlag: number;
151
+ spsMaxSublayersMinus1: number;
152
+ ptlSublayerLevelPresentFlag: number[];
153
+ sublayerLevelIdc: number[];
154
+ sps_log2_max_pic_order_cnt_lsb_minus4: number;
155
+ sps_poc_msb_cycle_flag: number;
156
+ sps_poc_msb_cycle_len_minus1: number;
157
+ sps_num_extra_ph_bytes: number;
158
+ sps_extra_ph_bit_present_flag: number[];
159
+ }
160
+ export declare function parseSPS(sps: Uint8ArrayInterface): VvcSPS;
161
+ export declare function parseExtraData(extradata: Uint8ArrayInterface): Data | {
162
+ olsIdx: number;
163
+ numSublayers: number;
164
+ bitDepthMinus8: number;
165
+ chromaFormatIdc: number;
166
+ constantFrameRate: number;
167
+ generalProfileIdc: number;
168
+ generalTierFlag: number;
169
+ generalLevelIdc: number;
170
+ ptlFrameOnlyConstraintFlag: number;
171
+ ptlMultilayerEnabledFlag: number;
172
+ generalConstraintInfo: any[];
173
+ sublayerLevelIdc: any[];
174
+ generalSubProfileIdc: any[];
175
+ maxPictureWidth: number;
176
+ maxPictureHeight: number;
177
+ avgFramerate: number;
178
+ };