Loading libraries/adb-daemon-webusb/src/observer.ts +0 −4 Original line number Diff line number Diff line Loading @@ -20,9 +20,6 @@ export class AdbDaemonWebUsbDeviceObserver #exclusionFilters?: USBDeviceFilter[] | undefined; #usbManager: USB; #onError = new EventEmitter<Error>(); onError = this.#onError.event; #onDeviceAdd = new EventEmitter<AdbDaemonWebUsbDevice[]>(); onDeviceAdd = this.#onDeviceAdd.event; Loading Loading @@ -86,7 +83,6 @@ export class AdbDaemonWebUsbDeviceObserver this.#handleDisconnect, ); this.#onError.dispose(); this.#onDeviceAdd.dispose(); this.#onDeviceRemove.dispose(); this.#onListChange.dispose(); Loading libraries/adb/src/device-observer.ts +0 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,6 @@ import type { MaybePromiseLike } from "@yume-chan/async"; import type { Event } from "@yume-chan/event"; export interface DeviceObserver<T> { onError: Event<Error>; onDeviceAdd: Event<T[]>; onDeviceRemove: Event<T[]>; onListChange: Event<T[]>; Loading libraries/adb/src/server/client.ts +7 −2 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ import type { MaybePromiseLike } from "@yume-chan/async"; import { PromiseResolver } from "@yume-chan/async"; import type { Event } from "@yume-chan/event"; import { EventEmitter } from "@yume-chan/event"; import { getUint64LittleEndian } from "@yume-chan/no-data-view"; import type { Loading @@ -24,7 +25,7 @@ import { import type { AdbIncomingSocketHandler, AdbSocket, Closeable } from "../adb.js"; import { AdbBanner } from "../banner.js"; import type { DeviceObserver } from "../device-observer.js"; import type { DeviceObserver as DeviceObserverBase } from "../device-observer.js"; import type { AdbFeature } from "../features.js"; import { hexToNumber, sequenceEqual, write4HexDigits } from "../utils/index.js"; Loading Loading @@ -287,7 +288,7 @@ export class AdbServerClient { /** * Monitors device list changes. */ async trackDevices(): Promise<DeviceObserver<AdbServerClient.Device>> { async trackDevices(): Promise<AdbServerClient.DeviceObserver> { const connection = await this.createConnection("host:track-devices-l"); let current: AdbServerClient.Device[] = []; Loading Loading @@ -752,4 +753,8 @@ export namespace AdbServerClient { } } } export interface DeviceObserver extends DeviceObserverBase<Device> { onError: Event<Error>; } } libraries/scrcpy-decoder-tinyh264/src/decoder.ts +14 −12 Original line number Diff line number Diff line Loading @@ -17,19 +17,10 @@ import type { import type { TinyH264Wrapper } from "./wrapper.js"; import { createTinyH264Wrapper } from "./wrapper.js"; const NOOP = () => { const noop = () => { // no-op }; export interface TinyH264DecoderInit { /** * Optional render target canvas element or offscreen canvas. * If not provided, a new `<canvas>` (when DOM is available) * or a `OffscreenCanvas` will be created. */ canvas?: HTMLCanvasElement | OffscreenCanvas | undefined; } export function createCanvas() { if (typeof document !== "undefined") { return document.createElement("canvas"); Loading Loading @@ -77,7 +68,7 @@ export class TinyH264Decoder implements ScrcpyVideoDecoder { #yuvCanvas: YuvCanvas | undefined; #initializer: PromiseResolver<TinyH264Wrapper> | undefined; constructor({ canvas }: TinyH264DecoderInit = {}) { constructor({ canvas }: TinyH264Decoder.Options = {}) { if (canvas) { this.#renderer = canvas; } else { Loading Loading @@ -180,7 +171,18 @@ export class TinyH264Decoder implements ScrcpyVideoDecoder { this.#initializer?.promise .then((wrapper) => wrapper.dispose()) // NOOP: It's disposed so nobody cares about the error .catch(NOOP); .catch(noop); this.#initializer = undefined; } } export namespace TinyH264Decoder { export interface Options { /** * Optional render target canvas element or offscreen canvas. * If not provided, a new `<canvas>` (when DOM is available) * or a `OffscreenCanvas` will be created. */ canvas?: HTMLCanvasElement | OffscreenCanvas | undefined; } } libraries/scrcpy-decoder-webcodecs/src/video/decoder.ts +12 −10 Original line number Diff line number Diff line Loading @@ -96,15 +96,6 @@ const VideoFrameCapturerPool = /* #__PURE__ */ new Pool(() => new VideoFrameCapturer(), 4); export interface WebCodecsVideoDecoderInit { /** * The video codec to decode */ codec: ScrcpyVideoCodecId; renderer: WebCodecsVideoDecoderRenderer; } export class WebCodecsVideoDecoder implements ScrcpyVideoDecoder { static get isSupported() { return typeof globalThis.VideoDecoder !== "undefined"; Loading Loading @@ -164,7 +155,7 @@ export class WebCodecsVideoDecoder implements ScrcpyVideoDecoder { /** * Create a new WebCodecs video decoder. */ constructor({ codec, renderer }: WebCodecsVideoDecoderInit) { constructor({ codec, renderer }: WebCodecsVideoDecoder.Options) { this.#codec = codec; this.#renderer = renderer; Loading Loading @@ -303,3 +294,14 @@ export class WebCodecsVideoDecoder implements ScrcpyVideoDecoder { this.#captureFrame?.close(); } } export namespace WebCodecsVideoDecoder { export interface Options { /** * The video codec to decode */ codec: ScrcpyVideoCodecId; renderer: WebCodecsVideoDecoderRenderer; } } Loading
libraries/adb-daemon-webusb/src/observer.ts +0 −4 Original line number Diff line number Diff line Loading @@ -20,9 +20,6 @@ export class AdbDaemonWebUsbDeviceObserver #exclusionFilters?: USBDeviceFilter[] | undefined; #usbManager: USB; #onError = new EventEmitter<Error>(); onError = this.#onError.event; #onDeviceAdd = new EventEmitter<AdbDaemonWebUsbDevice[]>(); onDeviceAdd = this.#onDeviceAdd.event; Loading Loading @@ -86,7 +83,6 @@ export class AdbDaemonWebUsbDeviceObserver this.#handleDisconnect, ); this.#onError.dispose(); this.#onDeviceAdd.dispose(); this.#onDeviceRemove.dispose(); this.#onListChange.dispose(); Loading
libraries/adb/src/device-observer.ts +0 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,6 @@ import type { MaybePromiseLike } from "@yume-chan/async"; import type { Event } from "@yume-chan/event"; export interface DeviceObserver<T> { onError: Event<Error>; onDeviceAdd: Event<T[]>; onDeviceRemove: Event<T[]>; onListChange: Event<T[]>; Loading
libraries/adb/src/server/client.ts +7 −2 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ import type { MaybePromiseLike } from "@yume-chan/async"; import { PromiseResolver } from "@yume-chan/async"; import type { Event } from "@yume-chan/event"; import { EventEmitter } from "@yume-chan/event"; import { getUint64LittleEndian } from "@yume-chan/no-data-view"; import type { Loading @@ -24,7 +25,7 @@ import { import type { AdbIncomingSocketHandler, AdbSocket, Closeable } from "../adb.js"; import { AdbBanner } from "../banner.js"; import type { DeviceObserver } from "../device-observer.js"; import type { DeviceObserver as DeviceObserverBase } from "../device-observer.js"; import type { AdbFeature } from "../features.js"; import { hexToNumber, sequenceEqual, write4HexDigits } from "../utils/index.js"; Loading Loading @@ -287,7 +288,7 @@ export class AdbServerClient { /** * Monitors device list changes. */ async trackDevices(): Promise<DeviceObserver<AdbServerClient.Device>> { async trackDevices(): Promise<AdbServerClient.DeviceObserver> { const connection = await this.createConnection("host:track-devices-l"); let current: AdbServerClient.Device[] = []; Loading Loading @@ -752,4 +753,8 @@ export namespace AdbServerClient { } } } export interface DeviceObserver extends DeviceObserverBase<Device> { onError: Event<Error>; } }
libraries/scrcpy-decoder-tinyh264/src/decoder.ts +14 −12 Original line number Diff line number Diff line Loading @@ -17,19 +17,10 @@ import type { import type { TinyH264Wrapper } from "./wrapper.js"; import { createTinyH264Wrapper } from "./wrapper.js"; const NOOP = () => { const noop = () => { // no-op }; export interface TinyH264DecoderInit { /** * Optional render target canvas element or offscreen canvas. * If not provided, a new `<canvas>` (when DOM is available) * or a `OffscreenCanvas` will be created. */ canvas?: HTMLCanvasElement | OffscreenCanvas | undefined; } export function createCanvas() { if (typeof document !== "undefined") { return document.createElement("canvas"); Loading Loading @@ -77,7 +68,7 @@ export class TinyH264Decoder implements ScrcpyVideoDecoder { #yuvCanvas: YuvCanvas | undefined; #initializer: PromiseResolver<TinyH264Wrapper> | undefined; constructor({ canvas }: TinyH264DecoderInit = {}) { constructor({ canvas }: TinyH264Decoder.Options = {}) { if (canvas) { this.#renderer = canvas; } else { Loading Loading @@ -180,7 +171,18 @@ export class TinyH264Decoder implements ScrcpyVideoDecoder { this.#initializer?.promise .then((wrapper) => wrapper.dispose()) // NOOP: It's disposed so nobody cares about the error .catch(NOOP); .catch(noop); this.#initializer = undefined; } } export namespace TinyH264Decoder { export interface Options { /** * Optional render target canvas element or offscreen canvas. * If not provided, a new `<canvas>` (when DOM is available) * or a `OffscreenCanvas` will be created. */ canvas?: HTMLCanvasElement | OffscreenCanvas | undefined; } }
libraries/scrcpy-decoder-webcodecs/src/video/decoder.ts +12 −10 Original line number Diff line number Diff line Loading @@ -96,15 +96,6 @@ const VideoFrameCapturerPool = /* #__PURE__ */ new Pool(() => new VideoFrameCapturer(), 4); export interface WebCodecsVideoDecoderInit { /** * The video codec to decode */ codec: ScrcpyVideoCodecId; renderer: WebCodecsVideoDecoderRenderer; } export class WebCodecsVideoDecoder implements ScrcpyVideoDecoder { static get isSupported() { return typeof globalThis.VideoDecoder !== "undefined"; Loading Loading @@ -164,7 +155,7 @@ export class WebCodecsVideoDecoder implements ScrcpyVideoDecoder { /** * Create a new WebCodecs video decoder. */ constructor({ codec, renderer }: WebCodecsVideoDecoderInit) { constructor({ codec, renderer }: WebCodecsVideoDecoder.Options) { this.#codec = codec; this.#renderer = renderer; Loading Loading @@ -303,3 +294,14 @@ export class WebCodecsVideoDecoder implements ScrcpyVideoDecoder { this.#captureFrame?.close(); } } export namespace WebCodecsVideoDecoder { export interface Options { /** * The video codec to decode */ codec: ScrcpyVideoCodecId; renderer: WebCodecsVideoDecoderRenderer; } }