Official WAVE SDK for Python - 33 API modules for streaming, production, analytics, and more
Project description
WAVE SDK for Python
Official Python SDK for the WAVE API by WAVE Inc.
Installation
pip install wave-sdk
Quick start
from wave import Wave
wave = Wave(api_key="your-api-key", organization_id="org_123")
# Create and start a live stream
stream = wave.pipeline.create(title="My Stream", protocol="webrtc")
wave.pipeline.start(stream.id)
health = wave.pipeline.get_health(stream.id)
print(f"Viewers: {health['viewer_count']}")
# Create a virtual camera from NDI
device = wave.prism.create_device(
name="PTZ Camera 1",
type="camera",
source_protocol="ndi",
source_endpoint="NDI-CAM-1",
node_id="node_abc",
ptz_enabled=True,
)
# Get analytics
viewers = wave.pulse.get_viewer_analytics(time_range="24h")
All 33 APIs
P1 - Core
| API | Description |
|---|---|
wave.pipeline |
Live streaming engine |
wave.studio |
Multi-camera production |
P2 - Enterprise
| API | Description |
|---|---|
wave.fleet |
Device fleet management |
wave.ghost |
AI auto-directing |
wave.mesh |
Multi-region failover |
wave.edge |
CDN and edge workers |
wave.pulse |
Analytics and BI |
wave.prism |
Virtual Device Bridge |
wave.zoom |
Zoom integration |
P3 - Content & Commerce
| API | Description |
|---|---|
wave.clips |
Video clips |
wave.editor |
Video editor |
wave.voice |
Voice synthesis |
wave.phone |
Phone calls |
wave.collab |
Collaboration |
wave.captions |
Auto-captions |
wave.chapters |
Video chapters |
wave.studio_ai |
AI assistant |
wave.transcribe |
Transcription |
wave.sentiment |
Sentiment analysis |
wave.search |
Content search |
wave.scene |
Scene detection |
wave.vault |
Recording storage |
wave.marketplace |
Marketplace |
wave.connect |
Integrations |
wave.distribution |
Social simulcast |
wave.desktop |
Desktop Node |
wave.signage |
Digital signage |
wave.qr |
QR codes |
wave.audience |
Polls/Q&A |
wave.creator |
Monetization |
P4 - Specialized
| API | Description |
|---|---|
wave.podcast |
Podcast production |
wave.slides |
Slides-to-video |
wave.usb |
USB relay |
Error handling
from wave import WaveError, RateLimitError
try:
wave.pipeline.get("invalid-id")
except RateLimitError as e:
print(f"Rate limited. Retry after {e.retry_after}s")
except WaveError as e:
print(f"{e.code}: {e.message} ({e.status_code})")
Requirements
- Python 3.9+
- httpx
- pydantic
License
MIT - WAVE Inc.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wave_sdk-2.0.0.tar.gz
(30.1 kB
view details)
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
wave_sdk-2.0.0-py3-none-any.whl
(45.0 kB
view details)
File details
Details for the file wave_sdk-2.0.0.tar.gz.
File metadata
- Download URL: wave_sdk-2.0.0.tar.gz
- Upload date:
- Size: 30.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b187339a822f3275184f5102053cc3eb613846550c13b3728e4d3721b2a80504
|
|
| MD5 |
14f5f92aa6e8ecd0b3d8dd9125cf6604
|
|
| BLAKE2b-256 |
6b80e63b049d86dbb3fca9d49d212425848c94b440e64c69210d4ef28ad352fb
|
File details
Details for the file wave_sdk-2.0.0-py3-none-any.whl.
File metadata
- Download URL: wave_sdk-2.0.0-py3-none-any.whl
- Upload date:
- Size: 45.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e844943042207b1d53bff7c870501293d0cc4c2d854f6da9270c3e3d3732fc0
|
|
| MD5 |
eb7338bb47befbf5caf192fc15daf852
|
|
| BLAKE2b-256 |
284140652761a95cb57b5685c263c2adc2a7d2e74a4fe3201c29a72db932dee2
|