Can't run gstreamer-java on embedded system

151 views
Skip to first unread message

Jim Hollister

unread,
Mar 3, 2012, 5:54:51 PM3/3/12
to gstreamer-java
I'm trying to run gstreamer-java 1.5 on an ARM-based embedded system
running Ubuntu Lucid and it's crashing. When I run with an almost
identical configuration on my desktop Ubuntu Lucid system it runs
fine. Here's what happens on the ARM system:

$ uname -r
2.6.35.3-744-g27fdf7b

$ java -version
java version
"1.6.0_18"
IcedTea6 Runtime Environment (1.8.10)
(6b18-1.8.10-0ubuntu1~10.04.2)
OpenJDK Zero VM (build 14.0-b16, mixed mode)

$ dpkg -l | grep jna
ii libjna-java 3.2.3-1 Dynamic
access of native libraries from Java

$ java -Djna.library.path=/usr/lib -cp jna-3.1.0.jar:gstreamer-
java-1.5.jar org.gstreamer.example.BusMessages myvideofile

Here's one of the error messages that result from running gstreamer:

*** glibc detected *** java: corrupted double-linked list: 0x001c4418
***
Aborted

and here's another error message:

#
# A fatal error has been detected by the Java Runtime
Environment:
#
# Internal Error (os_linux_zero.cpp:236), pid=2381,
tid=1386624112
# Error: caught unhandled signal
11
#
# JRE version: 6.0_18-
b18
# Java VM: OpenJDK Zero VM (14.0-b16 mixed mode linux-
arm )
# Derivative: IcedTea6
1.8.10
# Distribution: Ubuntu 10.04.1 LTS, package
6b18-1.8.10-0ubuntu1~10.04.2
# An error report file with more information is saved
as:
# /usr/share/java/
hs_err_pid2381.log
#
# If you would like to submit a bug report, please
include
# instructions how to reproduce the bug and
visit:
# https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
# The crash happened outside the Java Virtual Machine in native
code.
# See problematic frame for where to report the
bug.
#
Aborted

I've also tried running with the jna-3.2.4.jar found on the gstreamer-
java website, with similar results.

Could someone please give me some hints about how to go about
identifying why gstreamer-java isn't working for me on this platform?

Jim


Jim Hollister

unread,
Mar 4, 2012, 10:44:07 AM3/4/12
to gstreamer-java
Some additional info. These commands work fine on my ARM system:

$ gst-launch playbin2 uri=file:///root/myvideofile
$ java -cp jna-3.2.4.jar:gstreamer- java-1.5.jar
org.gstreamer.example.PipelineLauncher playbin2 uri=file:///root/
myvideofile

but both of these commands cause the JVM to abort:

$ java -cp jna-3.2.4.jar:gstreamer- java-1.5.jar
org.gstreamer.example.Player /root/myvideofile
$ java -cp jna-3.2.4.jar:gstreamer- java-1.5.jar
org.gstreamer.example.BusMessages /root/myvideofile

I suspect the crash occurs when the gstreamer library tries to do a
bus-message-related callback via JNA. My gstreamer versions are:

gst-ffmpeg-0.10.3-1
gst-fsl-plugin-1.9.7-1
gst-plugins-bad-0.10.11
gst-plugins-base-0.10.28
gst-plugins-farsight-0.1
gst-plugins-good-0.10.16
gst-plugins-ugly-0.10.11
gstreamer-core-0.10.28-2

Jim

Tal Shalif

unread,
Mar 4, 2012, 10:28:54 PM3/4/12
to gstream...@googlegroups.com
Thanks for the additional information. Out of curiosity - what is the target device?

--
You received this message because you are subscribed to the Google Groups "gstreamer-java" group.
To post to this group, send email to gstream...@googlegroups.com.
To unsubscribe from this group, send email to gstreamer-jav...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gstreamer-java?hl=en.


Farkas Levente

unread,
Mar 5, 2012, 4:10:39 AM3/5/12
to gstream...@googlegroups.com, Jim Hollister
other pipelines are working? something more simple...

--
Levente "Si vis pacem para bellum!"

Neil C Smith

unread,
Mar 5, 2012, 5:02:12 AM3/5/12
to gstream...@googlegroups.com
Hi Jim,

Both the versions of JNA you're using are fairly old. I didn't think
JNA even had official ARM support back then. Have you tried with the
latest JNA 3.4.0?

I'd suggest two things -

* remove the JNA package if you have it installed (which it looks like
from this email). It's highly likely that the native lib is being
picked up from this rather than from whatever JAR is in your
classpath.
* try JNA 3.4.0 from https://github.com/twall/jna Note the release
notes for that version mention ARM support being added!

This might not fix the issue, but should help rule JNA out as the cause.

Best wishes,

Neil

> --
> You received this message because you are subscribed to the Google Groups "gstreamer-java" group.
> To post to this group, send email to gstream...@googlegroups.com.
> To unsubscribe from this group, send email to gstreamer-jav...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/gstreamer-java?hl=en.
>

--
Neil C Smith
Artist : Technologist : Adviser
http://neilcsmith.net

Jim Hollister

unread,
Mar 6, 2012, 12:02:55 PM3/6/12
to gstreamer-java
Thank you very much Neil. Removing the version of JNA that had been
installed from a .deb package and using the newer JNA 3.4.0 solved the
problem.

Jim

On Mar 5, 4:02 am, Neil C Smith <n...@neilcsmith.net> wrote:
> Hi Jim,
>
> Both the versions of JNA you're using are fairly old.  I didn't think
> JNA even had official ARM support back then.  Have you tried with the
> latest JNA 3.4.0?
>
> I'd suggest two things -
>
> * remove the JNA package if you have it installed (which it looks like
> from this email).  It's highly likely that the native lib is being
> picked up from this rather than from whatever JAR is in your
> classpath.
> * try JNA 3.4.0 fromhttps://github.com/twall/jna Note the release
> notes for that version mention ARM support being added!
>
> This might not fix the issue, but should help rule JNA out as the cause.
>
> Best wishes,
>
> Neil
>
> > For more options, visit this group athttp://groups.google.com/group/gstreamer-java?hl=en.

Neil C Smith

unread,
Mar 6, 2012, 12:45:12 PM3/6/12
to gstream...@googlegroups.com
Hi,

Glad to know it worked for out for you.

It might be a good idea for JNA to be removed from the GStreamer-Java
downloads page and just have a link to the JNA github site? I'm
planning to do exactly that with the next JAudioLibs release.

Also possibly worth noting / documenting that from 3.4.0 onwards JNA
provides the ability to pass in the system property 'jna.nosys=true'
to ensure that the JNA native lib is loaded from the JAR and not from
whatever old package you might have installed.

Best wishes,

Neil

> For more options, visit this group at http://groups.google.com/group/gstreamer-java?hl=en.

Farkas Levente

unread,
Mar 7, 2012, 4:09:46 AM3/7/12
to gstream...@googlegroups.com, Neil C Smith
agree.
done.

--

Tal Shalif

unread,
Mar 7, 2012, 4:33:31 AM3/7/12
to gstream...@googlegroups.com

The maven POM usually has a dependency on latest JNA release.

2012/03/07 18:09 "Farkas Levente" <lfa...@lfarkas.org>:
Reply all
Reply to author
Forward
0 new messages