From OpenHome
(→Services) |
(→Songcast Specifications) |
||
(16 intermediate revisions not shown) | |||
Line 1: | Line 1: | ||
+ | {{nav_openhome_av|OpenHome Media - Developers}} | ||
+ | |||
= Introduction = | = Introduction = | ||
- | OpenHome | + | OpenHome Media is an independent standard for networked audio visual devices. OpenHome Media products all have a standard way of presenting themselves to the network. This makes it possible to write generic Control Point software that is able to control those products independent of manufacturer or specific features. |
- | The technologies associated with making this possible are grouped under the term OpenHome | + | The technologies associated with making this possible are grouped under the term OpenHome Media Topology. |
- | If a developer wishes to write generic software that participates in the aims described above, then they should write that software in a way that conforms to the strategies and algorithms of OpenHome | + | If a developer wishes to write generic software that participates in the aims described above, then they should write that software in a way that conforms to the strategies and algorithms of OpenHome Media Topology, which is described below |
= Topology = | = Topology = | ||
Line 33: | Line 35: | ||
In a properly configured system, if one product is connected to another using an audio cable, then the name of the product sending the audio should match the name of the source receiving the audio. It is by matching these names that a Control Point is able to select the correct input on, for instance, a preamp when a particular source is selected. | In a properly configured system, if one product is connected to another using an audio cable, then the name of the product sending the audio should match the name of the source receiving the audio. It is by matching these names that a Control Point is able to select the correct input on, for instance, a preamp when a particular source is selected. | ||
- | == Discovering An OpenHome | + | == Discovering An OpenHome Media System == |
- | The correct way to discover an OpenHome | + | The correct way to discover an OpenHome Media system is to: |
* search for all units bearing the Product service | * search for all units bearing the Product service | ||
Line 60: | Line 62: | ||
Products that offer volume control include the Volume attribute and the [[Av:Developer:VolumeService|Volume service]] | Products that offer volume control include the Volume attribute and the [[Av:Developer:VolumeService|Volume service]] | ||
- | |||
- | |||
- | |||
- | |||
== Now Playing Information == | == Now Playing Information == | ||
Products that provide information concerning the currently playing media include the [[Av:Developer:InfoService|Info service]] | Products that provide information concerning the currently playing media include the [[Av:Developer:InfoService|Info service]] | ||
- | Products that report the | + | Products that report the current time within the currently playing track include the [[Av:Developer:TimeService|Time service]] |
== Multiroom Functionality == | == Multiroom Functionality == | ||
- | + | An OpenHome Media Sender broadcasts music onto a network in a way that is playable by an OpenHome Media Receiver. | |
- | An OpenHome Av | + | An OpenHome Media Sender includes the [[Av:Developer:SenderService|Sender service]]. |
- | + | An OpenHome Media Receiver includes a Receiver source (as part of of its topology) and an associated [[Av:Developer:ReceiverService|Receiver service]]. | |
= Services = | = Services = | ||
- | + | * [[Av:Developer:ProductService|Product service]] | |
- | [[Av:Developer:ProductService|Product service]] | + | * [[Av:Developer:PlaylistService|Playlist service]] |
- | + | * [[Av:Developer:RadioService|Radio service]] | |
- | + | * [[Av:Developer:InfoService|Info service]] | |
- | [[Av:Developer:PlaylistService|Playlist service]] | + | * [[Av:Developer:TimeService|Time service]] |
- | + | * [[Av:Developer:VolumeService|Volume service]] | |
- | [[Av:Developer:RadioService|Radio service]] | + | * [[Av:Developer:SenderService|Sender service]] |
- | + | * [[Av:Developer:ReceiverService|Receiver service]] | |
- | [[Av:Developer:InfoService|Info service]] | + | |
- | + | ||
- | [[Av:Developer:TimeService|Time service]] | + | |
- | + | ||
- | [[Av:Developer:VolumeService|Volume service]] | + | |
- | + | ||
- | [[Av:Developer:SenderService|Sender service]] | + | |
- | + | ||
- | [[Av:Developer:ReceiverService|Receiver service]] | + | |
- | = | + | = Songcast Specifications = |
- | + | * [[Av:Developer:Songcast:Ohm|Songcast OHM/OHU Protocol Specification]] | |
- | [[Av:Developer:Ohm|OHM/OHU Protocol Specification]] | + | * [[Av:Developer:Songcast:Ohz|Songcast OHZ Protocol Specification]] |
- | [[Av:Developer:Ohz|OHZ Protocol Specification]] | + |
Latest revision as of 09:49, 29 August 2011
Contents |
Introduction
OpenHome Media is an independent standard for networked audio visual devices. OpenHome Media products all have a standard way of presenting themselves to the network. This makes it possible to write generic Control Point software that is able to control those products independent of manufacturer or specific features.
The technologies associated with making this possible are grouped under the term OpenHome Media Topology.
If a developer wishes to write generic software that participates in the aims described above, then they should write that software in a way that conforms to the strategies and algorithms of OpenHome Media Topology, which is described below
Topology
Products
An OpenHome installation consists of products from a variety of manufacturers each bearing the Product service.
Amongst other information, each product has:
- Room (user configurable, defaults to 'Main Room')
- Name (user configurable, defaults to the model name)
- Source Count (fixed according to the capabilities of the product)
- List of Sources, each with its own Type, Name, and Visibility
- Attributes, identifying additional functionality offered by the product
Proper Configuration
The name of each product represents its audio output.
The name of each source represents an audio input (either internal or external).
In a properly configured system, if one product is connected to another using an audio cable, then the name of the product sending the audio should match the name of the source receiving the audio. It is by matching these names that a Control Point is able to select the correct input on, for instance, a preamp when a particular source is selected.
Discovering An OpenHome Media System
The correct way to discover an OpenHome Media system is to:
- search for all units bearing the Product service
- subscribe to each Product service
- group these products according to their Room.
- collect the name of all the sources in each product
- match the names of the sources to the names of the products to create a set of tree structures in each room.
Source Functionality
To determine the kind of functionality available on each source, inspect its type.
If it has type Playlist, it additionally contains the Playlist service
If it has type Radio, it additionally contains the Radio service
If it has type Receiver, it additionally contains the Receiver service
Volume Control
Products that offer volume control include the Volume attribute and the Volume service
Now Playing Information
Products that provide information concerning the currently playing media include the Info service
Products that report the current time within the currently playing track include the Time service
Multiroom Functionality
An OpenHome Media Sender broadcasts music onto a network in a way that is playable by an OpenHome Media Receiver.
An OpenHome Media Sender includes the Sender service.
An OpenHome Media Receiver includes a Receiver source (as part of of its topology) and an associated Receiver service.
Services
- Product service
- Playlist service
- Radio service
- Info service
- Time service
- Volume service
- Sender service
- Receiver service