BAPS3 Specification

Feature: PlayStop

Provides the play and stop requests, as well as the Playing and Stopped states.

Dependencies

PlayStop has no dependencies.

Conflicts

PlayStop may conflict with any other playback control sets, and conflicts with any other feature providing an initial file-loaded state.

States

Playing — playing audio

The state in which the audio source is actively playing. This state should be reachable only from Stopped (via play).

Stopped — not playing audio

The state in which the audio source is stopped playing. This state should be reachable from Playing (via stop), but may also be reachable from any state representing a lack of audio source (for example, Ejected from FileLoad).

This should be the initial state, unless a state is available representing a lack of audio source, and the server starts without any audio source loaded. (For example, if FileLoad and PlayStop are both implemented, the initial state should be Ejected, not Stopped).

For the purposes of FileLoad, Stopped is the initial file-loaded state.

Requests

play — start playing audio

Synopsis

play

Description

If the current state is Stopped, the current state should be set to Playing and the audio source should begin playing. If the audio source is a file, it should be played from its last stopped position, or the beginning of the file if it has not been stopped since loading.

stop — stop playing audio

Synopsis

stop

Description

If the current state is Playing, the current state should be set to Stopped and the audio source should stop playing. If the audio source is a file, its current position should be carried over to any subsequent play command.

Responses

PlayStop provides no responses. Confirmation of the play and stop requests is provided through the core STATE response.