Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 29341-4-14 defines the AVTransport service, a core component of the UPnP AV Architecture that provides standardized control of audio and video playback across a network. This service specification enables control points — such as media controller apps and smart home hubs — to manage the transport state of media rendering devices including smart TVs, network speakers, streaming boxes, and home theater systems. The AVTransport service abstracts the complexity of media playback into a clean set of actions and state variables that any UPnP-compliant control point can use.
The service operates around a well-defined state machine with states including STOPPED, PLAYING, PAUSED, TRANSITIONING, and NO_MEDIA_PRESENT. Each state transition is governed by specific actions (Play, Pause, Stop, Seek, Next, Previous) and is tracked through state variables that control points subscribe to via GENA eventing. This architecture allows multiple control points to share awareness of the current transport state, enabling synchronized multi-room audio and coordinated home theater experiences.
The AVTransport service defines a comprehensive set of actions organized around transport control, media information, and playback queue management. Transport control actions include Play, Pause, Stop, Seek, Next, and Previous, each with well-defined preconditions and postconditions. Media information actions such as GetMediaInfo and GetPositionInfo allow control points to query track metadata, duration, and current playback position. Queue management actions like SetAVTransportURI and SetNextAVTransportURI enable playlist-style sequential playback.
| Action | Description | Key Argument | State Variable Affected |
|---|---|---|---|
| Play | Start or resume playback | Speed (rate multiplier) | TransportState → PLAYING |
| Pause | Pause current playback | — | TransportState → PAUSED |
| Stop | Stop playback and reset position | — | TransportState → STOPPED |
| Seek | Jump to a specific position | Unit (REL_TIME, ABS_TIME, TRACK_NR) | PositionInfo updated |
| SetAVTransportURI | Load a new media resource | CurrentURI (URI string) | AVTransportURI, TransportState |
| GetPositionInfo | Query current playback position | — (returns Track, TrackURI, RelTime, AbsTime) | Read-only query |
Designing multi-room audio systems with AVTransport requires careful synchronization management. The standard provides the “RelativeTimePosition” and “AbsoluteTimePosition” state variables that report playback progress with second-level granularity. However, achieving sample-accurate synchronization across multiple renderers requires additional mechanisms not fully specified in the base standard. Engineers typically implement group coordination using the AVTransport’s “Play” action timestamps or by designating one device as the synchronization master, with others using NTP-based clock alignment to match playback timing.
The Seek action deserves particular attention during implementation. The standard supports four seek modes: TRACK_NR (navigate by track number), ABS_TIME (absolute time from media start), REL_TIME (relative time offset), and DVD-specific modes for frame-level navigation. For network streaming scenarios, ABS_TIME seek is most common and requires the rendering device to map the requested time position to a corresponding byte offset in the streaming protocol (e.g., HTTP range requests for progressive download or DASH segment selection for adaptive streaming).