Skip to main content

A PyAudio wrapper for aiovban

Project description

aiovban-pyaudio

A high-performance PyAudio bridge for the aiovban ecosystem.

Overview

aiovban-pyaudio provides the necessary tools and libraries to bridge VBAN network audio with your local sound hardware. It is built on top of aiovban and leverages its zero-copy architecture for stable, high-bitrate audio streaming with minimal CPU overhead.

Features

  • High-Performance Bridge: Leverages memoryview and zero-copy patterns for efficient audio transfer.
  • Asynchronous Loop Support: Full support for uvloop for low-latency network handling.
  • Command-Line Tools: Ready-to-use binaries for receiving and sending audio.
  • Dynamic Resampling: Handles stream format changes (channels, sample rate) in real-time.

Installation

pip install aiovban-pyaudio[cli]

CLI Usage

Receiving Audio

Connect to a remote VBAN stream and play it through your local speakers:

# aiovban-receiver <host>/<stream_name>
aiovban-receiver 192.168.1.50/Stream1 --output-device "Speakers"

Sending Audio

Capture audio from your local microphone and send it over the network:

aiovban-sender --address 192.168.1.50 --stream-name "Mic" --input-device "Microphone"

Advanced Usage

You can use the VBANAudioPlayer and VBANAudioSender classes directly in your own asyncio applications for deep integration.

from aiovban_pyaudio import VBANAudioPlayer
from aiovban.asyncio import AsyncVBANClient

# ... register device and get stream ...
player = VBANAudioPlayer(stream=stream)
await player.listen()

License

This project is licensed under the MIT License.

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

aiovban_pyaudio-0.2.8.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aiovban_pyaudio-0.2.8-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file aiovban_pyaudio-0.2.8.tar.gz.

File metadata

  • Download URL: aiovban_pyaudio-0.2.8.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for aiovban_pyaudio-0.2.8.tar.gz
Algorithm Hash digest
SHA256 547a299deb9e51b161bd7844b954599eb1a1afcd4702805d4bff19ab6a898a4a
MD5 599f7ef791f4151f2d5147a2c9047772
BLAKE2b-256 cc5011e371bc2314a288d377ad4554280bf6db1a7b934994e0d2788953cce432

See more details on using hashes here.

File details

Details for the file aiovban_pyaudio-0.2.8-py3-none-any.whl.

File metadata

  • Download URL: aiovban_pyaudio-0.2.8-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for aiovban_pyaudio-0.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 a4ca380f479bfc4b844ea9e43c15dd8de5887c5446790b48a54eba3abc5bbcf6
MD5 c1b1062b972568966b3c7b3393e05d13
BLAKE2b-256 a73ec6e2addb2ea913e6acfd36d37e555f70bebf950783ae9c09f15878c4c354

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page