Java和gstreamer-java初始化错误

时间:2010-03-08 07:44:31

标签: java audio jna gstreamer

我正在构建一个小应用程序,它将在互联网上播放流媒体音频(主要是互联网广播电台)。我决定使用gstreamer-java库来发声,它使用JNA。

我想在代码中包含一个检查,以查看gstreamer库是否已初始化。当我离开“Gst.init()”代码时(模仿库未正确初始化时),应用程序抛出以下消息:

(process:21888): GLib-GObject-CRITICAL **: /build/buildd/glib2.0-2.22.3/gobject/gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function 
(process:21888): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

该应用程序调用gstreamer-java库。出现错误消息,但线程继续运行,占用CPU。

有没有办法捕获错误或添加检查以防止它发生?

另一种方法是将“Gst.init()”放在主类中,但我不确定这是否总能保证gstreamer库的初始化。

1 个答案:

答案 0 :(得分:0)

根据javadoc Gst.init()可以抛出GstException。 以下表达式怎么样?:

try {
  Gst.init();
} catch (GstException ex) {
  logger.log(Level.SEVERE, "Ошибка инициализации gstreamer!!!");
}