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]! = [:])