A standalone Java client: FireflyClient

Place to discuss using firefly with other, third-party software -- flashdaap, etc.

Moderators: Developers, Webadmins, Third-party devs

A standalone Java client: FireflyClient

Postby caribou on Wed Jan 02, 2008 8:31 am

I have just published on sourceforge.net a java client that i've been using for a year now to connect to my home firefly media server from my work.

Link: http://sourceforge.net/projects/fireflyclient
Screenshots: http://sourceforge.net/project/screensh ... _id=212642

The client is a swing java client delivered as an auto-executable jar) with the following features :
Code: Select all
Features:
-----------
- platform-independant (as soon as a java runtime is installed)
- Can connect to a Firefly Media Server wherever on the network/internet given the host name and the port
- Optional proxy configuration
- Use of DAAP XML request
- Authentication management for password protected libraries
- MP3 + WAV playback support (thanks to Javazoom MP3 SPI, Tritonus and JLayer)
- Cover display through ID3v2 MP3 tags if any (thanks to JAudioTagger)
- Shuffle mode
- Seeking is supported for MP3
- Loads the whole bunch of songs at startup and display them
   - artist panel + album panel + songs pannel
   - Compilation grouping
   - Songs are sorted by:  artist > album > disk number > track number > song title
- Search feature (search in artist+album+title)   
- Sublists are displayed by selecting either artist, albums, or to display a search result
- Possibility to save the library locally to load it later (much faster)
   - Warning when remote songlist does not have the same number of songs as locally cached one
- Different languages managed: english and french
- Skin support (thanks to SkinLF)
- Application settings are automatically saved locally (language, proxy, skin, window position)
   - As songlists, app parameters are saved in ${user.home}/.firefly-client
- When application does not have the focus and a song changes, a notification popup fires with new song info (optional)

More features can come...
Last edited by caribou on Thu Jan 10, 2008 2:50 am, edited 2 times in total.
User avatar
caribou
regular
regular
 
Posts: 57
Joined: Thu Dec 13, 2007 1:08 am
Location: France

Postby sonichouse on Wed Jan 02, 2008 9:58 am

Unfortunately does not work with my firefly 1696 :(

Killed it when retrieving items ...
2008-01-02 16:55:18 (00000400): Firefly Version svn-1696: Starting with debuglevel 5
2008-01-02 16:55:18 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/rsp.so (rsp/svn-1696)
2008-01-02 16:55:18 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/out-daap.so (daap/svn-1696)
2008-01-02 16:55:18 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/ssc-script.so (ssc-script/svn-1696)
2008-01-02 16:55:18 (00000400): Plugin loaded: ssc-script/svn-1696
2008-01-02 16:55:18 (00000400): Plugin loaded: daap/svn-1696
2008-01-02 16:55:18 (00000400): Plugin loaded: rsp/svn-1696
2008-01-02 16:55:18 (00000400): Starting rendezvous daemon
2008-01-02 16:55:18 (00000400): Starting signal handler
2008-01-02 16:55:18 (00000400): Initializing database
2008-01-02 16:55:25 (00000400): Starting web server from /opt/share/mt-daapd/admin-root on port 3689
2008-01-02 16:55:25 (00000400): Listening on port 3689
2008-01-02 16:55:25 (00000400): Starting server thread
2008-01-02 16:55:25 (00000400): Registering rendezvous names
2008-01-02 16:55:25 (00000400): Serving 3046 songs. Startup complete in 8 seconds
2008-01-02 16:55:38 (00000c03): malloc error in vasprintf
2008-01-02 16:55:38: Aborting
2008-01-02 16:55:38 (00000400): Rendezvous socket closed (daap server crashed?) Aborting.
2008-01-02 16:55:38: Aborting
SB M1000, M2000 x 2
NSLU2 Unslung 6.8, Firefly 1696, FirePlay 0.85, FF-Stats 1.28
User avatar
sonichouse
lunatic
lunatic
 
Posts: 368
Joined: Sat Jun 10, 2006 3:39 am
Location: UK

Postby blamm on Wed Jan 02, 2008 11:02 am

Hi.

I got an error on loading the library

Cause: SAXException while unmarshalling the song list (during parsing)
The word "impossible" is not in my dictionary. In fact, everything between "herring" and "marmalade" appears to be missing.
User avatar
blamm
lunatic
lunatic
 
Posts: 292
Joined: Thu Sep 07, 2006 6:13 am

Postby caribou on Wed Jan 02, 2008 11:05 am

I run my server on a slug too (debian slug) but with version svn-1376. I got the same message when trying to upgrade to svn-1696 (so I got back to svn-1376).
I saw a similar post on the forum but it didn't get any positive answer: http://forums.fireflymediaserver.org/vi ... hp?p=16062
I saw other similar posts too around FirePlay

What is strange is that it works fine on FireflyMediaServer on Windows. (svn-1696)

It may be linked to the arm version for the slug.

FireflyClient is based on the xml version of the protocol. It crashes too when requesting the songlist from a web browser. I don't understand why.

I will try to implement a rsp based version. Indeed, RSP requests for songs list seems to work well.
User avatar
caribou
regular
regular
 
Posts: 57
Joined: Thu Dec 13, 2007 1:08 am
Location: France

Postby sonichouse on Wed Jan 02, 2008 11:10 am

Thanks for the quick reply, RSP works for me with fireplay.

It might be worth getting the server version, and reporting if it is not compatible.
SB M1000, M2000 x 2
NSLU2 Unslung 6.8, Firefly 1696, FirePlay 0.85, FF-Stats 1.28
User avatar
sonichouse
lunatic
lunatic
 
Posts: 368
Joined: Sat Jun 10, 2006 3:39 am
Location: UK

Postby caribou on Wed Jan 02, 2008 12:29 pm

blamm wrote:Hi.

I got an error on loading the library

Cause: SAXException while unmarshalling the song list (during parsing)


Could you please tell me which server version you use (and on which platform). To be able to investigate, i'd need the library xml file generated when requesting the following url on your server: http://www.yourserver.com:3689/database ... output=xml.

If it is not possible to attach a file on this forum, you can open a bug on the sourceforge bug tracker:

http://sourceforge.net/tracker/?atid=10 ... unc=browse

or paste xml fragment on this forum (the beginning, though the full one would be better)

Thanks for summiting bugs...

If you have any questions, details...
User avatar
caribou
regular
regular
 
Posts: 57
Joined: Thu Dec 13, 2007 1:08 am
Location: France

Postby sonichouse on Wed Jan 02, 2008 1:01 pm

caribou wrote:
blamm wrote:Hi.

I got an error on loading the library

Cause: SAXException while unmarshalling the song list (during parsing)


Could you please tell me which server version you use (and on which platform). To be able to investigate, i'd need the library xml file generated when requesting the following url on your server: http://www.yourserver.com:3689/database ... output=xml.

If it is not possible to attach a file on this forum, you can open a bug on the sourceforge bug tracker:

http://sourceforge.net/tracker/?atid=10 ... unc=browse

or paste xml fragment on this forum (the beginning, though the full one would be better)

Thanks for summiting bugs...

If you have any questions, details...

I get the same error with 1696 on NSLU2.

My xml file is here
SB M1000, M2000 x 2
NSLU2 Unslung 6.8, Firefly 1696, FirePlay 0.85, FF-Stats 1.28
User avatar
sonichouse
lunatic
lunatic
 
Posts: 368
Joined: Sat Jun 10, 2006 3:39 am
Location: UK

Postby blamm on Wed Jan 02, 2008 1:23 pm

caribou wrote:
blamm wrote:Hi.

I got an error on loading the library

Cause: SAXException while unmarshalling the song list (during parsing)


Could you please tell me which server version you use (and on which platform). To be able to investigate, i'd need the library xml file generated when requesting the following url on your server: http://www.yourserver.com:3689/database ... output=xml.

If it is not possible to attach a file on this forum, you can open a bug on the sourceforge bug tracker:

http://sourceforge.net/tracker/?atid=10 ... unc=browse

or paste xml fragment on this forum (the beginning, though the full one would be better)

Thanks for summiting bugs...

If you have any questions, details...


Hi, the query returns an error. I think it has an issues with some of the comments in my files. I will investigate.

FYI for the small amount of dev I have done I have had much better success (and performance) using RSP.
The word "impossible" is not in my dictionary. In fact, everything between "herring" and "marmalade" appears to be missing.
User avatar
blamm
lunatic
lunatic
 
Posts: 292
Joined: Thu Sep 07, 2006 6:13 am

Postby caribou on Wed Jan 02, 2008 1:38 pm

As written previously, I will try to provide an RSP support in the coming weeks.

Any other comments welcome.
NSLU2 debian slug [etch], Firefly 1586 | Windows XP SP2, Firefly 1586
http://sourceforge.net/projects/fireflyclient/
User avatar
caribou
regular
regular
 
Posts: 57
Joined: Thu Dec 13, 2007 1:08 am
Location: France

Postby EVILRipper on Wed Jan 02, 2008 2:30 pm

H'okay. Looks pretty damn shiny.
It's just that, it kills my server. :P

svn1696, chrooted into debian etch on a Conceptronic CH3SNAS (not very known)

As noted by all others, the same error:

2008-01-02 22:27:23 (45cff4e0): Session 0: Streaming file '08-rise_against-the_approaching_curve.mp3' to 192.168.1.2 (offset 0)
2008-01-02 22:28:47 (46cff4e0): malloc error in vasprintf
2008-01-02 22:28:47: Aborting


And poof, no more music. hehe.
NSLU2 Debian Etch, CH3SNAS, mITX PC.
EVILRipper
lunatic
lunatic
 
Posts: 321
Joined: Fri Dec 08, 2006 5:14 am
Location: Netherlands

nice

Postby Osik on Wed Jan 02, 2008 4:04 pm

hi caribou,

well done.

I haven't installed it this on my server but running it on my Windows Vista and openSUSE standalone. Which works quite good.

Although i don't like, java apps, because i think there are slow, yours indeed isn't, this app seems a very good alternative to FirePlay which is flash based.

I found it annoying to connect to my music server for my own. And these "neverending" dialogs which tell me to do that or cancel/exit aren't that good. The keyword is: Keep it simple, keep it stupid ;-)

Maybe you can give us, especially me ;-) a howto install this on a webserver.

Thanks for an great app ;-) and happy new year.

Greetz

Osik
FreeBSD 7.0 x86_64;
Firefly svn 1696;

--
http://www.zeno.org
User avatar
Osik
regular
regular
 
Posts: 47
Joined: Wed Apr 18, 2007 6:52 am
Location: Berlin, Germany

Re: A standalone Java client: FireflyClient

Postby rpedde on Wed Jan 02, 2008 9:12 pm

caribou wrote:I have just published on sourceforge.net a java client that i've been using for a year now to connect to my home firefly media server from my work.


Wicked cool!

Do you already have the rsp specs? I need to transcribe those, but I just haven't gotten the time. If you need them, email me at ron@pedde.com, and I'll make sure I get them to you.

-- Ron
User avatar
rpedde
Site Admin
Site Admin
 
Posts: 4251
Joined: Mon Nov 22, 2004 12:55 am

Re: A standalone Java client: FireflyClient

Postby caribou on Thu Jan 03, 2008 4:53 am

rpedde wrote:Wicked cool!

Do you already have the rsp specs? I need to transcribe those, but I just haven't gotten the time. If you need them, email me, and I'll make sure I get them to you.

-- Ron


Many thanks Ron, the mail has been sent.
NSLU2 debian slug [etch], Firefly 1586 | Windows XP SP2, Firefly 1586
http://sourceforge.net/projects/fireflyclient/
User avatar
caribou
regular
regular
 
Posts: 57
Joined: Thu Dec 13, 2007 1:08 am
Location: France

Re: nice

Postby caribou on Fri Jan 04, 2008 5:55 am

Osik wrote:hi caribou,
I haven't installed it this on my server [...]
Maybe you can give us, especially me ;-) a howto install this on a webserver.


This is, "as is" a standalone client which cannt be installed on a server as FirePlay or the DAAPApplet.

There are some developments with more priority before trying to implement an applet version of FireflyClient (RSP management, playlists,...)

Maybe in a future, I will release an applet version which could be installed on the server (which would then need much less configuration). The main problem is that applets cannot directly write files on the client filesystem which is actually the case for caching configuration parameters and mainly the songlist.

Thanks for your remarks

--caribou
NSLU2 debian slug [etch], Firefly 1586 | Windows XP SP2, Firefly 1586
http://sourceforge.net/projects/fireflyclient/
User avatar
caribou
regular
regular
 
Posts: 57
Joined: Thu Dec 13, 2007 1:08 am
Location: France

Re: nice

Postby EVILRipper on Fri Jan 04, 2008 8:55 am

caribou wrote:The main problem is that applets cannot directly write files on the client filesystem which is actually the case for caching configuration parameters and mainly the songlist.

Let me guess, Access Denied?

If you sign the applet, the user is asked for permission when running the applet. When the user agrees, the applet does have write access to the client filesystem. :)
NSLU2 Debian Etch, CH3SNAS, mITX PC.
EVILRipper
lunatic
lunatic
 
Posts: 321
Joined: Fri Dec 08, 2006 5:14 am
Location: Netherlands

Next

Return to Add-on Software

Who is online

Users browsing this forum: No registered users and 1 guest