- Removed TBXML dependency
- Fix a crash when retrieving ads with mezzanines from buffets
- Alleviate a crash when retrieving ads from buffets
- Updated VAST dead end error handling
- Fix an issue regarding a missing header file on setups without Google IMA
- Ability to pause/unpause and check the current status of IMA ad breaks
- Fix an issue with fullscreen icon status when
internalFullscreenSupport
is disabled
- Handle 303 VAST Error (no ads)
- Added event for ad break load
- Fix tvOS build
- Fix build issue
- Improved viewability support
- Fix a crash when using invalid URLs in JSON configs
- Viewability improvements
- Added
pausesOnViewabilityLost
to automatically pause the video when media player goes out of the view
- Preliminary (alpha) tvOS support
- Added opt-in support for playing videos while the app is in background
- Fix an issue when
complete
tracking is not sent when calling[APSMediaPlayer stop]
right after video ends - Added nullability annotations
- Added multiple audio track support
Fix an issue with encoding tracking URLs
- Fix an issue when
[APSMediaPlayer stop]
is called when an item finishes playing and the "complete" tracking is not sent - Add
debug
property onAPSMediaPlayer
to enable logging - Fix
debug
property onAPSVASTAdBreak
not being passed to generated units
Replaced UIWebView with WKWebView Removed YouTube and Vimeo overlays and replaced them with unit managers
Fix "complete", "close" and "closeLinear" events not being tracked
Added adBreakRequested
and adBreakTriggered
tracking events
Fix a crash caused by invalid VAST files
Move IMA support in a different Pod
Opt-in support for using Google IMA SDK instead of internal VAST parser
Fix a layout issue in default controls bar
Fix a condition when the video player would continue playing media units after it was stopped
Stability improvements
Use an iOS 10 compatible way to create ISO 8601 dates.
Fix a crash which occured when an invalid URL was provided as a tracking URL
Fix a bug when fullscreen overlays weren't properly removed from screen after an unit ends playing
Disabled MPMoviePlayerController-based backend on iOS 13
SSAI streams support
Fix UI calls from background threads Support for LIMITADTRACKING, REGULATIONS and GDPRCONSENT macros
Minor bugfix regarding ad counter
Fix loading activity indicator appearing over playing video
Show loading activity indicator while VAST data is retrieved.
Support for LIMITADTRACKING
, REGULATIONS
and GDPRCONSENT
VAST Macros.
Use userAgent
property for [CLIENTUA], if available
Fix missing dependency in pod variant
Process macros in VAST URLs
VAST 4.1 and DAST support Rewrote overlays to use Autolayout
Fix a bug when ad breaks from an old playlist would act on the current one
Fix APSMediaPlayerEventPlaylistFinish
being called when setting up the player
Fix build dependency issue
Migrate UI to AutoLayout for iPhone X support
Preliminary VAST 4 support
Use NSURLSession instead of deprecated NSURLConnection for tracking urls
New property added on APSMediaPlayer to set the User-Agent for HTTP requests
Fix a crash which occurs when receiving invalid VAST URLs
Fix UI thread being blocked by requesting duration from AVPlayer
Fix some video not being played because of slow state changes in AVPlayer
Support for "subtitlesUrl" property in media units
Stability improvements in APSAVPlayer
Fix URL encoding issue in APSAVPlayer
Fix missing KVOController dependency in Podspec
Fix crashes caused by objects being deallocated while still having observers attached to them Fix small issue with AVPlayer backend
Fix overlapping media issue
Stability improvements
New unit manager for Vimeo videos
Fix fullscreen window size in landscape mode
New unit manager for YouTube videos
Subtitles fixes Fix an issue with seekbar layout when changing orientation
SRT subtitles support
Send a 'NSNotification' if retrieving VAST data fails
Added Reachability as a Cocoapods dependency
Fixed issue with seekbar having wrong width after view frame change
Added 'allowedAppInterfaceOrientation' property to allow overriding orientations defined in the .plist configurations / on the root view controller (in case the app manages view rotation independently). Use this if having issues with fullscreen functionality
- Expanded fullscreen orientation support
- Fixed issue with media unit timeout not triggering an error
- Added 'fullscreenOrientationBehaviour' property to allow setting a single permitted interface orientation for fullscreen playback
- Added 'APSMediaPlayerEventPlaylistFinish' event on playlist end
Fixed issue with invalid media playback errors not being triggered on AVPlayer backend
Fixed issue with AVPlayerItem generating a KVO crash on deallocation due to invalid media
Added support for spaces in media unit URLs
Stopping playback and emmiting an error notification when there is no connectivity to media host
Fixed compile warnings generated by module usage
PiP support
Cleanup release. Main changes:
- Now officially called
Veeplay
- deprecated theVeesoPlayer
pod - Separated VeeplayChromecast into separate plugin
- Replaced all MPMoviePlayer constants with own ones
- Updated thumbnail retrieval methods
- Switched doc generator to classic appledoc
Fix wrong behaviour when seeking back and using APSHandleSeekEventPlayLastBreak
Improved Voiceover support
Allow using of external media backends
Optimize AVPlayer-based backend initialization
Workaround for MPMoviePlayerController not sending MPMoviePlayerLoadStateDidChangeNotification sometimes
Fix a linker issue
Fix a random issue when UI was not properly updated when unit's initialPlayBackTime was greater than 0
Added accessibility labels and hints
Disable fullscreen on rotate if the application already supports that orientation
Further fullscreen related improvements
Rotate video when in fullscreen and landscape orientation is not supported
Another fix for currentPlaybackTime nor properly updated after seeking
Ignore Prerolls and midrolls until unit.initialPlaybackTime, if specified
Fix returning currentPlaybackTime while MPMoviePlayerController is seeking
Include ad ID in tracking notification
New leaveFullscreenOnStop property to configure the fullscreen behaviour on stop
Do not exit from fullscreen when stopping the player
Allow custom Application ID for Chromecast
Use HTTPS for tracking requests
Fix a crash caused by invalid VAST data
Fix current time not updating sometimes after seeking using the seekbar.
Expose methods to set and get the sound volume
Option to update the current time while dragging the knot from the seek bar
Fix current time not updating after seek
Workaround for a crash in MPMoviePlayerController and iOS 8.4
Use a UIViewController instead of MTZoomWindow for fullscreen support
Provide an interface to disable internal fullscreen handling
Fix removal of units which haven't preloaded yet
Fix unwanted removal of latest item in playlist when seeking
Fix crash caused by not properly removing KVO observers
Fix skipping ads when seeking
Chromecast support
Accept values with format #RRGGBB on aps_colorFromHexString
Fix an issue when going fullscreen while in landscape orientation
Fix orientation issues after a video was fullscreen
Asynchronously check if an asset is playable
Support for multiple backends (AVPlayer and MPMovieController) Gapless playback between ads and content
- Fix tvOS build
- Fix build issue
- Improved viewability support
- Fix a crash when using invalid URLs in JSON configs
- Viewability improvements
- Added
pausesOnViewabilityLost
to automatically pause the video when media player goes out of the view
- Preliminary (alpha) tvOS support
- Added opt-in support for playing videos while the app is in background
- Fix an issue when
complete
tracking is not sent when calling[APSMediaPlayer stop]
right after video ends - Added nullability annotations
- Added multiple audio track support
Fix an issue with encoding tracking URLs
- Fix an issue when
[APSMediaPlayer stop]
is called when an item finishes playing and the "complete" tracking is not sent - Add
debug
property onAPSMediaPlayer
to enable logging - Fix
debug
property onAPSVASTAdBreak
not being passed to generated units
Replaced UIWebView with WKWebView Removed YouTube and Vimeo overlays and replaced them with unit managers
Fix "complete", "close" and "closeLinear" events not being tracked
Added adBreakRequested
and adBreakTriggered
tracking events
Fix a crash caused by invalid VAST files
Move IMA support in a different Pod
Opt-in support for using Google IMA SDK instead of internal VAST parser
Fix a layout issue in default controls bar
Fix a condition when the video player would continue playing media units after it was stopped
Stability improvements
Use an iOS 10 compatible way to create ISO 8601 dates.
Fix a crash which occured when an invalid URL was provided as a tracking URL
Fix a bug when fullscreen overlays weren't properly removed from screen after an unit ends playing
Disabled MPMoviePlayerController-based backend on iOS 13
SSAI streams support
Fix UI calls from background threads Support for LIMITADTRACKING, REGULATIONS and GDPRCONSENT macros
Minor bugfix regarding ad counter
Fix loading activity indicator appearing over playing video
Show loading activity indicator while VAST data is retrieved.
Support for LIMITADTRACKING
, REGULATIONS
and GDPRCONSENT
VAST Macros.
Use userAgent
property for [CLIENTUA], if available
Fix missing dependency in pod variant
Process macros in VAST URLs
VAST 4.1 and DAST support Rewrote overlays to use Autolayout
Fix a bug when ad breaks from an old playlist would act on the current one
Fix APSMediaPlayerEventPlaylistFinish
being called when setting up the player
Fix build dependency issue
Migrate UI to AutoLayout for iPhone X support
Preliminary VAST 4 support
Use NSURLSession instead of deprecated NSURLConnection for tracking urls
New property added on APSMediaPlayer to set the User-Agent for HTTP requests
Fix a crash which occurs when receiving invalid VAST URLs
Fix UI thread being blocked by requesting duration from AVPlayer
Fix some video not being played because of slow state changes in AVPlayer
Support for "subtitlesUrl" property in media units
Stability improvements in APSAVPlayer
Fix URL encoding issue in APSAVPlayer
Fix missing KVOController dependency in Podspec
Fix crashes caused by objects being deallocated while still having observers attached to them Fix small issue with AVPlayer backend
Fix overlapping media issue
Stability improvements
New unit manager for Vimeo videos
Fix fullscreen window size in landscape mode
New unit manager for YouTube videos
Subtitles fixes Fix an issue with seekbar layout when changing orientation
SRT subtitles support
Send a 'NSNotification' if retrieving VAST data fails
Added Reachability as a Cocoapods dependency
Fixed issue with seekbar having wrong width after view frame change
Added 'allowedAppInterfaceOrientation' property to allow overriding orientations defined in the .plist configurations / on the root view controller (in case the app manages view rotation independently). Use this if having issues with fullscreen functionality
- Expanded fullscreen orientation support
- Fixed issue with media unit timeout not triggering an error
- Added 'fullscreenOrientationBehaviour' property to allow setting a single permitted interface orientation for fullscreen playback
- Added 'APSMediaPlayerEventPlaylistFinish' event on playlist end
Fixed issue with invalid media playback errors not being triggered on AVPlayer backend
Fixed issue with AVPlayerItem generating a KVO crash on deallocation due to invalid media
Added support for spaces in media unit URLs
Stopping playback and emmiting an error notification when there is no connectivity to media host
Fixed compile warnings generated by module usage
PiP support
Cleanup release. Main changes:
- Now officially called
Veeplay
- deprecated theVeesoPlayer
pod - Separated VeeplayChromecast into separate plugin
- Replaced all MPMoviePlayer constants with own ones
- Updated thumbnail retrieval methods
- Switched doc generator to classic appledoc
Fix wrong behaviour when seeking back and using APSHandleSeekEventPlayLastBreak
Improved Voiceover support
Allow using of external media backends
Optimize AVPlayer-based backend initialization
Workaround for MPMoviePlayerController not sending MPMoviePlayerLoadStateDidChangeNotification sometimes
Fix a linker issue
Fix a random issue when UI was not properly updated when unit's initialPlayBackTime was greater than 0
Added accessibility labels and hints
Disable fullscreen on rotate if the application already supports that orientation
Further fullscreen related improvements
Rotate video when in fullscreen and landscape orientation is not supported
Another fix for currentPlaybackTime nor properly updated after seeking
Ignore Prerolls and midrolls until unit.initialPlaybackTime, if specified
Fix returning currentPlaybackTime while MPMoviePlayerController is seeking
Include ad ID in tracking notification
New leaveFullscreenOnStop property to configure the fullscreen behaviour on stop
Do not exit from fullscreen when stopping the player
Allow custom Application ID for Chromecast
Use HTTPS for tracking requests
Fix a crash caused by invalid VAST data
Fix current time not updating sometimes after seeking using the seekbar.
Expose methods to set and get the sound volume
Option to update the current time while dragging the knot from the seek bar
Fix current time not updating after seek
Workaround for a crash in MPMoviePlayerController and iOS 8.4
Use a UIViewController instead of MTZoomWindow for fullscreen support
Provide an interface to disable internal fullscreen handling
Fix removal of units which haven't preloaded yet
Fix unwanted removal of latest item in playlist when seeking
Fix crash caused by not properly removing KVO observers
Fix skipping ads when seeking
Chromecast support
Accept values with format #RRGGBB on aps_colorFromHexString
Fix an issue when going fullscreen while in landscape orientation
Fix orientation issues after a video was fullscreen
Asynchronously check if an asset is playable
Support for multiple backends (AVPlayer and MPMovieController) Gapless playback between ads and content