Releases: jellyfin/jellyfin-androidtv
v0.17.0-beta.5
This will be the real final beta for version 0.17.0, because some major issues did arise in the previous beta. Please report any issues you may find as a GitHub issue. Additional changes will be put directly in the stable release or one of the following patch releases.
If you appreciate my work, you can show your support with a donation trough GitHub sponsors.
π Beta information
Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.
ποΈ Enhancements
- Update debug media details #3783, by @nielsvanvelzen
- Remove unused dtsEnabled preference #3785, by @nielsvanvelzen
- Add PCM_S16LE, PCM_S20LE and PCM_S24LE to supported audio codecs #3788, by @Bond-009
- Update targetSdk to 34 #3807, by @nielsvanvelzen
π₯ Crash fixes
- Fix nullability in copyWith[Series]TimerId functions #3803, by @nielsvanvelzen
π§ Bugfixes
- Fix FullDetailsFragment duplicating buttons on resume #3774, by @nielsvanvelzen
- Disable tunneling #3786, by @nielsvanvelzen
- Fix NPE when opening Live TV guide for the first time #3790, by @nielsvanvelzen
- Fix "other" items in ByLetterFragment #3802, by @nielsvanvelzen
- Fix record buttons in LiveProgramDetailPopup swapped #3808, by @nielsvanvelzen
- Fix Live TV program popup not populating when opening early #3809, by @nielsvanvelzen
π Refactoring
- Split "playback/exoplayer" Gradle module into two #3781, by @nielsvanvelzen
π Dependency updates
- fix(deps): update dependency org.jellyfin.sdk:jellyfin-core to v1.5.1 #3779, by renovate[bot]
- fix(deps): update androidx.fragment to v1.8.2 #3799, by renovate[bot]
- fix(deps): update androidx.lifecycle to v2.8.4 #3800, by renovate[bot]
- fix(deps): update dependency androidx.activity:activity to v1.9.1 #3801, by renovate[bot]
- chore(deps): update github/codeql-action action to v3.25.14 #3804, by renovate[bot]
- fix(deps): update androidx.media3 to v1.4.0 #3806, by renovate[bot]
- fix(deps): update dependency org.jellyfin.sdk:jellyfin-core to v1.5.2 #3810, by renovate[bot]
Contributors
v0.17.0-beta.4
This will be the final beta for version 0.17.0, unless any major issues arise. Please report any issues you may find as a GitHub issue.
If you appreciate my work, you can show your support with a donation trough GitHub sponsors.
π Beta information
Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.
ποΈ Enhancements
- Improve BlurHash decoding performance #3753, by @cbeyls
- Increase ExoPlayer HTTP timeouts #3759, by @nielsvanvelzen
- Update editor config #3760, by @nielsvanvelzen
π§ Bugfixes
- Fix race condition in player backdrop #3751, by @nielsvanvelzen
- Fix AudioNowPlayingFragment showing "From null" when there is no album name #3752, by @nielsvanvelzen
- Fix timezone issues in Live TV guide #3761, by @nielsvanvelzen
π Refactoring
- Improve intro loading in SdkPlaybackHelper #3755, by @nielsvanvelzen
- Remove unused compat streaminfo code #3762, by @nielsvanvelzen
- Replace all left-over Date usages with java.time #3767, by @nielsvanvelzen
π Dependency updates
- Update dependency org.jellyfin.sdk:jellyfin-core to v1.5.0 #3744, by renovate[bot]
- fix(deps): update dependency io.mockk:mockk to v1.13.12 #3756, by renovate[bot]
- chore(deps): update gradle/actions action to v3.5.0 #3758, by renovate[bot]
- fix(deps): update dependency io.coil-kt:coil-base to v2.7.0 #3766, by renovate[bot]
- chore(deps): update github/codeql-action action to v3.25.13 #3770, by renovate[bot]
Contributors
v0.17.0-beta.3
Another large list of changes, once again with the focus on fixing regression. Please report any issues you find so they can be resolved before the stable release.
If you appreciate my work, you can show your support with a donation trough GitHub sponsors.
π Beta information
Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.
ποΈ Enhancements
- Shrink BaseItemInfoRowRuntime size #3724, by @nielsvanvelzen
- Rewrite details row with constraint layout #3729, by @nielsvanvelzen
- Add direct play support for WAV audio #3737, by @nielsvanvelzen
π₯ Crash fixes
- Fix crash when refreshing current item #3723, by @nielsvanvelzen
- Fix crash when item has no media sources #3731, by @nielsvanvelzen
- Refactor Live TV popups #3733, by @nielsvanvelzen
- Fix various Live TV issues #3743, by @nielsvanvelzen
π§ Bugfixes
- Fix authorization for transcoding #3735, by @nielsvanvelzen
- Fix "Next episode(s)" row not showing #3746, by @nielsvanvelzen
π Dependency updates
- Update dependency androidx.tv:tv-material to v1.0.0-rc01 #3738, by renovate[bot]
- Update dependency gradle to v8.9 #3739, by renovate[bot]
- Update dependency com.android.tools.build:gradle to v8.5.1 #3741, by renovate[bot]
- Update CI dependencies #3722, by renovate[bot]
Contributors
v0.17.0-beta.2
This second beta for 0.17 fixes multiple issues related to music playback.
If you appreciate my work, you can show your support with a donation trough GitHub sponsors.
π Beta information
Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.
π₯ Crash fixes
- Fix crash when re-opening app during music playback #3713, by @nielsvanvelzen
- Catch errors in ExoPlayerAudioPipeline #3716, by @nielsvanvelzen
π§ Bugfixes
- Fix PlaySessionService no longer reporting to server #3712, by @nielsvanvelzen
- Fix refreshing current playing item hiding play icon #3715, by @nielsvanvelzen
- Fix isPlayingAudio behavior #3720, by @nielsvanvelzen
Contributors
v0.17.0-beta.1
I am excited to announce beta 1 for the next release. Starting with this beta, the app requires Jellyfin version 10.9.0 or higher. A blog post with more details will be available on release.
If you appreciate my work, you can show your support with a donation trough GitHub sponsors.
π Beta information
Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.
π Highlights
- Add home button when away from home view #3262, by @VizuaaLOG
- Add preferences for screensaver age rating #3513, by @nielsvanvelzen
- Implement normalization gain for music tracks #3660, by @nielsvanvelzen
- Add media logo to screensaver #3680, by @haydenzeller
ποΈ Enhancements
- Watched indicator settings string clarity improvements #2997, by @DoggoOfSpeed
- Add ability to sort by runtime #3084, by @bathompson
- Add more item types to search #3266, by @nielsvanvelzen
- Support setting audio and subtitle streams via remote control #3288, by @3l0w
- Show specials for seasons #3292, by @nielsvanvelzen
- Show specials for series #3301, by @nielsvanvelzen
- Remove "auto" max bit rate and add additional values #3372, by @nielsvanvelzen
- Rewrite BaseItemInfoRow with Compose #3379, by @nielsvanvelzen
- Remove "automatically choose" option from video player preference #3407, by @nielsvanvelzen
- Add "clear image cache" button to developer preferences #3409, by @nielsvanvelzen
- Add fallthrough to media3 MimeTypes in codec->mime type mapping #3410, by @nielsvanvelzen
- Enable Vorbis audio in video direct play #3417, by @MichaelRUSF
- Remove non-profile usages of DeviceUtils #3425, by @nielsvanvelzen
- Improve info row colors #3448, by @nielsvanvelzen
- Update to Kotlin SDK 1.5.0-beta.1 (Jellyfin 10.9) #3472, by @nielsvanvelzen
- Update SDK to 1.4.7 (10.8 with enum backports) #3478, by @nielsvanvelzen
- Add button to pick a random item to the smart screen #3487, by @nielsvanvelzen
- Split playback preferences into normal and advanced screens #3497, by @nielsvanvelzen
- Refactor QueueEntry design #3554, by @nielsvanvelzen
- Cache computed PlayableMediaStream in QueueEntry element #3555, by @nielsvanvelzen
- Initial video support in playback rewrite #3557, by @nielsvanvelzen
- Initial subtitle support in playback rewrite #3564, by @nielsvanvelzen
- Add initial video codec testing #3565, by @nielsvanvelzen
- Add media source selection #3566, by @nielsvanvelzen
- Remove unused "Offline" item location #3603, by @nielsvanvelzen
- Migrate to androidx.tv.material #3611, by @nielsvanvelzen
- Reordering the trailer button #3648, by @efreet7
- Change 'Queue all subsequent episodes' setting to queue all episodes in a series #3658, by @ConnorS1110
- Simplify video player preference #3663, by @nielsvanvelzen
- Add a blur to backdrop images #3674, by @haydenzeller
- Use ViewModel in DreamService #3692, by @nielsvanvelzen
- Remove hasPassword support #3710, by @nielsvanvelzen
π₯ Crash fixes
- Fix ModelCompat crash for media type #3607, by @nielsvanvelzen
- Fix app crash in EditServerScreen #3615, by @pascalwei
- Fix JSON decode crash in PictureViewerFragment #3627, by @pascalwei
π§ Bugfixes
- android tv hls playback direct play fix #3348, by @mnsrulz
- Specify BUILD_TOOLS_VERSION for r0adkll/sign-android-release step in publish workflow #3369, by @nielsvanvelzen
- Fix screensaver and media manager displaying video entries #3558, by @nielsvanvelzen
- Refactor BaseRowItem to use inheritance #3598, by @nielsvanvelzen
- Fix resumable episodes showing up twice in "Play next" integration #3625, by @nielsvanvelzen
- Fix unchecked warning in FullDetailsFragment #3629, by @nielsvanvelzen
- Fix login with pruned sessions #3632, by @nielsvanvelzen
- Start series from first unwatched in "play next up" #3633, by @nielsvanvelzen
- Fix now playing fragment not using string resource for current queue title #3638, by @nielsvanvelzen
- Fix start letter & favorite playlist implementations for item row #3653, by @nielsvanvelzen
- Fix QuickConnect sticky login state #3656, by @pascalwei
- Fix play after pause in MediaManager implementation #3661, by @nielsvanvelzen
- Various small bug fixes #3666, by @nielsvanvelzen
- Fix version selection #3677, by @nielsvanvelzen
- Improve "continue listening" row #3684, by @nielsvanvelzen
- Fix Live TV not playing video streams #3687, by @nielsvanvelzen
- Use Enum.name instead of Enum.toString in preference stores #3707, by @nielsvanvelzen
- Fix skip to previous/next playback actions #3708, by @nielsvanvelzen
- Fix header position in BrowseFolderFragment #3709, by @nielsvanvelzen
π Refactoring
- Remove unnecessary OptIn annotations #3235, by @nielsvanvelzen
- Remove legacy media manager implementation #3321, by @nielsvanvelzen
- Simplify MediaManager interface #3322, by @nielsvanvelzen
- Remove baseline workaround #3333, by @nielsvanvelzen
- Use data object when applicable #3350, by @nielsvanvelzen
- Replace deprecated rememberKoinInject with koinInject #3408, by @nielsvanvelzen
- Remove non existent "SeriesTimers" collection type #3493, by @nielsvanvelzen
- Use UUID for "itemId" parameters #3494, by @nielsvanvelzen
- Remove PlayAccess checks #3507, by @nielsvanvelzen
- Use androidx fragment-compose #3549, by @nielsvanvelzen
- Migrate from java.util.Date to java.time #3550, by @nielsvanvelzen
- Replace PlaybackForwardingActivity with PlaybackRewriteFragment #3559, by @nielsvanvelzen
- Use dependency injection for ItemLauncher, KeyProcessor and ReportingHelper #3572, by @nielsvanvelzen
- Fully migrate ItemListFragment to use SDK #3574, by @nielsvanvelzen
- Remove FakeBaseItem hack #3581, by @nielsvanvelzen
- Refactor PlaybackHelper to use dependency injection #3584, by @nielsvanvelzen
- Rewrite PlaybackHelper to use the SDK #3586, by @nielsvanvelzen
- Remove ImageUtils #3587, by @nielsvanvelzen
- Remove unused code branch in BrowseViewFragment #3589, by @nielsvanvelzen
- Refactor FullDetailsFragment to use SDK #3591, by @nielsvanvelzen
- Migrate "next up" row to SDK #3624, by @nielsvanvelzen
- Remove some unused code related to ItemRowAdapter #3637, by @nielsvanvelzen
- Remove LibVLC #3639, by @nielsvanvelzen
- Migrate "Recently added" to SDK #3640, by @nielsvanvelzen
- Migrate various item rows to SDK #3643, by @nielsvanvelzen
- Migrate Live TV rows to SDK #3644, by @nielsvanvelzen
- Migrate (album) artists and live tv channel rows to SDK #3647, by @nielsvanvelzen
- Replace ItemQuery with GetItemsRequest #3654, by @nielsvanvelzen
- Migrate "Play first unwatched" to SDK #3655, by [@nielsvanvelz...
v0.16.11
If you appreciate my work, you can show your support with a donation through GitHub sponsors.
ποΈ Enhancements
- Add app notification to notify about upcoming server requirement #3605, by @nielsvanvelzen
π§ Bugfixes
- Force Quick Connect code to use LTR text direction #3553, by @nielsvanvelzen
- Fix "Add server" button not visible when there are too many servers #3582, by @nielsvanvelzen
- Support new intent in StartupActivity #3612, by @nielsvanvelzen
- Remove refreshing of Live TV program data in player #3614, by @nielsvanvelzen
Contributors
v0.16.10
This release replaces the previous v0.16.9 release. An updated changelog is added below.
If you appreciate my work, you can show your support with a donation through GitHub sponsors.
π§ Bugfixes
- Fix Live TV channels refreshing to infinity #3522, by @nielsvanvelzen
π Dependency updates
- fix(deps): update androidx.media3 to v1.3.1 #3499, by renovate[bot]
Contributors
v0.16.9
If you appreciate my work, you can show your support with a donation through GitHub sponsors.
Warning
There is an issue with this release causing the app to crash when attempting to play media. Version 0.16.10 supersedes this release.
π§ Bugfixes
- Fix Live TV channels refreshing to infinity #3522, by @nielsvanvelzen
π Dependency updates
- fix(deps): update androidx.media3 to v1.3.1 #3499, by renovate[bot]
- fix(deps): update dependency org.jellyfin.media3:media3-ffmpeg-decoder to v1.3.1+1 #3512, by renovate[bot]
Contributors
v0.16.8
This update adds preliminary support for Jellyfin 10.9.
If you appreciate my work, you can show your support with a donation through GitHub sponsors.
ποΈ Enhancements
- Update SDK to 1.4.7 (10.8 with enum backports) #3477, by @nielsvanvelzen
π§ Bugfixes
- Check if fragment is null in PlaybackController.play #3475, by @nielsvanvelzen
- Fix app_logo cutoff in some cases #3488, by @nielsvanvelzen
- Use Timber.e instead of Exception.printStackTrace #3491, by @nielsvanvelzen
Contributors
v0.16.7
ποΈ Enhancements
- Recreate icon/banner resources #3438, by @nielsvanvelzen
- Update app_logo to use new logo font #3443, by @nielsvanvelzen
π§ Bugfixes
- Use fully transparent background during video playback #3411, by @nielsvanvelzen
- Fix background color for preference list views #3442, by @nielsvanvelzen
- Fix search action ignoring received query #3447, by @nielsvanvelzen
π‘ Everything else
- Update CI to new repository secrets and layout #3439, by @joshuaboniface
- Update CI to new repository secrets and layout (2) #3440, by @joshuaboniface
π Dependency updates
- fix(deps): update androidx.media3 to v1.3.0 #3434, by renovate[bot]