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