Beispiel #1
0
 public MediaInfo() {
   try {
     handle = MediaInfoLibrary.INSTANCE.New();
   } catch (LinkageError e) {
     throw new MediaInfoException(e);
   }
 }
Beispiel #2
0
  public synchronized void dispose() {
    if (handle == null) {
      return;
    }

    // delete handle
    MediaInfoLibrary.INSTANCE.Delete(handle);
    handle = null;
  }
Beispiel #3
0
 public static String staticOption(String option, String value) {
   try {
     return MediaInfoLibrary.INSTANCE
         .Option(null, new WString(option), new WString(value))
         .toString();
   } catch (LinkageError e) {
     throw new MediaInfoException(e);
   }
 }
Beispiel #4
0
  public synchronized boolean open(File file) {
    if (file == null || !file.isFile()) {
      return false;
    }

    // MacOS filesystem may require NFD unicode decomposition (forcing NFD seems to work for
    // System.out() but passing to libmediainfo is still not working)
    String path = file.getAbsolutePath();
    if (Platform.isMac()) {
      path = Normalizer.normalize(path, Form.NFD);
    }
    return MediaInfoLibrary.INSTANCE.Open(handle, new WString(path)) > 0;
  }
Beispiel #5
0
 public synchronized String get(
     StreamKind streamKind,
     int streamNumber,
     String parameter,
     InfoKind infoKind,
     InfoKind searchKind) {
   return MediaInfoLibrary.INSTANCE
       .Get(
           handle,
           streamKind.ordinal(),
           streamNumber,
           new WString(parameter),
           infoKind.ordinal(),
           searchKind.ordinal())
       .toString();
 }
Beispiel #6
0
 public synchronized String option(String option, String value) {
   return MediaInfoLibrary.INSTANCE
       .Option(handle, new WString(option), new WString(value))
       .toString();
 }
Beispiel #7
0
 public synchronized String inform() {
   return MediaInfoLibrary.INSTANCE.Inform(handle).toString();
 }
Beispiel #8
0
 @Override
 public synchronized void close() {
   MediaInfoLibrary.INSTANCE.Close(handle);
 }
Beispiel #9
0
 public synchronized int parameterCount(StreamKind streamKind, int streamNumber) {
   return MediaInfoLibrary.INSTANCE.Count_Get(handle, streamKind.ordinal(), streamNumber);
 }
Beispiel #10
0
 public synchronized int streamCount(StreamKind streamKind) {
   return MediaInfoLibrary.INSTANCE.Count_Get(handle, streamKind.ordinal(), -1);
 }
Beispiel #11
0
 public synchronized String get(
     StreamKind streamKind, int streamNumber, int parameterIndex, InfoKind infoKind) {
   return MediaInfoLibrary.INSTANCE
       .GetI(handle, streamKind.ordinal(), streamNumber, parameterIndex, infoKind.ordinal())
       .toString();
 }