JVLC crash when streaming!

Microsoft Windows specific usage questions
Forum rules
Please post only Windows specific questions in this forum category. If you don't know where to post, please read the different forums' rules. Thanks.
mkeuschn
Blank Cone
Blank Cone
Posts: 16
Joined: 10 Apr 2007 19:30

JVLC crash when streaming!

Postby mkeuschn » 25 Sep 2008 18:55

When I reopen a stream the jvlc player crashes with following failure:

Code: Select all

[00000001] main libvlc debug: VLC media player - version 0.9.2 Grishenko - (c) 1996-2008 the VideoLAN team [00000001] main libvlc debug: libvlc was configured with ./configure '--host=i586-mingw32msvc' '--build=i386-linux' '--enable-mkv' '--enable-release' '--without-contrib' '--enable-nls' '--enable-shared-libvlc' '--enable-update-check' '--enable-lua' '--enable-faad' '--enable-flac' '--enable-theora' '--enable-twolame' '--enable-quicktime' '--enable-real' '--enable-realrtsp' '--enable-ffmpeg' '--with-ffmpeg-mp3lame' '--with-ffmpeg-faac' '--with-ffmpeg-config-path=/usr/win32/bin' '--with-ffmpeg-zlib' '--enable-live555' '--with-live555-tree=/usr/win32/live.com' '--ena [00000001] main libvlc debug: translation test: code is "C" udp://@:12405 # # An unexpected error has been detected by Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x774db15f, pid=1532, tid=1800 # # Java VM: Java HotSpot(TM) Client VM (10.0-b23 mixed mode, sharing windows-x86) # Problematic frame: # C [ntdll.dll+0x3b15f] # # An error report file with more information is saved as: # C:\11-eclipseWorkspace\unikluni\hs_err_pid1532.log # # If you would like to submit a bug report, please visit: # http://java.sun.com/webapps/bugreport/crash.jsp # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. # *** LibVLC Exception not handled: No active input Set a breakpoint in 'libvlc_exception_not_handled' to debug. libdvbpsi error (PSI decoder): TS discontinuity (received 12, expected 0) for PID 0 libdvbpsi error (PSI decoder): TS discontinuity (received 12, expected 0) for PID 66 Fontconfig error: Cannot load default config file libdvbpsi error (PSI decoder): TS discontinuity (received 12, expected 0) for PID 0 libdvbpsi error (PSI decoder): TS discontinuity (received 12, expected 0) for PID 66 Fontconfig error: Cannot load default config file
this is my implementation:

Code: Select all

package at.uniklu.unikluni.client.gui; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JToggleButton; import javax.swing.WindowConstants; import org.videolan.jvlc.Audio; import org.videolan.jvlc.JVLC; import org.videolan.jvlc.MediaDescriptor; import org.videolan.jvlc.MediaPlayer; import at.uniklu.unikluni.client.listener.ClientMediaPlayerListener; import at.uniklu.unikluni.client.listener.JVLCPanelComponentAdapter; import at.uniklu.unikluni.param.client.ParamHandler; import com.jgoodies.forms.layout.CellConstraints; import com.jgoodies.forms.layout.FormLayout; public class JVLCPanel extends JPanel{ private static final long serialVersionUID = -3316671696374369195L; private Audio audio; private MediaDescriptor mediaDescriptor; private MediaPlayer player; private JVLC jvlc; private ParamHandler pm; private JVLCCanvas jvcc = null; /** * Constructor. * @param source (e.g.: "C:/11-eclipseWorkspace/test-videos/t-en.mpg") * @param number * */ public JVLCPanel(ParamHandler pm, String source) { super(); this.pm = pm; this.jvcc = new JVLCCanvas(this.pm.getVlcArg()); this.add(jvcc); jvlc = jvcc.getJVLC(); mediaDescriptor = new MediaDescriptor(jvlc, source); player = mediaDescriptor.getMediaPlayer(); player.addListener(new ClientMediaPlayerListener()); audio = new Audio(jvlc); addComponentListener(new JVLCPanelComponentAdapter()); } public MediaPlayer getMediaPlayer() { return player; } /** * Set new source to play. * @param source */ public void setSource(String source) { mediaDescriptor = new MediaDescriptor(jvlc, source); stop(); player = null; player = mediaDescriptor.getMediaPlayer(); } /** * Start player. */ public void play() { jvlc.setVideoOutput(jvcc); player.play(); } /** * Stop player. */ public void stop() { player.stop(); } public void stopAndDelete() { //jvlc.getVLM().stopMedia(player.getMediaDescriptor().getMrl()); jvlc.getVLM().release(); jvlc.release(); System.out.println(player.getMediaDescriptor().getMrl()); // System.out.println(jvlc.getMediaList().getMediaDescriptorAtIndex(0)); } /** * Set mute. * @param mute */ public void setMute(boolean mute) { audio.setMute(mute); } /** * Set volume. * @param volume */ public void setVolume(int volume) { audio.setVolume(volume); } /** * Return JVLC. * @return */ public JVLC getJVLCObject() { return jvlc; } /** * Set window size. */ public void setSize(int width, int height) { this.jvcc.setSize(width - 10, height - 10); } /** * Set window size. */ public void setSize(Dimension dim) { this.jvcc.setSize(dim.width - 10, dim.height - 10); } /** * From this point all methods and classes are used only for test purposes. * @param args */ public static void main(String[] args) { //JVLCPanel jp = new JVLCPanel(new ParamHandler(), "C:/11-eclipseWorkspace/test-videos/t-en.mpg"); JVLCPanel jp = new JVLCPanel(new ParamHandler(), "udp://@:12405"); JFrame jf = new JFrame(); jf.setLayout(new FormLayout("fill:pref:grow","fill:pref:grow,fill:pref:grow")); jf.add(jp, new CellConstraints(1, 1)); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); jf.addWindowListener(jp.new MyWindowListener(jp)); JToggleButton onOffButton = new JToggleButton("off"); onOffButton.setSelected(true); jf.add(onOffButton, new CellConstraints(1, 2)); onOffButton.addActionListener(jp.new OnOffButtonListener(jp.getJVLCObject(), jp.getMediaPlayer(), jp)); jf.setSize(320, 240); jf.setVisible(true); jp.play(); } private class MyWindowListener implements WindowListener{ private JVLCPanel jp; public MyWindowListener(JVLCPanel jp) { this.jp = jp; } public void windowActivated(WindowEvent e) { // TODO Auto-generated method stub } public void windowClosed(WindowEvent e) { // TODO Auto-generated method stub } public void windowClosing(WindowEvent e) { System.out.println("window closing"); JVLC jvlc = jp.getJVLCObject(); jvlc.getVLM().release(); jvlc.release(); ((JFrame)e.getSource()).dispose(); } public void windowDeactivated(WindowEvent e) { // TODO Auto-generated method stub } public void windowDeiconified(WindowEvent e) { // TODO Auto-generated method stub } public void windowIconified(WindowEvent e) { // TODO Auto-generated method stub } public void windowOpened(WindowEvent e) { // TODO Auto-generated method stub } } private class OnOffButtonListener implements ActionListener { private JVLC jvlc; private MediaPlayer player; private JVLCPanel jp; public OnOffButtonListener(JVLC jvlc, MediaPlayer player, JVLCPanel jp) { this.jvlc = jvlc; this.player = player; this.jp = jp; } public void actionPerformed(ActionEvent e) { JToggleButton button = ((JToggleButton)e.getSource()); if (button.isSelected()) { button.setText("off"); player.play(); } else { button.setText("on"); player.stop(); jp.stopAndDelete(); jvlc.release(); } } } }
I use vlc player 0.9.2 on windows vista with java 1.6

mkeuschn
Blank Cone
Blank Cone
Posts: 16
Joined: 10 Apr 2007 19:30

Re: JVLC crash when streaming!

Postby mkeuschn » 26 Sep 2008 09:47

Could anyone provide working java code where I can open a file, play it, close the player, stop running player and start new stream, ... . And all this without errors and crashes.

cheers,
Marko

XYBeR
Blank Cone
Blank Cone
Posts: 24
Joined: 20 Sep 2008 13:00

Re: JVLC crash when streaming!

Postby XYBeR » 29 Sep 2008 21:31


mkeuschn
Blank Cone
Blank Cone
Posts: 16
Joined: 10 Apr 2007 19:30

Re: JVLC crash when streaming!

Postby mkeuschn » 30 Sep 2008 09:56

thx,

cheers,
Marko


Return to “VLC media player for Windows Troubleshooting”

Who is online

Users browsing this forum: No registered users and 47 guests