1.0.0
Important
Letterbox will be sunset in August 2025:
- New SRG SSR products must use Pillarbox only.
- Existing SRG SSR products using Letterbox must transition to Pillarbox before this date.
This is the first official release of Pillarbox for Android platforms. Pillarbox is the modern SRG SSR media playback ecosystem, a generational leap over its predecessor Letterbox.
Tip
Should you have questions, ideas, or should you need assistance, please use our issue tracker or a dedicate discussion.
This version of Pillarbox is based on AndroidX Media3 1.3.0
New features
- Smooth seeking is a better way to seek. To take advantage of this new amazing feature have a look at SmoothProgressTrackerState.
- Core business error messages are translated in all Swiss 🇨🇭 languages (fr, de, it, rm and en).
- Support for 360° video, have a look at the Compose function SphericalSurface.
- Improve Pillarbox Demo on both mobile and Android TV.
Bug fixes
- Fix crash when decode bitmap throw an exception by @StaehliJ in #383
- Fix initial aspect ratio by @MGaetan89 in #466
What's Changed
- Update dependencies move extensions by @StaehliJ in #279
- 280 load drm token protected examples in the demo by @StaehliJ in #281
- Remove ExoPlayer.Builder from PillarboxPlayer by @StaehliJ in #285
- Display "No result" when necessary by @MGaetan89 in #284
- Improve BU selector in search view by @MGaetan89 in #286
- Run tests and linters for all modules by @MGaetan89 in #289
- Use resize endpoint for images by @MGaetan89 in #290
- Display loading when changing BU or query in the search by @MGaetan89 in #291
- Add a navigation bar in the TV demo app by @MGaetan89 in #294
- Improve navigation bar in the TV demo app by @MGaetan89 in #296
- Remove year from copyright info by @MGaetan89 in #301
- Remove "Play Suisse" example by @MGaetan89 in #300
- Create first levels in "Lists" by @MGaetan89 in #299
- Simplify navigation graph definition in "Lists" by @MGaetan89 in #305
- Integrate the remaining screens of the "Lists" section on TV by @MGaetan89 in #306
- Display images in the "Lists" section where supported by @MGaetan89 in #308
- Fix navigation in the TV demo app by @MGaetan89 in #310
- Improve BUs in the "Lists" section by @MGaetan89 in #320
- Update color schemes in the demo apps by @MGaetan89 in #321
- Align examples with
pillarbox-apple
by @MGaetan89 in #322 - Adjust the layout of "Showcases" to match "Examples" by @MGaetan89 in #325
- Adjust the layout of "Lists" to match "Examples" by @MGaetan89 in #328
- Improve the "No content" state in the search by @MGaetan89 in #329
- Update search results view by @MGaetan89 in #331
- Centralise padding values by @MGaetan89 in #332
- Move media icon type in the top left corner on TV by @MGaetan89 in #333
- Update to Detekt 1.23.3 by @MGaetan89 in #334
- Update to Gradle 8.4 by @MGaetan89 in #335
- Add search to TV demo by @MGaetan89 in #336
- Redesign the "Examples" section on TV by @MGaetan89 in #338
- Add back button in nested screen in demo by @StaehliJ in #348
- Remove Windows invalid characters from files by @StaehliJ in #350
- Add user consent documentation by @StaehliJ in #352
- Add icon for not result found in search by @StaehliJ in #354
- Remove
ImageScalingService
from the public API ofpillarbox-core-business
by @MGaetan89 in #355 - Get the list of radio channels from the IL by @MGaetan89 in #357
- Update GitHub Actions workflows by @MGaetan89 in #339
- Update date and duration format, move media type icon, update divider color by @MGaetan89 in #356
- Add merge group to
build.yml
workflow by @MGaetan89 in #360 - Add a menu to change environment in "Lists" on mobile by @MGaetan89 in #358
- Fix player controls in demo tv by @StaehliJ in #362
- Improve navigation in the TV demo app by @MGaetan89 in #353
- Add playback settings to TV demo app by @MGaetan89 in #363
- Update to AndroidX media3 1.2.0 by @StaehliJ in #364
- 359 use pillarbox icon for android tv by @StaehliJ in #367
- Improve settings menu on TV demo by @MGaetan89 in #366
- Add simple error to the player on tv by @StaehliJ in #369
- Display a loading indicator when fetching the next page by @MGaetan89 in #371
- 370 resume playback when content ends by @StaehliJ in #372
- Update dependencies by @StaehliJ in #374
- Visual improvements for the TV demo app by @MGaetan89 in #378
- Fix crash when decode bitmap throw an exception by @StaehliJ in #383
- Review project dependencies by @MGaetan89 in #382
- Remove
Modifier.handleDPadKeyEvents
frompillarbox-ui
by @MGaetan89 in #384 - Fix error in nightly workflow by @MGaetan89 in #387
- Fast seek by @StaehliJ in #386
- Add a sample to start at a given time by @StaehliJ in #392
- Update dependencies by @MGaetan89 in #394
- Fix nightly releases by @MGaetan89 in #395
- Remove "coucou" log in LeanbackPlayerFragment. by @Loic-Dumas in #397
- Reorganize
pillarbox-demo
structure by @MGaetan89 in #398 - Smooth seeking by @StaehliJ in #391
- Use
ubuntu-latest
for Android Tests and enable KVM by @MGaetan89 in #399 - Reorganize
pillarbox-demo-tv
structure and add missing examples by @MGaetan89 in #405 - Add position and duration label by @StaehliJ in #409
- Update unit tests in
pillarbox-analytics
by @MGaetan89 in #411 - 400 single showcase file by @StaehliJ in #410
- 416 use legacy uniqueid after migration commanders act v4x to v5x by @StaehliJ in #417
- Integrate Kover by @MGaetan89 in #413
- 412 update player tests with turbine by @StaehliJ in #418
- Add unit tests to
pillarbox-core-business
by @MGaetan89 in #419 - Enable Detekt on every source set by @MGaetan89 in #422
- Update CONTINUOUS_INTEGRATION.md by @StaehliJ in #423
- Add robolectric analytics tests by @StaehliJ in #431
- Add tests to
pillarbox-player
by @MGaetan89 in #430 - Add comscore tracker tests by @StaehliJ in #434
- Add tests to
pillarbox-player
by @MGaetan89 in #432 - 428 add spherical surface support by @StaehliJ in #435
- Update GitHub Actions dependencies by @MGaetan89 in #424
- 436 remove error handling from playersurface by @StaehliJ in #437
- Update dependencies by @MGaetan89 in #421
- 439 improve current media item tracker by @StaehliJ in #440
- Fix broken image URL in TV demo by @MGaetan89 in #442
- Update KotlinX Coroutines to 1.8.0 by @MGaetan89 in #443
- Update to Kover 0.7.6 by @MGaetan89 in #446
- Fix
PlayerTimeSlider
not being draggable by @MGaetan89 in #447 - 426 add some spaces to position indicator by @StaehliJ in #444
- Add integration tests between the player and the analytics by @MGaetan89 in #441
- Fix error message by @StaehliJ in #454
- Fix slider goes to 0 when flow is collect again by @StaehliJ in #452
- Ignore unknown video size by @StaehliJ in #450
- Fix commanders act smooth seeking by @StaehliJ in #456
- Update dependencies by @MGaetan89 in #453
- Update dependencies by @MGaetan89 in #461
- Introduce a
build
step to thebuild
workflow by @MGaetan89 in #462 - 464 fix analytics event skip next or previous media item by @StaehliJ in #465
- Update translations by @StaehliJ in #467
- Improve publishing configuration by @MGaetan89 in #468
- Create a custom Gradle plugin to configure testing by @MGaetan89 in #469
- Fix initial aspect ratio by @MGaetan89 in #466
Full Changelog: 0.8.1...1.0.0