Platinum

The Platinum UPnP SDK is a cross-platform library written in C++ that supports the UPnP AV v1 specs. It implements a ControlPoint and Device. A UPnP AV abstraction layer is provided for a MediaServer and MediaRenderer as well as their ControlPoint counterpart.
Some sample code is also provided for:

  • A basic File based MediaServer: Given a directory, the FileMediaServer exposes all files (recursively) regardless of file types (extensions). Content can also be streamed when asked by a UPnP ControlPoint.
  • A basic MediaServer ControlPoint: The MicroMediaController is a command line based app that lets you synchronously browse a MediaServer. It uses the PLT_SyncMediaBrowser class.
  • A more advanced hybrid sample: The MediaCrawler browses for MediaServers and aggregates their data into its own built-in MediaServer. Some devices will force you to pick one MediaServer during setup and will not let you browse other MediaServers without going through the setup again. By selecting the MediaCrawler on your device, you have access to all MediaServers without going back and forth. Additionnally, the MediaCrawler could transcode if necessary (not supported yet). For example, let’s say a MediaServer exposes WMA content but a device only understands MP3, the MediaCrawler could transcode from WMA to MP3 on the fly and the device wouldn’t even know the difference. (This could also be used to support transcription aka going from one DRM to another).

For more updated news, check out the Platinum blog here.