ADDITIONAL SYSTEM INFORMATION :
Fedora 27 64-bit, Java 8u192 (also tested with 191(x86) and 202(x86) and 121(x64) )
16 gb ram.
A DESCRIPTION OF THE PROBLEM :
Hi, i`m using JavaFX. When i trying to create a media - i have an error occured:
/usr/java/jdk1.8.0_192/bin/java: symbol lookup error: /usr/java/jdk1.8.0_192/jre/lib/i386/libglib-lite.so: undefined symbol: ffi_prep_cif_machdep
and application instantly crash!
application startup script: ${JAVA} ${DEBUG} ${LOGGER_OPT} ${LOCALES} ${SPLASH} -classpath ${CP} me.bogdan.Application 2>>${APPLICATION_HOME}/tmp/err.out
So this error visible only in err.out file.
Tried many flv, mp4 and mp3 files. Problem with libglib-lite.so. When i deleted this lib - error changed to FileNotFound and no crash, only exception.
Also tried to use 191 and 202(dev) builds.
And also i tried to use x64 java (build 121) - unsupported format exception. much better that crash, but i need to use x86 version to use special driver libs.
Okay, i tried -Djfxmedia.loglevel=DEBUG flag. What i got:
URL: file:/opt/pos/etc/selfcheckout/test.mp4
Debug (0:00:00:000): Logger initialized
Debug (0:00:00:005): Enabled JFXMedia platforms:
- com.sun.media.jfxmediaimpl.platform.java.JavaPlatform
- com.sun.media.jfxmediaimpl.platform.gstreamer.GSTPlatform
Debug (0:00:00:005): JFXMedia supported protocols:
file
http
https
Debug (0:00:00:011): Getting content types from platform: com.sun.media.jfxmediaimpl.platform.java.JavaPlatform@3bff54
Debug (0:00:00:011): Getting content types from platform: com.sun.media.jfxmediaimpl.platform.gstreamer.GSTPlatform@13a50cb
Debug (0:00:00:011): JFXMedia supported content types:
audio/x-aiff
audio/mp3
audio/mpeg
audio/x-wav
video/x-javafx
video/x-flv
video/x-fxm
video/mp4
audio/x-m4a
video/x-m4v
application/vnd.apple.mpegurl
audio/mpegurl
Debug (0:00:00:020): Initializing GSTPlatform
Debug (0:00:00:043): CLocator::CLocator()
Debug (0:00:00:043): CLocatorStream::CLocatorStream()
end. application is crashing here.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
use the same enviroment (Linux x64, Java8u202 x86)
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
create Media object, add it to media view as child, play
ACTUAL -
crash on media <init>
---------- BEGIN SOURCE ----------
try {
try{
File video = new File("/opt/app/etc/resources/test.mp3");
String url = video.toURI().toURL().toString();
System.out.println("URL: "+url);
currentPlayingMedia = new Media(url);
}catch(Exception e){
System.err.println(e.toString());
}
player = new MediaPlayer(currentPlayingMedia);
}catch (Throwable e) {
e.printStackTrace(System.out);
}
---------- END SOURCE ----------
FREQUENCY : always