@yume-chan/scrcpy 0.0.18 → 0.0.19

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 (256) hide show
  1. package/CHANGELOG.json +18 -0
  2. package/CHANGELOG.md +10 -1
  3. package/README.md +111 -61
  4. package/bin/scrcpy-server +0 -0
  5. package/bin/version.d.ts +1 -1
  6. package/bin/version.js +1 -1
  7. package/esm/adb/client.d.ts +40 -40
  8. package/esm/adb/client.d.ts.map +1 -1
  9. package/esm/adb/client.js +223 -242
  10. package/esm/adb/client.js.map +1 -1
  11. package/esm/adb/connection.d.ts +48 -46
  12. package/esm/adb/connection.d.ts.map +1 -1
  13. package/esm/adb/connection.js +121 -109
  14. package/esm/adb/connection.js.map +1 -1
  15. package/esm/adb/index.d.ts +3 -3
  16. package/esm/adb/index.js +3 -3
  17. package/esm/adb/options/1_16.d.ts +7 -7
  18. package/esm/adb/options/1_16.d.ts.map +1 -1
  19. package/esm/adb/options/1_16.js +19 -19
  20. package/esm/adb/options/1_16.js.map +1 -1
  21. package/esm/adb/options/1_22.d.ts +7 -7
  22. package/esm/adb/options/1_22.d.ts.map +1 -1
  23. package/esm/adb/options/1_22.js +16 -16
  24. package/esm/adb/options/1_22.js.map +1 -1
  25. package/esm/adb/options/1_26.d.ts +9 -0
  26. package/esm/adb/options/1_26.d.ts.map +1 -0
  27. package/esm/adb/options/1_26.js +11 -0
  28. package/esm/adb/options/1_26.js.map +1 -0
  29. package/esm/adb/options/2_0.d.ts +8 -0
  30. package/esm/adb/options/2_0.d.ts.map +1 -0
  31. package/esm/adb/options/2_0.js +13 -0
  32. package/esm/adb/options/2_0.js.map +1 -0
  33. package/esm/adb/options/index.d.ts +3 -3
  34. package/esm/adb/options/index.js +3 -3
  35. package/esm/adb/options/types.d.ts +23 -23
  36. package/esm/adb/options/types.d.ts.map +1 -1
  37. package/esm/adb/options/types.js +36 -36
  38. package/esm/codec/av1.d.ts +33 -0
  39. package/esm/codec/av1.d.ts.map +1 -0
  40. package/esm/codec/av1.js +35 -0
  41. package/esm/codec/av1.js.map +1 -0
  42. package/esm/codec/h264.d.ts +98 -0
  43. package/esm/codec/h264.d.ts.map +1 -0
  44. package/esm/codec/h264.js +477 -0
  45. package/esm/codec/h264.js.map +1 -0
  46. package/esm/codec/h265.d.ts +36 -0
  47. package/esm/codec/h265.d.ts.map +1 -0
  48. package/esm/codec/h265.js +38 -0
  49. package/esm/codec/h265.js.map +1 -0
  50. package/esm/codec/index.d.ts +4 -0
  51. package/esm/codec/index.d.ts.map +1 -0
  52. package/esm/codec/index.js +4 -0
  53. package/esm/codec/index.js.map +1 -0
  54. package/esm/codec.d.ts +33 -33
  55. package/esm/codec.js +36 -36
  56. package/esm/control/back-or-screen-on.d.ts +2 -2
  57. package/esm/control/back-or-screen-on.d.ts.map +1 -1
  58. package/esm/control/back-or-screen-on.js +1 -1
  59. package/esm/control/basic.d.ts +5 -0
  60. package/esm/control/basic.d.ts.map +1 -0
  61. package/esm/control/basic.js +3 -0
  62. package/esm/control/basic.js.map +1 -0
  63. package/esm/control/hover-helper.d.ts +17 -17
  64. package/esm/control/hover-helper.d.ts.map +1 -1
  65. package/esm/control/hover-helper.js +43 -43
  66. package/esm/control/hover-helper.js.map +1 -1
  67. package/esm/control/index.d.ts +11 -11
  68. package/esm/control/index.js +11 -11
  69. package/esm/control/inject-keycode.d.ts +194 -60
  70. package/esm/control/inject-keycode.d.ts.map +1 -1
  71. package/esm/control/inject-keycode.js +199 -61
  72. package/esm/control/inject-keycode.js.map +1 -1
  73. package/esm/control/inject-scroll.d.ts +2 -2
  74. package/esm/control/inject-scroll.d.ts.map +1 -1
  75. package/esm/control/inject-scroll.js +1 -1
  76. package/esm/control/inject-text.d.ts +8 -8
  77. package/esm/control/inject-text.d.ts.map +1 -1
  78. package/esm/control/inject-text.js +6 -6
  79. package/esm/control/inject-text.js.map +1 -1
  80. package/esm/control/inject-touch.d.ts +37 -37
  81. package/esm/control/inject-touch.d.ts.map +1 -1
  82. package/esm/control/inject-touch.js +62 -62
  83. package/esm/control/rotate-device.d.ts +6 -6
  84. package/esm/control/rotate-device.d.ts.map +1 -1
  85. package/esm/control/rotate-device.js +3 -4
  86. package/esm/control/rotate-device.js.map +1 -1
  87. package/esm/control/serializer.d.ts +35 -33
  88. package/esm/control/serializer.d.ts.map +1 -1
  89. package/esm/control/serializer.js +82 -78
  90. package/esm/control/serializer.js.map +1 -1
  91. package/esm/control/set-clipboard.d.ts +2 -2
  92. package/esm/control/set-clipboard.d.ts.map +1 -1
  93. package/esm/control/set-clipboard.js +1 -1
  94. package/esm/control/set-screen-power-mode.d.ts +11 -11
  95. package/esm/control/set-screen-power-mode.d.ts.map +1 -1
  96. package/esm/control/set-screen-power-mode.js +11 -11
  97. package/esm/control/set-screen-power-mode.js.map +1 -1
  98. package/esm/control/simple.d.ts +5 -0
  99. package/esm/control/simple.d.ts.map +1 -0
  100. package/esm/control/simple.js +3 -0
  101. package/esm/control/simple.js.map +1 -0
  102. package/esm/control/type.d.ts +14 -14
  103. package/esm/control/type.js +18 -18
  104. package/esm/decoder.d.ts +2 -0
  105. package/esm/decoder.d.ts.map +1 -0
  106. package/esm/decoder.js +2 -0
  107. package/esm/decoder.js.map +1 -0
  108. package/esm/device-message/ack-clipboard.d.ts +8 -8
  109. package/esm/device-message/ack-clipboard.d.ts.map +1 -1
  110. package/esm/device-message/ack-clipboard.js +5 -5
  111. package/esm/device-message/clipboard.d.ts +9 -9
  112. package/esm/device-message/clipboard.d.ts.map +1 -1
  113. package/esm/device-message/clipboard.js +6 -6
  114. package/esm/device-message/index.d.ts +4 -4
  115. package/esm/device-message/index.js +4 -4
  116. package/esm/device-message/stream.d.ts +7 -7
  117. package/esm/device-message/stream.js +19 -19
  118. package/esm/device-message/type.d.ts +4 -4
  119. package/esm/device-message/type.js +6 -6
  120. package/esm/index.d.ts +5 -5
  121. package/esm/index.js +5 -5
  122. package/esm/options/1.17.d.ts +3 -0
  123. package/esm/options/1.17.d.ts.map +1 -0
  124. package/esm/options/1.17.js +2 -0
  125. package/esm/options/1.17.js.map +1 -0
  126. package/esm/options/1_16/codec-options.d.ts +20 -19
  127. package/esm/options/1_16/codec-options.d.ts.map +1 -1
  128. package/esm/options/1_16/codec-options.js +25 -25
  129. package/esm/options/1_16/codec-options.js.map +1 -1
  130. package/esm/options/1_16/float-to-uint16.d.ts +5 -0
  131. package/esm/options/1_16/float-to-uint16.d.ts.map +1 -0
  132. package/esm/options/1_16/float-to-uint16.js +27 -0
  133. package/esm/options/1_16/float-to-uint16.js.map +1 -0
  134. package/esm/options/1_16/h264-configuration.d.ts +48 -48
  135. package/esm/options/1_16/h264-configuration.js +413 -413
  136. package/esm/options/1_16/index.d.ts +4 -4
  137. package/esm/options/1_16/index.js +4 -4
  138. package/esm/options/1_16/init.d.ts +66 -0
  139. package/esm/options/1_16/init.d.ts.map +1 -0
  140. package/esm/options/1_16/init.js +16 -0
  141. package/esm/options/1_16/init.js.map +1 -0
  142. package/esm/options/1_16/message.d.ts +32 -0
  143. package/esm/options/1_16/message.d.ts.map +1 -0
  144. package/esm/options/1_16/message.js +37 -0
  145. package/esm/options/1_16/message.js.map +1 -0
  146. package/esm/options/1_16/options.d.ts +102 -93
  147. package/esm/options/1_16/options.d.ts.map +1 -1
  148. package/esm/options/1_16/options.js +189 -189
  149. package/esm/options/1_16/options.js.map +1 -1
  150. package/esm/options/1_16/scroll.d.ts +27 -26
  151. package/esm/options/1_16/scroll.d.ts.map +1 -1
  152. package/esm/options/1_16/scroll.js +55 -55
  153. package/esm/options/1_16/scroll.js.map +1 -1
  154. package/esm/options/1_17.d.ts +32 -0
  155. package/esm/options/1_17.d.ts.map +1 -0
  156. package/esm/options/1_17.js +36 -0
  157. package/esm/options/1_17.js.map +1 -0
  158. package/esm/options/1_18.d.ts +21 -19
  159. package/esm/options/1_18.d.ts.map +1 -1
  160. package/esm/options/1_18.js +45 -45
  161. package/esm/options/1_18.js.map +1 -1
  162. package/esm/options/1_21.d.ts +22 -20
  163. package/esm/options/1_21.d.ts.map +1 -1
  164. package/esm/options/1_21.js +36 -36
  165. package/esm/options/1_21.js.map +1 -1
  166. package/esm/options/1_22/index.d.ts +2 -2
  167. package/esm/options/1_22/index.js +2 -2
  168. package/esm/options/1_22/init.d.ts +17 -0
  169. package/esm/options/1_22/init.d.ts.map +1 -0
  170. package/esm/options/1_22/init.js +2 -0
  171. package/esm/options/1_22/init.js.map +1 -0
  172. package/esm/options/1_22/options.d.ts +29 -28
  173. package/esm/options/1_22/options.d.ts.map +1 -1
  174. package/esm/options/1_22/options.js +25 -25
  175. package/esm/options/1_22/options.js.map +1 -1
  176. package/esm/options/1_22/scroll.d.ts +16 -16
  177. package/esm/options/1_22/scroll.d.ts.map +1 -1
  178. package/esm/options/1_22/scroll.js +14 -14
  179. package/esm/options/1_23.d.ts +12 -11
  180. package/esm/options/1_23.d.ts.map +1 -1
  181. package/esm/options/1_23.js +34 -34
  182. package/esm/options/1_23.js.map +1 -1
  183. package/esm/options/1_24.d.ts +9 -8
  184. package/esm/options/1_24.d.ts.map +1 -1
  185. package/esm/options/1_24.js +12 -12
  186. package/esm/options/1_24.js.map +1 -1
  187. package/esm/options/1_25/index.d.ts +2 -2
  188. package/esm/options/1_25/index.js +2 -2
  189. package/esm/options/1_25/options.d.ts +6 -5
  190. package/esm/options/1_25/options.d.ts.map +1 -1
  191. package/esm/options/1_25/options.js +7 -7
  192. package/esm/options/1_25/options.js.map +1 -1
  193. package/esm/options/1_25/scroll.d.ts +19 -18
  194. package/esm/options/1_25/scroll.d.ts.map +1 -1
  195. package/esm/options/1_25/scroll.js +32 -32
  196. package/esm/options/1_25/scroll.js.map +1 -1
  197. package/esm/options/1_26.d.ts +57 -0
  198. package/esm/options/1_26.d.ts.map +1 -0
  199. package/esm/options/1_26.js +67 -0
  200. package/esm/options/1_26.js.map +1 -0
  201. package/esm/options/2.d.ts +57 -0
  202. package/esm/options/2.d.ts.map +1 -0
  203. package/esm/options/2.js +67 -0
  204. package/esm/options/2.js.map +1 -0
  205. package/esm/options/2_0.d.ts +87 -0
  206. package/esm/options/2_0.d.ts.map +1 -0
  207. package/esm/options/2_0.js +175 -0
  208. package/esm/options/2_0.js.map +1 -0
  209. package/esm/options/codec.d.ts +52 -0
  210. package/esm/options/codec.d.ts.map +1 -0
  211. package/esm/options/codec.js +26 -0
  212. package/esm/options/codec.js.map +1 -0
  213. package/esm/options/index.d.ts +8 -8
  214. package/esm/options/index.js +8 -8
  215. package/esm/options/latest.d.ts +12 -0
  216. package/esm/options/latest.d.ts.map +1 -0
  217. package/esm/options/latest.js +8 -0
  218. package/esm/options/latest.js.map +1 -0
  219. package/esm/options/types.d.ts +46 -46
  220. package/esm/options/types.d.ts.map +1 -1
  221. package/esm/options/types.js +17 -17
  222. package/package.json +11 -10
  223. package/src/adb/client.ts +72 -88
  224. package/src/adb/connection.ts +42 -25
  225. package/src/adb/index.ts +3 -3
  226. package/src/adb/options/1_16.ts +6 -4
  227. package/src/adb/options/1_22.ts +3 -3
  228. package/src/adb/options/index.ts +3 -3
  229. package/src/adb/options/types.ts +10 -10
  230. package/src/control/back-or-screen-on.ts +1 -1
  231. package/src/control/hover-helper.ts +2 -4
  232. package/src/control/inject-keycode.ts +193 -48
  233. package/src/control/inject-scroll.ts +1 -1
  234. package/src/control/inject-text.ts +7 -8
  235. package/src/control/inject-touch.ts +1 -1
  236. package/src/control/rotate-device.ts +7 -6
  237. package/src/control/serializer.ts +29 -26
  238. package/src/control/set-clipboard.ts +1 -1
  239. package/src/control/set-screen-power-mode.ts +7 -8
  240. package/src/device-message/ack-clipboard.ts +1 -1
  241. package/src/device-message/clipboard.ts +1 -1
  242. package/src/index.ts +5 -5
  243. package/src/options/1_16/codec-options.ts +4 -6
  244. package/src/options/1_16/options.ts +17 -12
  245. package/src/options/1_16/scroll.ts +2 -4
  246. package/src/options/1_18.ts +6 -6
  247. package/src/options/1_21.ts +5 -6
  248. package/src/options/1_22/options.ts +3 -2
  249. package/src/options/1_22/scroll.ts +1 -1
  250. package/src/options/1_23.ts +3 -5
  251. package/src/options/1_24.ts +5 -3
  252. package/src/options/1_25/options.ts +3 -2
  253. package/src/options/1_25/scroll.ts +4 -7
  254. package/src/options/index.ts +3 -3
  255. package/src/options/types.ts +8 -8
  256. package/tsconfig.build.tsbuildinfo +1 -1
@@ -1,15 +1,15 @@
1
- export declare enum ScrcpyControlMessageType {
2
- InjectKeyCode = 0,
3
- InjectText = 1,
4
- InjectTouch = 2,
5
- InjectScroll = 3,
6
- BackOrScreenOn = 4,
7
- ExpandNotificationPanel = 5,
8
- ExpandSettingPanel = 6,
9
- CollapseNotificationPanel = 7,
10
- GetClipboard = 8,
11
- SetClipboard = 9,
12
- SetScreenPowerMode = 10,
13
- RotateDevice = 11
14
- }
1
+ export declare enum ScrcpyControlMessageType {
2
+ InjectKeyCode = 0,
3
+ InjectText = 1,
4
+ InjectTouch = 2,
5
+ InjectScroll = 3,
6
+ BackOrScreenOn = 4,
7
+ ExpandNotificationPanel = 5,
8
+ ExpandSettingPanel = 6,
9
+ CollapseNotificationPanel = 7,
10
+ GetClipboard = 8,
11
+ SetClipboard = 9,
12
+ SetScreenPowerMode = 10,
13
+ RotateDevice = 11
14
+ }
15
15
  //# sourceMappingURL=type.d.ts.map
@@ -1,19 +1,19 @@
1
- // https://github.com/Genymobile/scrcpy/blob/fa5b2a29e983a46b49531def9cf3d80c40c3de37/app/src/control_msg.h#L23
2
- // For their message bodies, see https://github.com/Genymobile/scrcpy/blob/5c62f3419d252d10cd8c9cbb7c918b358b81f2d0/app/src/control_msg.c#L92
3
- // Their IDs change between versions, so always use `options.getControlMessageTypes()`
4
- export var ScrcpyControlMessageType;
5
- (function (ScrcpyControlMessageType) {
6
- ScrcpyControlMessageType[ScrcpyControlMessageType["InjectKeyCode"] = 0] = "InjectKeyCode";
7
- ScrcpyControlMessageType[ScrcpyControlMessageType["InjectText"] = 1] = "InjectText";
8
- ScrcpyControlMessageType[ScrcpyControlMessageType["InjectTouch"] = 2] = "InjectTouch";
9
- ScrcpyControlMessageType[ScrcpyControlMessageType["InjectScroll"] = 3] = "InjectScroll";
10
- ScrcpyControlMessageType[ScrcpyControlMessageType["BackOrScreenOn"] = 4] = "BackOrScreenOn";
11
- ScrcpyControlMessageType[ScrcpyControlMessageType["ExpandNotificationPanel"] = 5] = "ExpandNotificationPanel";
12
- ScrcpyControlMessageType[ScrcpyControlMessageType["ExpandSettingPanel"] = 6] = "ExpandSettingPanel";
13
- ScrcpyControlMessageType[ScrcpyControlMessageType["CollapseNotificationPanel"] = 7] = "CollapseNotificationPanel";
14
- ScrcpyControlMessageType[ScrcpyControlMessageType["GetClipboard"] = 8] = "GetClipboard";
15
- ScrcpyControlMessageType[ScrcpyControlMessageType["SetClipboard"] = 9] = "SetClipboard";
16
- ScrcpyControlMessageType[ScrcpyControlMessageType["SetScreenPowerMode"] = 10] = "SetScreenPowerMode";
17
- ScrcpyControlMessageType[ScrcpyControlMessageType["RotateDevice"] = 11] = "RotateDevice";
18
- })(ScrcpyControlMessageType = ScrcpyControlMessageType || (ScrcpyControlMessageType = {}));
1
+ // https://github.com/Genymobile/scrcpy/blob/fa5b2a29e983a46b49531def9cf3d80c40c3de37/app/src/control_msg.h#L23
2
+ // For their message bodies, see https://github.com/Genymobile/scrcpy/blob/5c62f3419d252d10cd8c9cbb7c918b358b81f2d0/app/src/control_msg.c#L92
3
+ // Their IDs change between versions, so always use `options.getControlMessageTypes()`
4
+ export var ScrcpyControlMessageType;
5
+ (function (ScrcpyControlMessageType) {
6
+ ScrcpyControlMessageType[ScrcpyControlMessageType["InjectKeyCode"] = 0] = "InjectKeyCode";
7
+ ScrcpyControlMessageType[ScrcpyControlMessageType["InjectText"] = 1] = "InjectText";
8
+ ScrcpyControlMessageType[ScrcpyControlMessageType["InjectTouch"] = 2] = "InjectTouch";
9
+ ScrcpyControlMessageType[ScrcpyControlMessageType["InjectScroll"] = 3] = "InjectScroll";
10
+ ScrcpyControlMessageType[ScrcpyControlMessageType["BackOrScreenOn"] = 4] = "BackOrScreenOn";
11
+ ScrcpyControlMessageType[ScrcpyControlMessageType["ExpandNotificationPanel"] = 5] = "ExpandNotificationPanel";
12
+ ScrcpyControlMessageType[ScrcpyControlMessageType["ExpandSettingPanel"] = 6] = "ExpandSettingPanel";
13
+ ScrcpyControlMessageType[ScrcpyControlMessageType["CollapseNotificationPanel"] = 7] = "CollapseNotificationPanel";
14
+ ScrcpyControlMessageType[ScrcpyControlMessageType["GetClipboard"] = 8] = "GetClipboard";
15
+ ScrcpyControlMessageType[ScrcpyControlMessageType["SetClipboard"] = 9] = "SetClipboard";
16
+ ScrcpyControlMessageType[ScrcpyControlMessageType["SetScreenPowerMode"] = 10] = "SetScreenPowerMode";
17
+ ScrcpyControlMessageType[ScrcpyControlMessageType["RotateDevice"] = 11] = "RotateDevice";
18
+ })(ScrcpyControlMessageType = ScrcpyControlMessageType || (ScrcpyControlMessageType = {}));
19
19
  //# sourceMappingURL=type.js.map
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=decoder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decoder.d.ts","sourceRoot":"","sources":["../src/decoder.ts"],"names":[],"mappings":""}
package/esm/decoder.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=decoder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decoder.js","sourceRoot":"","sources":["../src/decoder.ts"],"names":[],"mappings":""}
@@ -1,9 +1,9 @@
1
- import Struct from "@yume-chan/struct";
2
- import { ScrcpyDeviceMessageType } from "./type.js";
3
- export declare const ScrcpyAckClipboardDeviceMessage: Struct<{
4
- sequence: bigint;
5
- }, never, {
6
- type: ScrcpyDeviceMessageType.AckClipboard;
7
- }, undefined>;
8
- export type ScrcpyAckClipboardDeviceMessage = typeof ScrcpyAckClipboardDeviceMessage["TDeserializeResult"];
1
+ import Struct from "@yume-chan/struct";
2
+ import { ScrcpyDeviceMessageType } from "./type.js";
3
+ export declare const ScrcpyAckClipboardDeviceMessage: Struct<{
4
+ sequence: bigint;
5
+ }, never, {
6
+ type: ScrcpyDeviceMessageType.AckClipboard;
7
+ }, undefined>;
8
+ export type ScrcpyAckClipboardDeviceMessage = (typeof ScrcpyAckClipboardDeviceMessage)["TDeserializeResult"];
9
9
  //# sourceMappingURL=ack-clipboard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ack-clipboard.d.ts","sourceRoot":"","sources":["../../src/device-message/ack-clipboard.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,eAAO,MAAM,+BAA+B;;;;aAEuB,CAAC;AAEpE,MAAM,MAAM,+BAA+B,GACvC,OAAO,+BAA+B,CAAC,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"ack-clipboard.d.ts","sourceRoot":"","sources":["../../src/device-message/ack-clipboard.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,eAAO,MAAM,+BAA+B;;;;aAEuB,CAAC;AAEpE,MAAM,MAAM,+BAA+B,GACvC,CAAC,OAAO,+BAA+B,CAAC,CAAC,oBAAoB,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
- import Struct from "@yume-chan/struct";
2
- import { ScrcpyDeviceMessageType } from "./type.js";
3
- export const ScrcpyAckClipboardDeviceMessage = new Struct()
4
- .uint64("sequence")
5
- .extra({ type: ScrcpyDeviceMessageType.AckClipboard });
1
+ import Struct from "@yume-chan/struct";
2
+ import { ScrcpyDeviceMessageType } from "./type.js";
3
+ export const ScrcpyAckClipboardDeviceMessage = new Struct()
4
+ .uint64("sequence")
5
+ .extra({ type: ScrcpyDeviceMessageType.AckClipboard });
6
6
  //# sourceMappingURL=ack-clipboard.js.map
@@ -1,10 +1,10 @@
1
- import Struct from "@yume-chan/struct";
2
- import { ScrcpyDeviceMessageType } from "./type.js";
3
- export declare const ScrcpyClipboardDeviceMessage: Struct<{
4
- length: number;
5
- content: string;
6
- }, "length", {
7
- type: ScrcpyDeviceMessageType.Clipboard;
8
- }, undefined>;
9
- export type ScrcpyClipboardDeviceMessage = typeof ScrcpyClipboardDeviceMessage["TDeserializeResult"];
1
+ import Struct from "@yume-chan/struct";
2
+ import { ScrcpyDeviceMessageType } from "./type.js";
3
+ export declare const ScrcpyClipboardDeviceMessage: Struct<{
4
+ length: number;
5
+ content: string;
6
+ }, "length", {
7
+ type: ScrcpyDeviceMessageType.Clipboard;
8
+ }, undefined>;
9
+ export type ScrcpyClipboardDeviceMessage = (typeof ScrcpyClipboardDeviceMessage)["TDeserializeResult"];
10
10
  //# sourceMappingURL=clipboard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clipboard.d.ts","sourceRoot":"","sources":["../../src/device-message/clipboard.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,eAAO,MAAM,4BAA4B;;;;;aAGuB,CAAC;AAEjE,MAAM,MAAM,4BAA4B,GACpC,OAAO,4BAA4B,CAAC,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"clipboard.d.ts","sourceRoot":"","sources":["../../src/device-message/clipboard.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,eAAO,MAAM,4BAA4B;;;;;aAGuB,CAAC;AAEjE,MAAM,MAAM,4BAA4B,GACpC,CAAC,OAAO,4BAA4B,CAAC,CAAC,oBAAoB,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
- import Struct from "@yume-chan/struct";
2
- import { ScrcpyDeviceMessageType } from "./type.js";
3
- export const ScrcpyClipboardDeviceMessage = new Struct()
4
- .uint32("length")
5
- .string("content", { lengthField: "length" })
6
- .extra({ type: ScrcpyDeviceMessageType.Clipboard });
1
+ import Struct from "@yume-chan/struct";
2
+ import { ScrcpyDeviceMessageType } from "./type.js";
3
+ export const ScrcpyClipboardDeviceMessage = new Struct()
4
+ .uint32("length")
5
+ .string("content", { lengthField: "length" })
6
+ .extra({ type: ScrcpyDeviceMessageType.Clipboard });
7
7
  //# sourceMappingURL=clipboard.js.map
@@ -1,5 +1,5 @@
1
- export * from "./ack-clipboard.js";
2
- export * from "./clipboard.js";
3
- export * from "./stream.js";
4
- export * from "./type.js";
1
+ export * from "./ack-clipboard.js";
2
+ export * from "./clipboard.js";
3
+ export * from "./stream.js";
4
+ export * from "./type.js";
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1,5 +1,5 @@
1
- export * from "./ack-clipboard.js";
2
- export * from "./clipboard.js";
3
- export * from "./stream.js";
4
- export * from "./type.js";
1
+ export * from "./ack-clipboard.js";
2
+ export * from "./clipboard.js";
3
+ export * from "./stream.js";
4
+ export * from "./type.js";
5
5
  //# sourceMappingURL=index.js.map
@@ -1,8 +1,8 @@
1
- import { BufferedTransformStream } from "@yume-chan/stream-extra";
2
- import { ScrcpyAckClipboardDeviceMessage } from "./ack-clipboard.js";
3
- import { ScrcpyClipboardDeviceMessage } from "./clipboard.js";
4
- export type ScrcpyDeviceMessage = ScrcpyClipboardDeviceMessage | ScrcpyAckClipboardDeviceMessage;
5
- export declare class ScrcpyDeviceMessageDeserializeStream extends BufferedTransformStream<ScrcpyDeviceMessage> {
6
- constructor();
7
- }
1
+ import { BufferedTransformStream } from "@yume-chan/stream-extra";
2
+ import { ScrcpyAckClipboardDeviceMessage } from "./ack-clipboard.js";
3
+ import { ScrcpyClipboardDeviceMessage } from "./clipboard.js";
4
+ export type ScrcpyDeviceMessage = ScrcpyClipboardDeviceMessage | ScrcpyAckClipboardDeviceMessage;
5
+ export declare class ScrcpyDeviceMessageDeserializeStream extends BufferedTransformStream<ScrcpyDeviceMessage> {
6
+ constructor();
7
+ }
8
8
  //# sourceMappingURL=stream.d.ts.map
@@ -1,20 +1,20 @@
1
- import { BufferedTransformStream } from "@yume-chan/stream-extra";
2
- import { ScrcpyAckClipboardDeviceMessage } from "./ack-clipboard.js";
3
- import { ScrcpyClipboardDeviceMessage } from "./clipboard.js";
4
- import { ScrcpyDeviceMessageType } from "./type.js";
5
- export class ScrcpyDeviceMessageDeserializeStream extends BufferedTransformStream {
6
- constructor() {
7
- super(async (stream) => {
8
- const type = await stream.read(1);
9
- switch (type[0]) {
10
- case ScrcpyDeviceMessageType.Clipboard:
11
- return await ScrcpyClipboardDeviceMessage.deserialize(stream);
12
- case ScrcpyDeviceMessageType.AckClipboard:
13
- return await ScrcpyAckClipboardDeviceMessage.deserialize(stream);
14
- default:
15
- throw new Error("unknown control message type");
16
- }
17
- });
18
- }
19
- }
1
+ import { BufferedTransformStream } from "@yume-chan/stream-extra";
2
+ import { ScrcpyAckClipboardDeviceMessage } from "./ack-clipboard.js";
3
+ import { ScrcpyClipboardDeviceMessage } from "./clipboard.js";
4
+ import { ScrcpyDeviceMessageType } from "./type.js";
5
+ export class ScrcpyDeviceMessageDeserializeStream extends BufferedTransformStream {
6
+ constructor() {
7
+ super(async (stream) => {
8
+ const type = await stream.read(1);
9
+ switch (type[0]) {
10
+ case ScrcpyDeviceMessageType.Clipboard:
11
+ return await ScrcpyClipboardDeviceMessage.deserialize(stream);
12
+ case ScrcpyDeviceMessageType.AckClipboard:
13
+ return await ScrcpyAckClipboardDeviceMessage.deserialize(stream);
14
+ default:
15
+ throw new Error("unknown control message type");
16
+ }
17
+ });
18
+ }
19
+ }
20
20
  //# sourceMappingURL=stream.js.map
@@ -1,5 +1,5 @@
1
- export declare enum ScrcpyDeviceMessageType {
2
- Clipboard = 0,
3
- AckClipboard = 1
4
- }
1
+ export declare enum ScrcpyDeviceMessageType {
2
+ Clipboard = 0,
3
+ AckClipboard = 1
4
+ }
5
5
  //# sourceMappingURL=type.d.ts.map
@@ -1,7 +1,7 @@
1
- // https://github.com/Genymobile/scrcpy/blob/41abe021e2a73efd4899b0efcd0b9eef9ec68c9b/server/src/main/java/com/genymobile/scrcpy/DeviceMessage.java#L5
2
- export var ScrcpyDeviceMessageType;
3
- (function (ScrcpyDeviceMessageType) {
4
- ScrcpyDeviceMessageType[ScrcpyDeviceMessageType["Clipboard"] = 0] = "Clipboard";
5
- ScrcpyDeviceMessageType[ScrcpyDeviceMessageType["AckClipboard"] = 1] = "AckClipboard";
6
- })(ScrcpyDeviceMessageType = ScrcpyDeviceMessageType || (ScrcpyDeviceMessageType = {}));
1
+ // https://github.com/Genymobile/scrcpy/blob/41abe021e2a73efd4899b0efcd0b9eef9ec68c9b/server/src/main/java/com/genymobile/scrcpy/DeviceMessage.java#L5
2
+ export var ScrcpyDeviceMessageType;
3
+ (function (ScrcpyDeviceMessageType) {
4
+ ScrcpyDeviceMessageType[ScrcpyDeviceMessageType["Clipboard"] = 0] = "Clipboard";
5
+ ScrcpyDeviceMessageType[ScrcpyDeviceMessageType["AckClipboard"] = 1] = "AckClipboard";
6
+ })(ScrcpyDeviceMessageType = ScrcpyDeviceMessageType || (ScrcpyDeviceMessageType = {}));
7
7
  //# sourceMappingURL=type.js.map
package/esm/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- export * from './adb/index.js';
2
- export * from './codec.js';
3
- export * from './control/index.js';
4
- export * from './device-message/index.js';
5
- export * from './options/index.js';
1
+ export * from "./adb/index.js";
2
+ export * from "./codec.js";
3
+ export * from "./control/index.js";
4
+ export * from "./device-message/index.js";
5
+ export * from "./options/index.js";
6
6
  //# sourceMappingURL=index.d.ts.map
package/esm/index.js CHANGED
@@ -1,6 +1,6 @@
1
- export * from './adb/index.js';
2
- export * from './codec.js';
3
- export * from './control/index.js';
4
- export * from './device-message/index.js';
5
- export * from './options/index.js';
1
+ export * from "./adb/index.js";
2
+ export * from "./codec.js";
3
+ export * from "./control/index.js";
4
+ export * from "./device-message/index.js";
5
+ export * from "./options/index.js";
6
6
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ import { ScrcpyOptionsInit1_16 } from "../../src/options/index.js";
2
+ export interface ScrcpyOptionsInit1_17 extends ScrcpyOptionsInit1_16 {}
3
+ //# sourceMappingURL=1.17.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1.17.d.ts","sourceRoot":"","sources":["../../src/options/1.17.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;CAAG"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=1.17.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1.17.js","sourceRoot":"","sources":["../../src/options/1.17.ts"],"names":[],"mappings":""}
@@ -1,20 +1,21 @@
1
- import { type AndroidCodecLevel, type AndroidCodecProfile } from "../../codec.js";
2
- import { type ScrcpyOptionValue } from "../types.js";
3
- /**
4
- * If the option you need is not in this type,
5
- * please file an issue on GitHub.
6
- */
7
- export interface CodecOptionsInit {
8
- profile: AndroidCodecProfile;
9
- level: AndroidCodecLevel;
10
- iFrameInterval: number;
11
- maxBframes: number;
12
- repeatPreviousFrameAfter: number;
13
- maxPtsGapToEncoder: number;
14
- }
15
- export declare class CodecOptions implements ScrcpyOptionValue {
16
- value: Partial<CodecOptionsInit>;
17
- constructor(value: Partial<CodecOptionsInit>);
18
- toOptionValue(): string | undefined;
19
- }
1
+ import type { AndroidCodecLevel, AndroidCodecProfile } from "../../codec.js";
2
+ import type { ScrcpyOptionValue } from "../types.js";
3
+ /**
4
+ * If the option you need is not in this type,
5
+ * please file an issue on GitHub.
6
+ */
7
+ export interface CodecOptionsInit {
8
+ profile: AndroidCodecProfile;
9
+ level: AndroidCodecLevel;
10
+ iFrameInterval: number;
11
+ maxBframes: number;
12
+ repeatPreviousFrameAfter: number;
13
+ maxPtsGapToEncoder: number;
14
+ intraRefreshPeriod: number;
15
+ }
16
+ export declare class CodecOptions implements ScrcpyOptionValue {
17
+ value: Partial<CodecOptionsInit>;
18
+ constructor(value?: Partial<CodecOptionsInit>);
19
+ toOptionValue(): string | undefined;
20
+ }
20
21
  //# sourceMappingURL=codec-options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codec-options.d.ts","sourceRoot":"","sources":["../../../src/options/1_16/codec-options.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EAC3B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,KAAK,EAAE,iBAAiB,CAAC;IAEzB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;CAC9B;AAaD,qBAAa,YAAa,YAAW,iBAAiB;IAC3C,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;gBAErB,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAI5C,aAAa,IAAI,MAAM,GAAG,SAAS;CAgB7C"}
1
+ {"version":3,"file":"codec-options.d.ts","sourceRoot":"","sources":["../../../src/options/1_16/codec-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,KAAK,EAAE,iBAAiB,CAAC;IAEzB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;CAC9B;AAaD,qBAAa,YAAa,YAAW,iBAAiB;IAC3C,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;gBAErB,KAAK,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAIjD,aAAa,IAAI,MAAM,GAAG,SAAS;CAgB7C"}
@@ -1,26 +1,26 @@
1
- function toDashCase(input) {
2
- return input.replace(/([A-Z])/g, "-$1").toLowerCase();
3
- }
4
- const CODEC_OPTION_TYPES = {
5
- repeatPreviousFrameAfter: "long",
6
- maxPtsGapToEncoder: "long",
7
- };
8
- export class CodecOptions {
9
- value;
10
- constructor(value) {
11
- this.value = value;
12
- }
13
- toOptionValue() {
14
- const entries = Object.entries(this.value).filter(([, value]) => value !== undefined);
15
- if (entries.length === 0) {
16
- return undefined;
17
- }
18
- return entries
19
- .map(([key, value]) => {
20
- const type = CODEC_OPTION_TYPES[key];
21
- return `${toDashCase(key)}${type ? `:${type}` : ""}=${value}`;
22
- })
23
- .join(",");
24
- }
25
- }
1
+ function toDashCase(input) {
2
+ return input.replace(/([A-Z])/g, "-$1").toLowerCase();
3
+ }
4
+ const CODEC_OPTION_TYPES = {
5
+ repeatPreviousFrameAfter: "long",
6
+ maxPtsGapToEncoder: "long",
7
+ };
8
+ export class CodecOptions {
9
+ value;
10
+ constructor(value = {}) {
11
+ this.value = value;
12
+ }
13
+ toOptionValue() {
14
+ const entries = Object.entries(this.value).filter(([, value]) => value !== undefined);
15
+ if (entries.length === 0) {
16
+ return undefined;
17
+ }
18
+ return entries
19
+ .map(([key, value]) => {
20
+ const type = CODEC_OPTION_TYPES[key];
21
+ return `${toDashCase(key)}${type ? `:${type}` : ""}=${value}`;
22
+ })
23
+ .join(",");
24
+ }
25
+ }
26
26
  //# sourceMappingURL=codec-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codec-options.js","sourceRoot":"","sources":["../../../src/options/1_16/codec-options.ts"],"names":[],"mappings":"AAoBA,SAAS,UAAU,CAAC,KAAa;IAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AAC1D,CAAC;AAED,MAAM,kBAAkB,GAEpB;IACA,wBAAwB,EAAE,MAAM;IAChC,kBAAkB,EAAE,MAAM;CAC7B,CAAC;AAEF,MAAM,OAAO,YAAY;IACd,KAAK,CAA4B;IAExC,YAAmB,KAAgC;QAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEM,aAAa;QAChB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CACrC,CAAC;QAEF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,OAAO,SAAS,CAAC;SACpB;QAED,OAAO,OAAO;aACT,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAClB,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAA6B,CAAC,CAAC;YAC/D,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,EAAE,CAAC;QAClE,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;CACJ"}
1
+ {"version":3,"file":"codec-options.js","sourceRoot":"","sources":["../../../src/options/1_16/codec-options.ts"],"names":[],"mappings":"AAkBA,SAAS,UAAU,CAAC,KAAa;IAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AAC1D,CAAC;AAED,MAAM,kBAAkB,GAEpB;IACA,wBAAwB,EAAE,MAAM;IAChC,kBAAkB,EAAE,MAAM;CAC7B,CAAC;AAEF,MAAM,OAAO,YAAY;IACd,KAAK,CAA4B;IAExC,YAAmB,QAAmC,EAAE;QACpD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEM,aAAa;QAChB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CACrC,CAAC;QAEF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,OAAO,SAAS,CAAC;SACpB;QAED,OAAO,OAAO;aACT,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAClB,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAA6B,CAAC,CAAC;YAC/D,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,EAAE,CAAC;QAClE,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;CACJ"}
@@ -0,0 +1,5 @@
1
+ import { NumberFieldDefinition, NumberFieldType } from "@yume-chan/struct";
2
+ export declare function clamp(value: number, min: number, max: number): number;
3
+ export declare const ScrcpyFloatToUint16NumberType: NumberFieldType;
4
+ export declare const ScrcpyFloatToUint16FieldDefinition: NumberFieldDefinition<NumberFieldType, number>;
5
+ //# sourceMappingURL=float-to-uint16.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"float-to-uint16.d.ts","sourceRoot":"","sources":["../../../src/options/1_16/float-to-uint16.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE3E,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAUrE;AAED,eAAO,MAAM,6BAA6B,EAAE,eAc3C,CAAC;AAEF,eAAO,MAAM,kCAAkC,gDAE9C,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { NumberFieldDefinition, NumberFieldType } from "@yume-chan/struct";
2
+ export function clamp(value, min, max) {
3
+ if (value < min) {
4
+ return min;
5
+ }
6
+ if (value > max) {
7
+ return max;
8
+ }
9
+ return value;
10
+ }
11
+ export const ScrcpyFloatToUint16NumberType = {
12
+ size: 2,
13
+ signed: false,
14
+ deserialize(array, littleEndian) {
15
+ const value = NumberFieldType.Uint16.deserialize(array, littleEndian);
16
+ // https://github.com/Genymobile/scrcpy/blob/1f138aef41de651668043b32c4effc2d4adbfc44/server/src/main/java/com/genymobile/scrcpy/Binary.java#L22
17
+ return value === 0xffff ? 1 : value / 0x10000;
18
+ },
19
+ serialize(dataView, offset, value, littleEndian) {
20
+ // https://github.com/Genymobile/scrcpy/blob/1f138aef41de651668043b32c4effc2d4adbfc44/app/src/util/binary.h#L51
21
+ value = clamp(value, -1, 1);
22
+ value = value === 1 ? 0xffff : value * 0x10000;
23
+ NumberFieldType.Uint16.serialize(dataView, offset, value, littleEndian);
24
+ },
25
+ };
26
+ export const ScrcpyFloatToUint16FieldDefinition = new NumberFieldDefinition(ScrcpyFloatToUint16NumberType);
27
+ //# sourceMappingURL=float-to-uint16.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"float-to-uint16.js","sourceRoot":"","sources":["../../../src/options/1_16/float-to-uint16.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE3E,MAAM,UAAU,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IACzD,IAAI,KAAK,GAAG,GAAG,EAAE;QACb,OAAO,GAAG,CAAC;KACd;IAED,IAAI,KAAK,GAAG,GAAG,EAAE;QACb,OAAO,GAAG,CAAC;KACd;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAoB;IAC1D,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,KAAK;IACb,WAAW,CAAC,KAAK,EAAE,YAAY;QAC3B,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACtE,gJAAgJ;QAChJ,OAAO,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC;IAClD,CAAC;IACD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY;QAC3C,+GAA+G;QAC/G,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,KAAK,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC;QAC/C,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAC5E,CAAC;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,kCAAkC,GAAG,IAAI,qBAAqB,CACvE,6BAA6B,CAChC,CAAC"}
@@ -1,49 +1,49 @@
1
- /**
2
- * Split NAL units from a H.264 Annex B stream.
3
- *
4
- * The input is not modified.
5
- * The returned NAL units are views of the input (no memory allocation nor copy),
6
- * and still contains emulation prevention bytes.
7
- *
8
- * This methods returns a generator, so it can be stopped immediately
9
- * after the interested NAL unit is found.
10
- */
11
- export declare function splitH264Stream(buffer: Uint8Array): Generator<Uint8Array>;
12
- /**
13
- * Remove emulation prevention bytes from a H.264 NAL Unit.
14
- *
15
- * The input is not modified.
16
- * If the input doesn't contain any emulation prevention bytes,
17
- * the input is returned as-is.
18
- * Otherwise, a new `Uint8Array` is created and returned.
19
- */
20
- export declare function removeH264Emulation(buffer: Uint8Array): Uint8Array;
21
- export declare function parseSequenceParameterSet(buffer: Uint8Array): {
22
- profile_idc: number;
23
- constraint_set: number;
24
- constraint_set0_flag: boolean;
25
- constraint_set1_flag: boolean;
26
- constraint_set2_flag: boolean;
27
- constraint_set3_flag: boolean;
28
- constraint_set4_flag: boolean;
29
- constraint_set5_flag: boolean;
30
- level_idc: number;
31
- seq_parameter_set_id: number;
32
- pic_width_in_mbs_minus1: number;
33
- pic_height_in_map_units_minus1: number;
34
- frame_mbs_only_flag: number;
35
- frame_cropping_flag: boolean;
36
- frame_crop_left_offset: number;
37
- frame_crop_right_offset: number;
38
- frame_crop_top_offset: number;
39
- frame_crop_bottom_offset: number;
40
- };
41
- /**
42
- * Find Sequence Parameter Set (SPS) and Picture Parameter Set (PPS)
43
- * from H.264 Annex B formatted data.
44
- */
45
- export declare function parseH264Configuration(buffer: Uint8Array): {
46
- sequenceParameterSet: Uint8Array;
47
- pictureParameterSet: Uint8Array;
48
- };
1
+ /**
2
+ * Split NAL units from a H.264 Annex B stream.
3
+ *
4
+ * The input is not modified.
5
+ * The returned NAL units are views of the input (no memory allocation nor copy),
6
+ * and still contains emulation prevention bytes.
7
+ *
8
+ * This methods returns a generator, so it can be stopped immediately
9
+ * after the interested NAL unit is found.
10
+ */
11
+ export declare function splitH264Stream(buffer: Uint8Array): Generator<Uint8Array>;
12
+ /**
13
+ * Remove emulation prevention bytes from a H.264 NAL Unit.
14
+ *
15
+ * The input is not modified.
16
+ * If the input doesn't contain any emulation prevention bytes,
17
+ * the input is returned as-is.
18
+ * Otherwise, a new `Uint8Array` is created and returned.
19
+ */
20
+ export declare function removeH264Emulation(buffer: Uint8Array): Uint8Array;
21
+ export declare function parseSequenceParameterSet(buffer: Uint8Array): {
22
+ profile_idc: number;
23
+ constraint_set: number;
24
+ constraint_set0_flag: boolean;
25
+ constraint_set1_flag: boolean;
26
+ constraint_set2_flag: boolean;
27
+ constraint_set3_flag: boolean;
28
+ constraint_set4_flag: boolean;
29
+ constraint_set5_flag: boolean;
30
+ level_idc: number;
31
+ seq_parameter_set_id: number;
32
+ pic_width_in_mbs_minus1: number;
33
+ pic_height_in_map_units_minus1: number;
34
+ frame_mbs_only_flag: number;
35
+ frame_cropping_flag: boolean;
36
+ frame_crop_left_offset: number;
37
+ frame_crop_right_offset: number;
38
+ frame_crop_top_offset: number;
39
+ frame_crop_bottom_offset: number;
40
+ };
41
+ /**
42
+ * Find Sequence Parameter Set (SPS) and Picture Parameter Set (PPS)
43
+ * from H.264 Annex B formatted data.
44
+ */
45
+ export declare function parseH264Configuration(buffer: Uint8Array): {
46
+ sequenceParameterSet: Uint8Array;
47
+ pictureParameterSet: Uint8Array;
48
+ };
49
49
  //# sourceMappingURL=h264-configuration.d.ts.map