Commit graph

273 commits

Author SHA1 Message Date
ThetaDev
e2bb4082bb Merge branch 'dev' into alang-selector 2023-04-17 23:01:07 +02:00
AudricV
445b0380b4 [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
bc7758d29f 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
04ddd39233 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
9ff218b97a 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
bd9c130fef Merge branch 'dev' of github.com:TeamNewPipe/NewPipe into alang-selector 2023-04-05 14:06:14 +02:00
Marius Wagner
24036fa27e Made the requested changes 2023-04-04 09:57:06 +02:00
ge78fug
1908a477d3 Made two list options 2023-04-04 09:57:06 +02:00
ge78fug
c9b3dfda7e Created a setting to switch the sides of volume and brightness 2023-04-04 09:57:06 +02:00
ThetaDev
58cb6a99f9 feat: add prefer original option, improve audio stream ordering 2023-03-19 20:40:27 +01:00
ThetaDev
7160c694c1 feat: improve audio track sorting, add prefer_descriptive_audio option 2023-03-18 14:50:19 +01:00
Stypox
7726a0434f Merge pull request #9747 from Jared234/9126_remove_partially_watched_from_feed
Added option to remove partially watched videos from the 'Whats new' feed
2023-02-28 19:10:11 +01:00
Jared Fantaye
31b9dddf8a Fixed some small issues 2023-02-28 17:30:17 +01:00
Nyan Cat
686a079531 Implement Ignore hardware media button events option 2023-02-26 14:02:50 +01:00
Jared Fantaye
87c87acedc Implemented the feature using multiple checkboxes 2023-02-04 18:48:27 +01:00
Jared Fantaye
472d488cc4 Implemented the feature and fixed some small issues 2023-02-01 23:10:31 +01:00
Jared Fantaye
5fb93f6a76 First draft of the new feature 2023-01-30 22:37:24 +01:00
Sıla
b8fee994ed Corrected language names 2023-01-21 12:13:15 +00:00
GET100PERCENT
4c6479cf75 Added Odia language to language selector (#9651) 2023-01-15 21:24:01 +01:00
Mahendran
bf63b3aca2 Thumbnails used in NewPipe are small (list/grid) mode. This PR facilitates full width thumbnails and dubbed as card mode. 2023-01-15 22:32:03 +05:30
TobiGr
6146f27211 Add Nynorsk (nn) to the language chooser 2022-12-25 21:22:35 +01:00
TobiGr
3c4043756e Remove Kazakh from language picker 2022-10-31 12:20:40 +01:00
Zhuojun Xiao
a8e4a91dc0 Added Icelandic, Latvian, Malayalam to language selector in alphabetical order 2022-10-27 20:26:37 +02:00
Zhuojun Xiao
d94d9ee949 Added Icelandic,Latvian,Malayalam to language selector 2022-10-27 20:26:37 +02:00
Carlos Melero
4e77c9f721 Add option to hide future videos in feed 2022-06-24 18:03:48 +02:00
litetex
300349ade2 Use better way to get services 2022-05-09 20:58:10 +02:00
Stypox
64d71beeb4 Use 64 KiB as the default progressive load interval
This ensures a small value is used by default, solving buffering issues at the beginning of videos
2022-04-29 16:10:39 +02:00
Stypox
f7faf0b202 Make "Player notification" PreferenceScreen searchable 2022-03-19 22:44:59 +01:00
Stypox
6ead95b5d2 Merge branch 'dev' into pr2335 2022-03-19 22:29:10 +01:00
karyogamy
4e3d71929d - added: variable load check interval for progressive stream.
- added: preferences to allow user setting of above.
2022-03-01 20:14:53 +01:00
kt programs
0c5e3ae828 Remember adjustment step size for playback controls (speed and pitch)
- Add adjustment_step_key to settings_keys.xml to be used when
saving/loading the step size.
- Remove the global stepSize variable and the code that saves it to
outState/loads it from savedInstanceState because it's now saved to
Shared Preferences.
- Move initially setting step size to setupStepSizeSelector to be
consistent with the other view setup methods, using the value loaded
from Shared Preferences.
- Save the step size to Shared Preferences inside setStepSize.

Fixes: #7031
2022-03-01 16:27:20 +08:00
martin
18528c8efa fetch and merge 2022-02-04 15:34:00 +01:00
Stypox
73182bf375 Merge branch 'dev' into pr2335 2022-01-24 10:25:07 +01:00
Stypox
53832bc37f Add more checking frequencies, use DurationListPreference 2022-01-24 10:12:25 +01:00
TacoTheDank
2cd3532f2d Remove redundant XML attributes in settings_keys 2022-01-07 21:26:51 -05:00
TacoTheDank
c208451bed Move untranslatable strings to a donottranslate file 2022-01-07 21:24:01 -05:00
Stypox
c70713a925 Merge branch 'dev' into pr2335 2021-12-31 19:20:18 +01:00
martin
aef7a493c9 Change pitch by semitones 2021-12-21 18:17:48 +01:00
TobiGr
66aff3ed30 Merge remote-tracking branch 'origin/dev' into notifications 2021-12-07 17:29:37 +01:00
Stypox
8dd6db2e06 Add debug prefs to show error snackbar/notification 2021-12-04 10:36:36 +01:00
Stypox
8eec9b55bf Remove PlayerErrorHandler and correctly set ErrorInfo msg 2021-12-04 10:36:36 +01:00
litetex
8e7de5a4a6 Added a "Crash the player" debug option 2021-11-23 20:12:09 +01:00
litetex
95d5274b7c 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
TobiGr
67edd370e3 Merge remote-tracking branch 'origin/dev' into notifications-1 2021-11-21 22:15:09 +01:00
litetex
c1293d2867 A feed settings-key better fits there 2021-11-11 19:49:46 +01:00
litetex
1c615bc292 Fixed toggle not in sync with list after app restart + refactored the code a bit 2021-11-11 19:46:15 +01:00
Baji Shaik
2df6708f50 moved preference key from viewmodel to settings_keys.xml 2021-11-10 16:16:17 -05:00
TobiGr
8e3a7fcfc7 Merge remote-tracking branch 'origin/dev' into notifications-1 2021-11-02 07:56:09 +01:00
vhouriet
66d7c282ca Add Check for updates button 2021-10-26 20:47:11 +02:00
TobiGr
dbd91d15b7 Merge remote-tracking branch 'origin/dev' into notifications 2021-10-14 21:15:43 +02:00