Releases: SRGSSR/pillarbox-android
0.7.0
0.6.0
🚧 The SRG stream tracking and analytics have not been validated yet, only ComScore is validated. So do not use this in production environment !!!
Media3 version: 1.1.1
kotlin plugin version: 1.9.0
compiler version: 1.5.1
compose bom version: 2023.08.00
New features
Player
- Support for audio and text tracks. Add helpers to better handle tracks management.
- Add
Player.getTrackSelectionParametersAsFlow
to get flow ofTrackSelectionParameters
changes. - Add
Player.getCurrentTracksAsFlow
to get flow ofTracks
changes. Tracks
extensions filter unsupported tracks.- When using Pillarbox extensions the following feature are supported:
- User accessibility settings.
- Forced subtitles
Core business
- Request
MediaComposition
in chapter only. So segment urn can be played correctly. - Disable playback start when a chapter urn contains a blocking reason or if it has at least one segment with a blocking reason.
- Allow application to query a urn with a vector as a String. By default
Vector.MOBILE
. - Add
Context.getVector
to detect vector.
Analytics
- Add permanent labels to
SRGAnalytics
. - Add user consent api.
Demo
- Improve player settings, add audio and subtitles settings.
- Subtitles are better displayed.
- Migrate to Material3
Breaking Changes
MediaCompositionDataSourceImpl
rename toDefaultMediaCompositionDataSource
.
What's Changed
- Update dependencies by @StaehliJ in #192
- 194 basic support for subtitles and audio tracks by @StaehliJ in #199
- 195 forced subtitles support by @StaehliJ in #201
- Reflet AD from AccessibilityManager settings user preference by @StaehliJ in #203
- Fix viewAspectRatio badly computed by @StaehliJ in #205
- Reset settings navigation when dismiss by @StaehliJ in #209
- Always send uptime for livestreams by @StaehliJ in #208
- Filter unsupported tracks. by @StaehliJ in #210
- 197 improve subtitles UI by @StaehliJ in #213
- 215 simplify akamai tokenizer by @StaehliJ in #216
- 212 update material 3 by @StaehliJ in #214
- 217 load mediacomposition without segments by @StaehliJ in #219
- Add vector to MediaComposition call. by @StaehliJ in #220
- 211 version catalog migration by @StaehliJ in #221
- Remove duplicate method call by @StaehliJ in #225
- Pull media3 version to 1.1.1 by @StaehliJ in #226
- Remove unnecessary glide dependency by @StaehliJ in #227
- Use kotlinx.serialization instead of Moshi by @StaehliJ in #228
- Update streams samples by @StaehliJ in #229
- Update SRG DataProvider to 0.5.0 by @StaehliJ in #231
- Migration to Ktor instead of Retrofit by @StaehliJ in #230
- 198 tracks selection analytics by @StaehliJ in #232
- Block media if at least one segment has a block reason. by @StaehliJ in #236
- 233 add user consent by @StaehliJ in #235
Full Changelog: 0.5.1...0.6.0
0.5.1
🚧 The SRG stream tracking and analytics have not been validated yet. So do not use this in production environment !!!
What's Changed
- Analytics demo application name to Pillarbox by @StaehliJ in #190
- Fix media_volume for CommandersAct by @StaehliJ in #191
Full Changelog: 0.5.0...0.5.1
0.5.0
🚧 The SRG stream tracking and analytics have not been validated yet. So do not use this in production environment !!!
Breaking changes
Initialization of SRGAnalytics
is simplified.
val config = AnalyticsConfig(
vendor = AnalyticsConfig.Vendor.SRG,
nonLocalizedApplicationName = "PillarboxDemo",
appSiteName = "pillarbox-demo-android",
sourceKey = AnalyticsConfig.SOURCE_KEY_SRG_DEBUG
)
initSRGAnalytics(config = config)
New demo feature
You can inject a urn or url directly in the demo.
What's Changed
- 167 comscore page view improvements by @StaehliJ in #168
- 169 commandersact remove bu specific tags by @StaehliJ in #170
- 171 simplify srganalytics initialization by @StaehliJ in #172
- 174 remove unused commandersact streaming label by @StaehliJ in #175
- Remove listener that we should not use by @StaehliJ in #176
- Create MediaSource in the same thread as prepareSourceInternal by @StaehliJ in #178
- Add unified streaming and bitmovin streams by @StaehliJ in #179
- 162 add UI to inject url or urn by @StaehliJ in #180
- Allow integrator to set custom MediaSession.Callback by @StaehliJ in #181
- 182 improve page view and event by @StaehliJ in #183
- Uptime is send only when time shift <= 30 seconds by @StaehliJ in #185
- 186 improve release ci by @StaehliJ in #187
- Add simple page view to lists and search by @StaehliJ in #188
Full Changelog: 0.4.1...0.5.0
0.4.1
What's Changed
- Improve Demo with Integration layer data's that allow to navigate through the SRG SSR content. #161
- Pull media3 version to 1.1.0.
Fixes
- Update media3 version fixes an issue with MediaController and add/set MediaItem with a local configuration or mediaID #160
Full Changelog: 0.4.0...0.4.1
0.4.0 - Stream tracking and analytics
This pillarbox pre release add the support for stream tracking and SRG SSR Analytics. The stream tracking can be customized and new tracking system can be added. Pillarbox is using the released Media3 library 1.0.0 !
🚧 The SRG stream tracking and analytics have not been validated yet. So do not use this in production environment !!!
New Features
- SRG SSR Analytics with standards stream analytics (CommandersAct and comscore). Read more here
- Stream tracking can be customized by implementing your own
MediaItemTracker
please read the documentation for more information about that topic Read more here. - Seek forward and seek backward increments can be set at
PillarboxPlayer
creation. (#146)
Changes
- Remove
PlayerState
it is replaced by flow extensions. Should be easier to get player state as flow. - Remove over complicated Service connections. (#143)
- The demo has been improved by adding playlist UI.
Full Changelog: 0.3.0...0.4.0
0.3.0
Player states
New Feature
Add support to create complexe compose player controls using States with PlayerViewModel
that expose player states as Flows.
Changes
- Use Moshi instead of Gson.
- AspectRatio nullable instead of 0.0f
- Remove subtitle from
PlayerSurface
Full Changelog: 0.1.1...0.2.0
Phase 2 System integration
This is the second alpha release for Pillarbox, with which SRG SSR content can be played, although with minimal features and no provided user interface. This pre-release is far from complete but can be used for early adoption in app prototypes.
Features
- MediaSession integration.
MediaSessionService
andMediaLibraryService
for background playback.- Basic Compose
PlayerSurface
.
Phase 1
This is the first alpha release for Pillarbox, with which SRG SSR content can be played, although with minimal features and no provided user interface. This pre-release is far from complete but can be used for early adoption in app prototypes.
Features
- A player which can play SRG SSR contents (videos and audios, on-demand and livestreams, protected or not).
- Playlist support.
- Basic view components (video view and slider) with which simple user interfaces can be built.