Stay organized with collections
Save and categorize content based on your preferences.
IMAContentPlayhead
@protocolIMAContentPlayhead
Defines an interface for a class that tracks video content progress and
exposes a key value observable property |currentTime|.
The SDK provides an implementation for tracking AVPlayer-based playback
in the IMAAVPlayerContentPlayhead.
Publishers can supply their own implementation by implementing this
interface and this way support any other video playback implementation
they might have.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-20 UTC."],[[["\u003cp\u003eDefines an interface for tracking video content progress, primarily through the \u003ccode\u003ecurrentTime\u003c/code\u003e property.\u003c/p\u003e\n"],["\u003cp\u003eOffers a key-value observable property, \u003ccode\u003ecurrentTime\u003c/code\u003e, reflecting the current playback time in seconds.\u003c/p\u003e\n"],["\u003cp\u003eIncludes a default implementation for AVPlayer-based playback via \u003ccode\u003eIMAAVPlayerContentPlayhead\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eEnables publishers to create custom implementations for alternative video playback systems by adhering to this interface.\u003c/p\u003e\n"]]],["The `IMAContentPlayhead` protocol tracks video content progress, exposing the observable `currentTime` property, representing playback time in seconds. The SDK provides `IMAAVPlayerContentPlayhead` for `AVPlayer`, but publishers can implement `IMAContentPlayhead` to support other video players. This property's value is key-value observable and is read-only, providing the current playback time as a `TimeInterval` (Swift) or `NSTimeInterval` (Objective-C).\n"],null,[]]