@yume-chan/scrcpy
Version:
TypeScript implementation of Scrcpy client.
31 lines • 879 B
JavaScript
import { PushReadableStream } from "@yume-chan/stream-extra";
import { buffer, struct, u16 } from "@yume-chan/struct";
export const UHidOutputDeviceMessage = struct({
id: u16,
data: buffer(u16),
}, { littleEndian: false });
export class UHidOutputStream extends PushReadableStream {
#controller;
constructor() {
let controller;
super((controller_) => {
controller = controller_;
});
this.#controller = controller;
}
async parse(id, stream) {
if (id !== 2) {
return false;
}
const message = await UHidOutputDeviceMessage.deserialize(stream);
await this.#controller.enqueue(message);
return true;
}
close() {
this.#controller.close();
}
error(e) {
this.#controller.error(e);
}
}
//# sourceMappingURL=uhid-output-stream.js.map