ogplayer_flutter 1.2.0
ogplayer_flutter: ^1.2.0 copied to clipboard
OGPlayer — a full-featured video player SDK for Flutter. HLS/DASH, DRM, IMA ads, offline downloads, playlists, picture-in-picture and a fully customizable native player UI.
1.2.0 #
Wraps OGPlayer Android 1.2.0 and OGPlayer iOS 1.2.0.
PlaybackRecoveredEvent(reason,positionMs): the player reports the recoveries it performs on its own, so your analytics can count them.RecoveryReasonsays why. Android; on iOS these show as aBufferStart/BufferEndpair.FairPlayConfig.renewalInterval: for license servers that lease FairPlay keys for a fixed time, set it a little under the lease and the key is renewed in the background through your token provider.- Long DRM sessions on Android: a license that expires mid-stream is renewed
and playback resumes at the same position; at most a
PlaybackRecoveredEvent, never an error. - Leaving a player screen no longer changes the orientation of the screen that follows it.
Additive — safe upgrade from 1.1.1.
1.1.1 #
- Example app: a real README (the 1.1.0 example shipped the Flutter template text).
- No code changes — safe upgrade from 1.1.0.
1.1.0 #
Initial release — wraps OGPlayer Android 1.1.0 and OGPlayer iOS 1.1.2.
OGPlayerViewwidget +OGPlayerViewController: VOD/live/live-DVR, multi-DRM with a DarttokenProvider, Google IMA ads, playlists with the "Up next" card, picture-in-picture, subtitles/audio/quality selection, fullscreen (button + rotate), watermark overlays, full chrome configuration down to headless.OGVerticalFeedViewwidget: the SDK's swipeable portrait video feed — pooled preloaded neighbours, split text/video layouts, sponsored items, host-owned rail actions — withOGVerticalFeedItem,OGVerticalFeedConfig,FeedRailAction,OGFeedContentFit,OGFeedTextPlacementandOGFeedSplitAudioSource.OGDownloads: offline downloads with offline DRM, license renewal, and a broadcast event stream.
iOS host requirements (see the README): forward
application(_:supportedInterfaceOrientationsFor:) to
OgplayerFlutterPlugin.interfaceOrientationMask for fullscreen/rotate, and
application(_:handleEventsForBackgroundURLSession:completionHandler:) to
OgplayerFlutterPlugin.handleDownloadBackgroundEvents so downloads that
finish while the app is not running complete.