class Player

Defined at line 1219 of file fidling/gen/sdk/fidl/fuchsia.media.sounds/fuchsia.media.sounds/hlcpp/fuchsia/media/sounds/cpp/fidl.h

Allows clients to play fire-and-forget sounds.

Public Members

static const char[] Name_

Public Methods

void ~Player ()
void AddSoundFromFile (uint32_t id, ::fidl::InterfaceHandle< ::fuchsia::io::File> file, AddSoundFromFileCallback callback)

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.

void AddSoundBuffer (uint32_t id, ::fuchsia::mem::Buffer buffer, ::fuchsia::media::AudioStreamType stream_type)

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.

void RemoveSound (uint32_t id)

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.

void PlaySound (uint32_t id, ::fuchsia::media::AudioRenderUsage usage, PlaySoundCallback callback)

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`.

void PlaySound2 (uint32_t id, ::fuchsia::media::AudioRenderUsage2 usage, PlaySound2Callback callback)
void StopPlayingSound (uint32_t id)

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.

Protected Methods

void handle_unknown_method (uint64_t ordinal, bool method_has_response)

Friends

class Player_Stub