Skip to content
Loading local search…

Try a task like “spawn a ship” or “read inventory”, or an exact API name.

Choose one category, or search all.

sc_audio_v1.play

Accept an isolated playback for an owned trigger and return a distinct owner-bound playback token; acceptance is not audible output or completion.

sco_result (*)(sco_plugin *, uint64_t, uint64_t *)

Service index

Property Value
Symbol sc_audio_v1.play
Record ID sc-audio-v1-play
Service game.audio
Table sc_audio_v1
Version macro SC_AUDIO_VERSION_1_1
Packed table version 65537
Since / availability size >= 24; 1.0
Complete member extent (x64 bytes) 24
Table size (x64 bytes) 40

Header source

sco_result (*play)(sco_plugin* self, uint64_t trigger, uint64_t* out_playback);
Accept an isolated playback for an owned trigger and return a distinct owner-bound playback token; acceptance is not audible output or completion.

OK accepted; BAD_ARG invalid owner/input; WRONG_THREAD; NOT_FOUND unknown/stale/wrong-kind; FAILED foreign owner or backend failure; TOO_MANY quota; UNAVAILABLE unbound, revoked, stopped or restart-required. Output tokens zero on failure.

game.audio.triggers OFF without a bound host provider; no native backend, not run in game.

Live caller owns trigger and playback tokens. No native pointers or cross-boundary allocation; tokens never reused within process.

Game thread only.

No plugin callbacks. Host backend synchronous, bounded and nonthrowing.

Recursive operations fail with FAILED; owner release during backend call drains cleanup on return.

Owner unload stops only owned effects. Failed stop retains effect/context and cleanup hook; new effects remain unavailable even after recovery.

Status labels are copied verbatim from the catalogue: direct is native access; typed-wrapper is wrapper-backed; restricted is a subset/adaptation; unsupported means no supported route is established. No status implies universal safety.

Language Catalogue status Source evidence / wrapper tokens
c direct include/sc_audio.h
(*play)
cpp typed-wrapper include/scosdk/game/audio.hpp
table_->play(
csharp unsupported docs/game/audio.md
unsupported
lua unsupported docs/game/audio.md
unsupported

None identified in the catalogue; this is not proof none can exist.

ABI pins prove layout, not semantic behavior or a live game session.