From OpenHome
m (→Track: fixed capitalisation) |
m (→Metatext: fixed capitalisation) |
||
Line 30: | Line 30: | ||
Reports dynamic textual information concerning the current media. | Reports dynamic textual information concerning the current media. | ||
- | This currently amounts to broadcast information from | + | This currently amounts to broadcast information from Internet radio stations, but the same mechanism could be used for other purposes in the future. |
= Technical Details = | = Technical Details = |
Revision as of 13:23, 6 August 2013
Contents |
Overview
The Info service provides information concerning the currently playing media. The information provided is based on the concept of a track, which has a URI and metadata in DIDL-Lite format. Some time after the track changes further information becomes available such as the bit-rate, sample-rate, bit-depth, etc. Optionally a track may contain dynamic textual information (known as metatext) that is updated as the track is played. Metatext is typically used to convey broadcast information from Internet radio stations.
Actions
Counters
Counters are used to version Track, Details, and Metatext information in the face of dynamic changes.
The Counters action can be used by clients that are unable to partake in UPnP eventing in order to track changes in the information provided by the Info Service.
When a track changes, the Track Count is incremented, the URI and Metadata are set, the Details Count is set to zero, the Details are defaulted to blank and zero values, the Metatext Count is set to zero, and the Metatext is set to blank.
Subsequent updates to the Details and Metatext are accompanied by increments in their respective Counters.
Track
Reports current track information concerning the current media:
- URI
- Metadata
Details
Reports details concerning the current media:
- Duration
- Bit Rate
- Bit Depth
- Sample Rate
- Lossless
- Codec Name
Metatext
Reports dynamic textual information concerning the current media.
This currently amounts to broadcast information from Internet radio stations, but the same mechanism could be used for other purposes in the future.
Technical Details
Domain : av.openhome.org Name : Info Version : 1
Info Service Description (XML)
<?xml version="1.0" encoding="utf-8"?> <scpd xmlns="urn:schemas-upnp-org:service-1-0"> <specVersion> <major>1</major> <minor>0</minor> </specVersion> <actionList> <action> <name>Counters</name> <argumentList> <argument> <name>TrackCount</name> <direction>out</direction> <relatedStateVariable>TrackCount</relatedStateVariable> </argument> <argument> <name>DetailsCount</name> <direction>out</direction> <relatedStateVariable>DetailsCount</relatedStateVariable> </argument> <argument> <name>MetatextCount</name> <direction>out</direction> <relatedStateVariable>MetatextCount</relatedStateVariable> </argument> </argumentList> </action> <action> <name>Track</name> <argumentList> <argument> <name>Uri</name> <direction>out</direction> <relatedStateVariable>Uri</relatedStateVariable> </argument> <argument> <name>Metadata</name> <direction>out</direction> <relatedStateVariable>Metadata</relatedStateVariable> </argument> </argumentList> </action> <action> <name>Details</name> <argumentList> <argument> <name>Duration</name> <direction>out</direction> <relatedStateVariable>Duration</relatedStateVariable> </argument> <argument> <name>BitRate</name> <direction>out</direction> <relatedStateVariable>BitRate</relatedStateVariable> </argument> <argument> <name>BitDepth</name> <direction>out</direction> <relatedStateVariable>BitDepth</relatedStateVariable> </argument> <argument> <name>SampleRate</name> <direction>out</direction> <relatedStateVariable>SampleRate</relatedStateVariable> </argument> <argument> <name>Lossless</name> <direction>out</direction> <relatedStateVariable>Lossless</relatedStateVariable> </argument> <argument> <name>CodecName</name> <direction>out</direction> <relatedStateVariable>CodecName</relatedStateVariable> </argument> </argumentList> </action> <action> <name>Metatext</name> <argumentList> <argument> <name>Value</name> <direction>out</direction> <relatedStateVariable>Metatext</relatedStateVariable> </argument> </argumentList> </action> </actionList> <serviceStateTable> <stateVariable sendEvents="yes"> <name>TrackCount</name> <dataType>ui4</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>DetailsCount</name> <dataType>ui4</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>MetatextCount</name> <dataType>ui4</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>Uri</name> <dataType>string</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>Metadata</name> <dataType>string</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>Duration</name> <dataType>ui4</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>BitRate</name> <dataType>ui4</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>BitDepth</name> <dataType>ui4</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>SampleRate</name> <dataType>ui4</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>Lossless</name> <dataType>boolean</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>CodecName</name> <dataType>string</dataType> </stateVariable> <stateVariable sendEvents="yes"> <name>Metatext</name> <dataType>string</dataType> </stateVariable> </serviceStateTable> </scpd>