Control VLC media player using hand gestures detected through a webcam
Project description
VLC Gesture Control
Control VLC media player using hand gestures detected through your webcam.
Features
- Control VLC media player without touching your keyboard/mouse
- Support for both CPU and GPU processing
- Palm-facing detection to prevent accidental triggers
- Fast-forward and rewind functionality with repeated gestures
- Real-time performance monitoring with FPS display
Supported Gestures
| Gesture | Action |
|---|---|
| All five fingers up | Play/Pause |
| Index finger only | Volume Up |
| Thumb + Index finger | Volume Down |
| Index + Middle fingers | Forward 10 seconds (Fast-forward when repeated) |
| Thumb + Index + Middle fingers | Backward 10 seconds (Fast-rewind when repeated) |
| Index + Middle + Ring fingers | Toggle Subtitles |
| All fingers except thumb | Change Audio Track |
| Left hand thumb only (pointing right) | Next Video |
| Right hand thumb only (pointing left) | Previous Video |
Installation
Basic Installation
pip install vlc-gesture-control
With GPU Support
pip install vlc-gesture-control[gpu]
For Development
pip install vlc-gesture-control[dev]
Usage
- Open VLC media player and start playing a video
- Run the application with either CPU or GPU mode:
# For CPU mode (default)
vlc-gesture-control-cpu
# For GPU mode (if supported by your hardware)
vlc-gesture-control-gpu
- Position your hand in front of the webcam and use the gestures to control VLC
- Press 'q' to quit the application
How It Works
The application uses MediaPipe's hand tracking to detect hand landmarks in real-time. It analyzes the configuration of fingers to recognize specific gestures, then sends the corresponding keyboard commands to VLC. The system includes a consistency check that requires a gesture to be detected multiple times before triggering an action, which prevents accidental commands.
The application also checks if your palm is facing the camera, ignoring gestures when the back of your hand is visible. This allows you to adjust your hair or move around without accidentally triggering commands.
For directional gestures like next/previous video navigation, the application uses thumb-only gestures that are specific to which hand is being used (left hand thumb for next, right hand thumb for previous), making the controls more intuitive.
Requirements
- Python 3.9+
- VLC Media Player
- Webcam
- Windows OS
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vlc_gesture_control-0.1.0.tar.gz.
File metadata
- Download URL: vlc_gesture_control-0.1.0.tar.gz
- Upload date:
- Size: 20.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
943c6a5eff7c0be38ab5c71bc0d429233fe236737a6de4af5cfbcb08712e2ab3
|
|
| MD5 |
2beed94b7228996fd9dbea5466347ffc
|
|
| BLAKE2b-256 |
b611688bc1bb6e25cc20754d95fbd9cadfbc5e869f6193da72c7a1935f53bfc0
|
File details
Details for the file vlc_gesture_control-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vlc_gesture_control-0.1.0-py3-none-any.whl
- Upload date:
- Size: 25.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
011cba60b64ee8871f01783d6ea672b8dc3b97fa4c98b29617e633704ece8358
|
|
| MD5 |
dd88e9488c9fb594531a9787e7ddc9d8
|
|
| BLAKE2b-256 |
0763e9c1f0968db159c0dd33d07515a8775f581350baa222dd0f0184a40c19c4
|