| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Pillarbox is the modern SRG SSR multimedia player ecosystem, built on top of AndroidX Media3. Pillarbox has been designed with robustness, flexibility, and efficiency in mind, with full customization of:
Its robust player provides all essential playback features you might expect:
In addition, Pillarbox provides support for SRG SSR content by including the pillarbox-core-business module (see "Getting started" below).
Tip
Pillarbox is also available on Apple platforms and the Web.
You can easily get your hands on Pillarbox by running one of the demo applications available in this project: pillarbox-demo for phone/tablet, or pillarbox-demo-tv for TV.
Each application allows you to:
Pillarbox is deployed to GitHub Packages. So you need to add the following repository in your Gradle configuration:
// If you declare your repositories in the `settings.gradle(.kts)` file
repositories {
maven("https://maven.pkg.github.com/SRGSSR/pillarbox-android") {
credentials {
username = providers.gradleProperty("gpr.user").get()
password = providers.gradleProperty("gpr.key").get()
}
}
}
// If you declare your repositories in the root `build.gradle(.kts)` file
repositories {
maven("https://maven.pkg.github.com/SRGSSR/pillarbox-android") {
credentials {
username = project.findProperty("gpr.user")?.toString()
password = project.findProperty("gpr.key")?.toString()
}
}
}gpr.user=<your_GitHub_username>
gpr.key=<your_GitHub_personal_access_token>Tip
You can check the GitHub documentation for more information.
Pillarbox is also deployed to the SRG SSR Maven repository. If you don't want to use the GitHub Packages repository, add the following to your Gradle configuration:
Note
You only need to add either the GitHub Packages repository or the SRG SSR repository, not both.
// If you declare your repositories in the `settings.gradle(.kts)` file
repositories {
maven("https://nxrm.rts.ch/repository/maven-srgssr/") {
credentials {
username = providers.gradleProperty("srg_maven_user").get()
password = providers.gradleProperty("srg_maven_password").get()
}
}
}
// If you declare your repositories in the root `build.gradle(.kts)` file
repositories {
maven("https://nxrm.rts.ch/repository/maven-srgssr/") {
credentials {
username = project.findProperty("srg_maven_user")?.toString()
password = project.findProperty("srg_maven_password")?.toString()
}
}
}The necessary credentials can be found in the SRG SSR Bitwarden.
In your module's build.gradle/build.gradle.kts file, add the following dependencies, based on your needs:
// Player specific features
implementation("ch.srgssr.pillarbox:pillarbox-player:<pillarbox_version>")
// Library to handle Cast integration
implementation("ch.srgssr.pillarbox:pillarbox-cast:<pillarbox_version>")
// Library to handle SRG SSR content through media URNs
implementation("ch.srgssr.pillarbox:pillarbox-core-business:<pillarbox_version>")
// Library to handle SRG SSR Cast receiver with SRG SSR content
implementation("ch.srgssr.pillarbox:pillarbox-core-business-cast:<pillarbox_version>")
// Library to display the video surface
implementation("ch.srgssr.pillarbox:pillarbox-ui:<pillarbox_version>") If not already enabled, you also need to turn on Java 17 support in every build.gradle/build.gradle.kts files using Pillarbox. To do so, add/update the following to/in the android section:
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlin {
compilerOptions {
jvmTarget = JvmTarget.JVM_17
}
}To start using Pillarbox in your project, you can check each module's documentation:
Pillarbox is released via the CI pipeline hosted in GitHub Actions. A release is triggered by pushing a tag in the format X.Y.Z (e.g. 2.1.0).
Pushing such a tag runs the Release Pillarbox workflow, which:
Once the workflow completes, the Pillarbox team reviews the generated release notes and finalizes them.
Past releases are available in the release history.
If you want to contribute to the project have a look at our contributing guide.
See the LICENSE file for more information.
| Back | FazBrowse Home | New Git URL |