- 1 Architecture Overview
- 1.1 State Transitions
- 1.2 Supported States
- 1.3 Supported actions
- 1.4 Implementation Specifics
- 2 API Reference
- 3 Migration Guide
The AV Transport provides basic access to playing of audio tracks.
Please refer to the UPnP forum AV Transport specification AV Transport v2 for background information.
All state transitions are supported as defined in the specification with the additional valid transition from stopped to paused. Please refer to the state diagram in section 2.5.1 of the AV Transport specification.
This is the start-up state only. After a SetAVTransportURI() action has been issued this state is not re-entered.
Entered when playing of a track has completed. Used to request the next track from the control point.
Entered when a track is playing.
Entered when a pause action is issued.
Momentary state when data is being buffered prior to playing or during seeking.
The following actions are supported as defined in the specification with the noted clarifications:
- Play from stopped - plays track from start
- Play from paused - resumes play from paused position
- Play from playing - plays track from start
- Seek to Track 0 is equivalent to Next()
- Seek to Track 1 replays the current track
- Seek to Track other than 0 or 1 is illegal
- Next or Previous actions terminate playing of the current track and move to the stopped state - the general principle is that this causes the control point to recognise the stopped state as the end of track and send the next track. These functions rely upon the control point knowing which track to set next, i.e. the previous or next track in the playlist. We recommend using SetAVTransportURI() followed by Play() to implement the skip track functions.
- The DS source will automatically change to the AV Transport source on execution of any AV Transport action.
- For gapless playback, the DS Playlist service is recommended. The SetNextAVTransportURI() action is designed to allow gapless playback, however it has many limitations, as described in section 3.4/7.2 of Designing a UPnP AV MediaRenderer from Intel. Due to these limitations it is not usually implemented by the control point.