MCPcopy Index your code
hub / github.com/NetrisTV/ws-qvh

github.com/NetrisTV/ws-qvh @v0.1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.1.0 ↗ · + Follow
38 symbols 91 edges 6 files 1 documented · 3%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ws qvh

Web Socket server for streaming the screen of iOS devices.

How it works?

  1. danielpaulus/quicktime_video_hack - video streaming
  2. appium/WebDriverAgent - device control
  3. NetrisTV/ws-scrcpy - user interface
  4. NetrisTV/ws-qvh - forwards the video stream over Web Socket

Steps to set up

  1. Get macOS (streaming only should also work on GNU/Linux)
  2. Connect a device, accept "Trust This Computer".
  3. Verify that you can record your device screen with QuickTime
  4. Install danielpaulus/quicktime_video_hack and verify that you can record your device screen with it
  5. Build sources: go build. This command will produce ws-qvh binary.
  6. Make sure your ws-qvh binary is available via the PATH environment variable.
  7. Setup and run ws-scrcpy. Follow the instructions here.
  8. Open link provided by ws-scrcpy in your browser.

Notes

  • Only video stream is transmitted (no audio).
  • WebDriverAgent can be started only after the start of video transmission (i.e. quicktime interface activation).
  • WebDriverAgent can take a long time to start.
  • Control capabilities are very limited (compared to scrcpy/ws-scrcpy):
  • single tap
  • home button click
  • swipe (this command will be sent only after the gesture is complete)
  • No way to customize stream parameters (bitrate, fps, video size, etc.)

Core symbols most depended-on inside this repo

toErrJSON
called by 7
main.go
storeNalUnit
called by 3
receiverHub.go
writeNalu
called by 3
naluwriter.go
formatUdid
called by 3
main.go
unregisterClient
called by 2
hub.go
Stop
called by 2
naluwriter.go
stop
called by 2
client.go
stream
called by 2
client.go

Shape

Method 18
Function 13
Struct 7

Languages

Go100%

Modules by API surface

main.go10 symbols
receiverHub.go8 symbols
naluwriter.go7 symbols
hub.go6 symbols
client.go6 symbols
message.go1 symbols

For agents

$ claude mcp add ws-qvh \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page