@yume-chan/scrcpy
Version:
TypeScript implementation of Scrcpy.
40 lines • 1.8 kB
JavaScript
import Struct, { placeholder } from "@yume-chan/struct";
import { EmptyControlMessage, ScrcpyControlMessageType, } from "../../control/index.js";
import { ScrcpyUnsignedFloatFieldDefinition } from "./float.js";
export const SCRCPY_CONTROL_MESSAGE_TYPES_1_16 = [
/* 0 */ ScrcpyControlMessageType.InjectKeyCode,
/* 1 */ ScrcpyControlMessageType.InjectText,
/* 2 */ ScrcpyControlMessageType.InjectTouch,
/* 3 */ ScrcpyControlMessageType.InjectScroll,
/* 4 */ ScrcpyControlMessageType.BackOrScreenOn,
/* 5 */ ScrcpyControlMessageType.ExpandNotificationPanel,
/* 6 */ ScrcpyControlMessageType.CollapseNotificationPanel,
/* 7 */ ScrcpyControlMessageType.GetClipboard,
/* 8 */ ScrcpyControlMessageType.SetClipboard,
/* 9 */ ScrcpyControlMessageType.SetScreenPowerMode,
/* 10 */ ScrcpyControlMessageType.RotateDevice,
];
export const ScrcpyMediaStreamRawPacket = new Struct()
.uint64("pts")
.uint32("size")
.uint8Array("data", { lengthField: "size" });
export const SCRCPY_MEDIA_PACKET_FLAG_CONFIG = 1n << 63n;
export const ScrcpyInjectTouchControlMessage1_16 = new Struct()
.uint8("type")
.uint8("action", placeholder())
.uint64("pointerId")
.uint32("pointerX")
.uint32("pointerY")
.uint16("screenWidth")
.uint16("screenHeight")
.field("pressure", ScrcpyUnsignedFloatFieldDefinition)
.uint32("buttons");
export const ScrcpyBackOrScreenOnControlMessage1_16 = EmptyControlMessage;
export const ScrcpySetClipboardControlMessage1_15 = new Struct()
.uint8("type")
.uint32("length")
.string("content", { lengthField: "length" });
export const ScrcpyClipboardDeviceMessage = new Struct()
.uint32("length")
.string("content", { lengthField: "length" });
//# sourceMappingURL=message.js.map