A standalone Java client: FireflyClient

FireFly Media Server Firefly Media Server Forums Firefly Media Server Add-on Software A standalone Java client: FireflyClient

Viewing 10 posts - 131 through 140 (of 187 total)
  • Author
    Posts
  • #15641
    Anonymous
    Inactive

    Wow, what a nice Christmas present. Looks great. Thanks Caribou!

    #15642
    Anonymous
    Inactive

    Just tried the applet version but can’t get it to work. When the page loads, the status bar reads ‘applet noinited’ and then ‘Loading Java Applet Failed…’
    Looks like it may be flashing ‘java.lang.nullpointer.exception’ in there too.Very possibly something I am doing wrong. Tried with both IE7 and FF 3.0.5 on XP. Both show just a red x at the top left of the window.

    I am running
    Server:
    svn-1696 on an HP Media Vault

    Client:
    Windows XP
    Firefox 3.0.5
    Java 2 Platform Standard Edition 5.0 update 6 plugin

    Let me know if you have any ideas. Thanks.

    #15643
    Anonymous
    Inactive

    Caribou, here’s the output from the console if it’s any help:

    java.lang.NullPointerException
    at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
    at sun.plugin.AppletViewer.showAppletStatus(Unknown Source)
    at sun.applet.AppletPanel.createApplet(Unknown Source)
    at sun.plugin.AppletViewer.createApplet(Unknown Source)
    at sun.applet.AppletPanel.runLoader(Unknown Source)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    Exception in thread “Thread-13” java.lang.NullPointerException
    at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
    at sun.plugin.AppletViewer.showAppletException(Unknown Source)
    at sun.applet.AppletPanel.runLoader(Unknown Source)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    java.lang.NullPointerException
    at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
    at sun.plugin.AppletViewer.showAppletStatus(Unknown Source)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

    #15644
    Anonymous
    Inactive

    Thank you Caribou – more excellent bells and whistles for an already super add-on.

    I don’t know if you are familiar with MediaMonkey but it has a superb way of dealing with multiple genre and multiple artists. Anything entered and separated with a semi-colon will appear in the filter (genre or artist) for ALL of the relevant entries.

    For example, if genre is set to

    R&B and Soul; R&B; Urban

    then all three genres -i) R&B and Soul, ii) R&B, iii) Urban – will appear in the genre list and the appropriate song/album will appear if you select EITHER of the three genres.

    This works the same way for the artist field.

    The method really comes into its own for classical music, e.g. consider Beethoven’s 5th Symphony played by Berlin Philharmonic conducted by Karajan. In MediaMonkey I have this entered as follows:

    artist field – Berlin Philharmonic; Karajan
    genre field – Classical; [C]Classical; Orchestral;Symphony

    (the first Classical is the main genre classification, the second is to signify the Classical period)

    The beauty of this is that I can filter on either the orchestra or the conductor, or pick up the piece by selecting any of four separate genre.

    I would dearly love Firefly Server to follow this multiple artist/genre approach (the composer field already makes Firefly more powerful than most media servers but it’s still weak when there is more than one artist or for other than very simple genre classifications).

    Is Firefly Client dependent on Firefly Media Server altering its structure or could the client software pick up the semi-colons direct from the artist/genre fields?

    #15645
    Anonymous
    Inactive

    Caribou,
    @caribou wrote:

    Good news ! … I reproduced the buggy behaviour and I found a simple workaround … Next release is not ready at this time and I don’t know when it’ll be ….

    Thank you so much you just make it in time to give everyone a BIG Christmas gift!!! I can confirm that the UTF display bug is fixed and thanks for the big bunch of new functions!

    @caribou wrote:

    You’re right … The name of the art file is configurable in mt-daapd.conf file with the property “art_filename”. This is an experimental support and I’ve not tested it. It might be worth to give a try if you are not able to embed artowrk in each file.

    Thanks for the tips, I will take a look on mt-daapd.conf and give it a try! I can embed the artwork into every song but I think this is just a waste of disk spaces so don’t want to do it. 😀

    Congratulations! Wishing you lots of happiness wth your coming little one! 😆

    #15646
    Anonymous
    Inactive

    @rregent wrote:

    Just tried the applet version but can’t get it to work. When the page loads, the status bar reads ‘applet noinited’ and then ‘Loading Java Applet Failed…’

    Java Applet works just fine here… but any suggestion on how to avoid given out Admin password?

    Server: svn-1696 on LinkStation Live V2

    Client:
    Windows XPSP3
    Firefox 3.0.5
    JRE 6 Update 11

    #15647
    Anonymous
    Inactive

    Hi every one,
    I have just released a new version of FireflyClient : 0.9b
    See: https://sourceforge.net/project/showfiles.php?group_id=212642

    This is mainly a maintenance release based on 0.8b that mainly corrects the applet deployments problems. It has a few minor add-ons too.

    Main features are :
    – Enhanced applet deployments capabilities
    – Genre/artist separator to manage multiple genre/artist in single tag

    Here is the detailed changelog below.


    Changelog:
    Version 0.9 b
    - Enhanced applet configuration
    - read more in fireflyclient.html file when fireflyclient-applet(.zip or .tar.gz) has been uncompressed
    - Added the possibility to set a separator for genre and artist tag
    - Ex: if genre tag contains "Classical; [C]Classical; Orchestral;Symphony" and that
    ';' character has been set as genre separator in preferences dialog, 4 genres
    are extracted for this song (the song matching the four of them:
    - Classical
    - [C]Classical
    - Orchestral
    - Symphony
    Same functionnality for artist tag.
    When changing separators, application must be restarted.
    - Enhanced keylistener on genre, artist and album lists
    - When genre, artist or album list has the focus, you can type the first letters to go to the first matching item.
    - Weakly crypted passwords (library and lastfm) in configuration file (needs library saving)

    As usual, any support, any remark, bug report, feature request is welcome…

    The genre/artist separator feature answer the Statto2 post : viewtopic.php?f=9&t=7198&start=120#p23807

    If you read me, Pacbarnabe, I tried to add an hidden option to customize read buffer size, but I’m not sure that it will do the trick. Nevermind, you can try it. You just have to edit the XML configuration file (config.xml) and change/add the following property “4”. The default size is 4 (in kilobytes). You might try to increase this value. Do not put too high values as I noticed that the app was consumming a lot of CPU in that case. Try and find the value that might suit you if it makes any difference!

    I’ll make a dedicated post for applet configuration.

    — caribou

    #15648
    Anonymous
    Inactive

    About applet configuration…

    Hi everybody,

    Here are details about the applet version of Firefly Client. First of all, to use applet version, you must use the version 0.9b of the client – (see previous post).

    First, there are two main files :
    – FireflyClient.jar which contains the applet binary
    – fireflyclient.html which tells the browser to launch the applet with the following html code :




    At applet launch, the Java plugin downloads the jar file and accesses it several times while applet is running. To avoid requesting the remote jar each time, the java plugin tries to put it in a cache. If the plugin is unable to cache it, the jar file will be downloaded each it is needed (i.e. several times per session) which is unusable.

    How does java plugin caching mechanism work ?

    For the java plugin being able to cache the jar file, it needs to receive the following HTTP response headers:
    – Content-Length (the size of the jar in bytes)
    – Last-modified (the last modified date of the remote file)
    The plugin then puts the jar in cache, and works with the cached version until size has changed (Content-length) or modification date (Last-modified)
    Normally, every web server sends those two headers when serving any file as soon as these informations are available (which is the case for any static file).
    The problem is that the FireflyMediaServer (FMS) built-in web server doesn’t sends those headers for the files in the admin-root directory. This means that the java plugin is unable to cache the file which makes the applet unusable !

    How to workaround these issues to have the applet working ?

    First, the simplest way is to use the Java Runtime Environment (JRE) 1.6u10 (or more recent). Indeed, from this version, the java plugin interprets the ‘jnlp_href’ param name in the applet tag (see above). This parameter specify the url of a ‘jnlp’ file which is a more advanced descriptor (last generation) of the java applet. With the detailed informations contained in this description, the java plugin is able to cache the resources it needs (i.e. the jar file) without the usually needed HTTP headers and everything should work fine ! Keror0 has just said it worked for him (he runs the JRE 1.6 update 11).

    The second way is a bit more tricky to get the applet working, but it should work for any version of java (> 1.4) like the firefly client non-applet version. The idea is to host the applet files on another webserver which should add the requested headers (Content-Length and Last-Modified) for the old versions of java plugin to cache the needed ressources. When running in that configuration you must add the FMS host and port as parameters of the applet tag :

    <applet id="fireflyclient" style="width:100%; height:100%; position:absolute; top:0; left:0;"
    code="net.firefly.client.gui.applet.FireflyClientApplet">







    Any classical webserver work for this (i.e. apache, lighttpd,….)

    To summarize, instead of extracting the fireflyclient-applet[tar.gz|zip] file in the admin-root directory of FMS, extract it in the root of your dedicated webserver. Then edit the fireflyclient.html file to make the needed changes (comment out the first version of applet tag and uncomment the second one after having specified your FMS host and port in the applet tag params). The applet is now available at : http://your_webserver:your_webserver_port/applet/fireflyclient.html

    What to do when replacing applet by a new version ?

    You must purge the Java Plugin cache. To do that, open the Java Control Panel, click on the ‘Display’ button under the ‘Temporary Internet Files’ section and remove Firefly Client related file (especially FireflyClient.jar)

    Authentication problematics ?
    If you install the applet in the admin-root directory of FMS and the FMS admin pages are password-protected, you’ll have an authentication popup for accessing the page fireflyclient.html which might be annoying. The second kind of installation (on another webserver) remove this problem (Note that your library stays password protected (if configured) )

    Hope this long post will help those who are interrested by the applet version of fireflyclient !

    — caribou

    #15649
    Anonymous
    Inactive

    Hi,

    Fireflyclient.jar is just what i’m looking for, and i can use it on my laptop … But finally, i want to use it on my Htc Touch HD (windows mobile 6.1 smartphone) … I can install it, using the built-in java, but when trying to run it, it complains about several things … (at first i couln’t install either, but after adding the following lines in the Manifest.mf file, i can go further) :
    MIDlet-Name: FireflyClient
    MIDlet-Version: 1.5
    MIDlet-Vendor: Vendor
    MIDlet-1: Fireflyclient,,net.firefly.client.gui.swing.FireflyClient

    After installing it, it says “MIDLet was successfully installed! Do you want to launch the MIDlet ?”
    Then it gives the following error “The MIDlet could not be instantiated : java.lang.ClassCastException”

    Can someone help me getting this to work on a windows mobile os ?

    #15650
    Anonymous
    Inactive

    @caribou wrote:

    About applet configuration…
    The second way is a bit more tricky… host the applet files on another webserver … Any classical webserver work for this (i.e. apache, lighttpd,….) — caribou

    Hi Caribou,

    Playing around with the applet version a bit today… I have successfully migrated the server side applet to an apache server in attempt to bypass the authentication of the FMS. Modification of fireflyclient.html as follow:

     <applet id="fireflyclient" style="width:100%; height:100%; position:absolute; top:0; left:0;"
    code="net.firefly.client.gui.applet.FireflyClientApplet">








    However, applet version of the client player only shown up in the browser correctly the VERY FIRST time. When attempt to reload and close Firefox and reload the applet it shown up as follow, also tried with IE 6 with the same result:

Viewing 10 posts - 131 through 140 (of 187 total)
  • The forum ‘Add-on Software’ is closed to new topics and replies.