@yume-chan/scrcpy 0.0.0-20240714132542

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 (242) hide show
  1. package/CHANGELOG.md +149 -0
  2. package/LICENSE +21 -0
  3. package/README.md +49 -0
  4. package/esm/codec/av1.d.ts +397 -0
  5. package/esm/codec/av1.d.ts.map +1 -0
  6. package/esm/codec/av1.js +626 -0
  7. package/esm/codec/av1.js.map +1 -0
  8. package/esm/codec/h264.d.ts +78 -0
  9. package/esm/codec/h264.d.ts.map +1 -0
  10. package/esm/codec/h264.js +256 -0
  11. package/esm/codec/h264.js.map +1 -0
  12. package/esm/codec/h265.d.ts +514 -0
  13. package/esm/codec/h265.d.ts.map +1 -0
  14. package/esm/codec/h265.js +1097 -0
  15. package/esm/codec/h265.js.map +1 -0
  16. package/esm/codec/index.d.ts +5 -0
  17. package/esm/codec/index.d.ts.map +1 -0
  18. package/esm/codec/index.js +5 -0
  19. package/esm/codec/index.js.map +1 -0
  20. package/esm/codec/nalu.d.ts +28 -0
  21. package/esm/codec/nalu.d.ts.map +1 -0
  22. package/esm/codec/nalu.js +250 -0
  23. package/esm/codec/nalu.js.map +1 -0
  24. package/esm/control/back-or-screen-on.d.ts +3 -0
  25. package/esm/control/back-or-screen-on.d.ts.map +1 -0
  26. package/esm/control/back-or-screen-on.js +2 -0
  27. package/esm/control/back-or-screen-on.js.map +1 -0
  28. package/esm/control/empty.d.ts +5 -0
  29. package/esm/control/empty.d.ts.map +1 -0
  30. package/esm/control/empty.js +3 -0
  31. package/esm/control/empty.js.map +1 -0
  32. package/esm/control/hover-helper.d.ts +18 -0
  33. package/esm/control/hover-helper.d.ts.map +1 -0
  34. package/esm/control/hover-helper.js +43 -0
  35. package/esm/control/hover-helper.js.map +1 -0
  36. package/esm/control/index.d.ts +14 -0
  37. package/esm/control/index.d.ts.map +1 -0
  38. package/esm/control/index.js +14 -0
  39. package/esm/control/index.js.map +1 -0
  40. package/esm/control/inject-keycode.d.ts +195 -0
  41. package/esm/control/inject-keycode.d.ts.map +1 -0
  42. package/esm/control/inject-keycode.js +200 -0
  43. package/esm/control/inject-keycode.js.map +1 -0
  44. package/esm/control/inject-scroll.d.ts +3 -0
  45. package/esm/control/inject-scroll.d.ts.map +1 -0
  46. package/esm/control/inject-scroll.js +2 -0
  47. package/esm/control/inject-scroll.js.map +1 -0
  48. package/esm/control/inject-text.d.ts +8 -0
  49. package/esm/control/inject-text.d.ts.map +1 -0
  50. package/esm/control/inject-text.js +6 -0
  51. package/esm/control/inject-text.js.map +1 -0
  52. package/esm/control/inject-touch.d.ts +34 -0
  53. package/esm/control/inject-touch.d.ts.map +1 -0
  54. package/esm/control/inject-touch.js +36 -0
  55. package/esm/control/inject-touch.js.map +1 -0
  56. package/esm/control/rotate-device.d.ts +5 -0
  57. package/esm/control/rotate-device.d.ts.map +1 -0
  58. package/esm/control/rotate-device.js +3 -0
  59. package/esm/control/rotate-device.js.map +1 -0
  60. package/esm/control/serializer.d.ts +29 -0
  61. package/esm/control/serializer.d.ts.map +1 -0
  62. package/esm/control/serializer.js +76 -0
  63. package/esm/control/serializer.js.map +1 -0
  64. package/esm/control/set-clipboard.d.ts +3 -0
  65. package/esm/control/set-clipboard.d.ts.map +1 -0
  66. package/esm/control/set-clipboard.js +2 -0
  67. package/esm/control/set-clipboard.js.map +1 -0
  68. package/esm/control/set-screen-power-mode.d.ts +11 -0
  69. package/esm/control/set-screen-power-mode.d.ts.map +1 -0
  70. package/esm/control/set-screen-power-mode.js +11 -0
  71. package/esm/control/set-screen-power-mode.js.map +1 -0
  72. package/esm/control/type.d.ts +29 -0
  73. package/esm/control/type.d.ts.map +1 -0
  74. package/esm/control/type.js +41 -0
  75. package/esm/control/type.js.map +1 -0
  76. package/esm/control/writer.d.ts +33 -0
  77. package/esm/control/writer.d.ts.map +1 -0
  78. package/esm/control/writer.js +72 -0
  79. package/esm/control/writer.js.map +1 -0
  80. package/esm/index.d.ts +4 -0
  81. package/esm/index.d.ts.map +1 -0
  82. package/esm/index.js +4 -0
  83. package/esm/index.js.map +1 -0
  84. package/esm/options/1_16/codec-options.d.ts +20 -0
  85. package/esm/options/1_16/codec-options.d.ts.map +1 -0
  86. package/esm/options/1_16/codec-options.js +39 -0
  87. package/esm/options/1_16/codec-options.js.map +1 -0
  88. package/esm/options/1_16/float.d.ts +6 -0
  89. package/esm/options/1_16/float.d.ts.map +1 -0
  90. package/esm/options/1_16/float.js +28 -0
  91. package/esm/options/1_16/float.js.map +1 -0
  92. package/esm/options/1_16/index.d.ts +7 -0
  93. package/esm/options/1_16/index.d.ts.map +1 -0
  94. package/esm/options/1_16/index.js +7 -0
  95. package/esm/options/1_16/index.js.map +1 -0
  96. package/esm/options/1_16/init.d.ts +66 -0
  97. package/esm/options/1_16/init.d.ts.map +1 -0
  98. package/esm/options/1_16/init.js +16 -0
  99. package/esm/options/1_16/init.js.map +1 -0
  100. package/esm/options/1_16/message.d.ts +36 -0
  101. package/esm/options/1_16/message.d.ts.map +1 -0
  102. package/esm/options/1_16/message.js +40 -0
  103. package/esm/options/1_16/message.js.map +1 -0
  104. package/esm/options/1_16/options.d.ts +57 -0
  105. package/esm/options/1_16/options.d.ts.map +1 -0
  106. package/esm/options/1_16/options.js +184 -0
  107. package/esm/options/1_16/options.js.map +1 -0
  108. package/esm/options/1_16/scroll.d.ts +26 -0
  109. package/esm/options/1_16/scroll.d.ts.map +1 -0
  110. package/esm/options/1_16/scroll.js +55 -0
  111. package/esm/options/1_16/scroll.js.map +1 -0
  112. package/esm/options/1_17.d.ts +32 -0
  113. package/esm/options/1_17.d.ts.map +1 -0
  114. package/esm/options/1_17.js +38 -0
  115. package/esm/options/1_17.js.map +1 -0
  116. package/esm/options/1_18.d.ts +59 -0
  117. package/esm/options/1_18.d.ts.map +1 -0
  118. package/esm/options/1_18.js +58 -0
  119. package/esm/options/1_18.js.map +1 -0
  120. package/esm/options/1_21.d.ts +48 -0
  121. package/esm/options/1_21.d.ts.map +1 -0
  122. package/esm/options/1_21.js +92 -0
  123. package/esm/options/1_21.js.map +1 -0
  124. package/esm/options/1_22/index.d.ts +4 -0
  125. package/esm/options/1_22/index.d.ts.map +1 -0
  126. package/esm/options/1_22/index.js +4 -0
  127. package/esm/options/1_22/index.js.map +1 -0
  128. package/esm/options/1_22/init.d.ts +17 -0
  129. package/esm/options/1_22/init.d.ts.map +1 -0
  130. package/esm/options/1_22/init.js +2 -0
  131. package/esm/options/1_22/init.js.map +1 -0
  132. package/esm/options/1_22/options.d.ts +35 -0
  133. package/esm/options/1_22/options.d.ts.map +1 -0
  134. package/esm/options/1_22/options.js +33 -0
  135. package/esm/options/1_22/options.js.map +1 -0
  136. package/esm/options/1_22/scroll.d.ts +17 -0
  137. package/esm/options/1_22/scroll.d.ts.map +1 -0
  138. package/esm/options/1_22/scroll.js +15 -0
  139. package/esm/options/1_22/scroll.js.map +1 -0
  140. package/esm/options/1_23.d.ts +36 -0
  141. package/esm/options/1_23.d.ts.map +1 -0
  142. package/esm/options/1_23.js +41 -0
  143. package/esm/options/1_23.js.map +1 -0
  144. package/esm/options/1_24.d.ts +34 -0
  145. package/esm/options/1_24.d.ts.map +1 -0
  146. package/esm/options/1_24.js +19 -0
  147. package/esm/options/1_24.js.map +1 -0
  148. package/esm/options/1_25/index.d.ts +3 -0
  149. package/esm/options/1_25/index.d.ts.map +1 -0
  150. package/esm/options/1_25/index.js +3 -0
  151. package/esm/options/1_25/index.js.map +1 -0
  152. package/esm/options/1_25/options.d.ts +10 -0
  153. package/esm/options/1_25/options.d.ts.map +1 -0
  154. package/esm/options/1_25/options.js +19 -0
  155. package/esm/options/1_25/options.js.map +1 -0
  156. package/esm/options/1_25/scroll.d.ts +21 -0
  157. package/esm/options/1_25/scroll.d.ts.map +1 -0
  158. package/esm/options/1_25/scroll.js +35 -0
  159. package/esm/options/1_25/scroll.js.map +1 -0
  160. package/esm/options/2_0.d.ts +93 -0
  161. package/esm/options/2_0.d.ts.map +1 -0
  162. package/esm/options/2_0.js +236 -0
  163. package/esm/options/2_0.js.map +1 -0
  164. package/esm/options/2_1.d.ts +47 -0
  165. package/esm/options/2_1.d.ts.map +1 -0
  166. package/esm/options/2_1.js +20 -0
  167. package/esm/options/2_1.js.map +1 -0
  168. package/esm/options/2_2.d.ts +66 -0
  169. package/esm/options/2_2.d.ts.map +1 -0
  170. package/esm/options/2_2.js +41 -0
  171. package/esm/options/2_2.js.map +1 -0
  172. package/esm/options/2_3.d.ts +59 -0
  173. package/esm/options/2_3.d.ts.map +1 -0
  174. package/esm/options/2_3.js +47 -0
  175. package/esm/options/2_3.js.map +1 -0
  176. package/esm/options/codec.d.ts +53 -0
  177. package/esm/options/codec.d.ts.map +1 -0
  178. package/esm/options/codec.js +26 -0
  179. package/esm/options/codec.js.map +1 -0
  180. package/esm/options/index.d.ts +16 -0
  181. package/esm/options/index.d.ts.map +1 -0
  182. package/esm/options/index.js +16 -0
  183. package/esm/options/index.js.map +1 -0
  184. package/esm/options/latest.d.ts +11 -0
  185. package/esm/options/latest.d.ts.map +1 -0
  186. package/esm/options/latest.js +7 -0
  187. package/esm/options/latest.js.map +1 -0
  188. package/esm/options/types.d.ts +98 -0
  189. package/esm/options/types.d.ts.map +1 -0
  190. package/esm/options/types.js +163 -0
  191. package/esm/options/types.js.map +1 -0
  192. package/package.json +51 -0
  193. package/scrcpy.LICENSE +203 -0
  194. package/src/codec/av1.ts +703 -0
  195. package/src/codec/h264.ts +317 -0
  196. package/src/codec/h265.ts +1384 -0
  197. package/src/codec/index.ts +4 -0
  198. package/src/codec/nalu.ts +304 -0
  199. package/src/control/back-or-screen-on.ts +4 -0
  200. package/src/control/empty.ts +3 -0
  201. package/src/control/hover-helper.ts +53 -0
  202. package/src/control/index.ts +13 -0
  203. package/src/control/inject-keycode.ts +216 -0
  204. package/src/control/inject-scroll.ts +4 -0
  205. package/src/control/inject-text.ts +9 -0
  206. package/src/control/inject-touch.ts +39 -0
  207. package/src/control/rotate-device.ts +6 -0
  208. package/src/control/serializer.ts +124 -0
  209. package/src/control/set-clipboard.ts +4 -0
  210. package/src/control/set-screen-power-mode.ts +14 -0
  211. package/src/control/type.ts +49 -0
  212. package/src/control/writer.ts +107 -0
  213. package/src/index.ts +3 -0
  214. package/src/options/1_16/codec-options.ts +71 -0
  215. package/src/options/1_16/float.ts +35 -0
  216. package/src/options/1_16/index.ts +6 -0
  217. package/src/options/1_16/init.ts +80 -0
  218. package/src/options/1_16/message.ts +59 -0
  219. package/src/options/1_16/options.ts +277 -0
  220. package/src/options/1_16/scroll.ts +73 -0
  221. package/src/options/1_17.ts +60 -0
  222. package/src/options/1_18.ts +104 -0
  223. package/src/options/1_21.ts +133 -0
  224. package/src/options/1_22/index.ts +3 -0
  225. package/src/options/1_22/init.ts +19 -0
  226. package/src/options/1_22/options.ts +46 -0
  227. package/src/options/1_22/scroll.ts +26 -0
  228. package/src/options/1_23.ts +62 -0
  229. package/src/options/1_24.ts +27 -0
  230. package/src/options/1_25/index.ts +2 -0
  231. package/src/options/1_25/options.ts +25 -0
  232. package/src/options/1_25/scroll.ts +49 -0
  233. package/src/options/2_0.ts +339 -0
  234. package/src/options/2_1.ts +29 -0
  235. package/src/options/2_2.ts +62 -0
  236. package/src/options/2_3.ts +70 -0
  237. package/src/options/codec.ts +104 -0
  238. package/src/options/index.ts +15 -0
  239. package/src/options/latest.ts +12 -0
  240. package/src/options/types.ts +253 -0
  241. package/tsconfig.build.json +11 -0
  242. package/tsconfig.build.tsbuildinfo +1 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,149 @@
1
+ # Change Log - @yume-chan/scrcpy
2
+
3
+ ## 0.0.0-20240714132542
4
+
5
+ ### Patch Changes
6
+
7
+ - Switch to PNPM workspace and changesets
8
+ - Updated dependencies
9
+ - @yume-chan/no-data-view@0.0.0-20240714132542
10
+ - @yume-chan/stream-extra@0.0.0-20240714132542
11
+ - @yume-chan/struct@0.0.0-20240714132542
12
+
13
+ This log was last generated on Tue, 18 Jun 2024 02:49:43 GMT and should not be manually modified.
14
+
15
+ ## 0.0.24
16
+
17
+ Tue, 18 Jun 2024 02:49:43 GMT
18
+
19
+ ### Updates
20
+
21
+ - Add AV1 metadata parser `Av1`
22
+ - Move clipboard stream to `ScrcpyOptions#clipboard`
23
+ - Make `ScrcpyControlMessageWriter#setClipboard` wait for the clipboard to be updated on device (when `sequence` is not 0)
24
+ - Add options class for version 2.3
25
+
26
+ ## 0.0.23
27
+
28
+ Thu, 21 Mar 2024 03:15:10 GMT
29
+
30
+ ### Updates
31
+
32
+ - Fix several ReDos vulnerabilities
33
+
34
+ ## 0.0.22
35
+
36
+ Wed, 13 Dec 2023 05:57:27 GMT
37
+
38
+ ### Updates
39
+
40
+ - Fix parsing `sps_max_dec_pic_buffering_minus1` in H.265 SPS
41
+ - Support parsing `vui_hrd_parameters` in H.265 SPS
42
+ - Add support for Scrcpy 2.2
43
+
44
+ ## 0.0.21
45
+
46
+ Fri, 25 Aug 2023 14:05:18 GMT
47
+
48
+ ### Updates
49
+
50
+ - Add support for Scrcpy server version 2.1 and 2.1.1
51
+ - Move the fetching server binary script to `@yume-chan/scrcpy-fetch-server` package
52
+
53
+ ## 0.0.20
54
+
55
+ Mon, 05 Jun 2023 02:51:41 GMT
56
+
57
+ ### Updates
58
+
59
+ - Add support for Scrcpy 2.0. New features including audio forwarding (supports PCM, AAC and OPUS encoding) and other video codecs (supports H.264 and H.265, AV1 not supported). Read the PR for new options and breaking changes. ([#495](https://github.com/yume-chan/ya-webadb/pull/495))
60
+ - Move ADB related code to `@yume-chan/adb-scrcpy` package. This package now only implements the Scrcpy protocol.
61
+
62
+ ## 0.0.19
63
+
64
+ Sun, 09 Apr 2023 05:55:33 GMT
65
+
66
+ ### Updates
67
+
68
+ - Change `AdbScrcpyClient#pushServer` to take a `ReadableStream<Uint8Array>` instead of returning a `WritableStream<Uint8Array>`
69
+ - Add `AdbReverseNotSupportedError` handling and automatically switch to forward tunnel in `AdbScrcpyClient`.
70
+ - Update `AndroidKeyCode` enum to align with Web `KeyboardEvent.code`
71
+
72
+ ## 0.0.18
73
+
74
+ Wed, 25 Jan 2023 21:33:49 GMT
75
+
76
+ ### Updates
77
+
78
+ - Move `@yume-chan/adb` to `peerDependencies`
79
+ - Add support for Scrcpy server version 1.25
80
+ - Add support for `SetClipboard` control message and `AckClipboard` device message
81
+
82
+ ## 0.0.17
83
+
84
+ Tue, 18 Oct 2022 09:32:30 GMT
85
+
86
+ ### Updates
87
+
88
+ - Add standalone types for serializing/deserializing Scrcpy packets
89
+ - Separate decoders to own packages so they don't need optional peer dependencies.
90
+
91
+ ## 0.0.16
92
+
93
+ Sat, 28 May 2022 03:56:37 GMT
94
+
95
+ ### Updates
96
+
97
+ - Upgrade TypeScript to 4.7.2 to enable Node.js ESM
98
+ - Add support for more `CodecOptions` keys
99
+ - Add support for `CodecOptions` value types other than `int`
100
+
101
+ ## 0.0.15
102
+
103
+ Mon, 02 May 2022 04:18:01 GMT
104
+
105
+ ### Updates
106
+
107
+ - Add support for `rotateDevice` control message
108
+ - Add method to get screen list
109
+
110
+ ## 0.0.14
111
+
112
+ Sat, 30 Apr 2022 14:05:48 GMT
113
+
114
+ ### Updates
115
+
116
+ - Add support for Scrcpy server version 1.24
117
+
118
+ ## 0.0.13
119
+
120
+ Thu, 28 Apr 2022 01:23:53 GMT
121
+
122
+ ### Updates
123
+
124
+ - Add support for Scrcpy server version 1.23
125
+
126
+ ## 0.0.12
127
+
128
+ Sun, 03 Apr 2022 11:18:47 GMT
129
+
130
+ _Version update only_
131
+
132
+ ## 0.0.11
133
+
134
+ Sun, 03 Apr 2022 10:54:15 GMT
135
+
136
+ ### Updates
137
+
138
+ - Add support for Scrcpy server version 1.22
139
+ - Update to use Web Streams API
140
+ - Improve compatibility with Node.js 12 ESM format
141
+ - Workaround a issue with server crash on Samsung ROM (https://github.com/Genymobile/scrcpy/issues/2841)
142
+ - Remove output parsing. It's output is for debugging only, not machine readable.
143
+ - Update license year
144
+
145
+ ## 0.0.10
146
+
147
+ Sun, 09 Jan 2022 15:52:20 GMT
148
+
149
+ _Initial release_
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2020-2024 Simon Chan
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,49 @@
1
+ <p align="center">
2
+ <img alt="Tango" src="https://raw.githubusercontent.com/yume-chan/ya-webadb/main/.github/logo.svg" width="200">
3
+ </p>
4
+
5
+ <h1 align="center">@yume-chan/scrcpy</h1>
6
+
7
+ <p align="center">
8
+ TypeScript implementation of Scrcpy client.
9
+ </p>
10
+
11
+ <p align="center">
12
+ <a href="https://github.com/yume-chan/ya-webadb/blob/main/LICENSE">
13
+ <img alt="MIT License" src="https://img.shields.io/github/license/yume-chan/ya-webadb">
14
+ </a>
15
+ <a href="https://github.com/yume-chan/ya-webadb/releases">
16
+ <img alt="GitHub release" src="https://img.shields.io/github/v/release/yume-chan/ya-webadb?logo=github">
17
+ </a>
18
+ <a href="https://bundlephobia.com/package/@yume-chan/scrcpy">
19
+ <img alt="Package Size" src="https://img.shields.io/bundlephobia/minzip/%40yume-chan%2Fscrcpy">
20
+ </a>
21
+ <a href="https://www.npmjs.com/package/@yume-chan/scrcpy">
22
+ <img alt="npm" src="https://img.shields.io/npm/dm/%40yume-chan/scrcpy?logo=npm">
23
+ </a>
24
+ <a href="https://discord.gg/26k3ttC2PN">
25
+ <img alt="Discord" src="https://img.shields.io/discord/1120215514732564502?logo=discord&logoColor=%23ffffff&label=Discord">
26
+ </a>
27
+ </p>
28
+
29
+ This package is part of [Tango ADB](https://github.com/yume-chan/ya-webadb). Generally you need multiple packages to build a complete ADB client that can run on Web browsers and Node.js. Read the documentation for more information.
30
+
31
+ ## Documentation
32
+
33
+ Check the latest documentation at https://docs.tangoapp.dev/scrcpy/
34
+
35
+ ## Sponsors
36
+
37
+ [Become a backer](https://opencollective.com/ya-webadb) and get your image on our README on Github with a link to your site.
38
+
39
+ <a href="https://opencollective.com/ya-webadb/backer/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/0/avatar.svg?requireActive=false"></a>
40
+ <a href="https://opencollective.com/ya-webadb/backer/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/1/avatar.svg?requireActive=false"></a>
41
+ <a href="https://opencollective.com/ya-webadb/backer/2/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/2/avatar.svg?requireActive=false"></a>
42
+ <a href="https://opencollective.com/ya-webadb/backer/3/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/3/avatar.svg?requireActive=false"></a>
43
+ <a href="https://opencollective.com/ya-webadb/backer/4/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/4/avatar.svg?requireActive=false"></a>
44
+ <a href="https://opencollective.com/ya-webadb/backer/5/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/5/avatar.svg?requireActive=false"></a>
45
+ <a href="https://opencollective.com/ya-webadb/backer/6/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/6/avatar.svg?requireActive=false"></a>
46
+ <a href="https://opencollective.com/ya-webadb/backer/7/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/7/avatar.svg?requireActive=false"></a>
47
+ <a href="https://opencollective.com/ya-webadb/backer/8/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/8/avatar.svg?requireActive=false"></a>
48
+ <a href="https://opencollective.com/ya-webadb/backer/9/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/9/avatar.svg?requireActive=false"></a>
49
+ <a href="https://opencollective.com/ya-webadb/backer/10/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/10/avatar.svg?requireActive=false"></a>
@@ -0,0 +1,397 @@
1
+ export declare enum AndroidAv1Profile {
2
+ Main8 = 1,
3
+ Main10 = 2,
4
+ Main10Hdr10 = 4096,
5
+ Main10Hdr10Plus = 8192
6
+ }
7
+ export declare enum AndroidAv1Level {
8
+ Level2 = 1,
9
+ Level21 = 2,
10
+ Level22 = 4,
11
+ Level23 = 8,
12
+ Level3 = 16,
13
+ Level31 = 32,
14
+ Level32 = 64,
15
+ Level33 = 128,
16
+ Level4 = 256,
17
+ Level41 = 512,
18
+ Level42 = 1024,
19
+ Level43 = 2048,
20
+ Level5 = 4096,
21
+ Level51 = 8192,
22
+ Level52 = 16384,
23
+ Level53 = 32768,
24
+ Level6 = 65536,
25
+ Level61 = 131072,
26
+ Level62 = 262144,
27
+ Level63 = 524288,
28
+ Level7 = 1048576,
29
+ Level71 = 2097152,
30
+ Level72 = 4194304,
31
+ Level73 = 8388608
32
+ }
33
+ declare class BitReader {
34
+ #private;
35
+ get byteAligned(): boolean;
36
+ get ended(): boolean;
37
+ constructor(data: Uint8Array);
38
+ f1(): number;
39
+ f(n: number): number;
40
+ skip(n: number): void;
41
+ readBytes(n: number): Uint8Array;
42
+ getPosition(): readonly [number, number];
43
+ setPosition([bytePosition, bitPosition]: readonly [number, number]): void;
44
+ }
45
+ export declare class Av1 extends BitReader {
46
+ #private;
47
+ uvlc(): number;
48
+ leb128(): bigint;
49
+ annexBBitstream(): Generator<Av1.OpenBitstreamUnit, void, void>;
50
+ temporalUnit(sz: bigint): Generator<Av1.OpenBitstreamUnit, void, void>;
51
+ frameUnit(sz: bigint): Generator<Av1.OpenBitstreamUnit, void, void>;
52
+ openBitstreamUnit(sz?: bigint): {
53
+ obu_header: {
54
+ obu_type: number;
55
+ obu_extension_flag: boolean;
56
+ obu_has_size_field: boolean;
57
+ obu_extension_header: {
58
+ temporal_id: number;
59
+ spatial_id: number;
60
+ } | undefined;
61
+ };
62
+ obu_size: bigint;
63
+ sequence_header_obu: {
64
+ seq_profile: number;
65
+ still_picture: boolean;
66
+ reduced_still_picture_header: boolean;
67
+ timing_info_present_flag: boolean;
68
+ timing_info: {
69
+ num_units_in_display_tick: number;
70
+ time_scale: number;
71
+ equal_picture_interval: boolean;
72
+ num_ticks_per_picture_minus_1: number | undefined;
73
+ } | undefined;
74
+ decoder_model_info_present_flag: boolean;
75
+ decoder_model_info: {
76
+ buffer_delay_length_minus_1: number;
77
+ num_units_in_decoding_tick: number;
78
+ buffer_removal_time_length_minus_1: number;
79
+ frame_presentation_time_length_minus_1: number;
80
+ } | undefined;
81
+ initial_display_delay_present_flag: boolean;
82
+ initial_display_delay_minus_1: number[] | undefined;
83
+ operating_points_cnt_minus_1: number;
84
+ operating_point_idc: number[];
85
+ seq_level_idx: number[];
86
+ seq_tier: number[];
87
+ decoder_model_present_for_this_op: boolean[];
88
+ operating_parameters_info: {
89
+ decoder_buffer_delay: number;
90
+ encoder_buffer_delay: number;
91
+ low_delay_mode_flag: boolean;
92
+ }[] | undefined;
93
+ initial_display_delay_present_for_this_op: boolean[];
94
+ frame_width_bits_minus_1: number;
95
+ frame_height_bits_minus_1: number;
96
+ max_frame_width_minus_1: number;
97
+ max_frame_height_minus_1: number;
98
+ frame_id_numbers_present_flag: boolean;
99
+ delta_frame_id_length_minus_2: number | undefined;
100
+ additional_frame_id_length_minus_1: number | undefined;
101
+ use_128x128_superblock: boolean;
102
+ enable_filter_intra: boolean;
103
+ enable_intra_edge_filter: boolean;
104
+ enable_interintra_compound: boolean;
105
+ enable_masked_compound: boolean;
106
+ enable_warped_motion: boolean;
107
+ enable_dual_filter: boolean;
108
+ enable_order_hint: boolean;
109
+ enable_jnt_comp: boolean;
110
+ enable_ref_frame_mvs: boolean;
111
+ seq_choose_screen_content_tools: boolean;
112
+ seq_force_screen_content_tools: number;
113
+ seq_choose_integer_mv: boolean;
114
+ seq_force_integer_mv: number;
115
+ order_hint_bits_minus_1: number | undefined;
116
+ enable_superres: boolean;
117
+ enable_cdef: boolean;
118
+ enable_restoration: boolean;
119
+ color_config: {
120
+ high_bitdepth: boolean;
121
+ twelve_bit: boolean;
122
+ BitDepth: number;
123
+ mono_chrome: boolean;
124
+ color_description_present_flag: boolean;
125
+ color_primaries: Av1.ColorPrimaries;
126
+ transfer_characteristics: Av1.TransferCharacteristics;
127
+ matrix_coefficients: Av1.MatrixCoefficients;
128
+ color_range: boolean;
129
+ subsampling_x: boolean;
130
+ subsampling_y: boolean;
131
+ chroma_sample_position: number;
132
+ separate_uv_delta_q: boolean;
133
+ };
134
+ film_grain_params_present: boolean;
135
+ } | undefined;
136
+ } | undefined;
137
+ obuHeader(): {
138
+ obu_type: number;
139
+ obu_extension_flag: boolean;
140
+ obu_has_size_field: boolean;
141
+ obu_extension_header: {
142
+ temporal_id: number;
143
+ spatial_id: number;
144
+ } | undefined;
145
+ };
146
+ obuExtensionHeader(): {
147
+ temporal_id: number;
148
+ spatial_id: number;
149
+ };
150
+ static readonly SelectScreenContentTools = 2;
151
+ static readonly SelectIntegerMv = 2;
152
+ sequenceHeaderObu(): {
153
+ seq_profile: number;
154
+ still_picture: boolean;
155
+ reduced_still_picture_header: boolean;
156
+ timing_info_present_flag: boolean;
157
+ timing_info: {
158
+ num_units_in_display_tick: number;
159
+ time_scale: number;
160
+ equal_picture_interval: boolean;
161
+ num_ticks_per_picture_minus_1: number | undefined;
162
+ } | undefined;
163
+ decoder_model_info_present_flag: boolean;
164
+ decoder_model_info: {
165
+ buffer_delay_length_minus_1: number;
166
+ num_units_in_decoding_tick: number;
167
+ buffer_removal_time_length_minus_1: number;
168
+ frame_presentation_time_length_minus_1: number;
169
+ } | undefined;
170
+ initial_display_delay_present_flag: boolean;
171
+ initial_display_delay_minus_1: number[] | undefined;
172
+ operating_points_cnt_minus_1: number;
173
+ operating_point_idc: number[];
174
+ seq_level_idx: number[];
175
+ seq_tier: number[];
176
+ decoder_model_present_for_this_op: boolean[];
177
+ operating_parameters_info: {
178
+ decoder_buffer_delay: number;
179
+ encoder_buffer_delay: number;
180
+ low_delay_mode_flag: boolean;
181
+ }[] | undefined;
182
+ initial_display_delay_present_for_this_op: boolean[];
183
+ frame_width_bits_minus_1: number;
184
+ frame_height_bits_minus_1: number;
185
+ max_frame_width_minus_1: number;
186
+ max_frame_height_minus_1: number;
187
+ frame_id_numbers_present_flag: boolean;
188
+ delta_frame_id_length_minus_2: number | undefined;
189
+ additional_frame_id_length_minus_1: number | undefined;
190
+ use_128x128_superblock: boolean;
191
+ enable_filter_intra: boolean;
192
+ enable_intra_edge_filter: boolean;
193
+ enable_interintra_compound: boolean;
194
+ enable_masked_compound: boolean;
195
+ enable_warped_motion: boolean;
196
+ enable_dual_filter: boolean;
197
+ enable_order_hint: boolean;
198
+ enable_jnt_comp: boolean;
199
+ enable_ref_frame_mvs: boolean;
200
+ seq_choose_screen_content_tools: boolean;
201
+ seq_force_screen_content_tools: number;
202
+ seq_choose_integer_mv: boolean;
203
+ seq_force_integer_mv: number;
204
+ order_hint_bits_minus_1: number | undefined;
205
+ enable_superres: boolean;
206
+ enable_cdef: boolean;
207
+ enable_restoration: boolean;
208
+ color_config: {
209
+ high_bitdepth: boolean;
210
+ twelve_bit: boolean;
211
+ BitDepth: number;
212
+ mono_chrome: boolean;
213
+ color_description_present_flag: boolean;
214
+ color_primaries: Av1.ColorPrimaries;
215
+ transfer_characteristics: Av1.TransferCharacteristics;
216
+ matrix_coefficients: Av1.MatrixCoefficients;
217
+ color_range: boolean;
218
+ subsampling_x: boolean;
219
+ subsampling_y: boolean;
220
+ chroma_sample_position: number;
221
+ separate_uv_delta_q: boolean;
222
+ };
223
+ film_grain_params_present: boolean;
224
+ };
225
+ searchSequenceHeaderObu(): {
226
+ seq_profile: number;
227
+ still_picture: boolean;
228
+ reduced_still_picture_header: boolean;
229
+ timing_info_present_flag: boolean;
230
+ timing_info: {
231
+ num_units_in_display_tick: number;
232
+ time_scale: number;
233
+ equal_picture_interval: boolean;
234
+ num_ticks_per_picture_minus_1: number | undefined;
235
+ } | undefined;
236
+ decoder_model_info_present_flag: boolean;
237
+ decoder_model_info: {
238
+ buffer_delay_length_minus_1: number;
239
+ num_units_in_decoding_tick: number;
240
+ buffer_removal_time_length_minus_1: number;
241
+ frame_presentation_time_length_minus_1: number;
242
+ } | undefined;
243
+ initial_display_delay_present_flag: boolean;
244
+ initial_display_delay_minus_1: number[] | undefined;
245
+ operating_points_cnt_minus_1: number;
246
+ operating_point_idc: number[];
247
+ seq_level_idx: number[];
248
+ seq_tier: number[];
249
+ decoder_model_present_for_this_op: boolean[];
250
+ operating_parameters_info: {
251
+ decoder_buffer_delay: number;
252
+ encoder_buffer_delay: number;
253
+ low_delay_mode_flag: boolean;
254
+ }[] | undefined;
255
+ initial_display_delay_present_for_this_op: boolean[];
256
+ frame_width_bits_minus_1: number;
257
+ frame_height_bits_minus_1: number;
258
+ max_frame_width_minus_1: number;
259
+ max_frame_height_minus_1: number;
260
+ frame_id_numbers_present_flag: boolean;
261
+ delta_frame_id_length_minus_2: number | undefined;
262
+ additional_frame_id_length_minus_1: number | undefined;
263
+ use_128x128_superblock: boolean;
264
+ enable_filter_intra: boolean;
265
+ enable_intra_edge_filter: boolean;
266
+ enable_interintra_compound: boolean;
267
+ enable_masked_compound: boolean;
268
+ enable_warped_motion: boolean;
269
+ enable_dual_filter: boolean;
270
+ enable_order_hint: boolean;
271
+ enable_jnt_comp: boolean;
272
+ enable_ref_frame_mvs: boolean;
273
+ seq_choose_screen_content_tools: boolean;
274
+ seq_force_screen_content_tools: number;
275
+ seq_choose_integer_mv: boolean;
276
+ seq_force_integer_mv: number;
277
+ order_hint_bits_minus_1: number | undefined;
278
+ enable_superres: boolean;
279
+ enable_cdef: boolean;
280
+ enable_restoration: boolean;
281
+ color_config: {
282
+ high_bitdepth: boolean;
283
+ twelve_bit: boolean;
284
+ BitDepth: number;
285
+ mono_chrome: boolean;
286
+ color_description_present_flag: boolean;
287
+ color_primaries: Av1.ColorPrimaries;
288
+ transfer_characteristics: Av1.TransferCharacteristics;
289
+ matrix_coefficients: Av1.MatrixCoefficients;
290
+ color_range: boolean;
291
+ subsampling_x: boolean;
292
+ subsampling_y: boolean;
293
+ chroma_sample_position: number;
294
+ separate_uv_delta_q: boolean;
295
+ };
296
+ film_grain_params_present: boolean;
297
+ } | undefined;
298
+ timingInfo(): {
299
+ num_units_in_display_tick: number;
300
+ time_scale: number;
301
+ equal_picture_interval: boolean;
302
+ num_ticks_per_picture_minus_1: number | undefined;
303
+ };
304
+ decoderModelInfo(): {
305
+ buffer_delay_length_minus_1: number;
306
+ num_units_in_decoding_tick: number;
307
+ buffer_removal_time_length_minus_1: number;
308
+ frame_presentation_time_length_minus_1: number;
309
+ };
310
+ operatingParametersInfo(decoderModelInfo: ReturnType<Av1["decoderModelInfo"]>): {
311
+ decoder_buffer_delay: number;
312
+ encoder_buffer_delay: number;
313
+ low_delay_mode_flag: boolean;
314
+ };
315
+ chooseOperatingPoint(): number;
316
+ colorConfig(seq_profile: number): {
317
+ high_bitdepth: boolean;
318
+ twelve_bit: boolean;
319
+ BitDepth: number;
320
+ mono_chrome: boolean;
321
+ color_description_present_flag: boolean;
322
+ color_primaries: Av1.ColorPrimaries;
323
+ transfer_characteristics: Av1.TransferCharacteristics;
324
+ matrix_coefficients: Av1.MatrixCoefficients;
325
+ color_range: boolean;
326
+ subsampling_x: boolean;
327
+ subsampling_y: boolean;
328
+ chroma_sample_position: number;
329
+ separate_uv_delta_q: boolean;
330
+ };
331
+ }
332
+ export declare namespace Av1 {
333
+ type OpenBitstreamUnit = Exclude<ReturnType<Av1["openBitstreamUnit"]>, undefined>;
334
+ type SequenceHeaderObu = ReturnType<Av1["sequenceHeaderObu"]>;
335
+ enum ObuType {
336
+ SequenceHeader = 1,
337
+ TemporalDelimiter = 2,
338
+ FrameHeader = 3,
339
+ TileGroup = 4,
340
+ Metadata = 5,
341
+ Frame = 6,
342
+ RedundantFrameHeader = 7,
343
+ TileList = 8,
344
+ Padding = 15
345
+ }
346
+ enum ColorPrimaries {
347
+ Bt709 = 1,
348
+ Unspecified = 2,
349
+ Bt470M = 4,
350
+ Bt470BG = 5,
351
+ Bt601 = 6,
352
+ Smpte240 = 7,
353
+ GenericFilm = 8,
354
+ Bt2020 = 9,
355
+ Xyz = 10,
356
+ Smpte431 = 11,
357
+ Smpte432 = 12,
358
+ Ebu3213 = 22
359
+ }
360
+ enum TransferCharacteristics {
361
+ Bt709 = 1,
362
+ Unspecified = 2,
363
+ Bt470M = 4,
364
+ Bt470BG = 5,
365
+ Bt601 = 6,
366
+ Smpte240 = 7,
367
+ Linear = 8,
368
+ Log100 = 9,
369
+ Log100Sqrt10 = 10,
370
+ Iec61966 = 11,
371
+ Bt1361 = 12,
372
+ Srgb = 13,
373
+ Bt2020Ten = 14,
374
+ Bt2020Twelve = 15,
375
+ Smpte2084 = 16,
376
+ Smpte428 = 17,
377
+ Hlg = 18
378
+ }
379
+ enum MatrixCoefficients {
380
+ Identity = 0,
381
+ Bt709 = 1,
382
+ Unspecified = 2,
383
+ Fcc = 4,
384
+ Bt470BG = 5,
385
+ Bt601 = 6,
386
+ Smpte240 = 7,
387
+ YCgCo = 8,
388
+ Bt2020Ncl = 9,
389
+ Bt2020Cl = 10,
390
+ Smpte2085 = 11,
391
+ ChromatNcl = 12,
392
+ ChromatCl = 13,
393
+ ICtCp = 14
394
+ }
395
+ }
396
+ export {};
397
+ //# sourceMappingURL=av1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"av1.d.ts","sourceRoot":"","sources":["../../src/codec/av1.ts"],"names":[],"mappings":"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"}