Commit Graph

3720 Commits

Author SHA1 Message Date
Stypox 10c42de2f1
Fix uploader and subchannel avatars swapped 2023-05-03 10:35:28 +02:00
Stypox 2315b082ff
Merge pull request #9937 from Theta-Dev/alang-selector
Add support for multiple audio tracks
2023-05-02 10:07:21 +02:00
AudricV 023f6166ab
Add Open in browser button to audio external players dialog
This change makes the dialog consistent with the video one.
2023-05-02 00:18:46 +02:00
AudricV d89a3c6c4d
Remove "default" from audio track already present message
We don't know if, on muxed video streams we get for all services which support
multiple audio languages, that the audio language returned is the original one
or not, even if it should be the case.

In order to avoid saying potential false information, this word has been
removed from the string resource (ID and value) and the corresponding layout ID
in the download dialog.
2023-05-02 00:11:09 +02:00
ThetaDev fb00ee8cf9
[YouTube] Improve download speed (#9948) 2023-05-01 19:26:42 +02:00
ThetaDev 22671ca16c fix: audio stream cache key, code fmt 2023-05-01 00:04:04 +02:00
ThetaDev 4e837e838d
fix docs in app/src/main/java/org/schabi/newpipe/util/Localization.java
Co-authored-by: Audric V. <74829229+AudricV@users.noreply.github.com>
2023-05-01 00:02:37 +02:00
ThetaDev c377ffbce8 Merge branch 'dev' of github.com:TeamNewPipe/NewPipe into alang-selector 2023-04-21 23:32:33 +02:00
ThetaDev b567d428ad fix: small codestyle fixes 2023-04-21 23:15:37 +02:00
ThetaDev 2edc223e77 Merge branch 'dev' into alang-selector 2023-04-17 23:01:07 +02:00
TobiGr e18a6b09f8 Apply new itag filter only to YouTube streams 2023-04-17 13:10:29 +02:00
TobiGr f8c3ec4be7 Use a whitelist to filter all streams retrieved by the extractor.
NewPipe Extractor now extracts all YouTube Itags and therefore only those which can be handled by the player need to be retrieved from the list of all available streams.
2023-04-17 13:00:11 +02:00
Stypox ba3afd1e35
Merge pull request #10021 from Isira-Seneviratne/PendingIntentCompat
Switch to AndroidX's PendingIntentCompat.
2023-04-14 14:20:47 +02:00
Isira Seneviratne acebabd028 Use AndroidX's PendingIntentCompat class. 2023-04-13 10:53:46 +05:30
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
Stypox 4bb45c001d Fix settings migration 2023-04-04 11:06:20 +02:00
Stypox 704e9bd7b6 Fix checkstyle 2023-04-04 10:02:01 +02:00
ge78fug d2735607b8 Changed the default of the switches 2023-04-04 09:57:06 +02:00
Marius Wagner 3c72992c39 Update app/src/main/java/org/schabi/newpipe/fragments/detail/VideoDetailFragment.java
Co-authored-by: Stypox <stypox@pm.me>
2023-04-04 09:57:06 +02:00
ge78fug 7689d1d15c Added the migration 2023-04-04 09:57:06 +02:00
ge78fug 32cec6c9a7 Changed the naming 2023-04-04 09:57:06 +02:00
Marius Wagner 72ca52a29b Made the requested changes 2023-04-04 09:57:06 +02:00
ge78fug 2ded8c7cc1 Made two list options 2023-04-04 09:57:06 +02:00
ge78fug 759a9080a8 Fixed a bug 2023-04-04 09:57:06 +02:00
ge78fug 2ba649949f Updated the gesture-switch-toggle 2023-04-04 09:57:06 +02:00
ge78fug c8d54ec6c7 Changed to val 2023-04-04 09:57:06 +02:00
Marius Wagner 96e9242431 Update app/src/main/java/org/schabi/newpipe/player/gesture/MainPlayerGestureListener.kt
Co-authored-by: Stypox <stypox@pm.me>
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 d010384c88 Merge branch 'dev' of github.com:TeamNewPipe/NewPipe into alang-selector 2023-04-03 22:13:16 +02:00
Stypox 02906e8132
Merge pull request #9812 from TeamNewPipe/revert-8894-WindowCompat
Revert "Use WindowCompat."
2023-04-03 14:23:17 +02:00
ThetaDev 39a5c8bdfb fix: reset video stream sizes on audio track selection 2023-03-29 13:39:29 +02:00
Audric V fb1b1c5be1
Merge pull request #9968 from AudricV/fix-open-in-browser-without-browser
Use a system chooser when opening links in browser in the case there is no browser available
2023-03-26 12:41:42 +02:00
AudricV 1a8aa8b17e
Use a system chooser when opening links in browser in the case there is no browser available
This change makes the app using the behavior when there is no default browser
on Android 11 and lower, by opening a system chooser when there is no browser
available (on all Android versions).

Also catch any exception when the system chooser cannot be opened and show the
"No app on your device can open this" toast in this case, as an
`ActivityNotFoundException` could be thrown if no app is available to open a
given web link.
2023-03-26 00:04:38 +01:00
ThetaDev 694418d30d fix: update stream sizes when audio track changed 2023-03-21 16:58:36 +01:00
ThetaDev ed06f559ae feat: add track selection to downloader 2023-03-20 21:41:28 +01:00
ThetaDev fdd3b03fe5 fix: audio stream format selection 2023-03-19 23:47:33 +01:00
ThetaDev dbd6e4d11f fix: sonarcloud lint 2023-03-19 22:55:37 +01:00
ThetaDev 61a14765f3 fix: ListHelper tests 2023-03-19 22:31:31 +01:00
ThetaDev 9b8ffdd2aa fix: improve track name localization 2023-03-19 21:20:21 +01:00
ThetaDev ef0a4cf8b2 feat: add external audio playback language selector 2023-03-19 21:05:48 +01:00
ThetaDev 7aed2eed8a feat: add prefer original option, improve audio stream ordering 2023-03-19 20:40:27 +01:00
ThetaDev 87a88e4df7 feat: localized audio track names 2023-03-19 15:45:52 +01:00
ThetaDev 366c39d4c6 feat: add language selector to audio player 2023-03-19 01:15:36 +01:00
ThetaDev 77649d388c fix: reduce complexity 2023-03-18 16:29:22 +01:00
ThetaDev dba53d23aa fix: remove todo 2023-03-18 16:14:07 +01:00
ThetaDev 208887d538 feat: improve audio track sorting, add prefer_descriptive_audio option 2023-03-18 14:50:19 +01:00