Commit Graph

539 Commits

Author SHA1 Message Date
Robert Stone
239ae771e1 Use common string separator for title/album/artist. Add range separator for Android Auto pagination. 2024-11-18 17:31:44 +01:00
Nicolas Pomepuy
cb1fc7d8e2 Refactor the artist/album APi methods 2024-11-18 17:31:42 +01:00
Nicolas Pomepuy
1f0367c991 Add the album artist id to the MediaWrapper 2024-11-18 17:30:46 +01:00
Nicolas Pomepuy
39b156a865 Medialibrary: add a way to get album and artist from a track 2024-11-18 17:30:46 +01:00
Duncan McNamara
1aaa4ef95b Medialibrary: addStream, remove encoding for title
There is no need to encode a title, it isn't used with a filesystem,
only for display purposes. No titles are encoded when added to the
medialibrary, which means they aren't decoded either when used, this
caused an issue when using addStream from a current playback.

Fixes #3067
2024-11-18 17:30:46 +01:00
Duncan McNamara
96f9642a87 VlcMigration: remove HWDecoderUtil for vlc 4
In vlc4 HWDecoderUtil log is moved in audio_output/android/device.c so
it is not needed anymore

See vlc#24982, vlc!5680, and !1948
2024-11-18 17:30:46 +01:00
Duncan McNamara
757baf3435 VlcMigration: move obsolete version helpers 2024-11-18 17:30:46 +01:00
Nicolas Pomepuy
06448f32c1 Allow renaming a playlist 2024-11-18 17:30:46 +01:00
Duncan McNamara
ba899e6653 Implement the new ML API and the bump ML hash
- Bump Medialibrary Hash

- ML: refactor EntryPoint(s) to Root(s)

This is to follow the renaming that happened in the MediaLibrary

- ML: Update after ML API incoherence fix.

This concerns a confusion with Subscriptions and Services
and especially the cacheSize / cachedMedia which was messier before the
recent update.

Fixes #3027
2024-02-22 11:57:50 +01:00
Nicolas Pomepuy
b671efce24 Implement the missing ML folder/group query by id 2024-02-22 10:39:54 +00:00
popy popy
60c682c831 MediaWrapper: stop using libvlcTitle when it contains '://'
Fixes #3007
2024-01-24 11:49:39 +01:00
Duncan McNamara
227774a193 ML: refactor clearHistory to add type param 2024-01-24 11:47:49 +01:00
Duncan McNamara
fd03d6ad1a ML: refactor method to get history
lastMediaPlayed() and lastPlayedStreams are merged into history(int
type) that takes a HISTORY_TYPE_GLOBAL/LOCAL/NETWORK parameter to
indicate what to query
2024-01-24 11:47:35 +01:00
Duncan McNamara
8dca039f37 ML: update history api calls 2024-01-24 11:47:27 +01:00
Nicolas Pomepuy
d5e23571d3 Remove deprecated buildToolsVersion and fix the compileSdk deprecation 2023-12-20 08:19:53 +00:00
Nicolas Pomepuy
c245074622 Medialibrary: fix last thumb leak 2023-09-06 11:15:47 +02:00
Nicolas Pomepuy
adc0ad8940 Medialibrary: fix context leak 2023-09-06 11:15:47 +02:00
Nicolas Pomepuy
b147d901d3 Fix crash where MediaWrapper filename is null
Fixes #2977
2023-07-07 13:40:56 +02:00
Duncan McNamara
daedac2589 Vlc4MigrationHelper: fix getTracks == null crash 2023-07-07 13:40:56 +02:00
Nicolas Pomepuy
bde92765a7 Bump gradle/AGP version to 8 2023-07-07 05:43:12 +00:00
Duncan McNamara
01a0e6eb44 MediaWrapper: fix insertDate parcel write position
Due to having the wrong position in the parcel creation for the media
wrapper, it caused an OOM exception. This was introduced in
6113d68fa5
2023-05-17 16:36:40 +02:00
Nicolas Pomepuy
e475c0f918 Avoid dropping missing folders in JNI
Fixes #2859
Fixes #2858
2023-05-15 11:38:40 +02:00
Duncan McNamara
c44187c073 ABRepeat: save ab repeat on context change
Fixes #2840
2023-05-15 11:38:36 +02:00
Duncan McNamara
154f35e8ac Tracks: fix sort by insertion date
Fixes #2925, 2920
2023-05-15 09:33:26 +00:00
Duncan McNamara
6113d68fa5 MediaWrapper: expose insertionDate through jni
To fix sort by insertion date, and display appropriate headers in
browsers, the app will need access to it
2023-05-15 09:33:26 +00:00
Duncan McNamara
c5c3228cb2 MediaWrapper: add cond to updateMeta for title
If libvlc doesn't have any meta for title it will provide the filename.
This can be problematic with m3u8 #EXTINF that provides a title.
This adds a check when updating the title meta. If the libvlc title
provided is equal to the filename then it will proritize the
medialibrary title. Network share will have null filenames though,
meaning that libvlc will never be chosen, hence the check for directory
type in the condition

Fixes #2722
2023-03-13 11:23:45 +01:00
Nicolas Pomepuy
3480b86987 Fix the MediaWrapper constructor from IMedia uri encoding
It is causing uri mismatches when comparing MediaWrapper coming from
the medialibrary and others coming from the file browser.

Fixes #2816
2023-03-13 11:20:58 +01:00
Nicolas Pomepuy
2c6d4b76ab Improve the playlist conversion from the ML 2023-03-13 10:18:37 +00:00
Duncan McNamara
33155e930c PlaylistFavorites: fix count to all tracks
When playlists are filtered by favorite, they should still display the
count of all tracks, not juste the favorite tracks
2023-03-13 10:18:37 +00:00
Nicolas Pomepuy
9a7dcee338 Implement the medialibrary folder callbacks 2023-03-13 10:18:37 +00:00
Nicolas Pomepuy
25d815c75b Implement the favorite field on Folder, VideoGroup and Playlist 2023-03-13 10:18:37 +00:00
Nicolas Pomepuy
1f5e2b127a Implement the only favorites queries 2023-03-13 10:18:37 +00:00
Duncan McNamara
f747fa333a Revert "MediaWrapper: add cond to udpateMeta for title"
This reverts commit 82936d2205.

This commit creates issues when displaying network share names, and is
reverted, so that we can find a better fix for the original issue #2722
2023-01-25 11:45:31 +01:00
Duncan McNamara
a2c2011aed Revert "MediaWrapper: fix issue with smb title being empty"
This reverts commit 1cf5481d90.

This commit is based on 82936d22 which is being reverted for causing
issues when displaying network share titles
2023-01-25 11:43:26 +01:00
Duncan McNamara
1cf5481d90 MediaWrapper: fix issue with smb title being empty
Filenames with smb share titles will be null, meaning that title from
libvlc will never be chosen, causing an empty string to be chosen down
the line as title.
2023-01-24 14:27:35 +01:00
Duncan McNamara
82936d2205 MediaWrapper: add cond to udpateMeta for title
If libvlc doesn't have any meta for title it will provide the filename.
This can be problematic with m3u8 #EXTINF that provides a title.
This adds a check when updating the title meta. If the libvlc title
provided is equal to the filename then it will proritize the
medialibrary title.

Fixes #2722
2023-01-10 10:48:34 +00:00
Robert Stone
20dc62fc72 Specify gradle build tools version and relocate jvmTarget to top-level config 2022-12-08 22:34:57 -08:00
Duncan McNamara
8e8f82fbfd Ml: add new refreshAllSubscriptions API 2022-11-18 11:56:51 +01:00
Duncan McNamara
01cccf02a2 MlService: add new refresh API 2022-11-18 11:56:51 +01:00
Duncan McNamara
065e2920ae Ml: update playlist types
This is to integrate playlist types that aren't only video
 or audio tracks.
2022-11-18 11:56:51 +01:00
Duncan McNamara
aa37d15346 Ml: Subscriptions: add null checks 2022-11-18 11:56:51 +01:00
Duncan McNamara
33519b0feb Ml: MlService add new getMedia API 2022-11-18 11:56:51 +01:00
Duncan McNamara
17650bc270 Ml: MlServices add nbMedia new API 2022-11-18 11:56:51 +01:00
Duncan McNamara
46c5f37616 Ml: Subscriptions add nbMedia new API 2022-11-18 11:56:51 +01:00
Duncan McNamara
762d336e2d MlJNI: remove forgotten logs 2022-11-18 11:56:51 +01:00
Nicolas Pomepuy
e4e5acae33 Refactor the ML objects to make MediaLibraryItem host the favorite field 2022-11-18 11:22:37 +01:00
Nicolas Pomepuy
0777864f70 Fix the ML object parcelable methods
Fixes #2749
2022-11-18 11:22:37 +01:00
Nicolas Pomepuy
8c879bc876 Update the maven plugin version to 0.22.0 2022-11-18 11:22:36 +01:00
Nicolas Pomepuy
a22049b1bf Bump lib versions to 3.6.0-eap1 and 0.13.13-rc1 2022-10-20 12:32:31 +02:00
Nicolas Pomepuy
c3c08957a6 Medialibrary: implement the playlist type 2022-10-20 10:38:43 +02:00