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.5.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.5-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aiovban_pyaudio-0.2.5.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.5.tar.gz
Algorithm Hash digest
SHA256 191dab9be10212060732b161112e13fe18716081435382d3769bd883ce4a3441
MD5 ed9a49c92e2c6e23c96355d592b1ec7c
BLAKE2b-256 19a2ee15bd8ad770af96fc97b2b914ce624d0eae0c5bb6bcc056e396f32e2383

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aiovban_pyaudio-0.2.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 b3563a91f5c4ce8f459a69c28ca418eb00780f9e04a0d94f64beb6f9e5945c88
MD5 55a098b96539c7153969abfc01acaddc
BLAKE2b-256 6f6e7468f96a67db7b019643df4471d8e6385c02d8e5f542f3f2e0b899754563

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