webcodecs-node 0.7.2 → 0.8.5

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 (507) hide show
  1. package/README.md +106 -16
  2. package/dist/backends/node-av/HardwarePipeline.d.ts +36 -0
  3. package/dist/backends/node-av/HardwarePipeline.d.ts.map +1 -0
  4. package/dist/backends/node-av/HardwarePipeline.js +203 -0
  5. package/dist/backends/node-av/HardwarePipeline.js.map +1 -0
  6. package/dist/backends/node-av/audio/NodeAvAudioDecoder.d.ts +46 -0
  7. package/dist/backends/node-av/audio/NodeAvAudioDecoder.d.ts.map +1 -0
  8. package/dist/backends/node-av/audio/NodeAvAudioDecoder.js +277 -0
  9. package/dist/backends/node-av/audio/NodeAvAudioDecoder.js.map +1 -0
  10. package/dist/backends/node-av/audio/NodeAvAudioEncoder.d.ts +47 -0
  11. package/dist/backends/node-av/audio/NodeAvAudioEncoder.d.ts.map +1 -0
  12. package/dist/backends/node-av/audio/NodeAvAudioEncoder.js +363 -0
  13. package/dist/backends/node-av/audio/NodeAvAudioEncoder.js.map +1 -0
  14. package/dist/backends/node-av/audio/decoder/channel-layout.d.ts +12 -0
  15. package/dist/backends/node-av/audio/decoder/channel-layout.d.ts.map +1 -0
  16. package/dist/backends/node-av/audio/decoder/channel-layout.js +24 -0
  17. package/dist/backends/node-av/audio/decoder/channel-layout.js.map +1 -0
  18. package/dist/backends/node-av/audio/decoder/codec-mapping.d.ts +9 -0
  19. package/dist/backends/node-av/audio/decoder/codec-mapping.d.ts.map +1 -0
  20. package/dist/backends/node-av/audio/decoder/codec-mapping.js +40 -0
  21. package/dist/backends/node-av/audio/decoder/codec-mapping.js.map +1 -0
  22. package/dist/backends/node-av/audio/decoder/constants.d.ts +6 -0
  23. package/dist/backends/node-av/audio/decoder/constants.d.ts.map +1 -0
  24. package/dist/backends/node-av/audio/decoder/constants.js +6 -0
  25. package/dist/backends/node-av/audio/decoder/constants.js.map +1 -0
  26. package/dist/backends/node-av/audio/decoder/index.d.ts +8 -0
  27. package/dist/backends/node-av/audio/decoder/index.d.ts.map +1 -0
  28. package/dist/backends/node-av/audio/decoder/index.js +8 -0
  29. package/dist/backends/node-av/audio/decoder/index.js.map +1 -0
  30. package/dist/backends/node-av/audio/decoder/sample-format.d.ts +14 -0
  31. package/dist/backends/node-av/audio/decoder/sample-format.d.ts.map +1 -0
  32. package/dist/backends/node-av/audio/decoder/sample-format.js +54 -0
  33. package/dist/backends/node-av/audio/decoder/sample-format.js.map +1 -0
  34. package/dist/backends/node-av/audio/encoder/channel-layout.d.ts +12 -0
  35. package/dist/backends/node-av/audio/encoder/channel-layout.d.ts.map +1 -0
  36. package/dist/backends/node-av/audio/encoder/channel-layout.js +24 -0
  37. package/dist/backends/node-av/audio/encoder/channel-layout.js.map +1 -0
  38. package/dist/backends/node-av/audio/encoder/codec-description.d.ts +33 -0
  39. package/dist/backends/node-av/audio/encoder/codec-description.d.ts.map +1 -0
  40. package/dist/backends/node-av/audio/encoder/codec-description.js +137 -0
  41. package/dist/backends/node-av/audio/encoder/codec-description.js.map +1 -0
  42. package/dist/backends/node-av/audio/encoder/codec-mapping.d.ts +12 -0
  43. package/dist/backends/node-av/audio/encoder/codec-mapping.d.ts.map +1 -0
  44. package/dist/backends/node-av/audio/encoder/codec-mapping.js +61 -0
  45. package/dist/backends/node-av/audio/encoder/codec-mapping.js.map +1 -0
  46. package/dist/backends/node-av/audio/encoder/constants.d.ts +6 -0
  47. package/dist/backends/node-av/audio/encoder/constants.d.ts.map +1 -0
  48. package/dist/backends/node-av/audio/encoder/constants.js +6 -0
  49. package/dist/backends/node-av/audio/encoder/constants.js.map +1 -0
  50. package/dist/backends/node-av/audio/encoder/drain.d.ts +32 -0
  51. package/dist/backends/node-av/audio/encoder/drain.d.ts.map +1 -0
  52. package/dist/backends/node-av/audio/encoder/drain.js +51 -0
  53. package/dist/backends/node-av/audio/encoder/drain.js.map +1 -0
  54. package/dist/backends/node-av/audio/encoder/index.d.ts +20 -0
  55. package/dist/backends/node-av/audio/encoder/index.d.ts.map +1 -0
  56. package/dist/backends/node-av/audio/encoder/index.js +20 -0
  57. package/dist/backends/node-av/audio/encoder/index.js.map +1 -0
  58. package/dist/backends/node-av/audio/encoder/options.d.ts +40 -0
  59. package/dist/backends/node-av/audio/encoder/options.d.ts.map +1 -0
  60. package/dist/backends/node-av/audio/encoder/options.js +127 -0
  61. package/dist/backends/node-av/audio/encoder/options.js.map +1 -0
  62. package/dist/backends/node-av/audio/encoder/sample-format-convert.d.ts +40 -0
  63. package/dist/backends/node-av/audio/encoder/sample-format-convert.d.ts.map +1 -0
  64. package/dist/backends/node-av/audio/encoder/sample-format-convert.js +152 -0
  65. package/dist/backends/node-av/audio/encoder/sample-format-convert.js.map +1 -0
  66. package/dist/backends/node-av/hardware-pipeline/capabilities.d.ts +10 -0
  67. package/dist/backends/node-av/hardware-pipeline/capabilities.d.ts.map +1 -0
  68. package/dist/backends/node-av/hardware-pipeline/capabilities.js +45 -0
  69. package/dist/backends/node-av/hardware-pipeline/capabilities.js.map +1 -0
  70. package/dist/backends/node-av/hardware-pipeline/index.d.ts +6 -0
  71. package/dist/backends/node-av/hardware-pipeline/index.d.ts.map +1 -0
  72. package/dist/backends/node-av/hardware-pipeline/index.js +5 -0
  73. package/dist/backends/node-av/hardware-pipeline/index.js.map +1 -0
  74. package/dist/backends/node-av/hardware-pipeline/types.d.ts +13 -0
  75. package/dist/backends/node-av/hardware-pipeline/types.d.ts.map +1 -0
  76. package/dist/backends/node-av/hardware-pipeline/types.js +5 -0
  77. package/dist/backends/node-av/hardware-pipeline/types.js.map +1 -0
  78. package/dist/backends/node-av/image/NodeAvImageDecoder.d.ts +95 -0
  79. package/dist/backends/node-av/image/NodeAvImageDecoder.d.ts.map +1 -0
  80. package/dist/backends/node-av/image/NodeAvImageDecoder.js +383 -0
  81. package/dist/backends/node-av/image/NodeAvImageDecoder.js.map +1 -0
  82. package/dist/backends/node-av/image/WebPImageDecoder.d.ts +57 -0
  83. package/dist/backends/node-av/image/WebPImageDecoder.d.ts.map +1 -0
  84. package/dist/backends/node-av/image/WebPImageDecoder.js +178 -0
  85. package/dist/backends/node-av/image/WebPImageDecoder.js.map +1 -0
  86. package/dist/backends/node-av/image/decoder/constants.d.ts +14 -0
  87. package/dist/backends/node-av/image/decoder/constants.d.ts.map +1 -0
  88. package/dist/backends/node-av/image/decoder/constants.js +24 -0
  89. package/dist/backends/node-av/image/decoder/constants.js.map +1 -0
  90. package/dist/backends/node-av/image/decoder/index.d.ts +7 -0
  91. package/dist/backends/node-av/image/decoder/index.d.ts.map +1 -0
  92. package/dist/backends/node-av/image/decoder/index.js +6 -0
  93. package/dist/backends/node-av/image/decoder/index.js.map +1 -0
  94. package/dist/backends/node-av/image/decoder/probe.d.ts +12 -0
  95. package/dist/backends/node-av/image/decoder/probe.d.ts.map +1 -0
  96. package/dist/backends/node-av/image/decoder/probe.js +57 -0
  97. package/dist/backends/node-av/image/decoder/probe.js.map +1 -0
  98. package/dist/backends/node-av/image/decoder/types.d.ts +25 -0
  99. package/dist/backends/node-av/image/decoder/types.d.ts.map +1 -0
  100. package/dist/backends/node-av/image/decoder/types.js +5 -0
  101. package/dist/backends/node-av/image/decoder/types.js.map +1 -0
  102. package/dist/backends/node-av/video/NodeAvVideoDecoder.d.ts +44 -0
  103. package/dist/backends/node-av/video/NodeAvVideoDecoder.d.ts.map +1 -0
  104. package/dist/backends/node-av/video/NodeAvVideoDecoder.js +326 -0
  105. package/dist/backends/node-av/video/NodeAvVideoDecoder.js.map +1 -0
  106. package/dist/backends/node-av/video/NodeAvVideoEncoder.d.ts +49 -0
  107. package/dist/backends/node-av/video/NodeAvVideoEncoder.d.ts.map +1 -0
  108. package/dist/backends/node-av/video/NodeAvVideoEncoder.js +317 -0
  109. package/dist/backends/node-av/video/NodeAvVideoEncoder.js.map +1 -0
  110. package/dist/backends/node-av/video/decoder/codec-mapping.d.ts +9 -0
  111. package/dist/backends/node-av/video/decoder/codec-mapping.d.ts.map +1 -0
  112. package/dist/backends/node-av/video/decoder/codec-mapping.js +25 -0
  113. package/dist/backends/node-av/video/decoder/codec-mapping.js.map +1 -0
  114. package/dist/backends/node-av/video/decoder/constants.d.ts +13 -0
  115. package/dist/backends/node-av/video/decoder/constants.d.ts.map +1 -0
  116. package/dist/backends/node-av/video/decoder/constants.js +13 -0
  117. package/dist/backends/node-av/video/decoder/constants.js.map +1 -0
  118. package/dist/backends/node-av/video/decoder/index.d.ts +7 -0
  119. package/dist/backends/node-av/video/decoder/index.d.ts.map +1 -0
  120. package/dist/backends/node-av/video/decoder/index.js +7 -0
  121. package/dist/backends/node-av/video/decoder/index.js.map +1 -0
  122. package/dist/backends/node-av/video/decoder/pixel-format.d.ts +13 -0
  123. package/dist/backends/node-av/video/decoder/pixel-format.d.ts.map +1 -0
  124. package/dist/backends/node-av/video/decoder/pixel-format.js +88 -0
  125. package/dist/backends/node-av/video/decoder/pixel-format.js.map +1 -0
  126. package/dist/backends/node-av/video/encoder/codec-description.d.ts +26 -0
  127. package/dist/backends/node-av/video/encoder/codec-description.d.ts.map +1 -0
  128. package/dist/backends/node-av/video/encoder/codec-description.js +86 -0
  129. package/dist/backends/node-av/video/encoder/codec-description.js.map +1 -0
  130. package/dist/backends/node-av/video/encoder/drain.d.ts +34 -0
  131. package/dist/backends/node-av/video/encoder/drain.d.ts.map +1 -0
  132. package/dist/backends/node-av/video/encoder/drain.js +51 -0
  133. package/dist/backends/node-av/video/encoder/drain.js.map +1 -0
  134. package/dist/backends/node-av/video/encoder/filters.d.ts +37 -0
  135. package/dist/backends/node-av/video/encoder/filters.d.ts.map +1 -0
  136. package/dist/backends/node-av/video/encoder/filters.js +71 -0
  137. package/dist/backends/node-av/video/encoder/filters.js.map +1 -0
  138. package/dist/backends/node-av/video/encoder/gpu-filters.d.ts +9 -0
  139. package/dist/backends/node-av/video/encoder/gpu-filters.d.ts.map +1 -0
  140. package/dist/backends/node-av/video/encoder/gpu-filters.js +26 -0
  141. package/dist/backends/node-av/video/encoder/gpu-filters.js.map +1 -0
  142. package/dist/backends/node-av/video/encoder/hardware-constraints.d.ts +12 -0
  143. package/dist/backends/node-av/video/encoder/hardware-constraints.d.ts.map +1 -0
  144. package/dist/backends/node-av/video/encoder/hardware-constraints.js +31 -0
  145. package/dist/backends/node-av/video/encoder/hardware-constraints.js.map +1 -0
  146. package/dist/backends/node-av/video/encoder/index.d.ts +28 -0
  147. package/dist/backends/node-av/video/encoder/index.d.ts.map +1 -0
  148. package/dist/backends/node-av/video/encoder/index.js +28 -0
  149. package/dist/backends/node-av/video/encoder/index.js.map +1 -0
  150. package/dist/backends/node-av/video/encoder/options.d.ts +39 -0
  151. package/dist/backends/node-av/video/encoder/options.d.ts.map +1 -0
  152. package/dist/backends/node-av/video/encoder/options.js +195 -0
  153. package/dist/backends/node-av/video/encoder/options.js.map +1 -0
  154. package/dist/backends/node-av/video/encoder/pixel-format-config.d.ts +42 -0
  155. package/dist/backends/node-av/video/encoder/pixel-format-config.d.ts.map +1 -0
  156. package/dist/backends/node-av/video/encoder/pixel-format-config.js +122 -0
  157. package/dist/backends/node-av/video/encoder/pixel-format-config.js.map +1 -0
  158. package/dist/backends/node-av/video/encoder/pixel-format.d.ts +13 -0
  159. package/dist/backends/node-av/video/encoder/pixel-format.d.ts.map +1 -0
  160. package/dist/backends/node-av/video/encoder/pixel-format.js +68 -0
  161. package/dist/backends/node-av/video/encoder/pixel-format.js.map +1 -0
  162. package/dist/backends/node-av/video/encoder/setup.d.ts +33 -0
  163. package/dist/backends/node-av/video/encoder/setup.d.ts.map +1 -0
  164. package/dist/backends/node-av/video/encoder/setup.js +62 -0
  165. package/dist/backends/node-av/video/encoder/setup.js.map +1 -0
  166. package/dist/backends/node-av/video/encoder/software-encoders.d.ts +8 -0
  167. package/dist/backends/node-av/video/encoder/software-encoders.d.ts.map +1 -0
  168. package/dist/backends/node-av/video/encoder/software-encoders.js +17 -0
  169. package/dist/backends/node-av/video/encoder/software-encoders.js.map +1 -0
  170. package/dist/backends/node-av/video/encoder/timestamp.d.ts +34 -0
  171. package/dist/backends/node-av/video/encoder/timestamp.d.ts.map +1 -0
  172. package/dist/backends/node-av/video/encoder/timestamp.js +39 -0
  173. package/dist/backends/node-av/video/encoder/timestamp.js.map +1 -0
  174. package/dist/backends/types.d.ts +44 -0
  175. package/dist/backends/types.d.ts.map +1 -1
  176. package/dist/backends/types.js.map +1 -1
  177. package/dist/codec-utils/formats.d.ts.map +1 -1
  178. package/dist/codec-utils/formats.js +78 -0
  179. package/dist/codec-utils/formats.js.map +1 -1
  180. package/dist/codec-utils/types.d.ts +1 -1
  181. package/dist/codecs/aac.d.ts +10 -0
  182. package/dist/codecs/aac.d.ts.map +1 -0
  183. package/dist/codecs/aac.js +10 -0
  184. package/dist/codecs/aac.js.map +1 -0
  185. package/dist/codecs/avc.d.ts +11 -0
  186. package/dist/codecs/avc.d.ts.map +1 -0
  187. package/dist/codecs/avc.js +11 -0
  188. package/dist/codecs/avc.js.map +1 -0
  189. package/dist/codecs/hevc.d.ts +11 -0
  190. package/dist/codecs/hevc.d.ts.map +1 -0
  191. package/dist/codecs/hevc.js +11 -0
  192. package/dist/codecs/hevc.js.map +1 -0
  193. package/dist/codecs/index.d.ts +10 -0
  194. package/dist/codecs/index.d.ts.map +1 -0
  195. package/dist/codecs/index.js +14 -0
  196. package/dist/codecs/index.js.map +1 -0
  197. package/dist/codecs/validation/audio.d.ts +19 -0
  198. package/dist/codecs/validation/audio.d.ts.map +1 -0
  199. package/dist/codecs/validation/audio.js +111 -0
  200. package/dist/codecs/validation/audio.js.map +1 -0
  201. package/dist/codecs/validation/config.d.ts +27 -0
  202. package/dist/codecs/validation/config.d.ts.map +1 -0
  203. package/dist/codecs/validation/config.js +154 -0
  204. package/dist/codecs/validation/config.js.map +1 -0
  205. package/dist/codecs/validation/index.d.ts +9 -0
  206. package/dist/codecs/validation/index.d.ts.map +1 -0
  207. package/dist/codecs/validation/index.js +12 -0
  208. package/dist/codecs/validation/index.js.map +1 -0
  209. package/dist/codecs/validation/video.d.ts +24 -0
  210. package/dist/codecs/validation/video.d.ts.map +1 -0
  211. package/dist/codecs/validation/video.js +196 -0
  212. package/dist/codecs/validation/video.js.map +1 -0
  213. package/dist/config/webcodecs-config.d.ts +58 -0
  214. package/dist/config/webcodecs-config.d.ts.map +1 -0
  215. package/dist/config/webcodecs-config.js +187 -0
  216. package/dist/config/webcodecs-config.js.map +1 -0
  217. package/dist/containers/Demuxer.d.ts +3 -1
  218. package/dist/containers/Demuxer.d.ts.map +1 -1
  219. package/dist/containers/Demuxer.js +26 -19
  220. package/dist/containers/Demuxer.js.map +1 -1
  221. package/dist/containers/FFmpegMuxer.d.ts +42 -0
  222. package/dist/containers/FFmpegMuxer.d.ts.map +1 -0
  223. package/dist/containers/FFmpegMuxer.js +311 -0
  224. package/dist/containers/FFmpegMuxer.js.map +1 -0
  225. package/dist/containers/Muxer.d.ts +75 -107
  226. package/dist/containers/Muxer.d.ts.map +1 -1
  227. package/dist/containers/Muxer.js +184 -243
  228. package/dist/containers/Muxer.js.map +1 -1
  229. package/dist/containers/NodeAvMuxer.d.ts +125 -0
  230. package/dist/containers/NodeAvMuxer.d.ts.map +1 -0
  231. package/dist/containers/NodeAvMuxer.js +458 -0
  232. package/dist/containers/NodeAvMuxer.js.map +1 -0
  233. package/dist/containers/extract.d.ts.map +1 -1
  234. package/dist/containers/extract.js +3 -1
  235. package/dist/containers/extract.js.map +1 -1
  236. package/dist/containers/index.d.ts +20 -14
  237. package/dist/containers/index.d.ts.map +1 -1
  238. package/dist/containers/index.js +21 -14
  239. package/dist/containers/index.js.map +1 -1
  240. package/dist/containers/muxer-types.d.ts +117 -0
  241. package/dist/containers/muxer-types.d.ts.map +1 -0
  242. package/dist/containers/muxer-types.js +45 -0
  243. package/dist/containers/muxer-types.js.map +1 -0
  244. package/dist/containers/transcode.d.ts.map +1 -1
  245. package/dist/containers/transcode.js +171 -150
  246. package/dist/containers/transcode.js.map +1 -1
  247. package/dist/core/AudioData.d.ts.map +1 -1
  248. package/dist/core/AudioData.js +54 -12
  249. package/dist/core/AudioData.js.map +1 -1
  250. package/dist/core/EncodedAudioChunk.d.ts.map +1 -1
  251. package/dist/core/EncodedAudioChunk.js +74 -6
  252. package/dist/core/EncodedAudioChunk.js.map +1 -1
  253. package/dist/core/EncodedVideoChunk.d.ts +2 -0
  254. package/dist/core/EncodedVideoChunk.d.ts.map +1 -1
  255. package/dist/core/EncodedVideoChunk.js +70 -2
  256. package/dist/core/EncodedVideoChunk.js.map +1 -1
  257. package/dist/core/VideoFrame.d.ts +27 -2
  258. package/dist/core/VideoFrame.d.ts.map +1 -1
  259. package/dist/core/VideoFrame.js +245 -125
  260. package/dist/core/VideoFrame.js.map +1 -1
  261. package/dist/core/video-frame/layout.d.ts +10 -0
  262. package/dist/core/video-frame/layout.d.ts.map +1 -0
  263. package/dist/core/video-frame/layout.js +97 -0
  264. package/dist/core/video-frame/layout.js.map +1 -0
  265. package/dist/core/video-frame/orientation.d.ts +23 -0
  266. package/dist/core/video-frame/orientation.d.ts.map +1 -0
  267. package/dist/core/video-frame/orientation.js +49 -0
  268. package/dist/core/video-frame/orientation.js.map +1 -0
  269. package/dist/core/video-frame/transfer.d.ts +19 -0
  270. package/dist/core/video-frame/transfer.d.ts.map +1 -0
  271. package/dist/core/video-frame/transfer.js +78 -0
  272. package/dist/core/video-frame/transfer.js.map +1 -0
  273. package/dist/core/video-frame/validation.d.ts +28 -0
  274. package/dist/core/video-frame/validation.d.ts.map +1 -0
  275. package/dist/core/video-frame/validation.js +76 -0
  276. package/dist/core/video-frame/validation.js.map +1 -0
  277. package/dist/decoders/AudioDecoder.d.ts +2 -19
  278. package/dist/decoders/AudioDecoder.d.ts.map +1 -1
  279. package/dist/decoders/AudioDecoder.js +27 -11
  280. package/dist/decoders/AudioDecoder.js.map +1 -1
  281. package/dist/decoders/ImageDecoder.d.ts +34 -41
  282. package/dist/decoders/ImageDecoder.d.ts.map +1 -1
  283. package/dist/decoders/ImageDecoder.js +158 -266
  284. package/dist/decoders/ImageDecoder.js.map +1 -1
  285. package/dist/decoders/VideoDecoder.d.ts +3 -38
  286. package/dist/decoders/VideoDecoder.d.ts.map +1 -1
  287. package/dist/decoders/VideoDecoder.js +126 -124
  288. package/dist/decoders/VideoDecoder.js.map +1 -1
  289. package/dist/decoders/audio/config.d.ts +23 -0
  290. package/dist/decoders/audio/config.d.ts.map +1 -0
  291. package/dist/decoders/audio/config.js +112 -0
  292. package/dist/decoders/audio/config.js.map +1 -0
  293. package/dist/decoders/audio/constants.d.ts +6 -0
  294. package/dist/decoders/audio/constants.d.ts.map +1 -0
  295. package/dist/decoders/audio/constants.js +6 -0
  296. package/dist/decoders/audio/constants.js.map +1 -0
  297. package/dist/decoders/audio/types.d.ts +21 -0
  298. package/dist/decoders/audio/types.d.ts.map +1 -0
  299. package/dist/decoders/audio/types.js +5 -0
  300. package/dist/decoders/audio/types.js.map +1 -0
  301. package/dist/decoders/image/orientation.d.ts +16 -0
  302. package/dist/decoders/image/orientation.d.ts.map +1 -0
  303. package/dist/decoders/image/orientation.js +170 -0
  304. package/dist/decoders/image/orientation.js.map +1 -0
  305. package/dist/decoders/image/stream.d.ts +12 -0
  306. package/dist/decoders/image/stream.d.ts.map +1 -0
  307. package/dist/decoders/image/stream.js +41 -0
  308. package/dist/decoders/image/stream.js.map +1 -0
  309. package/dist/decoders/image/tracks.d.ts +76 -0
  310. package/dist/decoders/image/tracks.d.ts.map +1 -0
  311. package/dist/decoders/image/tracks.js +136 -0
  312. package/dist/decoders/image/tracks.js.map +1 -0
  313. package/dist/decoders/image/types.d.ts +36 -0
  314. package/dist/decoders/image/types.d.ts.map +1 -0
  315. package/dist/decoders/image/types.js +5 -0
  316. package/dist/decoders/image/types.js.map +1 -0
  317. package/dist/decoders/video/codec-specific.d.ts +19 -0
  318. package/dist/decoders/video/codec-specific.d.ts.map +1 -0
  319. package/dist/decoders/video/codec-specific.js +62 -0
  320. package/dist/decoders/video/codec-specific.js.map +1 -0
  321. package/dist/decoders/video/config.d.ts +17 -0
  322. package/dist/decoders/video/config.d.ts.map +1 -0
  323. package/dist/decoders/video/config.js +91 -0
  324. package/dist/decoders/video/config.js.map +1 -0
  325. package/dist/decoders/video/constants.d.ts +8 -0
  326. package/dist/decoders/video/constants.d.ts.map +1 -0
  327. package/dist/decoders/video/constants.js +13 -0
  328. package/dist/decoders/video/constants.js.map +1 -0
  329. package/dist/decoders/video/queue.d.ts +9 -0
  330. package/dist/decoders/video/queue.d.ts.map +1 -0
  331. package/dist/decoders/video/queue.js +17 -0
  332. package/dist/decoders/video/queue.js.map +1 -0
  333. package/dist/decoders/video/types.d.ts +41 -0
  334. package/dist/decoders/video/types.d.ts.map +1 -0
  335. package/dist/decoders/video/types.js +5 -0
  336. package/dist/decoders/video/types.js.map +1 -0
  337. package/dist/demos/demo-audio-visualizer.js +74 -48
  338. package/dist/demos/demo-audio-visualizer.js.map +1 -1
  339. package/dist/demos/demo-dvd-logo.js +26 -23
  340. package/dist/demos/demo-dvd-logo.js.map +1 -1
  341. package/dist/demos/demo-flow-field.d.ts +11 -0
  342. package/dist/demos/demo-flow-field.d.ts.map +1 -0
  343. package/dist/demos/demo-flow-field.js +305 -0
  344. package/dist/demos/demo-flow-field.js.map +1 -0
  345. package/dist/demos/demo-four-corners.js +56 -120
  346. package/dist/demos/demo-four-corners.js.map +1 -1
  347. package/dist/demos/demo-image.js +24 -19
  348. package/dist/demos/demo-image.js.map +1 -1
  349. package/dist/demos/demo-matrix-rain.d.ts +11 -0
  350. package/dist/demos/demo-matrix-rain.d.ts.map +1 -0
  351. package/dist/demos/demo-matrix-rain.js +246 -0
  352. package/dist/demos/demo-matrix-rain.js.map +1 -0
  353. package/dist/demos/demo-pipeline.js +56 -51
  354. package/dist/demos/demo-pipeline.js.map +1 -1
  355. package/dist/demos/demo-samples.js +56 -402
  356. package/dist/demos/demo-samples.js.map +1 -1
  357. package/dist/encoders/AudioEncoder.d.ts +4 -28
  358. package/dist/encoders/AudioEncoder.d.ts.map +1 -1
  359. package/dist/encoders/AudioEncoder.js +83 -20
  360. package/dist/encoders/AudioEncoder.js.map +1 -1
  361. package/dist/encoders/VideoEncoder.d.ts +25 -46
  362. package/dist/encoders/VideoEncoder.d.ts.map +1 -1
  363. package/dist/encoders/VideoEncoder.js +180 -88
  364. package/dist/encoders/VideoEncoder.js.map +1 -1
  365. package/dist/encoders/audio/config.d.ts +30 -0
  366. package/dist/encoders/audio/config.d.ts.map +1 -0
  367. package/dist/encoders/audio/config.js +169 -0
  368. package/dist/encoders/audio/config.js.map +1 -0
  369. package/dist/encoders/audio/constants.d.ts +8 -0
  370. package/dist/encoders/audio/constants.d.ts.map +1 -0
  371. package/dist/encoders/audio/constants.js +8 -0
  372. package/dist/encoders/audio/constants.js.map +1 -0
  373. package/dist/encoders/audio/types.d.ts +70 -0
  374. package/dist/encoders/audio/types.d.ts.map +1 -0
  375. package/dist/encoders/audio/types.js +5 -0
  376. package/dist/encoders/audio/types.js.map +1 -0
  377. package/dist/encoders/video/config.d.ts +25 -0
  378. package/dist/encoders/video/config.d.ts.map +1 -0
  379. package/dist/encoders/video/config.js +132 -0
  380. package/dist/encoders/video/config.js.map +1 -0
  381. package/dist/encoders/video/constants.d.ts +8 -0
  382. package/dist/encoders/video/constants.d.ts.map +1 -0
  383. package/dist/encoders/video/constants.js +8 -0
  384. package/dist/encoders/video/constants.js.map +1 -0
  385. package/dist/encoders/video/queue.d.ts +9 -0
  386. package/dist/encoders/video/queue.d.ts.map +1 -0
  387. package/dist/encoders/video/queue.js +17 -0
  388. package/dist/encoders/video/queue.js.map +1 -0
  389. package/dist/encoders/video/types.d.ts +104 -0
  390. package/dist/encoders/video/types.d.ts.map +1 -0
  391. package/dist/encoders/video/types.js +5 -0
  392. package/dist/encoders/video/types.js.map +1 -0
  393. package/dist/formats/color-space/convert.d.ts +27 -0
  394. package/dist/formats/color-space/convert.d.ts.map +1 -0
  395. package/dist/formats/color-space/convert.js +91 -0
  396. package/dist/formats/color-space/convert.js.map +1 -0
  397. package/dist/formats/color-space/extract.d.ts +32 -0
  398. package/dist/formats/color-space/extract.d.ts.map +1 -0
  399. package/dist/formats/color-space/extract.js +116 -0
  400. package/dist/formats/color-space/extract.js.map +1 -0
  401. package/dist/formats/color-space/index.d.ts +10 -0
  402. package/dist/formats/color-space/index.d.ts.map +1 -0
  403. package/dist/formats/color-space/index.js +14 -0
  404. package/dist/formats/color-space/index.js.map +1 -0
  405. package/dist/formats/color-space/maps.d.ts +70 -0
  406. package/dist/formats/color-space/maps.d.ts.map +1 -0
  407. package/dist/formats/color-space/maps.js +70 -0
  408. package/dist/formats/color-space/maps.js.map +1 -0
  409. package/dist/formats/color-space/types.d.ts +68 -0
  410. package/dist/formats/color-space/types.d.ts.map +1 -0
  411. package/dist/formats/color-space/types.js +49 -0
  412. package/dist/formats/color-space/types.js.map +1 -0
  413. package/dist/formats/color-space.d.ts +4 -124
  414. package/dist/formats/color-space.d.ts.map +1 -1
  415. package/dist/formats/color-space.js +5 -108
  416. package/dist/formats/color-space.js.map +1 -1
  417. package/dist/formats/conversions/frame-converter.d.ts +8 -3
  418. package/dist/formats/conversions/frame-converter.d.ts.map +1 -1
  419. package/dist/formats/conversions/frame-converter.js +16 -12
  420. package/dist/formats/conversions/frame-converter.js.map +1 -1
  421. package/dist/formats/pixel-format/helpers.d.ts +49 -0
  422. package/dist/formats/pixel-format/helpers.d.ts.map +1 -0
  423. package/dist/formats/pixel-format/helpers.js +117 -0
  424. package/dist/formats/pixel-format/helpers.js.map +1 -0
  425. package/dist/formats/pixel-format/index.d.ts +9 -0
  426. package/dist/formats/pixel-format/index.d.ts.map +1 -0
  427. package/dist/formats/pixel-format/index.js +10 -0
  428. package/dist/formats/pixel-format/index.js.map +1 -0
  429. package/dist/formats/pixel-format/sizes.d.ts +17 -0
  430. package/dist/formats/pixel-format/sizes.d.ts.map +1 -0
  431. package/dist/formats/pixel-format/sizes.js +159 -0
  432. package/dist/formats/pixel-format/sizes.js.map +1 -0
  433. package/dist/formats/pixel-format/types.d.ts +13 -0
  434. package/dist/formats/pixel-format/types.d.ts.map +1 -0
  435. package/dist/formats/pixel-format/types.js +5 -0
  436. package/dist/formats/pixel-format/types.js.map +1 -0
  437. package/dist/formats/pixel-formats.d.ts +4 -53
  438. package/dist/formats/pixel-formats.d.ts.map +1 -1
  439. package/dist/formats/pixel-formats.js +5 -179
  440. package/dist/formats/pixel-formats.js.map +1 -1
  441. package/dist/hardware/decoder-args.d.ts.map +1 -1
  442. package/dist/hardware/decoder-args.js +35 -14
  443. package/dist/hardware/decoder-args.js.map +1 -1
  444. package/dist/hardware/detection.d.ts.map +1 -1
  445. package/dist/hardware/detection.js +39 -0
  446. package/dist/hardware/detection.js.map +1 -1
  447. package/dist/hardware/encoder-args.d.ts.map +1 -1
  448. package/dist/hardware/encoder-args.js +43 -5
  449. package/dist/hardware/encoder-args.js.map +1 -1
  450. package/dist/hardware/types.d.ts.map +1 -1
  451. package/dist/hardware/types.js +36 -28
  452. package/dist/hardware/types.js.map +1 -1
  453. package/dist/node-av/NodeAvVideoEncoder.d.ts +5 -0
  454. package/dist/node-av/NodeAvVideoEncoder.d.ts.map +1 -1
  455. package/dist/node-av/NodeAvVideoEncoder.js +76 -23
  456. package/dist/node-av/NodeAvVideoEncoder.js.map +1 -1
  457. package/dist/transfer/detach.d.ts +42 -0
  458. package/dist/transfer/detach.d.ts.map +1 -0
  459. package/dist/transfer/detach.js +93 -0
  460. package/dist/transfer/detach.js.map +1 -0
  461. package/dist/transfer/index.d.ts +9 -0
  462. package/dist/transfer/index.d.ts.map +1 -0
  463. package/dist/transfer/index.js +11 -0
  464. package/dist/transfer/index.js.map +1 -0
  465. package/dist/transfer/validate.d.ts +45 -0
  466. package/dist/transfer/validate.d.ts.map +1 -0
  467. package/dist/transfer/validate.js +98 -0
  468. package/dist/transfer/validate.js.map +1 -0
  469. package/dist/types/video.d.ts +16 -0
  470. package/dist/types/video.d.ts.map +1 -1
  471. package/dist/utils/avc.d.ts +2 -0
  472. package/dist/utils/avc.d.ts.map +1 -1
  473. package/dist/utils/avc.js +36 -8
  474. package/dist/utils/avc.js.map +1 -1
  475. package/dist/utils/codec-validation.d.ts +3 -28
  476. package/dist/utils/codec-validation.d.ts.map +1 -1
  477. package/dist/utils/codec-validation.js +4 -238
  478. package/dist/utils/codec-validation.js.map +1 -1
  479. package/dist/utils/hevc.d.ts +2 -0
  480. package/dist/utils/hevc.d.ts.map +1 -1
  481. package/dist/utils/hevc.js +42 -8
  482. package/dist/utils/hevc.js.map +1 -1
  483. package/docs/api.md +24 -4
  484. package/docs/architecture-refactor-plan.md +149 -0
  485. package/docs/architecture.md +258 -0
  486. package/docs/configuration.md +10 -7
  487. package/package.json +6 -4
  488. package/dist/config/ffmpeg-quality.d.ts +0 -14
  489. package/dist/config/ffmpeg-quality.d.ts.map +0 -1
  490. package/dist/config/ffmpeg-quality.js +0 -41
  491. package/dist/config/ffmpeg-quality.js.map +0 -1
  492. package/dist/polyfills/CanvasRenderingContext2DPolyfill.d.ts +0 -72
  493. package/dist/polyfills/CanvasRenderingContext2DPolyfill.d.ts.map +0 -1
  494. package/dist/polyfills/CanvasRenderingContext2DPolyfill.js +0 -293
  495. package/dist/polyfills/CanvasRenderingContext2DPolyfill.js.map +0 -1
  496. package/dist/polyfills/ImageDataPolyfill.d.ts +0 -12
  497. package/dist/polyfills/ImageDataPolyfill.d.ts.map +0 -1
  498. package/dist/polyfills/ImageDataPolyfill.js +0 -22
  499. package/dist/polyfills/ImageDataPolyfill.js.map +0 -1
  500. package/dist/polyfills/OffscreenCanvasPolyfill.d.ts +0 -16
  501. package/dist/polyfills/OffscreenCanvasPolyfill.d.ts.map +0 -1
  502. package/dist/polyfills/OffscreenCanvasPolyfill.js +0 -46
  503. package/dist/polyfills/OffscreenCanvasPolyfill.js.map +0 -1
  504. package/dist/polyfills/VideoFramePolyfill.d.ts +0 -44
  505. package/dist/polyfills/VideoFramePolyfill.d.ts.map +0 -1
  506. package/dist/polyfills/VideoFramePolyfill.js +0 -98
  507. package/dist/polyfills/VideoFramePolyfill.js.map +0 -1
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Pixel format helper functions
3
+ */
4
+ /**
5
+ * Check if a format is RGB-based (as opposed to YUV)
6
+ */
7
+ export function isRgbFormat(format) {
8
+ return format === 'RGBA' || format === 'RGBX' || format === 'BGRA' || format === 'BGRX';
9
+ }
10
+ /**
11
+ * Check if a format is YUV-based
12
+ */
13
+ export function isYuvFormat(format) {
14
+ return !isRgbFormat(format);
15
+ }
16
+ /**
17
+ * Check if a format uses BGR channel order
18
+ */
19
+ export function isBgrFormat(format) {
20
+ return format === 'BGRA' || format === 'BGRX';
21
+ }
22
+ /**
23
+ * Check if a format has an alpha channel
24
+ */
25
+ export function hasAlphaChannel(format) {
26
+ return format === 'RGBA' || format === 'BGRA' ||
27
+ format === 'I420A' || format === 'I422A' || format === 'I444A' ||
28
+ format === 'I420AP10' || format === 'I422AP10' || format === 'I444AP10' ||
29
+ format === 'I420AP12' || format === 'I422AP12' || format === 'I444AP12';
30
+ }
31
+ /**
32
+ * Check if a format is 10-bit (high bit depth)
33
+ */
34
+ export function is10BitFormat(format) {
35
+ return format === 'I420P10' || format === 'I422P10' || format === 'I444P10' || format === 'P010' ||
36
+ format === 'I420AP10' || format === 'I422AP10' || format === 'I444AP10';
37
+ }
38
+ /**
39
+ * Check if a format is 12-bit (high bit depth)
40
+ */
41
+ export function is12BitFormat(format) {
42
+ return format === 'I420P12' || format === 'I422P12' || format === 'I444P12' ||
43
+ format === 'I420AP12' || format === 'I422AP12' || format === 'I444AP12';
44
+ }
45
+ /**
46
+ * Check if a format uses high bit depth (10 or 12 bit)
47
+ */
48
+ export function isHighBitDepthFormat(format) {
49
+ return is10BitFormat(format) || is12BitFormat(format);
50
+ }
51
+ /**
52
+ * Get the bit depth for a format (8, 10, or 12)
53
+ */
54
+ export function getBitDepth(format) {
55
+ if (is12BitFormat(format))
56
+ return 12;
57
+ if (is10BitFormat(format))
58
+ return 10;
59
+ return 8;
60
+ }
61
+ /**
62
+ * Get the 8-bit equivalent of a high bit depth format
63
+ */
64
+ export function get8BitEquivalent(format) {
65
+ switch (format) {
66
+ case 'I420P10':
67
+ case 'I420P12':
68
+ return 'I420';
69
+ case 'I420AP10':
70
+ case 'I420AP12':
71
+ return 'I420A';
72
+ case 'I422P10':
73
+ case 'I422P12':
74
+ return 'I422';
75
+ case 'I422AP10':
76
+ case 'I422AP12':
77
+ return 'I422A';
78
+ case 'I444P10':
79
+ case 'I444P12':
80
+ return 'I444';
81
+ case 'I444AP10':
82
+ case 'I444AP12':
83
+ return 'I444A';
84
+ case 'P010': return 'NV12';
85
+ default: return format;
86
+ }
87
+ }
88
+ /**
89
+ * Get the 10-bit equivalent of an 8-bit format
90
+ */
91
+ export function get10BitEquivalent(format) {
92
+ switch (format) {
93
+ case 'I420': return 'I420P10';
94
+ case 'I420A': return 'I420AP10';
95
+ case 'I422': return 'I422P10';
96
+ case 'I422A': return 'I422AP10';
97
+ case 'I444': return 'I444P10';
98
+ case 'I444A': return 'I444AP10';
99
+ case 'NV12': return 'P010';
100
+ default: return format;
101
+ }
102
+ }
103
+ /**
104
+ * Get the 12-bit equivalent of an 8-bit format
105
+ */
106
+ export function get12BitEquivalent(format) {
107
+ switch (format) {
108
+ case 'I420': return 'I420P12';
109
+ case 'I420A': return 'I420AP12';
110
+ case 'I422': return 'I422P12';
111
+ case 'I422A': return 'I422AP12';
112
+ case 'I444': return 'I444P12';
113
+ case 'I444A': return 'I444AP12';
114
+ default: return format;
115
+ }
116
+ }
117
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/formats/pixel-format/helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Pixel format module
3
+ *
4
+ * Provides pixel format types and utilities for WebCodecs video frames.
5
+ */
6
+ export type { VideoPixelFormat, PlaneInfo } from './types.js';
7
+ export { getFrameAllocationSize, getPlaneCount, getPlaneInfo, } from './sizes.js';
8
+ export { isRgbFormat, isYuvFormat, isBgrFormat, hasAlphaChannel, is10BitFormat, is12BitFormat, isHighBitDepthFormat, getBitDepth, get8BitEquivalent, get10BitEquivalent, get12BitEquivalent, } from './helpers.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/formats/pixel-format/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG9D,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,YAAY,GACb,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Pixel format module
3
+ *
4
+ * Provides pixel format types and utilities for WebCodecs video frames.
5
+ */
6
+ // Size calculations
7
+ export { getFrameAllocationSize, getPlaneCount, getPlaneInfo, } from './sizes.js';
8
+ // Helper functions
9
+ export { isRgbFormat, isYuvFormat, isBgrFormat, hasAlphaChannel, is10BitFormat, is12BitFormat, isHighBitDepthFormat, getBitDepth, get8BitEquivalent, get10BitEquivalent, get12BitEquivalent, } from './helpers.js';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/formats/pixel-format/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,oBAAoB;AACpB,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,YAAY,GACb,MAAM,YAAY,CAAC;AAEpB,mBAAmB;AACnB,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Pixel format size calculations
3
+ */
4
+ import type { VideoPixelFormat, PlaneInfo } from './types.js';
5
+ /**
6
+ * Calculate total allocation size for a frame
7
+ */
8
+ export declare function getFrameAllocationSize(format: VideoPixelFormat, width: number, height: number): number;
9
+ /**
10
+ * Get number of planes for a pixel format
11
+ */
12
+ export declare function getPlaneCount(format: VideoPixelFormat): number;
13
+ /**
14
+ * Get plane info for a format at a specific plane index
15
+ */
16
+ export declare function getPlaneInfo(format: VideoPixelFormat, width: number, height: number, planeIndex: number): PlaneInfo;
17
+ //# sourceMappingURL=sizes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sizes.d.ts","sourceRoot":"","sources":["../../../src/formats/pixel-format/sizes.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE9D;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CA+CtG;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAiC9D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,SAAS,CAuDX"}
@@ -0,0 +1,159 @@
1
+ /**
2
+ * Pixel format size calculations
3
+ */
4
+ /**
5
+ * Calculate total allocation size for a frame
6
+ */
7
+ export function getFrameAllocationSize(format, width, height) {
8
+ const chromaW = Math.ceil(width / 2);
9
+ const chromaH = Math.ceil(height / 2);
10
+ switch (format) {
11
+ case 'I420':
12
+ return width * height + 2 * chromaW * chromaH;
13
+ case 'I420A':
14
+ return width * height * 2 + 2 * chromaW * chromaH;
15
+ case 'I422':
16
+ return width * height + 2 * chromaW * height;
17
+ case 'I422A':
18
+ return width * height * 2 + 2 * chromaW * height;
19
+ case 'I444':
20
+ return width * height * 3;
21
+ case 'I444A':
22
+ return width * height * 4;
23
+ case 'NV12':
24
+ return width * height + width * chromaH;
25
+ case 'I420P10':
26
+ case 'I420P12':
27
+ return (width * height + 2 * chromaW * chromaH) * 2;
28
+ case 'I420AP10':
29
+ case 'I420AP12':
30
+ return (width * height * 2 + 2 * chromaW * chromaH) * 2;
31
+ case 'I422P10':
32
+ case 'I422P12':
33
+ return (width * height + 2 * chromaW * height) * 2;
34
+ case 'I422AP10':
35
+ case 'I422AP12':
36
+ return (width * height * 2 + 2 * chromaW * height) * 2;
37
+ case 'I444P10':
38
+ case 'I444P12':
39
+ return width * height * 3 * 2;
40
+ case 'I444AP10':
41
+ case 'I444AP12':
42
+ return width * height * 4 * 2;
43
+ case 'P010':
44
+ return (width * height + width * chromaH) * 2;
45
+ case 'RGBA':
46
+ case 'RGBX':
47
+ case 'BGRA':
48
+ case 'BGRX':
49
+ return width * height * 4;
50
+ default:
51
+ return width * height * 4;
52
+ }
53
+ }
54
+ /**
55
+ * Get number of planes for a pixel format
56
+ */
57
+ export function getPlaneCount(format) {
58
+ switch (format) {
59
+ case 'I420':
60
+ case 'I422':
61
+ case 'I444':
62
+ case 'I420P10':
63
+ case 'I422P10':
64
+ case 'I444P10':
65
+ case 'I420P12':
66
+ case 'I422P12':
67
+ case 'I444P12':
68
+ return 3;
69
+ case 'I420A':
70
+ case 'I422A':
71
+ case 'I444A':
72
+ case 'I420AP10':
73
+ case 'I422AP10':
74
+ case 'I444AP10':
75
+ case 'I420AP12':
76
+ case 'I422AP12':
77
+ case 'I444AP12':
78
+ return 4;
79
+ case 'NV12':
80
+ case 'P010':
81
+ return 2;
82
+ case 'RGBA':
83
+ case 'RGBX':
84
+ case 'BGRA':
85
+ case 'BGRX':
86
+ return 1;
87
+ default:
88
+ return 1;
89
+ }
90
+ }
91
+ /**
92
+ * Get plane info for a format at a specific plane index
93
+ */
94
+ export function getPlaneInfo(format, width, height, planeIndex) {
95
+ const chromaW = Math.ceil(width / 2);
96
+ const chromaH = Math.ceil(height / 2);
97
+ switch (format) {
98
+ case 'I420':
99
+ if (planeIndex === 0)
100
+ return { width, height, bytesPerPixel: 1 };
101
+ return { width: chromaW, height: chromaH, bytesPerPixel: 1 };
102
+ case 'I420A':
103
+ if (planeIndex === 0 || planeIndex === 3)
104
+ return { width, height, bytesPerPixel: 1 };
105
+ return { width: chromaW, height: chromaH, bytesPerPixel: 1 };
106
+ case 'I422':
107
+ if (planeIndex === 0)
108
+ return { width, height, bytesPerPixel: 1 };
109
+ return { width: chromaW, height, bytesPerPixel: 1 };
110
+ case 'I422A':
111
+ if (planeIndex === 0 || planeIndex === 3)
112
+ return { width, height, bytesPerPixel: 1 };
113
+ return { width: chromaW, height, bytesPerPixel: 1 };
114
+ case 'I444':
115
+ case 'I444A':
116
+ return { width, height, bytesPerPixel: 1 };
117
+ case 'NV12':
118
+ if (planeIndex === 0)
119
+ return { width, height, bytesPerPixel: 1 };
120
+ return { width, height: chromaH, bytesPerPixel: 2 };
121
+ case 'I420P10':
122
+ case 'I420P12':
123
+ if (planeIndex === 0)
124
+ return { width, height, bytesPerPixel: 2 };
125
+ return { width: chromaW, height: chromaH, bytesPerPixel: 2 };
126
+ case 'I420AP10':
127
+ case 'I420AP12':
128
+ if (planeIndex === 0 || planeIndex === 3)
129
+ return { width, height, bytesPerPixel: 2 };
130
+ return { width: chromaW, height: chromaH, bytesPerPixel: 2 };
131
+ case 'I422P10':
132
+ case 'I422P12':
133
+ if (planeIndex === 0)
134
+ return { width, height, bytesPerPixel: 2 };
135
+ return { width: chromaW, height, bytesPerPixel: 2 };
136
+ case 'I422AP10':
137
+ case 'I422AP12':
138
+ if (planeIndex === 0 || planeIndex === 3)
139
+ return { width, height, bytesPerPixel: 2 };
140
+ return { width: chromaW, height, bytesPerPixel: 2 };
141
+ case 'I444P10':
142
+ case 'I444P12':
143
+ case 'I444AP10':
144
+ case 'I444AP12':
145
+ return { width, height, bytesPerPixel: 2 };
146
+ case 'P010':
147
+ if (planeIndex === 0)
148
+ return { width, height, bytesPerPixel: 2 };
149
+ return { width, height: chromaH, bytesPerPixel: 4 };
150
+ case 'RGBA':
151
+ case 'RGBX':
152
+ case 'BGRA':
153
+ case 'BGRX':
154
+ return { width, height, bytesPerPixel: 4 };
155
+ default:
156
+ return { width, height, bytesPerPixel: 4 };
157
+ }
158
+ }
159
+ //# sourceMappingURL=sizes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sizes.js","sourceRoot":"","sources":["../../../src/formats/pixel-format/sizes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Pixel format type definitions
3
+ */
4
+ export type VideoPixelFormat = 'I420' | 'I420A' | 'I422' | 'I422A' | 'I444' | 'I444A' | 'NV12' | 'RGBA' | 'RGBX' | 'BGRA' | 'BGRX' | 'I420P10' | 'I420AP10' | 'I422P10' | 'I422AP10' | 'I444P10' | 'I444AP10' | 'P010' | 'I420P12' | 'I420AP12' | 'I422P12' | 'I422AP12' | 'I444P12' | 'I444AP12';
5
+ /**
6
+ * Information about a single plane in a pixel format
7
+ */
8
+ export interface PlaneInfo {
9
+ width: number;
10
+ height: number;
11
+ bytesPerPixel: number;
12
+ }
13
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/formats/pixel-format/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GAEN,SAAS,GACT,UAAU,GACV,SAAS,GACT,UAAU,GACV,SAAS,GACT,UAAU,GACV,MAAM,GAEN,SAAS,GACT,UAAU,GACV,SAAS,GACT,UAAU,GACV,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Pixel format type definitions
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/formats/pixel-format/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,57 +1,8 @@
1
1
  /**
2
2
  * Pixel format definitions and utilities
3
+ *
4
+ * @deprecated Import from './pixel-format' instead for new code.
5
+ * This file re-exports from the new modular structure for backward compatibility.
3
6
  */
4
- export type VideoPixelFormat = 'I420' | 'I420A' | 'I422' | 'I444' | 'NV12' | 'RGBA' | 'RGBX' | 'BGRA' | 'BGRX' | 'I420P10' | 'I422P10' | 'I444P10' | 'P010';
5
- /**
6
- * Information about a single plane in a pixel format
7
- */
8
- export interface PlaneInfo {
9
- width: number;
10
- height: number;
11
- bytesPerPixel: number;
12
- }
13
- /**
14
- * Calculate total allocation size for a frame
15
- */
16
- export declare function getFrameAllocationSize(format: VideoPixelFormat, width: number, height: number): number;
17
- /**
18
- * Get number of planes for a pixel format
19
- */
20
- export declare function getPlaneCount(format: VideoPixelFormat): number;
21
- /**
22
- * Get plane info for a format at a specific plane index
23
- */
24
- export declare function getPlaneInfo(format: VideoPixelFormat, width: number, height: number, planeIndex: number): PlaneInfo;
25
- /**
26
- * Check if a format is RGB-based (as opposed to YUV)
27
- */
28
- export declare function isRgbFormat(format: VideoPixelFormat): boolean;
29
- /**
30
- * Check if a format is YUV-based
31
- */
32
- export declare function isYuvFormat(format: VideoPixelFormat): boolean;
33
- /**
34
- * Check if a format uses BGR channel order
35
- */
36
- export declare function isBgrFormat(format: VideoPixelFormat): boolean;
37
- /**
38
- * Check if a format has an alpha channel
39
- */
40
- export declare function hasAlphaChannel(format: VideoPixelFormat): boolean;
41
- /**
42
- * Check if a format is 10-bit (high bit depth)
43
- */
44
- export declare function is10BitFormat(format: VideoPixelFormat): boolean;
45
- /**
46
- * Get the bit depth for a format (8 or 10)
47
- */
48
- export declare function getBitDepth(format: VideoPixelFormat): number;
49
- /**
50
- * Get the 8-bit equivalent of a 10-bit format
51
- */
52
- export declare function get8BitEquivalent(format: VideoPixelFormat): VideoPixelFormat;
53
- /**
54
- * Get the 10-bit equivalent of an 8-bit format
55
- */
56
- export declare function get10BitEquivalent(format: VideoPixelFormat): VideoPixelFormat;
7
+ export * from './pixel-format/index.js';
57
8
  //# sourceMappingURL=pixel-formats.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pixel-formats.d.ts","sourceRoot":"","sources":["../../src/formats/pixel-formats.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GAEN,SAAS,GACT,SAAS,GACT,SAAS,GACT,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAyCtG;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAsB9D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,SAAS,CAuCX;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAE7D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAE7D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAE7D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAEjE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAE/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAE5D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAQ5E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAQ7E"}
1
+ {"version":3,"file":"pixel-formats.d.ts","sourceRoot":"","sources":["../../src/formats/pixel-formats.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,yBAAyB,CAAC"}
@@ -1,183 +1,9 @@
1
1
  /**
2
2
  * Pixel format definitions and utilities
3
+ *
4
+ * @deprecated Import from './pixel-format' instead for new code.
5
+ * This file re-exports from the new modular structure for backward compatibility.
3
6
  */
4
- /**
5
- * Calculate total allocation size for a frame
6
- */
7
- export function getFrameAllocationSize(format, width, height) {
8
- const chromaW = Math.ceil(width / 2);
9
- const chromaH = Math.ceil(height / 2);
10
- switch (format) {
11
- case 'I420':
12
- // Y: width * height, U: (width/2) * (height/2), V: (width/2) * (height/2)
13
- return width * height + 2 * chromaW * chromaH;
14
- case 'I420A':
15
- // I420 + Alpha plane (width * height)
16
- return width * height * 2 + 2 * chromaW * chromaH;
17
- case 'I422':
18
- // Y: width * height, U: (width/2) * height, V: (width/2) * height
19
- return width * height + 2 * chromaW * height;
20
- case 'I444':
21
- // Y: width * height, U: width * height, V: width * height
22
- return width * height * 3;
23
- case 'NV12':
24
- // Y: width * height, UV interleaved: width * (height/2)
25
- return width * height + width * chromaH;
26
- // 10-bit formats: 2 bytes per sample (16-bit container)
27
- case 'I420P10':
28
- // Y: width * height * 2, U: chromaW * chromaH * 2, V: chromaW * chromaH * 2
29
- return (width * height + 2 * chromaW * chromaH) * 2;
30
- case 'I422P10':
31
- // Y: width * height * 2, U: chromaW * height * 2, V: chromaW * height * 2
32
- return (width * height + 2 * chromaW * height) * 2;
33
- case 'I444P10':
34
- // Y, U, V all full size, 2 bytes each
35
- return width * height * 3 * 2;
36
- case 'P010':
37
- // Y: width * height * 2, UV interleaved: width * chromaH * 2
38
- return (width * height + width * chromaH) * 2;
39
- case 'RGBA':
40
- case 'RGBX':
41
- case 'BGRA':
42
- case 'BGRX':
43
- return width * height * 4;
44
- default:
45
- return width * height * 4; // Assume RGBA as fallback
46
- }
47
- }
48
- /**
49
- * Get number of planes for a pixel format
50
- */
51
- export function getPlaneCount(format) {
52
- switch (format) {
53
- case 'I420':
54
- case 'I422':
55
- case 'I444':
56
- case 'I420P10':
57
- case 'I422P10':
58
- case 'I444P10':
59
- return 3; // Y, U, V
60
- case 'I420A':
61
- return 4; // Y, U, V, A
62
- case 'NV12':
63
- case 'P010':
64
- return 2; // Y, UV interleaved
65
- case 'RGBA':
66
- case 'RGBX':
67
- case 'BGRA':
68
- case 'BGRX':
69
- return 1; // Single plane
70
- default:
71
- return 1;
72
- }
73
- }
74
- /**
75
- * Get plane info for a format at a specific plane index
76
- */
77
- export function getPlaneInfo(format, width, height, planeIndex) {
78
- const chromaW = Math.ceil(width / 2);
79
- const chromaH = Math.ceil(height / 2);
80
- switch (format) {
81
- case 'I420':
82
- if (planeIndex === 0)
83
- return { width, height, bytesPerPixel: 1 };
84
- return { width: chromaW, height: chromaH, bytesPerPixel: 1 };
85
- case 'I420A':
86
- if (planeIndex === 0 || planeIndex === 3)
87
- return { width, height, bytesPerPixel: 1 };
88
- return { width: chromaW, height: chromaH, bytesPerPixel: 1 };
89
- case 'I422':
90
- if (planeIndex === 0)
91
- return { width, height, bytesPerPixel: 1 };
92
- return { width: chromaW, height, bytesPerPixel: 1 };
93
- case 'I444':
94
- return { width, height, bytesPerPixel: 1 };
95
- case 'NV12':
96
- if (planeIndex === 0)
97
- return { width, height, bytesPerPixel: 1 };
98
- return { width, height: chromaH, bytesPerPixel: 2 }; // UV interleaved
99
- // 10-bit formats: 2 bytes per sample
100
- case 'I420P10':
101
- if (planeIndex === 0)
102
- return { width, height, bytesPerPixel: 2 };
103
- return { width: chromaW, height: chromaH, bytesPerPixel: 2 };
104
- case 'I422P10':
105
- if (planeIndex === 0)
106
- return { width, height, bytesPerPixel: 2 };
107
- return { width: chromaW, height, bytesPerPixel: 2 };
108
- case 'I444P10':
109
- return { width, height, bytesPerPixel: 2 };
110
- case 'P010':
111
- if (planeIndex === 0)
112
- return { width, height, bytesPerPixel: 2 };
113
- return { width, height: chromaH, bytesPerPixel: 4 }; // UV interleaved, 2 bytes each
114
- case 'RGBA':
115
- case 'RGBX':
116
- case 'BGRA':
117
- case 'BGRX':
118
- return { width, height, bytesPerPixel: 4 };
119
- default:
120
- return { width, height, bytesPerPixel: 4 };
121
- }
122
- }
123
- /**
124
- * Check if a format is RGB-based (as opposed to YUV)
125
- */
126
- export function isRgbFormat(format) {
127
- return format === 'RGBA' || format === 'RGBX' || format === 'BGRA' || format === 'BGRX';
128
- }
129
- /**
130
- * Check if a format is YUV-based
131
- */
132
- export function isYuvFormat(format) {
133
- return !isRgbFormat(format);
134
- }
135
- /**
136
- * Check if a format uses BGR channel order
137
- */
138
- export function isBgrFormat(format) {
139
- return format === 'BGRA' || format === 'BGRX';
140
- }
141
- /**
142
- * Check if a format has an alpha channel
143
- */
144
- export function hasAlphaChannel(format) {
145
- return format === 'RGBA' || format === 'BGRA' || format === 'I420A';
146
- }
147
- /**
148
- * Check if a format is 10-bit (high bit depth)
149
- */
150
- export function is10BitFormat(format) {
151
- return format === 'I420P10' || format === 'I422P10' || format === 'I444P10' || format === 'P010';
152
- }
153
- /**
154
- * Get the bit depth for a format (8 or 10)
155
- */
156
- export function getBitDepth(format) {
157
- return is10BitFormat(format) ? 10 : 8;
158
- }
159
- /**
160
- * Get the 8-bit equivalent of a 10-bit format
161
- */
162
- export function get8BitEquivalent(format) {
163
- switch (format) {
164
- case 'I420P10': return 'I420';
165
- case 'I422P10': return 'I422';
166
- case 'I444P10': return 'I444';
167
- case 'P010': return 'NV12';
168
- default: return format;
169
- }
170
- }
171
- /**
172
- * Get the 10-bit equivalent of an 8-bit format
173
- */
174
- export function get10BitEquivalent(format) {
175
- switch (format) {
176
- case 'I420': return 'I420P10';
177
- case 'I422': return 'I422P10';
178
- case 'I444': return 'I444P10';
179
- case 'NV12': return 'P010';
180
- default: return format;
181
- }
182
- }
7
+ // Re-export everything from the new modular structure
8
+ export * from './pixel-format/index.js';
183
9
  //# sourceMappingURL=pixel-formats.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pixel-formats.js","sourceRoot":"","sources":["../../src/formats/pixel-formats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pixel-formats.js","sourceRoot":"","sources":["../../src/formats/pixel-formats.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,sDAAsD;AACtD,cAAc,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"decoder-args.d.ts","sourceRoot":"","sources":["../../src/hardware/decoder-args.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,0BAA0B,EAE1B,cAAc,EACf,MAAM,YAAY,CAAC;AAMpB;;GAEG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,UAAU,GAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAiC,GACpF,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CAGtG;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,cAAc,EACrB,UAAU,GAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAiC,GACpF;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAG7F"}
1
+ {"version":3,"file":"decoder-args.d.ts","sourceRoot":"","sources":["../../src/hardware/decoder-args.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,0BAA0B,EAG1B,cAAc,EACf,MAAM,YAAY,CAAC;AAOpB;;GAEG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,UAAU,GAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAiC,GACpF,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CAGtG;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,cAAc,EACrB,UAAU,GAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAiC,GACpF;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAG7F"}