Media Control

Control Youtube, streaming sites, media players on your computer using your phone as a remote.


pip install -r requirements.txt


  • Run python and open http://[host_address]:[port] provided in the terminal, on your phone.
  • Make sure the window playing the media is active.


Youtube mode

youtube remote screenshot

  • Play/Pause
  • Seek forward/backward in the video
  • Enable/Disable captions
  • Toggle fullscreen mode
  • Go to next/previous video in a playlist
  • Control Device volume

Universal mode

universal remote screenshot

  • Play/Pause and playing media
  • Go to next/previous media in queue
  • Control Device volume

Working Flask app serves a remote UI in / with /control as the API endpoint for POST requests made by index.js

index.js sends POST requests to the API using fetch with the button id and mode. presses the right key/key-combination to control the host device using pynput package.

Server Details

Made using: Flask

flask is running on all addresses
in your current network.

Default host address =
Default port = 5000

  • Check firewall if port 5000 is allowed or not.
  • Change host to the local IP address of the device
    you want to control.
  • There is currently no security over this connection,
    avoid using in a public network.

Tested on Linux

Yet to test: Windows, MacOS


  • Authentication
  • SSL for security