Warning, /graphics/digikam/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/README.txt is written in an unsupported language. File is not indexed.

0001 Platinum UPnP SDK
0002 =================
0003 
0004 This toolkit consists of 2 modules:
0005 * Neptune : a C++ Runtime Library
0006 * Platinum: a modular UPnP Framework [Platinum uses Neptune]
0007 
0008 Unless you intend to use Neptune independently from Platinum, it is recommended that you build binaries directly from the "Build" tree of Platinum. All the dependent binaries will be rebuilt automatically (including Neptune).
0009 
0010 ---------------------------------------------
0011 BUILDING SDK & SAMPLE APPLICATIONS
0012 
0013 * Windows:
0014 Open the Visual Studio 2008 solution located @ Platinum\Build\Targets\x86-microsoft-win32-vs2008\Platinum.sln
0015 
0016 * MacOSX, iOS:
0017 Open the XCode project file located @ Platinum/Build/Targets/universal-apple-macosx/Platinum.xcodeproj
0018 To include Platinum to your XCode projects, simply add the project file then add Platinum as a Target Dependency as well as libPlatinum.lib in Link Binaries.
0019 Alternatively, you can build the Platinum.Framework using the PlatinumFramework target and add it to your project.
0020 
0021 * Linux, Cygwin, MacOSX, iOS
0022 Open a shell, go to the Platinum root directory and type 'scons' (http://scons.org). 
0023 The output of the scons build will be found under Platinum/Build/Targets/{TARGET}/{Debug|Release}. 
0024 Additionally, the output is copied under Platinum/Targets/{TARGET}/{Debug|Release} for convenience when applicable.
0025 
0026 Command Line Examples:
0027 Builds libPlatinum.a, Platinum.Framework on both OSX & iOS using Xcode. Apps & Tests on OSX only.
0028 [The framework for OSX is i386 and x86_64 compatible, the iOS version is armv6, armv7 and i386 compatible so you can link with it and run your app on device and simulator]
0029 > scons target=universal-apple-macosx-xcode build_config=Release
0030 
0031 Builds Platinum.lib, Tests & Apps for Windows
0032 > scons target=x86-microsoft-win32 build_config=Release
0033 
0034 ---------------------------------------------
0035 RUNNING SAMPLE APPLICATIONS
0036 
0037 * FileMediaServerTest
0038 ---------------------
0039 This is an example of a UPnP MediaServer. Given a path, it allows a UPnP ControlPoint to browse the content of the directory and its sub-directories. Additionally, files can be streamed (Note that only files with known mimetypes are advertised).
0040 
0041 usage: FileMediaServerTest [-f <friendly_name>] <path>
0042     -f : optional upnp server friendly name
0043     <path> : local path to serve
0044 
0045 Once started, type 'q' to quit.
0046 
0047 * MediaRendererTest
0048 -------------------
0049 This is an example shell of a UPnP MediaRenderer. It is to be contolled by a UPnP ControlPoint. This is just a SHELL, this won't play anything yet. You need to hook up the playback functionality yourself.
0050 
0051 usage: MediaRendererTest [-f <friendly_name>]
0052     -f : optional upnp server friendly name
0053 
0054 Once started, type 'q' to quit.
0055 
0056 * MediaCrawler
0057 --------------
0058 This is a combo UPnP MediaServer + ControlPoint. It browses content from other MediaServers it finds on the network and present them under one single aggregated view. This is useful for some devices that need to select one single MediaServer at boot time (i.e. Roku).
0059 
0060 Once started, type 'q' to quit.
0061 
0062 * MicroMediaController
0063 ----------------------
0064 This is a ControlPoint (synchronous) that lets you browse any MediaServer using a shell-like interface. Once started, a command prompt lets you enter commands such as:
0065      quit    -   shutdown
0066      exit    -   same as quit
0067      setms   -   select a media server to become the active media server
0068      getms   -   print the friendly name of the active media server
0069      ls      -   list the contents of the current directory on the active 
0070                  media server
0071      cd      -   traverse down one level in the content tree on the active
0072                  media server
0073      cd ..   -   traverse up one level in the content tree on the active
0074                  media server
0075      pwd     -   print the path from the root to your current position in the 
0076                  content tree on the active media server
0077                  
0078 Experimental MediaRenderer commands (not yet full implemented):
0079      setmr   -   select a media renderer to become the active media renderer
0080      getmr   -   print the friendly name of the active media renderer
0081      open    -   set the uri on the active media renderer
0082      play    -   play the active uri on the active media renderer
0083      stop    -   stop the active uri on the active media renderer
0084      
0085 * MediaConnect
0086 --------------
0087 This is a derived implementation of the FileMediaServerTest with the only difference that it makes it visible to a XBox 360.
0088 
0089 * MediaServerCocoaTest
0090 ----------------------
0091 A basic cocoa test server app showing how to use the Platinum framework on Mac OSX.
0092 
0093 ---------------------------------------------
0094 LANGUAGE BINDINGS
0095 
0096 * Objective-C
0097 -------------
0098 Under Source/Extras/ObjectiveC
0099 
0100 * C++/CLR
0101 ---------
0102 Under Source/Extras/Managed
0103 
0104 * Android Java/JNI
0105 ------------------
0106 To build the JNI shared library, you will need to have installed the Android NDK and set up the proper environment variables such as ANDROID_NDK_ROOT. 
0107 > cd <PlatinumKit>/Platinum
0108 > scons target=arm-android-linux build_config=Release
0109 
0110 > cd <PlatinumKit>/Platinum/Source/Platform/Android/module/platinum
0111 > ndk-build NDK_DEBUG=0
0112 
0113 > import eclipse Android .project located @ <PlatinumKit>/Platinum/Source/Platform/Android/modules/platinum/
0114 This will create the jar file @ <PlatinumKit>/Platinum/Source/Platform/Android/modules/platinum/bin/platinum.jar
0115 
0116 > To Test the Platinum jni layer, import into eclipse both Android projects located @ <PlatinumKit>/Platinum/Source/Platform/Android/samples/sample-upnp & <PlatinumKit>/Platinum/Source/Platform/Android/modules/platinum.
0117