Commit Graph

69 Commits

Author SHA1 Message Date
John Zhen Mo 72eaff148c -Fixed main player paused video not abandoning audio focus after navigating away from activity during interruption, when resume on focus regain is enabled.
-Separated onPause and onPlay functions from onPlayPause.
-Renamed onVideoPlayPause to onPlayPause.
2018-03-22 18:12:11 -07:00
John Zhen Mo 5a05cb96be -Changed start position seek to occur after media source window has been prepared.
-Fixed livestream not seeking to live when started from play queue.
-Fixed media source manager synchronization to only occur after timeline change has completed.
-Fixed auto queue not working when last item is replayed after the auto-queued item is removed.
-Updated ExoPlayer to 2.7.1.
2018-03-19 16:44:17 -07:00
John Zhen Mo 7f068b691b -Removed system ui on main player for Kitkat or above.
-[#1151] Hide video player UI on playing to avoid unnecessary interruptions after pause, seek and resize.
2018-03-03 20:58:53 -08:00
John Zhen Mo a88e19a8ed -Added toggle to enable fast inexact seek in players.
-Improved player sync calls to recognize different metadata updates.
-Changed MediaSourceManager to synchronize only after timeline changes and reenabled multiple sync calls to player.
-Renamed listener and synchronization methods related to MediaSourceManager.
2018-03-03 14:24:21 -08:00
John Zhen Mo 0c17f0825b -Added loader eviction to avoid spawning too many threads in MediaSourceManager.
-Added nonnull and final constraints to variables in MediaSourceManager.
-Added nonnull and final constraints on context related objects in BasePlayer.
-Fixed Hls livestreams crashing player when behind live window for too long.
-Fixed cache miss when InfoCache key mismatch between StreamInfo and StreamInfoItem.
2018-03-03 11:42:23 -08:00
John Zhen Mo f09b04dce0 -Code clean up on resize switching. 2018-02-11 11:32:40 -08:00
John Zhen Mo 59f8583895 -Added settings for managing caption font size. 2018-02-11 11:32:40 -08:00
John Zhen Mo f506fc0478 -Moved caption extraction and menu building into exoplayer track changing callback.
-Updated extractor dependency.
2018-02-11 11:32:39 -08:00
John Zhen Mo 880676d670 -Modified popup video player to show extra options only when screen is large enough.
-Modified available resize options for different player modes.
-Fixed caption menu not working on popup player.
-Extracted hardcoded strings.
-Added button effects to both main and popup players.
2018-02-11 11:32:39 -08:00
John Zhen Mo 5773152ed3 -Added subtitles loading and display.
-Added subtitles switching button to popup and main players.
-Added aspect ratio switching button to popup pand main players.
2018-02-11 11:31:49 -08:00
Mauricio Colli a473e3d623 Add preferred player 2018-01-23 11:15:36 -02:00
John Zhen Mo 39b0b2f032 -Added player conversion to background and popup players.
-[#919] Fixed custom notification does not trigger unlocking on lockscreen.
-[#947] Fixes player crashing on internet outage, issue partially addressed.
-Fixed main player losing state after destroy while in background.
-Fixed main player controls not hiding automatically after orientation change.
-Fixed dialog uploader not marqueeing when too long.
-Fixed popup permission throwing NPE on BaseList.
-Refactored popup permissions to start in NavigationHelper.
-Extracted hardcoded string for player menus.
-Bump Java version to 1.8.
-Some lambda conversions.
2018-01-03 22:53:38 -08:00
Schabi 9f5d4034e3 fix fullscreen button on popup 2017-12-23 17:34:47 +01:00
TobiGr 0119d62a35 change notification bar icon for popup and background player 2017-12-20 16:29:32 +01:00
Coffeemakr bb2af96deb
Use getters for extractor items 2017-12-10 11:07:51 +01:00
John Zhen Mo 979bd09b29 -Fixed popup player not in foreground when opened by external intent.
-Fixed popup overlay permission causing exception when opened externally.
2017-11-14 11:34:15 -08:00
John Zhen Mo b883f313ba -Fixed NPE when popup is updated during shutdown. 2017-11-11 14:48:16 -08:00
John Zhen Mo b1ee22cde6 -Added scroll to fetch for external play queues.
-Modified service player activity scrolling to be instantaneous when difference is too large.
-Modified service player activity to no longer update metadata if nothing change when sync is called.
2017-11-11 14:48:16 -08:00
John Zhen Mo 87febf8679 -Added dropdown to start play for all StreamInfoItem.
-Refactored NavigationHelper to allow service player control to open anywhere.
-Refactored NavigationHelper to allow starting player at anywhere.
2017-11-11 14:48:16 -08:00
John Zhen Mo 38b2ffd450 -Added fling to toss popup view when velocity is below shutdown.
-Added string for unknown content.
-Fixed NPE when UI element is touched after player shuts down in service activity.
-Fixed shuffle reset caused by position discontinuity offsets index.
-Moved some more player shared preferences to PlayerHelper.
2017-11-11 14:48:16 -08:00
John Zhen Mo 3d5c173d61 -Fixed new task intent for opening controls on players between sdk 21 and 24. 2017-10-31 07:17:51 -07:00
John Zhen Mo b4fdbdeb1b -Added load debouncing to MediaSourceManager to prevent mass loading due to rapid timeline change.
-Added marquee title to main video player.
-Modified destroyPlayer to always dispose play queue and media source manager.
-Remove unused code from players.
2017-10-30 20:58:47 -07:00
John Zhen Mo 1fb3774e03 -Changed play queue item building to shrink thumbnail before caching.
-Renamed refactor directory in player to helper.
-Fixed background player notification update causing lag on older spec models.
-Fixed service activity theme not changing after user setting is changed.
-Fixed NPE on popup player fling to close.
-Fixed audio reactor volume and max volume mixup.
-Added correct toast for each player error case.
-Fixed button coloring for play queue service activity on landscape.
-Changed title and uploader text to marquee for vertical service activity.
-Removed cache clearing on every thumbnail load.
2017-10-30 20:58:47 -07:00
John Zhen Mo f284a799ef -Added wake and wifi lock to popup video player.
-Added seek time display to player binding activity.
-Added button effect for all image buttons on player binding activity.
-Added click to scroll to current selected on metadata layout for player binding activity.
-Refactored player utilities and preference getters into PlayerHelper.
-Refactored player caching into CacheFactory.
-Refactored player audio related methods into AudioReactor.
-Refactored player locks into LockManager.
-Refactored player loading and buffering mechanics into LoadController.
-Fixed outdated names for background player.
2017-10-30 20:58:47 -07:00
John Zhen Mo c6e759a94c -Fixed popup player not playing in foreground.
-Fixed activity binder memory leak in popup and background players.
-Fixed out of bound window after removing last item on play queue.
-Fixed MediaSourceManager continues to process update after disposed.
-Changed play queue append to shuffle if queue is already shuffled.
2017-10-30 20:58:46 -07:00
John Zhen Mo 052c9a9869 -Added persisting settings when switching between players. 2017-10-30 20:58:46 -07:00
John Zhen Mo 0806344ffb -Changed quality resolution to persist across player.
-Updated ExoPlayer to 2.5.4.
-Expanded button size in main video player play queue.
-Removed Quality event.
-Extracted player error strings to xml.
2017-10-30 20:58:46 -07:00
John Zhen Mo d0e626c6ee -Fixed popup and main video players not using different quality resolution. 2017-10-30 20:58:46 -07:00
John Zhen Mo 9068247856 -Reverted manual track selection from exoplayer track selector.
-Added quality record to play queue items.
-Added quality and recovery record play queue events.
-Added landscape view for ServicePlayerActivity.
-Moved repeat and shuffle button to play queue panel in main video player.
-Fixed potential NPE in MediaSourceManager by no longer nulling play queue on dispose.
-Renamed PlayQueueEvent to PlayQueueEventType.
-Renamed PlayQueueMessage to PlayQueueEvent.
2017-10-30 20:58:46 -07:00
John Zhen Mo 4553850412 -Baked recovery records into play queue items.
-Added previous and next button on main video player.
-Reverted double tap to seek for popup and main video players.
-Improved shuffling to use recovery record.
-Changed shuffling to place current playing stream to top of queue.
-Fixed exception when removing last item on queue.
-Changed fast forward and rewind button to previous and next on background notification.
-Changed background notification to not update when screen is off and update immediately when screen is turned back on.
-Removed unused intent strings.
-Changed "Append" to "Enqueue" for append text.
2017-10-30 20:58:46 -07:00
John Zhen Mo eb9770e3ba -Fixed set index ignoring selection to current index when queue at current index changed.
-Modified popup player to disable rendering when screen is off.
2017-10-30 20:58:46 -07:00
John Zhen Mo d54a6e0b0e -Added helper text on click for background and popup button on detail fragment for feature discovery.
-Fixed popup video queuing causes existing popup player to change quality.
2017-10-30 20:58:45 -07:00
John Zhen M cc4e4a4f91 -Fixed external popup share not starting. 2017-10-30 20:58:45 -07:00
John Zhen M b597774bb9 -Enabled play queue control in main video player.
-Fixed video players does not resolve to preferred quality on playlists.
-Refactored resolution conversion to Localization.
-Fixed video player quality menu building exception when stream info is not yet available.
2017-10-30 20:58:45 -07:00
John Zhen M 87fca5cffe -Enabled play queue control panel for popup video player.
-Refactored background player activity into generic play queue control panel activity.
-Changed control panel activities into singleTask.
2017-10-30 20:58:45 -07:00
John Zhen M 9685456ee4 -Added new intents to append streams to current player.
-Added long clicks for popup and background player buttons on details fragment for append intents.
-Removed restrictions for preventing UI to show up when player is buffering.
-Fixed icons for all repeat modes.
-Added Progress bar to background activity when player is in not ready state.
-Fixed Track Selection when switching between video and audio only on video players.
-Fixed video player to enable tunnelling only after sdk > 21.
-Fixed activity exception from restarting after service is shutdown on earlier sdk versions.
2017-10-30 20:58:45 -07:00
John Zhen M f5b5982e1c -Improved DeferredMediaSource to build source on IO thread.
-Improved exception handling for player.
2017-10-30 20:58:44 -07:00
John Zhen M c75c2d0f21 -Added documentations for play queue components. 2017-10-30 20:58:44 -07:00
John Zhen M 09d8ae1316 -Generify all player intents to use play queues.
-Fixed sync updates out-of-sync on background notification.
-Fixed main video player destroyed on resume.
-Fixed track selection using wrong dimension for parameter.
-Fixed background player to use default audio quality.
-Removed quality index from single queue items.
2017-10-30 20:58:43 -07:00
John Zhen M e742091a37 -Modified quality change to use internal track selection.
-Enabled audio processing integration with system EQ.
-Re-endabled HDR through tunneling on videos only.
2017-10-30 20:58:43 -07:00
John Zhen M 9bc95f030c -Baked stream info resolution into custom media source, allowing for simpler playlist control.
-Added track merging on different stream qualities, allowing for implementation of smooth transition on A/V quality and captions change.
2017-10-30 20:58:43 -07:00
John Zhen M a0ba3ce2e4 -Made playback manager load circular.
-Improved play previous button to reset before 5 seconds.
2017-10-30 20:58:43 -07:00
John Zhen M f9eb2a1ee5 -Fixed activity pause and resume lifecycle. 2017-10-30 20:58:43 -07:00
John Zhen M 6b16b08712 -Fixed bad window timeline caused by reusing media source on unblocking.
-Fixed timeline recovery skipping.
-Fixed timeline updates resumes playing when player is paused.
2017-10-30 20:58:42 -07:00
John Zhen M f8abf92a66 -Refactored Playback manager to expose only readonly methods.
-Removed swap and move operations.
-Code clean up.
2017-10-30 20:58:42 -07:00
John Zhen M 9413856463 -Added back notification on popup player. 2017-10-30 20:58:42 -07:00
John Zhen M 150c3b413a -Fixed memory leak due to permanent remote view bitmap references.
-Removed redundant code in popup player.
2017-10-30 20:58:42 -07:00
John Zhen M eb15c04254 -Added debouncing to index change reactor.
-Fixed repeat mode on background notification.
2017-10-30 20:58:42 -07:00
John Zhen M 7d7a6f7ccc -Enable background and popup playlists. 2017-10-30 20:58:42 -07:00
John Zhen M b54d18d888 -Changed intents to start all players, including player swap.
-Make play queue and items serializable
-Removed now deprecated code for playing url in exoplayer
2017-10-30 20:58:42 -07:00