1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Announcing: Harmonium Music Player

Discussion in 'TiVo Home Media Features & TiVoToGo' started by perrce, Jul 23, 2008.

  1. Jul 23, 2008 #1 of 213
    perrce

    perrce New Member

    79
    0
    Feb 7, 2007
    Harmonium Music Player is an HME application that streams music from your PC to your TiVo, and is now beginning an open beta testing period. Get more information at http://software.dazeend.org

    There are other music streaming HME apps out there, so what makes Harmonium special?

    • Harmonium uses information from ID3 tags in your MP3 files to automatically sort your music collection. (Harmonium honors the Album Artist tag when it is found, so albums that contain songs by different artists or combinations of artists are grouped together.)
    • Harmonium supports high-definition televisions and displays album art in large format high-definition when possible.
    • Harmonium has integrated playlist support. Native playlists can be created and edited on-screen. M3U playlists are also supported.
    • Harmonium is easy to use. Installation is as simple as unzipping a file, editing a few lines of text, and starting the application. Using Harmonium is easy too. Harmonium uses TiVo usage conventions when possible to make its interface familiar to anyone who's used a TiVo.
    • Harmonium is cross-platform. There are distributions prepared that install Harmonium so that it starts on Windows and Linux on reboots. There's also a distribution that should run on any operating system that has Java installed (including Mac OS X).
    • Harmonium is free. Licensed under the GNU AGPL, Harmonium has no cost to use and its source code is available to modify and distribute.

    Learn more about Harmonium at it's project web page http://software.dazeend.org. Download the software, try it out, and let me know what you think. One word of warning though: this is still beta software and there may be a few kinks to work out. That being said, I and some of my friends use it at home every day. Enjoy!
     
  2. Jul 23, 2008 #2 of 213
    gonzotek

    gonzotek tivo_xml developer

    2,402
    3
    Sep 24, 2004
    Outside...
    That is a very very nice feature-set! I won't have time to really play with this for a few days, but I'll try to make some time to over the weekend. I'm glad to see some fresh HME development from outside TiVo, Inc. :).
     
  3. Jul 23, 2008 #3 of 213
    bacevedo

    bacevedo Member

    518
    0
    Oct 31, 2003
    Chandler, AZ
    This looks like a very nice app. Does it support AAC files (non drm)?

    About 90% of my collection is m4a in iTunes. Is there a way for me to use this, even if it requires an additional plugin, etc.?

    Bryan
     
  4. Jul 23, 2008 #4 of 213
    perrce

    perrce New Member

    79
    0
    Feb 7, 2007
    Not right now. For the moment it is MP3 only. My goal right now is to have a full-featured MP3 player for version 1.0, with AAC, Ogg, and FLAC targeted for v2.0.
     
  5. Jul 23, 2008 #5 of 213
    bacevedo

    bacevedo Member

    518
    0
    Oct 31, 2003
    Chandler, AZ
    Sweet! Once you get AAC support in there, I am all over it. That UI looks fantastic. I have to say nice work on it. Any idea when v2.0 is slated? Are we talking weeks, months, years?

    What would be nice is if in v2.0 you could get the playlists from iTunes as well. Not sure how hard that is. I am sure you already have your wishlist for v2.0!

    Bryan
     
  6. Jul 23, 2008 #6 of 213
    perrce

    perrce New Member

    79
    0
    Feb 7, 2007
    We're probably talking months for v2.0. As for feature requests, head over to the Harmonium web site and post something in the feature request forum. That's how I'm planning to track requests for the time being.
     
  7. Jul 25, 2008 #7 of 213
    s2kdave

    s2kdave New Member

    515
    0
    Jan 27, 2005
    Nice. Looking at the screenshots it looks like you might be using my bananas-plus api? I still haven't made an official release of that. Yeah, I'm lazy. :)

    At one point I was starting to work on a music player to replace the galleon one. That's actually what prompted me to start the bananas plus, but I got side tracked. :)

    I'll definitely check it out.
     
  8. Jul 25, 2008 #8 of 213
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    /subscribe

    I'm a long time JavaHMO -> Galleon music user, but I'll try out something new and shiny. :D
     
  9. Jul 25, 2008 #9 of 213
    perrce

    perrce New Member

    79
    0
    Feb 7, 2007
    I started out using it, but I ran into a roadblock streaming MP3s using the experimental 1.4.1e TiVo SDK. I ended up having to switch back to non-HD supporting 1.4.0 and use the HME-HD Library which Galleon uses (gotta love Open Source!), and which I thought you also had a hand in. This is probably as good an opportunity as any to thank all the other open source HME apps out there, especially Galleon, that I looked at to for examples of how to use the SDK.

    Thanks for checking it out. I'm looking for suggestions and bug reports. If you haven't downloaded it yet, you might want to hold off a couple hours. I'm going to release v0.2 later today which will add a few convenience features and fix a bug that showed up when you played an empty playlist.
     
  10. Jul 25, 2008 #10 of 213
    perrce

    perrce New Member

    79
    0
    Feb 7, 2007
    As promised, version 0.2 Beta is now available for download from the Harmonium web page. Enjoy!
     
  11. Jul 26, 2008 #11 of 213
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    When I try to fire up Harmonium in console mode, I can see it scanning all my music and then it ends like this:

    Code:
    jvm 1    | error: unable to invoke method: null
    jvm 1    | error: make sure the class is public and has a public static getAppFactory method
    jvm 1    | Failed to instantiate any HME apps
    jvm 1    | WrapperSimpleApp: main method completed
    jvm 1    | Wrapper Manager: ShutdownHook started
    jvm 1    | WrapperManager.stop(0) called by thread: Wrapper-Shutdown-Hook
    jvm 1    | Send a packet STOP : 0
    wrapperp | read a packet STOP : 0
    wrapper  | JVM requested a shutdown. (0)
    wrapper  | wrapperStopProcess(0) called.
    wrapper  | Sending stop signal to JVM
    wrapperp | send a packet STOP : NULL
    jvm 1    | Received a packet STOP :
    jvm 1    | Thread, Wrapper-Shutdown-Hook, handling the shutdown process.
    jvm 1    | calling listener.stop()
    jvm 1    | WrapperSimpleApp: stop(0)
    jvm 1    | returned from listener.stop() -> 0
    jvm 1    | shutdownJVM(0) Thread:Wrapper-Shutdown-Hook
    jvm 1    | Send a packet STOPPED : 0
    wrapperp | read a packet STOPPED : 0
    wrapper  | JVM signalled that it was stopped.
    jvm 1    | Closing socket.
    wrapperp | socket read no code (closed?).
    wrapperp | server listening on port 32001.
    wrapper  | JVM exited normally.
    wrapper  | Signal trapped.  Details:
    wrapper  |   signal number=17 (SIGCHLD), source="unknown"
    wrapper  | Received SIGCHLD, checking JVM process status.
    wrapper  | JVM process exited with a code of 0, leaving the wrapper exit code set to 0.
    jvm 1    | Wrapper Manager: ShutdownHook complete
    jvm 1    | Server daemon shut down
    wrapper  | <-- Wrapper Stopped
    
    java version "1.6.0_06" on my Ubuntu Hardy box.

    Any ideas?
     
  12. Jul 26, 2008 #12 of 213
    raianoat

    raianoat TiVoBlog.com

    229
    0
    Jan 27, 2004
    I'm receving the following error when I try and start Harmonium on my Mac (10.5.4). Sorry for the cross post but, I also posted something in Harmonium's forum.

    http://harmonium.dazeend.org/forums/viewtopic.php?f=3&t=4

    HME SDK 1.4 (TiVo, Inc.)
    Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:675)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:316)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:280)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:242)
    at com.tivo.hme.host.sample.Main.createFactory(Main.java:384)
    at com.tivo.hme.host.sample.Main.<init>(Main.java:151)
    at com.tivo.hme.host.sample.Main.<init>(Main.java:60)
    at com.tivo.hme.host.sample.Main.main(Main.java:534)
     
  13. Jul 26, 2008 #13 of 213
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    So actually I noticed that it was always stopping on the same MP3 file. So I loved that MP3 out of my music directory. It got a little farther and then stopped on a different file. So I moved that one out. Then it got through about 1,000 files before it yakked again.

    So I'm not sure what's "wrong" with my MP3 files, or what Harmonium is trying to read, that is causing it to crash.
     
  14. Jul 26, 2008 #14 of 213
    perrce

    perrce New Member

    79
    0
    Feb 7, 2007
    (Responded to both windracer and raianoat on the Harmonium forums.)
     
  15. Jul 26, 2008 #15 of 213
    s2kdave

    s2kdave New Member

    515
    0
    Jan 27, 2005
    Yeah, I wrote the hmehd library too. Same graphics and stuff. I just expanded on it when I made bananas-plus.
     
  16. Jul 27, 2008 #16 of 213
    pcbrew

    pcbrew New Member

    101
    0
    Mar 14, 2008
    DFW
    Most of my music does not show album art even though it is embedded. What are the requirements for showing Album Art?
    (This is one reason I am interested in this since the TiVo app still does not support album art display.)
     
  17. Jul 27, 2008 #17 of 213
    perrce

    perrce New Member

    79
    0
    Feb 7, 2007
    For album art to show up it has to be in an ID3 tag, and be in GIF, JPEG, or PNG format. If you continue to have problems, send me a track that you think should work and I'll check it out.
     
  18. Jul 27, 2008 #18 of 213
    s2kdave

    s2kdave New Member

    515
    0
    Jan 27, 2005
    I've noticed a few bugs:

    - There are duplicate band names in the Browse Music section. There might be spaces or unprintable characters before or after the names in the ID3 tags. You should probably trim the string before comparing if you aren't doing that.

    - I played an album that had 1 song in it and then was browsing through the UI. I went to the preferences section and when the song ended, it seemed to have don't a pop() on the screen I was on and went back to the screen before it automatically.

    - Music added after the server is started never shows up. If you add new music you have to restart the server. It should either listen for changes or do a quick update check each time the application is started on the tivo. Restarting the tivo app is reasonable.

    - On my windows box, the mdns entry never gets registered so it never shows up on my tivo and it doesn't show up in the list in my simulator. I have to manually type in the url in the simulator to use it. There are no errors in the logs either.

    - When you go to the Browse Music section, music only gets put into an Artist folder if it has an Artist AND and Album in the ID3 tag. I would expect it to at least create the Artist folder. Everything else gets stuck at the end of the list. Seems a little messy too. Maybe you should create another folder called <Untitled> if there is no Artist name.
     
  19. Jul 27, 2008 #19 of 213
    perrce

    perrce New Member

    79
    0
    Feb 7, 2007
    This one confuses me. It works just fine on my XP box. I've just been relying on the SDK to take care of all that and haven't seen any problems. Any ideas on how I can reproduce what you're seeing, or what might be the issue?

    I'll take a look at the other issues you pointed out as well. Thanks for the help!
     
  20. Jul 27, 2008 #20 of 213
    s2kdave

    s2kdave New Member

    515
    0
    Jan 27, 2005
    Yeah, I'm not sure what the problem is. I've been trying to debug it a little. I'm using the jmdns browser tool. And I see the Harmonium mdns packet coming in, but it never ends up in even the browser list.

    Code:
    java -classpath hme-host-sample.jar com.strangeberry.jmdns.tools.Main -d -browse -bt
    
    Another thing I noticed that I'm not sure if it's just a bug with the simulator is that if I hit forward or reverse to try and fast forward through a song, the whole app chokes and restarts. I think it might be the simulator though, I'd have to test it on my tivo in order to verify.

    You're welcome with the help. I figured I'd rather help you make the music app into what I was envisioning when I was going to create mine.

    Other minor annoyances are the preferences dialogs how you have to go down the the button at the bottom in order to hit left to go back. Also, I haven't checked, but are the settings persisted between server restarts?
     

Share This Page