Releases: jellyfin/jellyfin-androidtv
v0.13.5
Changelog
- Use JF_BOT_TOKEN in app-publish workflow #1695, by @nielsvanvelzen
- Fix favorite button in 0.13.z #1705, by @nielsvanvelzen
Contributors
v0.13.4
Changelog
- Set permissions for GitHub actions #1613, by @naveensrinivasan
- Bump actions/setup-java from 2 to 3 #1615, by @dependabot[bot]
- Use enum for refresh rate switching setting - allow choosing between scaling on device or on tv #1647, by @mueslimak3r
- Bump github/codeql-action from 1 to 2 #1648, by @dependabot[bot]
- Fix button remapping not saving the new button #1678, by @nielsvanvelzen
- initialize video manager when falling back to vlc after getting stream info for exoplayer fails #1679, by @mueslimak3r
- Fix srt newline parsing, revert subtitle alignment back to left align #1688, by @mueslimak3r
Contributors
v0.13.3
Changelog
- libVLC: Switch to using audio time stretching by default #1570, by @DavidFair
- fixed subtitles not clearing properly when switching (again) #1571, by @mueslimak3r
- center align subtitles #1572, by @mueslimak3r
- Fix ExpandableTextView focusable when text is not ellipsized #1573, by @nielsvanvelzen
- Add appCategory attribute to manifest #1581, by @nielsvanvelzen
- Fix ASPECT_RATIO_BANNER again #1590, by @nielsvanvelzen
- Update Gradle Wrapper from 7.4.1 to 7.4.2 #1593, by @jellyfin-bot
- fix getSubtitleStreamIndex returning the wrong index #1594, by @mueslimak3r
Contributors
v0.13.2
v0.13.1
Changelog
- prefer changing refresh rate without changing resolution #1484, by @mueslimak3r
- Add fastlane structure to repository #1516, by @nielsvanvelzen
- three crash fixes from tracepot issues #1536, by @mueslimak3r
- Add app name and flavor to version in about section #1542, by @nielsvanvelzen
- Fix imageBlurHashes must not be null crash #1544, by @nielsvanvelzen
- Add handling for updating end time based on playback speed #1547, by @DavidFair
- Fix ASPECT_RATIO_BANNER #1551, by @nielsvanvelzen
- Add Android 12 backup configuration #1553, by @nielsvanvelzen
- only parse exoplayer TracksInfo when needed - instead of once every 0.5-2 seconds #1556, by @mueslimak3r
Contributors
v0.13.0-beta.6
This is the final final beta for 0.13. Please let us know if you experience any problems so we can fix those before the stable release.
🐛 Beta information
Beta versions are not guaranteed to work and may not 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. Important to know is that our beta releases are only available on Google Play.
Changelog
- Add ripple effect to DefaultCardView and fix the one in LegacyImageCardView #1507, by @nielsvanvelzen
- crash fix from item being null when playback controller play() is called #1508, by @mueslimak3r
- Update Gradle Wrapper from 7.4 to 7.4.1 #1510, by @jellyfin-bot
- remove tvapp getapplication #1511, by @mueslimak3r
- Login screen bugfixes while testing for release #1512, by @nielsvanvelzen
- Fix a potential crash in VideoManager with invalid speed #1518, by @DavidFair
- Fix app crash when switching users while music is playing #1519, by @nielsvanvelzen
- add mkv transcoding profile for explayer, use playerErrorEncountered for live-tv to avoid infinite retries #1520, by @mueslimak3r
- fixed position and subtitle values not being cleared when next item is played #1525, by @mueslimak3r
Contributors
v0.13.0
We're back with another release for Android TV and Fire TV users containing a lot of bugfixes!
As promised in the previous release blog post, the time between updates is getting shorter. We aim for future updates to happen significantly more frequently than the two years between 0.11 and 0.12. Today's update brings some new features and greatly improves playback of videos.
Go to our blog post to learn more about this update or read the changelog below.
Highlights
- Implement global search #900, by @koying
- Add a daydream (screen saver) showing random movies and series #1012, by @nielsvanvelzen
- Add multiple versions support #1155, by @danieladov
- Show library licenses in settings #1199, by @nielsvanvelzen
- Add preferences UI for home sections #1213, by @nielsvanvelzen
- Also build app bundle for Google Play in CI #1295, by @nielsvanvelzen
- Add Playback speed controls #1302, by @DavidFair
- Add subtitles font size and background configurations #1303, by @siankatabg
- Include Jellyfin Exoplayer FFmpeg dep #1369, by @DavidFair
- Allow HTML in login disclaimer #1397, by @nielsvanvelzen
- show buffered position in seekbar for exoplayer #1435, by @mueslimak3r
Changelog
- Implement global search #900, by @koying
- Use DisplayPreferences via SDK via preferences code #1011, by @nielsvanvelzen
- Add a daydream (screen saver) showing random movies and series #1012, by @nielsvanvelzen
- Remove TvApp.getApplication usages in util package #1022, by @nielsvanvelzen
- Migrate to Koin 3 #1023, by @nielsvanvelzen
- Update Android Gradle Plugin to 7.0.2 #1050, by @nielsvanvelzen
- Remove GSON usages when (de)serializing activity extras #1053, by @nielsvanvelzen
- Show unfinished episodes in watch next row #1142, by @nielsvanvelzen
- Add multiple versions support #1155, by @danieladov
- Refactor issue templates to use forms #1166, by @nielsvanvelzen
- Remove two unused strings and two unused icons #1169, by @nielsvanvelzen
- Replace UUIDSerializer with SDK provided version #1172, by @nielsvanvelzen
- Remove unused LoadingState class #1173, by @nielsvanvelzen
- Explicitly specify android:exported #1178, by @ElegyD
- Fix several lint issues #1180, by @ElegyD
- Migrate to Jellyfin Kotlin SDK v1.1 #1197, by @nielsvanvelzen
- Show library licenses in settings #1199, by @nielsvanvelzen
- Add ModelCompat to convert apiclient types to SDK types #1200, by @nielsvanvelzen
- Remove broken RemoteControlReceiver #1201, by @nielsvanvelzen
- Use context instead of activity in InfoLayoutHelper #1202, by @nielsvanvelzen
- Use context.startActivity in NowPlayingBug #1203, by @nielsvanvelzen
- Remove search shortcut when it doesn't make sense #1205, by @nielsvanvelzen
- Use UserSettingPreferences in HomeFragment #1210, by @nielsvanvelzen
- Add preferences UI for home sections #1213, by @nielsvanvelzen
- Don't load multiple display preferences at once #1215, by @nielsvanvelzen
- Fix app crash when opening photo album #1216, by @nielsvanvelzen
- Use default transition in PhotoPlayer #1217, by @nielsvanvelzen
- Merge ByLetterActivity and ByGenreActivity into a single activity #1222, by @nielsvanvelzen
- Fix race condition in loading async preferences #1224, by @nielsvanvelzen
- Migrate to androidx.startup for app initialization #1233, by @nielsvanvelzen
- Add MigrationContext for improved preference migration behavior #1244, by @nielsvanvelzen
- Update Gradle Wrapper from 7.2 to 7.3 #1247, by @jellyfin-bot
- Fixed libvlc reporting incorrect currentPosition when transcoding #1251, by @mueslimak3r
- prevent double pausing, allow d-pad center to unpause with overlay hidden #1252, by @mueslimak3r
- reset exoplay position and state on media change #1253, by @mueslimak3r
- Dont report real exoplayer position when not playing #1257, by @mueslimak3r
- Fix now-playing row not updating when queue changes #1258, by @mueslimak3r
- reworked playbackController position tracking and reporting system #1261, by @mueslimak3r
- Fixed some remote play commands #1273, by @mueslimak3r
- allow setting the nextup timer duration to infinite #1274, by @mueslimak3r
- new in-place, non-destructive shuffle system #1276, by @mueslimak3r
- Update Gradle Wrapper from 7.3 to 7.3.1 #1279, by @jellyfin-bot
- fixed audio repeat mode crash when going from first to last item #1280, by @mueslimak3r
- fixed add artist to queue, added shuffle artist #1284, by @mueslimak3r
- swap play for add to queue when an audio queue is present and viewing an album #1285, by @mueslimak3r
- audio play from here doesnt discard the preceding items in its parent #1286, by @mueslimak3r
- prevent unwanted interactions when music player screensaver active #1290, by @mueslimak3r
- bring firetv controls in line with the new player controls #1291, by @mueslimak3r
- Update Gradle Wrapper from 7.3.1 to 7.3.2 #1293, by @jellyfin-bot
- Also build app bundle for Google Play in CI #1295, by @nielsvanvelzen
- Move Gradle plugins to plugin catalog #1296, by @nielsvanvelzen
- fixed a regression in player prepare #1298, by @mueslimak3r
- Target API 31, update all dependencies #1299, by @nielsvanvelzen
- Add Playback speed controls #1302, by @DavidFair
- Add subtitles font size and background configurations #1303, by @siankatabg
- Update Gradle Wrapper from 7.3.2 to 7.3.3 #1307, by @jellyfin-bot
- fixed scrolling behavior when queue row gains focus in AudioNowPlayingActivity #1310, by @mueslimak3r
- Emit JUnit output whilst running Gradle through CLI #1311, by @DavidFair
- Add Mockk and one test to exercise the new dep #1312, by @DavidFair
- Add Koin unit testing deps implementation #1313, by @DavidFair
- fixed nowplaying buttons not updating when playback starts #1314, by @mueslimak3r
- fix crash in playFrom where queue is replaced but old queue item is referenced #1315, by @mueslimak3r
- Update SDK to 1.1.2 #1316, by @nielsvanvelzen
- made fullDetails button refresh after playback more reliable #1320, by @mueslimak3r
- Fix irregular playback overlay showing and hiding #1321, by @mueslimak3r
- Replace slf4j-android with slf4j-timber #1323, by @nielsvanvelzen
- reset player error count if playback stabilizes #1324, by @mueslimak3r
- improved skip behavior - especially with repeated button presses #1325, by @mueslimak3r
- Run formatter over playback controller #1326, by @DavidFair
- Bump burnett01/rsync-deployments from 5.1 to 5.2 #1331, by @dependabot[bot]
- added debug logging for player discontinuity, timeline change, and buffering events #1332, by @mueslimak3r
- corrected typo in playback issue template #1334, by @mueslimak3r
- Implement server connection feedback #1340, by @nielsvanvelzen
- use HLS for exoplayer with transcoded streams #1342, by @mueslimak3r
- Fix app crash when opening photo albums #1343, by @nielsvanvelzen
- Fix broken subtitles line wrapping #1346, by @siankatabg
- Preference UI refactor #1349, by @nielsvanvelzen
- fixed some playback leaks #1350, by @mueslimak3r
- Add opus as supported audio codec for ExoPlayer #1351, by @nielsvanvelzen
- Add libraries link to customization preferences #1352, by @nielsvanvelzen
- fixed crash when closing the player - introduced by leaks PR #1355, by @mueslimak3r
- Remove unused QueryType values #1356, by @nielsvanvelzen
- Remove unused RemoveCurrentItem and RefreshRows CustomMessage types #1357, by @nielsvanvelzen
- Fix typo "neccesary" > "necessary" #1359, by @nielsvanvelzen
- fixed crashes on failing to start playback of an unsupported or unavailable video #1360, by @mueslimak3r
- Bypass hls seeking behavior for devices not using exoplayerprofile #1362, by @mueslimak3r
- Cap playback speed to 1 watching live tv #1364, by @DavidFair
- Exoplayer: Replace setPlaybackSpeed with setPlaybackParameters #1365, by @DavidFair
- more playback leak fixes #1368, by @mueslimak3r
- Include Jellyfin Exoplayer FFmpeg dep #1369, by @DavidFair
- Replace deprecated SimpleExoPlayer -> ExoPlayer #1370, by @DavidFair
- on resuming fulldetails activity give play button focus if resume button isnt eligible #1371, by @mueslimak3r
- patch bug where video queue can be messed up and item progress is incorrect after playback #1372, by @mueslimak3r
- FullDetailsActivity - dynamically fill button row and hide extra #1373, by @mueslimak3r
- Remove 1.5 Mbit/s from max streaming bitrate option #1374, by @nielsvanvelzen
- removed a condition that shouldn't have been added in the buttons row PR #1375, by @mueslimak3r
- Remove unused stuff from MyDetailsOverviewRow #1376, by @nielsvanvelzen
- Initial ImageUtils SDK migration #1377, by @nielsvanvelzen
- Fix nullability for UserViewsRepository.isSupported and UserViewsRepository.allowViewSelection #1378, by @nielsvanvelzen
- add stale issue check workflow #1379, by @h1dden-da3m0n
- Add repository condition to stale workflow #1383, by @nielsvanvelzen
- fix crash from empty or null browsecommand sent from android client #1385, by @mueslimak3r
- position the audio player queue row without user interaction #1386, by @mueslimak3r
- shuffle the audio queue locally #1387, by @mueslimak3r
- fix handling of null music player, audio focus loss, and device going to sleep while playing audio #1389, by @mueslimak3r
- Fix ImageHelper returning wrong URL when preferParentThumb is true #1390, by @nielsvanvelzen
- Upgrade Android Gradle Plugin to 7.1.0 #1394, by @nielsvanvelzen
- Migrate remaining image url building to SDK #1395, by @nielsvanvelzen
- Allow HTML in login disclaimer #1397, by @nielsvanvelzen
- Fix MediaContentProvider authority not using ${applicationId} #1398, by @nielsvanvelzen
- Fix searchable.xml not supporting ${applicationId} #1399, by @nielsvanvelzen
- simplified exoplayer code #1401, by @mueslimak3r
- fix crashes from changing audio tracks, fix exoplayer not using default audio track #1409, by @mueslimak3r
- Fix ApiBinder calling callback twice whe...
v0.13.0-beta.5
This is the final beta for 0.13. Please let us know if you experience any problems so we can fix those before the stable release.
🐛 Beta information
Beta versions are not guaranteed to work and may not 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. Important to know is that our beta releases are only available on Google Play.
Changelog
- fixed screensaver background cycling in music player #1479, by @mueslimak3r
- Update default home sections and remove rewatching type #1480, by @nielsvanvelzen
- Update Android Gradle Plugin to 7.1.2 #1483, by @nielsvanvelzen
- Fix various Kotlin warnings #1485, by @nielsvanvelzen
- fixes for crashes from subtitle rendering and audio track selection #1487, by @mueslimak3r
- Open context menu on long press #1489, by @nielsvanvelzen
- Remove like & dislike #1490, by @nielsvanvelzen
- Fix an issue where long-touching can crash the app #1491, by @nielsvanvelzen
- Lower minimum subtitle size to 10 #1493, by @nielsvanvelzen
- Check mFragment for null value in PlaybackController #1495, by @nielsvanvelzen
- require at least server version 10.8.0 to use HLS #1501, by @mueslimak3r
- Catch SDK exceptions in LeanbackChannelWorker #1502, by @nielsvanvelzen
- Bump actions/stale from 4.1.0 to 5 #1503, by @dependabot[bot]
- Bump actions/checkout from 2 to 3 #1504, by @dependabot[bot]
Contributors
v0.13.0-beta.4
Notable changes in this release are a few minor changes to the handling of subtitles and transcoding containers. Furthermore we've cleaned a bunch of code to make it easier to maintain and prevent crashes. We're getting close to a stable release. Please let us know if you experience any problems.
🐛 Beta information
Beta versions are not guaranteed to work and may not 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. Important to know is that our beta releases are only available on Google Play.
Changelog
- Refactor unit tests to Kotlin with Kotest and Mockk #1436, by @nielsvanvelzen
- Close Home and Details activities when no active user found #1449, by @nielsvanvelzen
- Remove some dead code in error handler from ItemRowAdapter #1451, by @nielsvanvelzen
- Remove more TvApp.getApplication usages #1453, by @nielsvanvelzen
- Receive context in MediaManager.playNowInternal #1454, by @nielsvanvelzen
- Subtitle rendering optimization #1455, by @mueslimak3r
- Fix crash when opening video player #1457, by @nielsvanvelzen
- Fix remaining context used before initialization crashes #1458, by @nielsvanvelzen
- Add 10.8 home section types #1462, by @nielsvanvelzen
- Update process lifecycle to avoid startup crash #1463, by @nielsvanvelzen
- Disable wildcard imports #1464, by @nielsvanvelzen
- subtitle fixes for PR 1455 #1465, by @mueslimak3r
- use ts for exoplayer transcodes #1466, by @mueslimak3r
- use track id for exoplayer track selection instead of guessing #1469, by @mueslimak3r
- Move to view binding in most views #1470, by @nielsvanvelzen
Contributors
v0.13.0-beta.3
We're getting close to a stable release.
🐛 Beta information
Beta versions are not guaranteed to work and may not 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. Important to know is that our beta releases are only available on Google Play.
Highlights
- show buffered position in seekbar for exoplayer #1435, by @mueslimak3r
Changelog
- reset vlc meta position in clearPlaybackSessionOptions #1430, by @mueslimak3r
- exoplayer track selection for audio #1432, by @mueslimak3r
- Update Gradle Wrapper from 7.3.3 to 7.4 #1433, by @jellyfin-bot
- show buffered position in seekbar for exoplayer #1435, by @mueslimak3r
- fix default subtitle not turning on when not transcoding, and burnt in subs not turning off #1437, by @mueslimak3r
- Update AGP to 7.1.1 #1438, by @nielsvanvelzen
- reverted VideoAdapter getDuration #1439, by @mueslimak3r