PROTOCOLS
Player
Defined in fuchsia.media.sounds/sound_player.fidl
Allows clients to play fire-and-forget sounds.
AddSoundBuffer
Adds a sound, in the form of a buffer containing raw PCM samples, to the collection maintained for the client. The service will retain a handle to the buffer's VMO until the sound is removed and is no longer playing or until the connection is closed.
If id identifies an existing sound in the collection, the service will close the
connection.
Request
| Name | Type |
|---|---|
id |
uint32
|
buffer |
fuchsia.mem/Buffer
|
stream_type |
fuchsia.media/AudioStreamType
|
AddSoundFromFile
Adds a sound to the collection maintained for the client, reading the sound from a file.
If id identifies an existing sound in the collection, the service will close the
connection. Returns the duration of the sound or an error status returned from an I/O
operation.
Currently, only PCM WAV files and Ogg/Opus files are supported.
Request
| Name | Type |
|---|---|
id |
uint32
|
file |
client_end:fuchsia.io/File
|
Response
| Name | Type |
|---|---|
payload |
Player_AddSoundFromFile_Result
|
PlaySound
Plays the existing sound identified by id using a renderer with usage usage. The
sound is played as soon as possible. The reply is sent when the sound is finished playing.
If id doesn't identify an existing sound in the collection, the method returns
PlaySoundError.NO_SUCH_SOUND. The most recent PlaySound call for a given valid id can
be stopped using StopPlayingSound, in which case, this method returns
PlaySoundError.STOPPED.
DEPRECATED - Use PlaySound2 and AudioRenderUsage2
Request
| Name | Type |
|---|---|
id |
uint32
|
usage |
fuchsia.media/AudioRenderUsage
|
Response
| Name | Type |
|---|---|
payload |
Player_PlaySound_Result
|
PlaySound2
Request
| Name | Type |
|---|---|
id |
uint32
|
usage |
fuchsia.media/AudioRenderUsage2
|
Response
| Name | Type |
|---|---|
payload |
Player_PlaySound2_Result
|
RemoveSound
Removes a sound from the collection maintained for the client. A sound can be removed even
if a PlaySound method is pending for that sound.
If id doesn't identify an existing sound in the collection, the service will do nothing.
This is tolerated so that clients don't have to wait for the response from
AddSoundFromFile before playing and removing the sound.
Removing an unneeded sound frees the resources associated with that sound, principally the VMO required to store the uncompressed sound.
Request
| Name | Type |
|---|---|
id |
uint32
|
StopPlayingSound
Stops playback of the sound identified by id invoked by the the most recent call to
PlaySound for that sound. If id doesn't identify an existing sound in the collection
or if the sound is not currently playing, this method does nothing. If more than one
PlaySound method is currently pending for that sound, only the most recent is stopped.
Request
| Name | Type |
|---|---|
id |
uint32
|
STRUCTS
Player_AddSoundFromFile_Response
Defined in fuchsia.media.sounds/sound_player.fidl
| Field | Type | Description | Default |
|---|---|---|---|
duration |
zx/Duration
|
No default |
Player_PlaySound2_Response
Defined in fuchsia.media.sounds/sound_player.fidl
<EMPTY>
Player_PlaySound_Response
Defined in fuchsia.media.sounds/sound_player.fidl
<EMPTY>
ENUMS
PlaySoundError strict
Type: uint32
Defined in fuchsia.media.sounds/sound_player.fidl
Error type for Player.PlaySound.
| Name | Value | Description |
|---|---|---|
NO_SUCH_SOUND |
1 |
The |
RENDERER_FAILED |
2 |
Underlying audio renderer failed. |
STOPPED |
3 |
Playback of the sound was interrupted by a |StopPlayingSound| method call. |
UNIONS
Player_AddSoundFromFile_Result strict
Defined in fuchsia.media.sounds/sound_player.fidl
| Ordinal | Variant | Type | Description |
|---|---|---|---|
1 |
response |
Player_AddSoundFromFile_Response
|
|
2 |
err |
zx/Status
|
Player_PlaySound2_Result strict
Defined in fuchsia.media.sounds/sound_player.fidl
| Ordinal | Variant | Type | Description |
|---|---|---|---|
1 |
response |
Player_PlaySound2_Response
|
|
2 |
err |
PlaySoundError
|
|
3 |
framework_err |
internal
|
Player_PlaySound_Result strict
Defined in fuchsia.media.sounds/sound_player.fidl
| Ordinal | Variant | Type | Description |
|---|---|---|---|
1 |
response |
Player_PlaySound_Response
|
|
2 |
err |
PlaySoundError
|