Playback Control
Play, pause, stop, loop, and seek audio. Control individual players, carts, or everything at once.
Web UI
Transport Controls
Each player and cart has transport buttons:
- ▶ Play — Start playback
- ⏸ Pause — Pause at current position
- ⏹ Stop — Stop and reset to beginning
- 🔁 Loop — Toggle loop mode
Seeking
Click on the waveform or progress bar to seek to that position.
Master Controls
The toolbar has global controls:
- Stop All — Panic button, stops everything
- Pause All — Pause all playing audio
- Master Volume — Global output level
CLI
Play Audio
# Play by file path
bpsoundscape play --file "thunder.wav"
# Play from library
bpsoundscape play --id lib_abc123Player Controls
bpsoundscape player pause --id player_1
bpsoundscape player stop --id player_1
bpsoundscape player seek --id player_1 --position 30.5Stop All
bpsoundscape stopallLoop Mode
bpsoundscape player loop --id player_1 --enabled trueHTTP API
Endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/v1/play | Play audio file |
| POST | /api/v1/players/:id/play | Resume player |
| POST | /api/v1/players/:id/pause | Pause player |
| POST | /api/v1/players/:id/stop | Stop player |
| POST | /api/v1/players/:id/seek | Seek to position |
| POST | /api/v1/stopall | Stop all playback |
Play Audio File
curl -X POST http://localhost:8513/api/v1/play \
-H "Content-Type: application/json" \
-d '{"fileId": "lib_abc123", "loop": false}'Seek
curl -X POST http://localhost:8513/api/v1/players/player_1/seek \
-H "Content-Type: application/json" \
-d '{"position": 30.5}'Stop All
curl -X POST http://localhost:8513/api/v1/stopallOSC
Player Control
| Address | Args | Description |
|---|---|---|
/bpsoundscape/player/{id}/play | none | Play/resume |
/bpsoundscape/player/{id}/pause | none | Pause |
/bpsoundscape/player/{id}/stop | none | Stop |
/bpsoundscape/player/{id}/seek | float | Seek to seconds |
/bpsoundscape/player/{id}/loop | int (0/1) | Loop mode |
/bpsoundscape/stopall | none | Stop all |
Examples
# Play player 1
oscsend localhost 8514 /bpsoundscape/player/1/play
# Seek to 30 seconds
oscsend localhost 8514 /bpsoundscape/player/1/seek f 30.0
# Enable loop
oscsend localhost 8514 /bpsoundscape/player/1/loop i 1
# Stop all (panic)
oscsend localhost 8514 /bpsoundscape/stopallQLab Example
Destination: [BPSoundscape IP]:8514
Play: /bpsoundscape/player/1/play
Stop: /bpsoundscape/player/1/stop
Stop All: /bpsoundscape/stopall