TSClient
@interface TSClient : NSObject
A DVB-CSS Timeline Synchronisation protocol client implementation. A TSClient object will connect to a DVB-CSS Timeline Synchronisation protocol server and negotiate to receive timestamps from a selected timeline on the Timeline Synchronisation protocol server host. The protocol messages are exchanged via a WebSockets connection. The TSClient notifies other objects when new control timestamps are received in 2 ways: 1) via callbacks to a TClient delegate 2) via notifications kTSNewCRTLTimestampNotification
-
TS protocol server endpoint URL
Declaration
Objective-C
@property (readonly, nonatomic) NSURL *TSServerUrl;Swift
var tsServerUrl: URL! { get } -
the programme (identified by contentId) for which we are receiving timeline updates
Declaration
Objective-C
@property (readonly, nonatomic) NSString *contentId;Swift
var contentId: String! { get } -
the timeline whose progress we wish to receive updates. This timeline is selected by the TSClient - it specifies a timeline selector when a TS setup message is sent. If the timeline is available at the TS server host, then progress timestamps on that timeline are reported.
Declaration
Objective-C
@property (readonly, nonatomic) NSString *timelineSelector;Swift
var timelineSelector: String! { get } -
Is TSClient running?
Declaration
Objective-C
@property (readonly, getter=IsRunning, nonatomic) BOOL running;Swift
var isRunning: Bool { get } -
State of TSClient
Declaration
Objective-C
@property (readonly, nonatomic) TSClientState state;Swift
var state: TSClientState { get } -
TSClient delegate (has to conform to TSClientDelegate protocol)
Declaration
Objective-C
@property (assign, readwrite, nonatomic) id<TSClientDelegate> delegate;Swift
var delegate: TSClientDelegate! { get set } -
If true, this object will emit notifications about state change and new control timestamps
Declaration
Objective-C
@property (assign, readwrite, nonatomic) BOOL notifyObservers;Swift
var notifyObservers: Bool { get set }
-
Undocumented
Declaration
Objective-C
@interface TSClient : NSObject -
Undocumented
Declaration
Objective-C
@interface TSClient : NSObject -
Undocumented
Declaration
Objective-C
@interface TSClient : NSObject
-
Start TS protocol client
Declaration
Objective-C
- (void)start;Swift
func start() -
Stop TS protocol client
Declaration
Objective-C
- (void)stop;Swift
func stop()
-
add an observer for clock state changes. Uses Notification design pattern in Cocoa.
Declaration
Objective-C
- (void)addObserver:(id)notificationObserver selection:(SEL)notificationSelector name:(NSString *)notificationName object:(id)objectOfInterest;Swift
func addObserver(_ notificationObserver: Any!, selection notificationSelector: Selector!, name notificationName: String!, object objectOfInterest: Any!) -
remove clock observer
Declaration
Objective-C
- (void)removeObserver:(id)notificationObserver;Swift
func removeObserver(_ notificationObserver: Any!) -
notify observers of clock state changes
Declaration
Objective-C
- (void)notifyObservers:(NSString *)notificationName object:(id)notificationSender userInfo:(NSDictionary *)userInfo;Swift
func notifyObservers(_ notificationName: String!, object notificationSender: Any!, userInfo: [AnyHashable : Any]! = [:])
View on GitHub
TSClient Class Reference