Supersonic 1.1.6 - Foobar2000 inspired multi-platform Player

Announcements and discussion of new releases.

Moderator: moderators

Supersonic 1.1.6 - Foobar2000 inspired multi-platform Player

Postby Athou » Sun Jan 22, 2012 8:45 pm

Supersonic 1.1.6

Hi !
I've been working on a subsonic client for myself and now that it's stable enough I'm releasing it. I wanted a player looking kinda like foobar2000 with the main window showing all songs available on subsonic, and with proxy support (with authentication).

The player is multi-platform and requires Java 1.6 (preferably Sun's over OpenJDK) to be installed.
I'll add features and fix bugs as I go. Feel free to post comments and requests here. I'll post updates here.

Image

Download

Downloads are available here and sources are hosted on GitHub here.
There's an executable for Windows and a shell script bundled in the package.

Code: Select all
1.1.6
Lots of new skins available
minor tweaks

Changelog
1.1.4
Seekbar now finally working
Displaying song download progress
Fix restore from systray
Updated various dependencies

1.1.1
HTTPS support
Library compression

1.1.0
- Incremental Library refresh
- Chat messages tab
- Now Playing tab
- Checks for software updates on startup
- Current playing song is downloaded asap and streamed from memory instead of read from the url when needed during playback

1.0.4
- HTTPS support
- Clicking on the cover preview opens the full size cover

1.0.3
- Added configurable global keybindings
- Added window state saving when closing application. State is restored during application startup.
- upgraded CDI (Weld) to 2.0.0
Last edited by Athou on Fri Dec 14, 2012 6:29 am, edited 15 times in total.
User avatar
Athou
 
Posts: 19
Joined: Sun Jan 22, 2012 8:01 pm

Re: Supersonic - Foobar2000 inspired multi-platform Java Pla

Postby neodawg » Fri Jan 27, 2012 5:01 pm

Looks good, perhaps it might be possible to include the chat system, so chat messages would appear in some part of the player as well? Not sure if the chat is part of the API or not, but would be cool to be able to have that feature.
Music Collection--
2,890 artists
8,253 albums
103,492 songs
640.11 GB
7,023 hours
neodawg
 
Posts: 51
Joined: Fri Feb 12, 2010 2:51 pm

Re: Supersonic - Foobar2000 inspired multi-platform Java Pla

Postby blightzero » Tue Jan 31, 2012 12:29 pm

Very nice Idea, I've been looking for a simple Client with just this feature set, but sadly:
It's not working for me.
I'm running on Linux/Ubuntu/Gnome Desktop, I tried to run it with openjdk 1.6 as well as with the Sun jdk 1.6. And the problems described are the same for both.

There seem to be multiple problems:
On an 4.5 Subsonic Server it doesnt seem to be able to get the Directory Listing, the Debug Listing is:
Code: Select all
DEBUG [SubsonicService:55] Invoking: getAlbumList

After that nothing ever happens and there is no Error Message that would indicate what the problem may be.

On my 4.6 Subsonic Server this does work, however nothing ever appears in the GUI. The Debug Output looks like this:
Code: Select all
DEBUG [SubsonicService:55] Invoking: getAlbumList
DEBUG [SubsonicService:55] Invoking: getMusicDirectory
DEBUG [SubsonicService:55] Invoking: getMusicDirectory
DEBUG [SubsonicService:55] Invoking: getMusicDirectory

This getMusicDirectory goes on for several minutes, then stops, however nothing ever appears in the GUI.
Again there is no Error Message. It's also kind of strange that the Window with the Status-Indicator disappears already after the getAlbumList was successful, but other than that nothing in the GUI shows up, and the DEBUG Output of "getMusicDirectory" keeps running for several minutes after that.

The second problem is that when I minimize the program it just disappears. It does have an Icon in the Notification Area, but the menu "Restore" just gives me a short animation of the window of the application minimizing into nothingness...
blightzero
 
Posts: 12
Joined: Sat Jan 30, 2010 2:27 pm

Re: Supersonic - Foobar2000 inspired multi-platform Java Pla

Postby Aethies » Tue Jan 31, 2012 3:35 pm

I am also getting nothing when trying to connect to my server. It doesn't show an error or anything. Just refreshes and everything is blank.
Aethies

Ubuntu Server 12.04
===================
3,281 artists
9,432 albums
113,608 songs
2636.09 GB (10,769 hours)
===================
User avatar
Aethies
 
Posts: 197
Joined: Fri Oct 24, 2008 4:33 pm

Re: Supersonic - Foobar2000 inspired multi-platform Java Pla

Postby neodawg » Tue Jan 31, 2012 9:39 pm

Aethies wrote:I am also getting nothing when trying to connect to my server. It doesn't show an error or anything. Just refreshes and everything is blank.



Same here. My server is using https would that be the issue?
Music Collection--
2,890 artists
8,253 albums
103,492 songs
640.11 GB
7,023 hours
neodawg
 
Posts: 51
Joined: Fri Feb 12, 2010 2:51 pm

Re: Supersonic - Foobar2000 inspired multi-platform Java Pla

Postby Athou » Wed Feb 01, 2012 6:53 pm

I'm going to check what's wrong later this week, when I have some time to work on this side project, stay tuned!
User avatar
Athou
 
Posts: 19
Joined: Sun Jan 22, 2012 8:01 pm

Re: Supersonic - Foobar2000 inspired multi-platform Java Pla

Postby JesterEE » Fri Feb 03, 2012 6:51 pm

I am getting a similar experience as the other connecting to my server on a Linux system. Looking forward to a fix to give it a shot. Really want a native app that I can do keybinds with in Linux!

Also, I was having a problem entering my password. The GUI wouldn't accept any typed characters in the dialog. I found the prefs.xml that stores this data under my .java directory and put in my password there. It seemed to work, but in the future I'd appreciate if the password data was encrypted when stored locally.

Great work thus far!
-JesterEE
User avatar
JesterEE
 
Posts: 22
Joined: Thu Nov 11, 2010 3:20 pm
Location: Boston, MA, USA

Re: Supersonic - Foobar2000 inspired multi-platform Java Pla

Postby Athou » Tue Feb 07, 2012 9:25 am

OK I fixed several problems regarding Library refresh and some stability issues. Please test and let me know if your issues are fixed !
I'll start adding additional features when everytihing is stable enough. In the mean time I've released an updated beta available here.
User avatar
Athou
 
Posts: 19
Joined: Sun Jan 22, 2012 8:01 pm

Re: Supersonic 1.0.1 - Foobar2000 inspired multi-platform Pl

Postby blightzero » Tue Feb 07, 2012 6:33 pm

Hi, I tried it.
The "Test Connection" Button works. :)
Sadly I still can't update my Library. Here is the Logfile after a Run:
Code: Select all
2012-02-07 19:28:00,651 DEBUG [SubsonicService:98/SwingWorker-pool-2-thread-1] Invoking ping with 0 params []
2012-02-07 19:28:00,845 DEBUG [SubsonicService:57/SwingWorker-pool-2-thread-1] Response: <?xml version="1.0" encoding="UTF-8"?>
<subsonic-response xmlns="http://subsonic.org/restapi" status="ok" version="1.7.0">
</subsonic-response>

2012-02-07 19:28:07,509 DEBUG [SubsonicService:98/SwingWorker-pool-2-thread-2] Invoking getAlbumList with 2 params [type=newest,size=500]
2012-02-07 19:28:17,538 ERROR [SupersonicException:22/SwingWorker-pool-2-thread-2] Read timed out
java.net.SocketTimeoutException: Read timed out
   at java.net.SocketInputStream.socketRead0(Native Method)
   at java.net.SocketInputStream.read(SocketInputStream.java:146)
   at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
   at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
   at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
   at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:688)
   at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:633)
   at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1162)
   at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:397)
   at be.hehehe.supersonic.service.SubsonicService.invokeBinary(SubsonicService.java:133)
   at be.hehehe.supersonic.service.SubsonicService.invoke(SubsonicService.java:50)
   at be.hehehe.supersonic.service.SubsonicService.invoke(SubsonicService.java:42)
   at be.hehehe.supersonic.service.Library$1.doInBackground(Library.java:83)
   at javax.swing.SwingWorker$1.call(SwingWorker.java:291)
   at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
   at java.util.concurrent.FutureTask.run(FutureTask.java:166)
   at javax.swing.SwingWorker.run(SwingWorker.java:330)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
   at java.lang.Thread.run(Thread.java:636)
2012-02-07 19:28:17,543 ERROR [SupersonicException:22/SwingWorker-pool-2-thread-2] Could not refresh library.
be.hehehe.supersonic.utils.SupersonicException: Read timed out
   at be.hehehe.supersonic.service.SubsonicService.invokeBinary(SubsonicService.java:143)
   at be.hehehe.supersonic.service.SubsonicService.invoke(SubsonicService.java:50)
   at be.hehehe.supersonic.service.SubsonicService.invoke(SubsonicService.java:42)
   at be.hehehe.supersonic.service.Library$1.doInBackground(Library.java:83)
   at javax.swing.SwingWorker$1.call(SwingWorker.java:291)
   at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
   at java.util.concurrent.FutureTask.run(FutureTask.java:166)
   at javax.swing.SwingWorker.run(SwingWorker.java:330)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
   at java.lang.Thread.run(Thread.java:636)
blightzero
 
Posts: 12
Joined: Sat Jan 30, 2010 2:27 pm

Re: Supersonic 1.0.1 - Foobar2000 inspired multi-platform Pl

Postby Athou » Tue Feb 07, 2012 6:37 pm

How many albums do you have ? If you have a lot of songs a timeout of 10 seconds is maybe not long enough.
User avatar
Athou
 
Posts: 19
Joined: Sun Jan 22, 2012 8:01 pm

Re: Supersonic 1.0.1 - Foobar2000 inspired multi-platform Pl

Postby blightzero » Tue Feb 07, 2012 7:10 pm

Hi,
my current stats are:
2.008 Artists
2.014 Albums
13.615 Songs
My Subsonic Server is a P4 2,8Ghz with 2Gigs of RAM, the Uploadrate on the connection is 1024kbit/sec.

My guess is that 10 secs is way too short.
blightzero
 
Posts: 12
Joined: Sat Jan 30, 2010 2:27 pm

Re: Supersonic 1.0.1 - Foobar2000 inspired multi-platform Pl

Postby Athou » Tue Feb 07, 2012 8:04 pm

Indeed. Let me increase the timeout and also remove the current 500 albums limit.
User avatar
Athou
 
Posts: 19
Joined: Sun Jan 22, 2012 8:01 pm

Re: Supersonic 1.0.1 - Foobar2000 inspired multi-platform Pl

Postby Athou » Tue Feb 07, 2012 8:29 pm

OK done, bumped the timeout to one minute and removed the album limit. Please update to 1.0.2 and let me know.
User avatar
Athou
 
Posts: 19
Joined: Sun Jan 22, 2012 8:01 pm

Re: Supersonic 1.0.1 - Foobar2000 inspired multi-platform Pl

Postby blightzero » Wed Feb 08, 2012 12:06 pm

Hi,

that did the trick for me, now I get to download the library, and I also get a Dialog where it says "Downloading x/y", but every 20 or so I get an Error Message with an Nullpointer Exception. The Application does not crash tough, and I am able to proceed. Then I can play a song from my library, but only one song. As soon as the next song is supposed to play, or I click on a different song for it to play, the application just completely freezes. The only thing I can do then is to kill the application.
There is no error message or debug output on that freezing however.
blightzero
 
Posts: 12
Joined: Sat Jan 30, 2010 2:27 pm

Re: Supersonic 1.0.1 - Foobar2000 inspired multi-platform Pl

Postby Athou » Wed Feb 08, 2012 12:14 pm

Could you try with Sun's JRE instead of OpenJDK please? I'm getting the same behavior with OpenJDK (regarding the freezing part). I'll investigate the issue.
Also, Could you please paste the relevant log part with the NullPointerException?
User avatar
Athou
 
Posts: 19
Joined: Sun Jan 22, 2012 8:01 pm

Next

Return to Announcements

Who is online

Users browsing this forum: No registered users and 14 guests