aiovlc
Control VLC over telnet connection using asyncio
What it is and what it does
aiovlc is a Python library that lets you control a running VLC media player instance over a telnet connection using asyncio. It wraps VLC's telnet remote control protocol in an async-friendly interface, enabling non-blocking, concurrent control of playback, volume, playlists, and other VLC functions from your Python code.
The package is lightweight with no external runtime dependencies, making it straightforward to integrate into async applications. It targets Python 3.13 and later and is actively maintained, though it remains in Alpha status with a small adoption base. It's useful for automation, testing, or building custom media control interfaces that need to communicate with VLC asynchronously.
Use it for:
- Automate VLC playback in test suites or CI/CD pipelines that need non-blocking media control.
- Build async media control dashboards or remote interfaces that send commands to VLC over the network.
- Orchestrate multiple VLC instances concurrently from a single Python application.
- Integrate VLC control into event-driven or reactive applications using asyncio.
- Monitor and control VLC playback state from a separate service or monitoring tool.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Control VLC media player over a telnet connection using Python's asyncio for non-blocking, concurrent operation.
Yes, if you need to control VLC from Python code using asyncio and can accept Alpha-stage software. The low install friction, permissive license, active maintenance, and zero runtime dependencies make it a reasonable choice for automation or integration tasks. The small user base and early maturity mean you should verify telnet setup requirements and test error handling for your use case before relying on it in production.
Install
aiovlc on PyPI
pip
pip install aiovlcuv
uv add aiovlcpoetry
poetry add aiovlcInstalling aiovlc
Before you install
Low install friction with no runtime dependencies. Actively maintained as of August 2026 with recent commits, though early-stage (Alpha) and a small user base.
License in practice
Licensed under Apache-2.0 (permissive), allowing use in commercial and proprietary projects with minimal restrictions.
Quickstart
pip install aiovlc
import asyncio
from aiovlc import VLC
async def main():
vlc = VLC(host='localhost')
await vlc.connect()
await vlc.disconnect()
asyncio.run(main())
Requires Python 3.13 or later; VLC must be running with telnet interface enabled on the target host.
Verify before relying
- Default telnet port and whether VLC telnet interface setup is documented or automated by the package.
- Supported VLC versions and any compatibility constraints beyond Python version.
- Error handling and reconnection behavior for network interruptions.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.13) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 161 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 73,898/month — #14,912 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: aiovlc-0.7.0-py3-none-any.whl
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
aiocomelitAsync Python library for controlling Comelit…
permissive · top 15,000 on PyPI
python-vlcPython ctypes-based bindings to libvlc that let…
copyleft · top 15,000 on PyPI
aiovodafoneAsync Python library for controlling and…
permissive · top 15,000 on PyPI
denonavrProvides async control and monitoring of Denon…
permissive · top 15,000 on PyPI
aiohappyeyeballsImplements Happy Eyeballs (RFC 8305) connection…
permissive · top 100 on PyPI
aiodhcpwatcherWatches for DHCP packets on the network using…
permissive · top 15,000 on PyPI
pyenphaseProvides a Python library to communicate with…
permissive · top 15,000 on PyPI
pysqueezeboxAsynchronous Python library to control Logitech…
permissive · top 15,000 on PyPI
aioamazondevicesAsync Python library for controlling and…
permissive · top 15,000 on PyPI
aiousbwatcherWatches for USB devices being plugged in and…
permissive · top 15,000 on PyPI