Commit Graph

224 Commits

Author SHA1 Message Date
ThetaDev 2edc223e77 Merge branch 'dev' into alang-selector 2023-04-17 23:01:07 +02:00
AudricV 787758a436
[Android 6+] Add ability to always use ExoPlayer's MediaVideoCodecRenderer setOutputSurface workaround
As some devices not present in ExoPlayer's list may not implement
MediaCodec.setOutputSurface(Surface) properly, this workaround could be useful
on these devices.

It forces ExoPlayer to fall back on releasing and re-instantiating video codec
instances, which is always used on Android 5 and lower due to addition of this
method in Android 6.

To do so, a CustomMediaCodecVideoRenderer, based on ExoPlayer's
MediaVideoCodecRenderer which always return true for the
codecNeedsSetOutputSurfaceWorkaround method has been added, which is used in
CustomRenderersFactory, a class based on DefaultRenderersFactory which always
returns our CustomMediaCodecVideoRenderer as the video renderers.

CustomRenderersFactory replaces DefaultRenderersFactory in the player, in the
case this setting is enabled.
2023-04-10 17:39:27 +02:00
AudricV a6ff85a208
Move media tunneling setting to ExoPlayer settings and make this setting available on release builds
Media tunneling may be not supported by more devices than the ones we
whitelisted before.

As a matter of fact, the list of devices on which media tunneling is disabled
could be not maintainable in the future, especially if the list of devices
grows more and more.

A preferable solution is to allow users to configure this setting themselves,
allowing them to not wait for their device(s) to be whitelisted in a future
NewPipe update.

This solution has been applied in this commit and works on every build type.

The corresponding preference in the debug settings has been of course removed
and the code used to prevent media tunneling activation on specific devices has
been removed.
2023-04-10 17:37:30 +02:00
AudricV 41da8fc05f
Add ability to use ExoPlayer's decoder fallback option
This option could help to avoid decoder initialization issues, which falls back
to lower-priority decoders if decoder initialization fails. This may result in
poor playback performance than when using primary decoders.

It is disabled by default, but can be enabled in ExoPlayer settings.
2023-04-10 17:37:30 +02:00
AudricV a4a9957a15
Add ExoPlayerSettingsFragment and move playback load interval size setting into it
This fragment has been added into SettingsResourceRegistry, to allow searches
in its options.

It has been placed at the place of the previous playback load interval size
setting (so in Video and Audio settings).
2023-04-10 17:37:30 +02:00
ThetaDev 365bb2d0e4 Merge branch 'dev' of github.com:TeamNewPipe/NewPipe into alang-selector 2023-04-05 14:06:14 +02:00
ge78fug 2ded8c7cc1 Made two list options 2023-04-04 09:57:06 +02:00
ge78fug 3c74cb3439 Created a setting to switch the sides of volume and brightness 2023-04-04 09:57:06 +02:00
ThetaDev 7aed2eed8a feat: add prefer original option, improve audio stream ordering 2023-03-19 20:40:27 +01:00
ThetaDev 208887d538 feat: improve audio track sorting, add prefer_descriptive_audio option 2023-03-18 14:50:19 +01:00
Nyan Cat 42d861688e
Implement Ignore hardware media button events option 2023-02-26 14:02:50 +01:00
Trust_04zh e947e86eae
Make positions in list depend on watch history, remove confusing animations
The following is the list of all commits squashed together:

Regain function for option `Positions in lists`

use option `Resume playback` to control display of progress info in VideoDetailFragment, remove this (extra) function from option `Positions in lists`.
remove extra check for live streams, live streams updates just as non-live streams.

fix #8176 by eliminating exit delay

Regain function for option `Positions in lists`

update code with developer's comments

 apply static import to methods in util class DependentPreferenceHelper

Regain function for option `Positions in lists`

use option `Resume playback` to control display of progress info in VideoDetailFragment, remove this (extra) function from option `Positions in lists`.
remove extra check for live streams, live streams updates just as non-live streams.

fix behavior for displaying progress bar when autoplay off but video resume on

not to retrieve unnecessary states when position in lists disabled

fix mistake in code

simplify conditional logic

update doc comment and remove unused method

Fix not showing duration if position indicators disabled

Positions in lists only depends on watch history
2023-02-07 09:48:18 +01:00
TacoTheDank fe227d5b94 Utilize useSimpleSummaryProvider attribute 2022-09-23 01:46:34 -04:00
litetex 99104fc11d
Clean up pre-Lollipop checks 2022-07-13 19:02:24 +02:00
Stypox 66fffce87c
Make "Player notification" PreferenceScreen searchable 2022-03-19 22:44:59 +01:00
Stypox 6e8c9f92cb
Merge branch 'dev' into pr2335 2022-03-19 22:29:10 +01:00
litetex cde4ee91f8 Minor rework
* Moved settings to a better section
* Made string a bit shorter
2022-03-01 20:14:53 +01:00
karyogamy ab45efceab - added: variable load check interval for progressive stream.
- added: preferences to allow user setting of above.
2022-03-01 20:14:53 +01:00
TobiGr ff8e44e4f3 Merge branch 'dev' into feature/notifications 2022-02-19 12:34:44 +01:00
litetex 6b23df0659 Made debug settings searchable (debug only)
* Consolidated main-setttings into a single file
* Debug settings are only enabled in the DEBUG build
* Moved LeakCanary (debug) specific stuff into a small class that's only shipped with the debug build
* Other minor fixes
2022-01-24 21:08:45 +01:00
litetex 22db4175f3 Moved reset-reCAPTCHA-cookie to cache tab and made it read-only
so that the search works as expected
2022-01-24 21:08:42 +01:00
litetex 4a061f20ed Code cleanup 2022-01-24 21:08:39 +01:00
Stypox 40ea51e622
Add more checking frequencies, use DurationListPreference 2022-01-24 10:12:25 +01:00
Stypox cd95ec4e12
Merge branch 'dev' into pr2335 2021-12-31 19:20:18 +01:00
TobiGr 779d3dce6f Add app:singleLineTitle="false" to preferences 2021-12-08 21:14:32 +01:00
TobiGr 3ade2bb6ec Merge remote-tracking branch 'origin/dev' into notifications 2021-12-07 17:29:37 +01:00
Stypox c000c1d455
Add debug prefs to show error snackbar/notification 2021-12-04 10:36:36 +01:00
Stypox c8e2ab4c83
Remove PlayerErrorHandler and correctly set ErrorInfo msg 2021-12-04 10:36:36 +01:00
litetex 6992b2c308 Moved report_player_errors to debug 2021-11-23 20:16:01 +01:00
litetex 769791af7a Added a "Crash the player" debug option 2021-11-23 20:12:09 +01:00
litetex e632fab4d0 Added option to report player errors
* Added a new setting so that player errors are reported (under Video and Audio > Player)
* Moved the player error logic to separate class specially created for this purpose
2021-11-23 20:12:07 +01:00
litetex 7b4e5dd107 Reworked player-notfication
* Fixed ``release`` ``main_settings.xml``
* Renamed "Notification" to "Player-Notification" (also reset all translations)
2021-11-05 14:10:53 +01:00
TobiGr 1130aba7ca Merge remote-tracking branch 'origin/dev' into notifications-1 2021-11-02 07:56:09 +01:00
vhouriet 85fb5827aa Add Check for updates button 2021-10-26 20:47:11 +02:00
TobiGr 7d4c7718aa comments & rename 2021-10-18 13:11:50 +02:00
Koitharu a5b9fe4c35
Refactor FeedLoadService to use it within the notification worker 2021-09-07 13:30:26 +03:00
Koitharu e0c674bc9e
Move player notification settings into appearance section 2021-09-07 13:30:25 +03:00
Vasiliy da9bd1d420
Notifications about new streams 2021-09-07 13:30:16 +03:00
Stypox 3c2ea7697c
Add option to directly open fullscreen when the main player starts 2021-09-01 20:08:37 +02:00
Stypox 1d33e7ab49
Allow choosing which types of search suggestions to show
local, remote, both, none
Replacing the old on-off setting
2021-08-24 18:16:16 +02:00
Stypox 52189fc5df
Add debug setting to enable Picasso indicators 2021-08-24 10:56:25 +02:00
Agnieszka C 5c31dff72d Added title wrap to other preferences 2021-08-21 18:49:12 +02:00
Agnieszka C d69672e113 Added wrapping settings titles to the next line (#6951) 2021-08-21 14:21:55 +02:00
litetex 43133df2ad Added settings for seekbar-preview-thumbnail 2021-07-17 16:41:53 +02:00
Dakkaron e01ef42d31
Adds manual tablet mode setting
Co-authored-by: TiA4f8R <74829229+TiA4f8R@users.noreply.github.com>
2021-06-15 21:43:06 +02:00
Stypox bcb1cf6603
Improve SAF switch descriptions in settings 2021-06-08 10:40:45 +02:00
wb9688 0f75024e03
Support SAF properly 2021-06-08 10:40:44 +02:00
Robin 1d43a2362c Add debug option to disable media tunneling 2021-05-14 12:05:52 +02:00
bopol a85e8a29ff
Use a list for night themes
Also remove unused strings
2021-03-18 12:12:04 +01:00
bopol 22b2f52f8c
Use a switch preference to follow device theme 2021-03-18 11:23:55 +01:00