Browse Source

Medialibrary: add tracks release year

merge-requests/382/head
Geoffrey Métais 7 years ago
committed by Geoffrey Métais
parent
commit
229d92fe69
  1. 2
      medialibrary/jni/medialibrary.cpp
  2. 3
      medialibrary/jni/utils.cpp
  3. 6
      medialibrary/src/org/videolan/medialibrary/MLServiceLocator.java
  4. 9
      medialibrary/src/org/videolan/medialibrary/interfaces/media/AbstractMediaWrapper.java
  5. 4
      medialibrary/src/org/videolan/medialibrary/media/MediaWrapper.java
  6. 12
      medialibrary/src/org/videolan/medialibrary/stubs/StubDataSource.java
  7. 4
      medialibrary/src/org/videolan/medialibrary/stubs/StubMediaWrapper.java

2
medialibrary/jni/medialibrary.cpp

@ -2008,7 +2008,7 @@ jint JNI_OnLoad(JavaVM *vm, void *reserved)
GET_ID(GetMethodID, GET_ID(GetMethodID,
ml_fields.MediaWrapper.initID, ml_fields.MediaWrapper.initID,
ml_fields.MediaWrapper.clazz, ml_fields.MediaWrapper.clazz,
"<init>", "(JLjava/lang/String;JJILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;IIIIJJZ)V"); "<init>", "(JLjava/lang/String;JJILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;IIIIJJZI)V");
GET_CLASS(ml_fields.HistoryItem.clazz, GET_CLASS(ml_fields.HistoryItem.clazz,
"org/videolan/medialibrary/media/HistoryItem", true); "org/videolan/medialibrary/media/HistoryItem", true);

3
medialibrary/jni/utils.cpp

@ -85,7 +85,8 @@ mediaToMediaWrapper(JNIEnv* env, fields *fields, medialibrary::MediaPtr const& m
(jlong) mediaPtr->id(), mrl,(jlong) progress, (jlong) duration, type, (jlong) mediaPtr->id(), mrl,(jlong) progress, (jlong) duration, type,
title, filename, artist, genre, album, title, filename, artist, genre, album,
albumArtist, width, height, thumbnail, albumArtist, width, height, thumbnail,
audioTrack, spuTrack, trackNumber, discNumber, (jlong) files.at(0)->lastModificationDate(), seen, mediaPtr->isThumbnailGenerated(medialibrary::ThumbnailSizeType::Thumbnail)); audioTrack, spuTrack, trackNumber, discNumber, (jlong) files.at(0)->lastModificationDate(),
seen, mediaPtr->isThumbnailGenerated(medialibrary::ThumbnailSizeType::Thumbnail), mediaPtr->releaseDate());
if (artist != NULL) if (artist != NULL)
env->DeleteLocalRef(artist); env->DeleteLocalRef(artist);
if (genre != NULL) if (genre != NULL)

6
medialibrary/src/org/videolan/medialibrary/MLServiceLocator.java

@ -56,15 +56,15 @@ public class MLServiceLocator {
String albumArtist, int width, int height, String albumArtist, int width, int height,
String artworkURL, int audio, int spu, String artworkURL, int audio, int spu,
int trackNumber, int discNumber, long lastModified, int trackNumber, int discNumber, long lastModified,
long seen, boolean isThumbnailGenerated) { long seen, boolean isThumbnailGenerated, int releaseDate) {
if (sMode == LocatorMode.VLC_ANDROID) { if (sMode == LocatorMode.VLC_ANDROID) {
return new MediaWrapper(id, mrl, time, length, type, title, return new MediaWrapper(id, mrl, time, length, type, title,
filename, artist, genre, album, albumArtist, width, height, artworkURL, filename, artist, genre, album, albumArtist, width, height, artworkURL,
audio, spu, trackNumber, discNumber, lastModified, seen, isThumbnailGenerated); audio, spu, trackNumber, discNumber, lastModified, seen, isThumbnailGenerated, releaseDate);
} else { } else {
return new StubMediaWrapper(id, mrl, time, length, type, title, return new StubMediaWrapper(id, mrl, time, length, type, title,
filename, artist, genre, album, albumArtist, width, height, artworkURL, filename, artist, genre, album, albumArtist, width, height, artworkURL,
audio, spu, trackNumber, discNumber, lastModified, seen, isThumbnailGenerated); audio, spu, trackNumber, discNumber, lastModified, seen, isThumbnailGenerated, releaseDate);
} }
} }

9
medialibrary/src/org/videolan/medialibrary/interfaces/media/AbstractMediaWrapper.java

@ -14,7 +14,6 @@ import org.videolan.libvlc.util.Extensions;
import org.videolan.libvlc.util.VLCUtil; import org.videolan.libvlc.util.VLCUtil;
import org.videolan.medialibrary.MLServiceLocator; import org.videolan.medialibrary.MLServiceLocator;
import org.videolan.medialibrary.Tools; import org.videolan.medialibrary.Tools;
import org.videolan.medialibrary.interfaces.AbstractMedialibrary;
import org.videolan.medialibrary.media.MediaLibraryItem; import org.videolan.medialibrary.media.MediaLibraryItem;
import java.util.Locale; import java.util.Locale;
@ -76,6 +75,7 @@ public abstract class AbstractMediaWrapper extends MediaLibraryItem implements P
protected String mAlbumArtist; protected String mAlbumArtist;
protected String mRating; protected String mRating;
protected String mDate; protected String mDate;
protected int mReleaseYear;
protected String mSettings; protected String mSettings;
protected String mNowPlaying; protected String mNowPlaying;
protected String mPublisher; protected String mPublisher;
@ -120,13 +120,14 @@ public abstract class AbstractMediaWrapper extends MediaLibraryItem implements P
public AbstractMediaWrapper(long id, String mrl, long time, long length, int type, String title, public AbstractMediaWrapper(long id, String mrl, long time, long length, int type, String title,
String filename, String artist, String genre, String album, String albumArtist, String filename, String artist, String genre, String album, String albumArtist,
int width, int height, String artworkURL, int audio, int spu, int trackNumber, int width, int height, String artworkURL, int audio, int spu, int trackNumber,
int discNumber, long lastModified, long seen, boolean isThumbnailGenerated) { int discNumber, long lastModified, long seen, boolean isThumbnailGenerated, int releaseDate) {
super(); super();
if (TextUtils.isEmpty(mrl)) throw new IllegalArgumentException("uri was empty"); if (TextUtils.isEmpty(mrl)) throw new IllegalArgumentException("uri was empty");
mUri = Uri.parse(manageVLCMrl(mrl)); mUri = Uri.parse(manageVLCMrl(mrl));
mId = id; mId = id;
mFilename = filename; mFilename = filename;
mReleaseYear = releaseDate;
init(time, length, type, null, title, artist, genre, album, albumArtist, width, height, init(time, length, type, null, title, artist, genre, album, albumArtist, width, height,
artworkURL != null ? VLCUtil.UriFromMrl(artworkURL).getPath() : null, audio, spu, artworkURL != null ? VLCUtil.UriFromMrl(artworkURL).getPath() : null, audio, spu,
trackNumber, discNumber, lastModified, seen, null); trackNumber, discNumber, lastModified, seen, null);
@ -556,6 +557,10 @@ public abstract class AbstractMediaWrapper extends MediaLibraryItem implements P
return mDate; return mDate;
} }
public int getReleaseYear() {
return mReleaseYear;
}
public String getSettings() { public String getSettings() {
return mSettings; return mSettings;
} }

4
medialibrary/src/org/videolan/medialibrary/media/MediaWrapper.java

@ -41,11 +41,11 @@ public class MediaWrapper extends AbstractMediaWrapper {
public MediaWrapper(long id, String mrl, long time, long length, int type, String title, public MediaWrapper(long id, String mrl, long time, long length, int type, String title,
String filename, String artist, String genre, String album, String albumArtist, String filename, String artist, String genre, String album, String albumArtist,
int width, int height, String artworkURL, int audio, int spu, int trackNumber, int width, int height, String artworkURL, int audio, int spu, int trackNumber,
int discNumber, long lastModified, long seen, boolean isThumbnailGenerated) { int discNumber, long lastModified, long seen, boolean isThumbnailGenerated, int releaseDate) {
super(id, mrl, time, length, type, title, filename, artist, super(id, mrl, time, length, type, title, filename, artist,
genre, album, albumArtist, width, height, artworkURL, genre, album, albumArtist, width, height, artworkURL,
audio, spu, trackNumber, discNumber, lastModified, audio, spu, trackNumber, discNumber, lastModified,
seen, isThumbnailGenerated); seen, isThumbnailGenerated, releaseDate);
} }
public MediaWrapper(Uri uri, long time, long length, int type, public MediaWrapper(Uri uri, long time, long length, int type,

12
medialibrary/src/org/videolan/medialibrary/stubs/StubDataSource.java

@ -63,21 +63,21 @@ public class StubDataSource {
media = MLServiceLocator.getAbstractMediaWrapper(getUUID(), baseMrl + fileName, 0L, 18820L, 0, media = MLServiceLocator.getAbstractMediaWrapper(getUUID(), baseMrl + fileName, 0L, 18820L, 0,
fileName, fileName, "", "", fileName, fileName, "", "",
"", "", 416, 304, "", 0, -2, "", "", 416, 304, "", 0, -2,
0, 0, 1509466228L, 0L, true); 0, 0, 1509466228L, 0L, true, 0);
addVideo(media); addVideo(media);
fileName = "FMA - MultiChapter.mkv"; fileName = "FMA - MultiChapter.mkv";
media = MLServiceLocator.getAbstractMediaWrapper(getUUID(), baseMrl + fileName, 0L, 1467383L, 0, media = MLServiceLocator.getAbstractMediaWrapper(getUUID(), baseMrl + fileName, 0L, 1467383L, 0,
"Encoded with MiniCoder", fileName, "", "", "Encoded with MiniCoder", fileName, "", "",
"", "", 1280, 720, "", 0, "", "", 1280, 720, "", 0,
-2, 0, 0, 1512396147L, 0L, true); -2, 0, 0, 1512396147L, 0L, true, 0);
addVideo(media); addVideo(media);
fileName = "114_My_Heart_Will_Go_On.avi"; fileName = "114_My_Heart_Will_Go_On.avi";
media = MLServiceLocator.getAbstractMediaWrapper(getUUID(), baseMrl + fileName, 0L, 20000L, 0, media = MLServiceLocator.getAbstractMediaWrapper(getUUID(), baseMrl + fileName, 0L, 20000L, 0,
"My Heart Will Go On - Celine Dion", fileName, "", "", "My Heart Will Go On - Celine Dion", fileName, "", "",
"", "", 352, 220, "", 0, "", "", 352, 220, "", 0,
-2, 0, 0, 1509465852L, 0L, true); -2, 0, 0, 1509465852L, 0L, true, 0);
addVideo(media); addVideo(media);
// Audio // Audio
@ -89,7 +89,7 @@ public class StubDataSource {
"Shine On CD2", "Peter Frampton", "Shine On CD2", "Peter Frampton",
0, 0, "/storage/emulated/0/Music/Peter Frampton/Shine On - CD2/Folder.jpg", 0, 0, "/storage/emulated/0/Music/Peter Frampton/Shine On - CD2/Folder.jpg",
0, -2, 1, 0, 0, -2, 1, 0,
1547452796L, 0L, true); 1547452796L, 0L, true, 0);
addAudio(media, "", 1965, 400); addAudio(media, "", 1965, 400);
fileName = "01-Wind Of Change.mp3"; fileName = "01-Wind Of Change.mp3";
@ -99,7 +99,7 @@ public class StubDataSource {
"Shine On CD1", "Peter Frampton", "Shine On CD1", "Peter Frampton",
0, 0, "/storage/emulated/0/Music/Peter Frampton/Shine On - CD1/Folder.jpg", 0, 0, "/storage/emulated/0/Music/Peter Frampton/Shine On - CD1/Folder.jpg",
0, -2, 1, 0, 0, -2, 1, 0,
1547452786L, 0L, true); 1547452786L, 0L, true, 0);
addAudio(media, "", 1960, 250); addAudio(media, "", 1960, 250);
fileName = "03 Bloody Well Right.wma"; fileName = "03 Bloody Well Right.wma";
@ -109,7 +109,7 @@ public class StubDataSource {
"The Autobiography of Supertramp", "Supertramp", "The Autobiography of Supertramp", "Supertramp",
0, 0, "/storage/emulated/0/Music/Supertramp/Best of/Folder.jpg", 0, 0, 0, "/storage/emulated/0/Music/Supertramp/Best of/Folder.jpg", 0,
-2, 3, 0, -2, 3, 0,
1547452814L, 0L, true); 1547452814L, 0L, true, 0);
addAudio(media, "", 1970, 360); addAudio(media, "", 1970, 360);
} }

4
medialibrary/src/org/videolan/medialibrary/stubs/StubMediaWrapper.java

@ -12,11 +12,11 @@ public class StubMediaWrapper extends AbstractMediaWrapper {
public StubMediaWrapper(long id, String mrl, long time, long length, int type, String title, public StubMediaWrapper(long id, String mrl, long time, long length, int type, String title,
String filename, String artist, String genre, String album, String albumArtist, String filename, String artist, String genre, String album, String albumArtist,
int width, int height, String artworkURL, int audio, int spu, int trackNumber, int width, int height, String artworkURL, int audio, int spu, int trackNumber,
int discNumber, long lastModified, long seen, boolean isThumbnailGenerated) { int discNumber, long lastModified, long seen, boolean isThumbnailGenerated, int releaseDate) {
super(id, mrl, time, length, type, title, filename, artist, super(id, mrl, time, length, type, title, filename, artist,
genre, album, albumArtist, width, height, artworkURL, genre, album, albumArtist, width, height, artworkURL,
audio, spu, trackNumber, discNumber, lastModified, audio, spu, trackNumber, discNumber, lastModified,
seen, isThumbnailGenerated); seen, isThumbnailGenerated, releaseDate);
} }
public StubMediaWrapper(Uri uri, long time, long length, int type, public StubMediaWrapper(Uri uri, long time, long length, int type,

Loading…
Cancel
Save