Page MenuHomePhabricator

Java error when no audio device available
Closed, ResolvedPublic

Description

Error report when no audio device available

I got the attached error report from a German user who has no audio device available on his computer.


Version: unspecified
Severity: normal
URL: http://commons.wikimedia.org/wiki/Image:Jacob%27s_Ladder_toy_demonstration.ogg

Attached:

Details

Reference
bz11236

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 9:53 PM
bzimport set Reference to bz11236.

What is the bug? Does the applet stop or something? What sort of system is it?

(In reply to comment #1)

What is the bug? Does the applet stop or something? What sort of system is it?

The applet starts buffering, stops and freezes after different percentages buffered.

The system data can be found in the header of the java-log-file: WinXP SP2, Java SE Runtime Environment 1.6.0_02-b06, no hardware audio system installed.

I can confirm this on Windows XP SP2 (32-bit) with Java 1.6.0_02-b06 in IE 7.

If I disable the audio device (in VMWare this is a virtual Ensoniq AudioPCI es1371), then fire up the Java player for an OGG with video (added a URL for one), the video display freezes up fairly quickly. Either the picture area remains black, or sometimes half a frame is painted etc.

The status bar still says "buffering", and the controls respond in the UI but appear to cease functioning.

Opening the Java console, I see the exception backtrace.

Cortado probably just assumes audio is available and dies a horrible death when it turns out not to be. Better behavior would be to detect the failure to open and just silently eat the audio stream.

Reported on Fluendo's trac at:
https://core.fluendo.com/flumotion/trac/ticket/756

but we'll probably have to fix it ourselves, I'm told. :)

To clarify -- disable via the Windows multimedia control panel, hardware tab; not in VMWare's controls. (Disabling VMWare's audio device just makes it so the virtual machine's audio is hidden. You need to disable Windows' own driver.)