Subsonic Jukebox Mode Error: No line matching interface
Hey I'm trying to setup my server as a jukebox, I really love Subsonic I think it's great however when I try to use jukebox mode it isnt working.
Here is my setup:
Because of the arm architecture I used these instructions to switch from OpenJDK to Java: http://forum.subsonic.org/forum/viewtopic.php?p=14535
And Finally my sound card is:
Ok so thats my setup. Now the error I get is this:
I saw someone had a similar problem in this link:
http://forum.subsonic.org/forum/viewtopic.php?t=2038
However I'm not sure how to compile audioDevList in those instructions and I'm not sure what my audio device's name is so I can edit sound.properties.
Finally it seems the error implies that my device can't play that type of audio however I installed mpg321 and then ran mp3-decoder {samefile} and it plays fine via command line so it's not like the hardware doesn't actually support decoding it.
If anyone has any insight as to what this error could mean or even help me compile that audioDevList so I can try editing sound.properties that would be so great.
Thank you for your time.
Here is my setup:
- Code: Select all
Subsonic
Version 4.2 (build 1944) – November 21, 2010
Server jetty-6.1.x, java 1.6.0_21, Linux (40.9 MB / 66.6 MB)
Ubuntu 9.04
Java SE for Embedded 6 Update 21 (Build 9) ARMv5 Linux - Headless, EABI, Soft Float, Little-Endian
Because of the arm architecture I used these instructions to switch from OpenJDK to Java: http://forum.subsonic.org/forum/viewtopic.php?p=14535
And Finally my sound card is:
- Code: Select all
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 1: default [C-Media USB Audio Device ], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
cat /proc/asound/cards
1 [default ]: USB-Audio - C-Media USB Audio Device
C-Media USB Audio Device at usb-orion-ehci.0-1.4, full speed
cat /proc/asound/modules
1 snd_usb_audio
cat /proc/asound/devices
1: : sequencer
32: [ 1] : control
33: : timer
48: [ 1- 0]: digital audio playback
56: [ 1- 0]: digital audio capture
Ok so thats my setup. Now the error I get is this:
- Code: Select all
[2010-12-01 08:01:47,902] INFO JukeboxService - Starting jukebox player on behalf of admin
[2010-12-01 08:01:48,024] DEBUG JukeboxService - stateUpdated : OPENING:-1:java.io.BufferedInputStream@1168da1
[2010-12-01 08:01:48,029] INFO PlaylistInputStream - admin listening to "Muse/Muse - Assasain.mp3"
[2010-12-01 08:01:48,129] WARN JukeboxService - Error in BasicPlayer.play()
java.lang.IllegalArgumentException: No line matching interface SourceDataLine supporting format PCM_SIGNED 44100.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian is supported.
at javax.sound.sampled.AudioSystem.getLine(AudioSystem.java:459)
at javazoom.jlgui.basicplayer.BasicPlayer.createLine(Unknown Source)
at javazoom.jlgui.basicplayer.BasicPlayer.initAudioInputStream(Unknown Source)
at javazoom.jlgui.basicplayer.BasicPlayer.open(Unknown Source)
at net.sourceforge.subsonic.service.JukeboxService$JuxeboxPlayer.play(JukeboxService.java:153)
at net.sourceforge.subsonic.service.JukeboxService.play(JukeboxService.java:76)
at net.sourceforge.subsonic.ajax.PlaylistService.convert(PlaylistService.java:268)
at net.sourceforge.subsonic.ajax.PlaylistService.play(PlaylistService.java:115)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:740)
at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:744)
at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:593)
at org.directwebremoting.dwrp.BaseCallHandler.handle(BaseCallHandler.java:90)
at org.directwebremoting.servlet.UrlProcessor.handle(UrlProcessor.java:120)
at org.directwebremoting.servlet.DwrServlet.doPost(DwrServlet.java:141)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:54)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:54)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:844)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
I saw someone had a similar problem in this link:
http://forum.subsonic.org/forum/viewtopic.php?t=2038
However I'm not sure how to compile audioDevList in those instructions and I'm not sure what my audio device's name is so I can edit sound.properties.
Finally it seems the error implies that my device can't play that type of audio however I installed mpg321 and then ran mp3-decoder {samefile} and it plays fine via command line so it's not like the hardware doesn't actually support decoding it.
If anyone has any insight as to what this error could mean or even help me compile that audioDevList so I can try editing sound.properties that would be so great.
Thank you for your time.