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

Uploaded Python 3

File details

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

File metadata

  • Download URL: aiovban_pyaudio-0.2.6.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.6.tar.gz
Algorithm Hash digest
SHA256 1693a8405513d55365de7cbf7f6ba3655b0e9aa99a6ceffe5418610b414349e9
MD5 e7c5f7604a8bbccf1ad1f085fd1b5d34
BLAKE2b-256 4d8adff4226ffd6a0f7691e3b4f6292c6416991cd58ba06d4a9965cf8d113d28

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aiovban_pyaudio-0.2.6-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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 3bf28ed0e326e8eae7213b2d542321d814e5b4a5cb90330497a16c02eb7d46cd
MD5 4161da79f516adda48262ea030254ac2
BLAKE2b-256 1b6670dabde7ee81f5b10142e01d9a83e4ffc67c85bb81447372e55ca0b012e1

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