TurboPlayer Service SDK
TurboPlayer Service and the TurboPlayer Service SDK are in preview status
We strongly recommand to first use this version in a test environment before going productive with it. A stress test in a productive-like situation is needed in order to ensure the stability of this version.
Contact our support team to get this version.
Component | Version |
---|---|
TurboPlayerServiceSDK | 6.4.268.0 (Test version) |
Non-backwards compatible changes:
All time information metadata except NextFixed are having now "Time" format (early was "Duration")
Previous versions automatically converted null value from conditions to the empty string. From now, if the client doesn't want to receive the metadata with the null and empty values, two values to compare must be defined in the DataModel: null and "" (empty string)
SelectShow request is renamed to LoadFreeShowList
SelectNode request is renamed to LoadNodeIntoStack
SelectJingleGroup request is renamed to LoadJingleGroup
New Features
New API based on the DataModel and markup language
Warning! New API is completely incompatible with the old API 1.xProvide TurboPlayer metadata for the elements still not loaded int the TurboPlayer
Include RTF files content into output from GetLoadedRundown command
Human-friendly error message if configured GUI number is out of range of accessible TurboPlayer GUI numbers
Support usePrevAsNext parameter for NodeInsert, NodeCopy & NodeMove requests
Subscribe for notifications about playout state changes and updates in the broadcast list
Users can subscribe for notifications regarding changes for any BCS and TurboPlayer metadata (e.g., change in rundown list, change of current play position)
Client-defined DataModel subscription mechanic allows clients to determine how notification data is organized and communicated between TurboPlayer Service and the client
Notification traffic can be optimized by including conditions in client-defined DataModels (e.g., only send play position updates for a specific channel number or playing state)
New features in DataModel
Include RTF files content into notifications
Simplify UpdateTree notification from the TurboPlayer as a 4 small another type notifications to make it easy to handle & reduce the traffic for the service clients
Support time information in time format
Support LastPlayItem metadata
Null can be used as a value to compare in conditions in DataModel
New Commands
Support GetWaveformFile request
Support LoadShow request for loading show if FreeShowList mode is disabled
Fixes
No more error "AllowRearrangementMode must be enabled for specified rundown list" for the NodeInsert request
No error message via subscribed DataModel if the same error is repeated multiple times
Properly handle empty RTF files
Remove RTFContent metadata from the GetLoadedRundown output if this metadata isn't specififed in the fields list
GetLoadedRundown request returned properly track node id by using track node id or any other node id under show node
GetLoadedRundown returned RTFContent metadata matched to the updated service settings after ReloadSettings request
NextPlayItem metadata isn't missed if TP play nothing
Send the correct events when the sequence of elements within a group in the TurboPlayer changes
Send the correct events while moving elements in the TurboPlayer by service host with fast CPU and slow network connection
Send the time information metadata if it subscribed via the DataModel
Send the time information metadata subscribed via the DataModel by loading / unloading shows
Always provide full node id instead of local node id in Delete BCS tree event
Properly simplify UpdateTree notification from the TurboPlayer for moved elements in groups in the past
Always send full node id for root node in BCS events
Always send properly Insert & UpdateData notifications for the elements in currently played show
RunningShowName & RunningShowTimeStart are received without RunningShowId
Empty NodeId in the single DataModel type
TimeInfo is received for show and all TurboPlayer stack rundown list types
Known issues
LoadNodeIntoStack request can load sometimes parts of show, jingle group, preproduction or pool into stack (e.g. track from show) if subnode under show, jingle group, preproduction or pool is specified for loading. To avoid it always specify exactly nodeId related to show, jingle group, preproduction or pool otherwise behavior is undefined (node could be loaded or not without any error messages)
If existed but not acceptable (e.g. due to user rights or broadcast list hierarchy) nodeId is specified for following requests, request will be not completed, but no error messages will be returned due TurboPlayer bug.
NodeInsert
NodeCopy
NodeMove
LoadShow
LoadFreeShowList
LoadNodeIntoStack
LoadJingleGroup
The following keywords are currently not supported in markup language. We plan to have these supported in future releases.
Immortal
LocalIndex
RemoteIndex
Component
Rights
LocalIndexStartValue
Color