Slashdot Mirror


Songbird Source Released

Rinisari writes "The source for Songbird, a music-oriented XULRunner application, is now available via Subversion. Rob Lord, CEO of Pioneers of the Inevitable, released the source for the not-yet-0.2 version of the music player, which integrates a music library and the facility to purchase and download music from a variety of vendors. If you haven't heard of it, read the features list and try it out. Slashdot previously mentioned Songbird when it was released as a preview in February."

114 comments

  1. I wonder if... by JPamplin · · Score: 1

    This will delay the release or accelerate it? I would think that releasing the code is their way of "washing their hands of it." I could be totally off by that assumption, though. Perhaps they just want some outside development help. JP

    1. Re:I wonder if... by temojen · · Score: 1

      Or maybe their business model depends on something other than selling licenses to use software, Like promoting live performances, or they are doing this to promote consulting for custom XUL apps.

  2. List of XUL Applications? by AKAImBatman · · Score: 5, Informative

    SongBird just goes to show what XUL can really do. Most people shun it with a, "Coding serious applications in JavaScript? Yeah, right." But with the XPCOM Standard Library as a foundation, the XUL platform is really a great way to build applications. (There's a really cool application here that shows off XUL's abilities.)

    XULRunner is still a problem, though. It's not clear to most programmers that XUL applications can function just as well standing alone as in a browser. Songbird is a great start, but does anyone know if there's a list of existing XULRunner applications? If such a list existed, it would be a lot easier to show people what XUL can do just by pointing them to a single URL.

    1. Re:List of XUL Applications? by Anonymous Coward · · Score: 0

      Considering how fast that loaded up on a Pentium 150Mhz PC%2tercwould say XUL is incredibly nice.

    2. Re:List of XUL Applications? by r0bl0rd · · Score: 1

      "Songbird" not "SongBird" please. =)

      Chirp, chirp!
      r0b

      --
      *Rob Lord, CEO, Pioneers of the Inevitable | rob@songbirdnest.com* Play music. Play the Web. http://songbirdnest.c
    3. Re:List of XUL Applications? by aymanh · · Score: 1
      Songbird is a great start, but does anyone know if there's a list of existing XULRunner applications?
      AFAIK, there is ChatZilla and Songbird. In addition, there are plans to port Nvu and SeaMonkey to XULRunner. Let's hope the list gets longer as time goes.
      --
      python>>> q="'";s='q="%c";s=%c%s%c;print s%%(q,q,s,q)';print s%(q,q,s,q)
    4. Re:List of XUL Applications? by PoprocksCk · · Score: 2, Insightful

      Well for starters, Firefox, Seamonkey and Thunderbird will be able to run on top of XULRunner soon. That'll be especially nice for us Linux folks who prefer shared libraries over having multiple copies of the same duplicated libraries installed on our systems.

    5. Re:List of XUL Applications? by aymanh · · Score: 1
      I see it's named after Mozilla's traditional naming conventions, with only the first noun capitalized, from Firefox FAQ:

      How do I spell Firefox? How do I abbreviate it?

              Firefox is spelled F-i-r-e-f-o-x - only the first letter capitalized (i.e. not FireFox, not Foxfire, FoxFire or whatever else a number of folk seem to think it to be called.) The preferred abbreviation is "Fx" or "fx".
      I suppose Songbird's abbreviation is Sb? (As in Thunderbird's Tb)
      --
      python>>> q="'";s='q="%c";s=%c%s%c;print s%%(q,q,s,q)';print s%(q,q,s,q)
    6. Re:List of XUL Applications? by Anonymous Coward · · Score: 0

      Try Komodo (it's running on a kinda hacked version of XULRunner with Python rather than Javascript though).

      Yes, the runtime is somewhat large (28MB for Mac OS X), but it has promise!

    7. Re:List of XUL Applications? by Anonymous Coward · · Score: 0

      The problem isn't the language, it's the runtime. Seamonkey performance isn't exactly stellar. The plans for Mozilla2 were to integrate a VM so js (or any other language targetting the runtime) would benefit from bytecode compilation and JIT. Neither Java or mono would be suitable IMVHO and the devs already discounted parrot. There's a certain small VM designed to run dynamic languages with a low level language that's very similar to EMCA script, hope the drivers are looking at that ;-)

    8. Re:List of XUL Applications? by Anonymous Coward · · Score: 5, Interesting
      Most people shun it with a, "Coding serious applications in JavaScript? Yeah, right."


      And for good reason! XUL is a terrible, terrible, terrible, terrible, terrible system.

      Crap, now I have to back that up with reasons, don't I? And the fact that I hate JavaScript really doesn't count, does it?

      You can think of XUL as being almost exactly like VB, except without any nice GUI tools for building UIs. Almost all the things people hate about VB also apply to XUL.

      But anyway, that's rather vague. How about some specific reasons?

      First off, XUL is rendered using the same rendering engine as Firefox uses for rendering webpages. Yes, when you're looking at Firefox, everything you see is rendered by Gecko. That includes the menu, the toolbars, the tabs, and the webpage itself. This mixing of UI and webpages is just asking for security holes. The webpage is embedded in what is practically an IFRAME within the XUL document. There have already been a number of security exploits caused by webpages elevating their privileges into the "chrome" security level. If ActiveX has taught us anything, there will likely be more.

      This relates directly to the next problem: because the entire interface is implemented using Gecko, the widgets aren't native. They feel out of place. Gecko does an amazing job of making the widgets look almost-right, but they're still not native and they still don't look quite right, even on Windows (most work spent on this) and GTK (second most work). And forget about Mac OS X, it's not even close!

      But the real problem with not using native widgets is that XUL doesn't get the benefit of a platform's accessibility features. Yes, they have some hacks that attempt to stitch XUL widgets back to a platform's native accessibility system, but this means that they're chasing whatever new features are added. Right click on a native text field on my Windows system, I get the full set of Unicode editing features for dealing with BIDI text. Right click on a Firefox text field, and it's not there.

      And, finally, JavaScript. You knew it was coming. But I'm not going to go after the language, I'm going to complain about the JavaScript interpretor that Mozilla uses. Most of the widgets are implemented by using JavaScript glue to access native code using XPConnect. Some widgets are implemented almost entirely in JavaScript - this is why the progress meter under Windows looks completely wrong. The concept of having native code do the heavy lifting and using a scripting language to glue everything together is a very good idea.

      But that turns out to be a problem. If you want to write a cross-platform XUL application, you can only use JavaScript since that's what XULRunner provides. (Keep in mind, if you want to run on every platform XULRunner runs on, it's JavaScript or else.) Otherwise you'll have to compile for every platform, and you can only rely on the core XPCOM objects to be available. JavaScript is an interpretted language. And it's slllllllow. And - here's the most important part - in Mozilla, it's strictly single-threaded.

      Now, combine that up above with JavaScript being used to implement some widgets. Plus, the thread used to run chrome JavaScript is the UI thread - the thread that receives messages from the windowing system. This means that if an application is using JavaScript to do heavy lifting, the application will literally freeze while it can no longer accept messages. The windows will stop redrawing. Clicks will be ignored. Nothing will happen until the JavaScript finishes and the UI thread can start handling messages again.

      Trying to write XUL applications that don't do things that are already implemented as part of the core XUL system is mostly a waste of time. XUL works best if you can write native code for the heavy lifting and use JavaScript soley for the UI. Unfortunately, that makes your application non-portable - something XUL is supposed to help solve.
    9. Re:List of XUL Applications? by AKAImBatman · · Score: 4, Informative
      What an impassioned rant! With all the energy and time you put into it, I really feel sorry that's it's so incredibly wrong. :(

      because the entire interface is implemented using Gecko, the widgets aren't native.


      As it so happens, the widgets are native. Mozilla exposes the underlying implementation. Which is why buttons look like Windows, Mac, or GTK+ buttons. The caveat to this is that you can create XUL buttons/components that are entirely virtual. These components are generally used to produce skins like that used in Firefox. But most XUL applications actually rely on the native components instead. Which is why the Amazon browser I linked to looks like a native Windows app.

      JavaScript is an interpretted language. And it's slllllllow.

      It's also just glue. All the heavy lifting is done by the XPCOM components, which are FAAAAAASSSST.

      This means that if an application is using JavaScript to do heavy lifting, the application will literally freeze while it can no longer accept messages. The windows will stop redrawing. Clicks will be ignored. Nothing will happen until the JavaScript finishes and the UI thread can start handling messages again.

      Putting aside for a moment that this is an issue in all GUI programming, Mozilla does support multithreading. It just doesn't do it at the Javascript level. Threads are pushed down to the XPCom level instead, where they do the most good. (e.g. The XmlHttpRequest object can run synchronously or asynchronously.) If you really must multithread your JavaScript app, then cooperative multithreading is easy to do. Timed call-backs allow you to regain control whenever you need it, or in spurts if you'll be processing for a long period of time.
    10. Re:List of XUL Applications? by Kethinov · · Score: 0

      Many of your criticisms are quite valid, but you're going a bit too far with your criticisms.

      Specifically, yes, XUL does make an application not native, and things like Mozilla GTK support is chasing a moving target. But not every application needs to be fully, 100% native. Firefox's Windows support is more than enough, Firefox's GTK support is very, very nice, but could be a bit better. And yes, the Mac support is atrocious. But Safari owns, so no one cares. The point being, the nativeness problem is not a big deal, and the situation will continue to improve anyway.

      You said also that writing native code for heavy lifting makes an app not portable, but this is not necessarily true either. C is a very portable language, and as long as you're not using some ass backwards compiler that is tied to a single platform to compile all your code, you really shouldn't have any problems. If you need to do something OS or kernel specific, abstract it. There's probably even a prewritten library out there to do so for you.

      So yes, XUL based apps are not perfect, and your criticisms are valid, but the situation is not as bad as you describe.

      --
      You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
    11. Re:List of XUL Applications? by Anonymous Coward · · Score: 0
      As it so happens, the widgets are native. Mozilla exposes the underlying implementation. Which is why buttons look like Windows, Mac, or GTK+ buttons.


      Figures you'd get modded up for that. Wrong, wrong, wrong. They're not. You cannot access the underlying implementation, that was my point. They're emulated, and emulated fairly well, but they are not native. A quick check with Microsoft Spy++ confirms that there are no native widgets on my Firefox window. Compare with Eclipse (which uses SWT, a crossplatform GUI toolkit), where I can see native widgets all over the place.

      Or you can try playing with the Mozilla-native DOM inspector which lets you get a nice peak under the covers to see that there are no native controls backing any of the widgets.

      About the only thing that are implemented using native widgets are the various windows.

      Try this simple test under Windows, assuming you're using XP with the default settings. Mouse over something with a tooltip in a native application. The tooltip should fade into view. Mouse over something with a tooltip in a Mozilla application. It should just pop into place. Also try with menus, which should also fade in and fade out under Windows XP. Drop down lists are also missing the appropriate animation under Windows XP.

      Those are the most obvious examples, but there are no underlying native widgets under Mozilla widgets.

      Look up -moz-appearance for information on how Mozilla decides how to render a XUL block like a native widget.

      Mozilla widgets are never native, they're always implemented using JavaScript and XBL. Use the DOM inspector and inspect a window to see for yourself.
    12. Re:List of XUL Applications? by bahwi · · Score: 1

      Slow? Man, you gotta upgrade! Get a real processor, we run just fine, loading up about 6k XML objects(fully parsed into Objs) is only a second on broadband.

      Oh, yeah, and because I haven't got around to make an exception for the XML, our XML docs come over as JSON encoded, which is then parsed into a javascript string, which is then parsed into an XML object. =(..

      We don't use any XPCOM on our app yet, haven't had the need. Simple client/server but you gotta have those stats. And in XML for external export.

    13. Re:List of XUL Applications? by generic-man · · Score: 4, Informative

      Open Safari on Mac OS X 10.4. Start VoiceOver (CMD+F5 or CMD+FN+F5 on a laptop). Notice how virtually every UI control has enough metadata to let Mac OS X know what it is.

      Open Firefox (or Camino). Start VoiceOver. Notice how absolutely nothing in the web page display area is interpreted as a Cocoa widget. Notice how in the web page display area, checkboxes, drop-downs, text fields, and any other controls lack any access to Cocoa services such as spell checking and Dictionary. The same lack of OS-native widgets is apparent in Firefox for Windows, though GTK does a much better job of emulating the look of these widgets, if not the feel.

      If it looks like a native app, it's not necessarily a native app.

      --
      For more information, click here.
    14. Re:List of XUL Applications? by popeyethesailor · · Score: 0, Flamebait

      Well, the AC's right, and you're wrong. Widgets arent native, and programming with the mozilla codebase sucks. There are much better platforms available for developing cross-platform GUI apps. And my-app-runs-within-the-browser! trick isnt new any more- the tide is turning with rich desktop platforms coming out soon. Qt4,Gnome-xgl,WPF-Avalon all offer facilities for creating extremely slick interfaces.

    15. Re:List of XUL Applications? by AKAImBatman · · Score: 1
      Oh Really? Well, then, someone should tell this guy that his theme isn't supposed to work. Or how about the guy who did the Firefox theme?

      The themes that I create try to use as many native widgets from the operating system as possible.

      I'm trying to tell you, the Mozilla platform allows both types of widgets. The bindings are there. If you don't believe me, go read the XPCom and XBL source code. They link off to native components when available. I don't know what your tools are telling you, but they're wrong.
    16. Re:List of XUL Applications? by AKAImBatman · · Score: 1

      BTW, here are relevant bug reports:

      (Make sure you copy and paste them. Bugzilla doesn't allow referrals from Slashdot.)

      https://bugzilla.mozilla.org/show_bug.cgi?id=11773 0
      https://bugzilla.mozilla.org/show_bug.cgi?id=28325 7
      https://bugzilla.mozilla.org/show_bug.cgi?id=29709 5
      https://bugzilla.mozilla.org/show_bug.cgi?id=24307 8
      https://bugzilla.mozilla.org/show_bug.cgi?id=23131 3
      https://bugzilla.mozilla.org/show_bug.cgi?id=17462 9
      https://bugzilla.mozilla.org/show_bug.cgi?id=62278
      https://bugzilla.mozilla.org/show_bug.cgi?id=16008 5
      https://bugzilla.mozilla.org/show_bug.cgi?id=13171 9

      Note how all of them discuss bindings to NATIVE widgets. The support has been there for YEARS, it's just played down in favor of XUL Themes in the main browser trunks for portability reasons.

    17. Re:List of XUL Applications? by Anonymous Coward · · Score: 0

      Shows what you know.

    18. Re:List of XUL Applications? by Anonymous Coward · · Score: 0

      Interesting.

      How about this.

      1) Try and actually take time to make an App using xulrunner
      2) Then come back and rant.

      Yes, javascript on the UI level can be slow, but only if you don't do it right. I have over 2 gigs of email in my Thunderbird client and it never chokes loading it (and yes, the UI is controlled by javascript), imagine that.

      If you are stupid, then yeah, you'll do all the heavy lifting in javascript on the UI level, but if you actually knew what you were talking about you would write an XPCOM component in javascript, or if you prefer C++ then you are set.

      On another note, xulrunner will be supporting Python soon, so there you go again, one more option.

      So shut up and sit down, whining about something you don't know about makes you an idiot.
      If you actually had a sense of intelligence you would have written a post explaining the difficulties you had when you tried it and someone like me would have been nice and pointed you in the right direction.

    19. Re:List of XUL Applications? by Anonymous Coward · · Score: 0

      Most of those features exist in Safari because Apple wrote the glue code to make it work, it not really "nativeness". It could be done for Firefox, it just hasn't been deemed worth the effort.

    20. Re:List of XUL Applications? by Anonymous Coward · · Score: 0

      470mb dependency file?? sheesh :-(

    21. Re:List of XUL Applications? by AKAImBatman · · Score: 1

      Howdy! I think you replied to the wrong person. You want one level up. :)

    22. Re:List of XUL Applications? by shish · · Score: 1
      Most people shun it with a, "Coding serious applications in JavaScript? Yeah, right."

      Personally, I'm shunning it since I only have 512MB RAM and a 500MHz processor... Since switching from firefox + thunderbird to epiphany (gecko inside a GTK shell) + sylhpeed I've not had to go and make a cup of tea while I waited for either to come out of swap space, and when fully in RAM they're noticably faster. I'm currently trying opera instead of epiphany, which has given me another huge cut in memory use and boost in speed.

      I daresay that XUL apps are so huge and slow, not even statistics can prove otherwise :-P

      (Did I just invent a new variant of "your momma's so fat" o_O?)

      --
      I mod down anyone who says "I will be modded down for this", regardless of the rest of their comment
    23. Re:List of XUL Applications? by r0bl0rd · · Score: 1

      Yes, Songbird and Sb are ideal.

      --
      *Rob Lord, CEO, Pioneers of the Inevitable | rob@songbirdnest.com* Play music. Play the Web. http://songbirdnest.c
    24. Re:List of XUL Applications? by DRM_is_Stupid · · Score: 1
      (There's a really cool application here [faser.net] that shows off XUL's abilities.)
      So XUL is like AJAX, except it doesn't work on other browsers?
    25. Re:List of XUL Applications? by AKAImBatman · · Score: 1

      So XUL is like AJAX, except it doesn't work on other browsers?

      XUL is like DHTML, except that it's a complete GUI toolkit and works on other browsers. The app I linked to is an AJAX app. (Which has nothing to do with DHTML, other than the fact that they're usually coupled.)

    26. Re:List of XUL Applications? by Anonymous Coward · · Score: 0

      As far as I can tell, that uses exactly one native control: scrollbars.

      And that was added mostly to allow Mozilla to be embedded into other applications more smoothly.

      Other than that, it appears that every single non-scrollbar widget remains an emulated widget with no native widget behind it.

    27. Re:List of XUL Applications? by RDMsoft · · Score: 1

      Blatant plug of my own link: ChatZilla on XULRunner.

      See also the "XULRunner Hall of Fame" on DevMo.

    28. Re:List of XUL Applications? by dragonman97 · · Score: 1
      As it so happens, the widgets are native. Mozilla exposes the underlying implementation. Which is why buttons look like Windows, Mac, or GTK+ buttons. The caveat to this is that you can create XUL buttons/components that are entirely virtual. These components are generally used to produce skins like that used in Firefox. But most XUL applications actually rely on the native components instead. Which is why the Amazon browser I linked to looks like a native Windows app.

      Actually, from what I know, that is *not* true. Firefox has been criticized in the past for 'not looking quite right' on most platforms. Someone made a hack awhile ago to make the buttons look more accurate in OS X (*)...and there was much grief had over the appearance of the menus on the "Classic" view of XP. Firefox had designed their menu theme/XUL for the eye candy "Luna" view/theme of XP, and the menu items had the wrong pixel height for Classic. Personally, I can't stand that hideous theme, and so I use Classic on my XP box at work. To make it right, I used the extension cited on this MozillaZine KB article (though I barely noticed the difference). Camino uses Cocoa for its widgets, and so is 'native,' while Firefox on OS X will be transitioning to this at some point in the future. (3.0?)

      I found the OS X story: http://www.hicksdesign.co.uk/journal/native-lookin g-firefox-os-x-widgets

    29. Re:List of XUL Applications? by DRM_is_Stupid · · Score: 1

      Other browsers, like Mozilla Suite? AFAIK, Google Notebook works only on Firefox and maybe also Mozilla. Google Browser Sync works only on FF 1.5. So in reality there are hardly any useful cross-browser XUL apps, let alone cross version. Not because nobody makes them, but it's impossible most of the time (e.g. Safari et al simply don't support XUL at all.) So much for the performance hit.

    30. Re:List of XUL Applications? by DRM_is_Stupid · · Score: 1

      Supplementary note:

      "Google Notebook is only available for Firefox and Internet Explorer at this time. You can download Firefox here. You can also continue on to your notebooks."

      So does XUL offer anything that is cross browser and better than Ajax?

    31. Re:List of XUL Applications? by AKAImBatman · · Score: 1

      Other browsers, like Mozilla Suite?

      Whoops, that was a typo. It should have read, "XUL is like DHTML, except that it's a complete GUI toolkit and doesn't work on other browsers."

  3. would be cool if... by professorhojo · · Score: 3, Interesting

    It would be cool if you could send instant messages to the people whose libraries you can browse. Internet cafes would be forever changed.

    1. Re:would be cool if... by Rob+T+Firefly · · Score: 3, Informative

      Didn't the original Napster or Kazaa have a feature like this? As I recall, all it got me was the occasional request from a stranger to "pls share more (random artist, possibly one I wasn't even sharing) pls kthx."

    2. Re:would be cool if... by IANAAC · · Score: 1

      Never used Kazaa, but the original Napster did indeed have a chat client. I used it quite a bit. Made a couple of friends that still keep in touch.

    3. Re:would be cool if... by drinkypoo · · Score: 1

      both have chat, probably based on irc. winmx did too, and probably others.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    4. Re:would be cool if... by Anonymous Coward · · Score: 0

      well, the source is out. write a patch. =)

    5. Re:would be cool if... by kuviaq · · Score: 1

      With soulseek, you can PM anyone on the network, and even create your own chatrooms.

    6. Re:would be cool if... by ClamIAm · · Score: 1

      u like coldplay? a/s/l?

  4. awesome! by Anonymous Coward · · Score: 4, Funny

    we can finally play music on our pcs!

  5. What's that quote? by Lord+Ender · · Score: 3, Insightful

    A caged source can't sing?

    --
    A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
  6. Songbird is barely usable by Anonymous Coward · · Score: 3, Interesting

    I am going to use this as a soapbox to vent about songbird. Before anyone jumps on me about songbird being in super super early stages of development.... I know. But I tried sb last time there was an article about how awesome it was. In theory it is a great application. Cool concept. In practice I found it barely functional. When visiting a webpage with links to audio content my machine would virtually freeze while songbird was parsing the content (for about 10-20 seconds). On top of that it didn't make much of a effort to give readable names to the files it would list. So I was left guessing what stationA3958afjdzak.pls was vs stationdkfkdjfd34242.pls.

    Like I said I know its new and I look forward to it maturing some. But this isn't one of those alphas where the devs are just super dragging their feet till release (*cough gmail) This this really is ALPHA!

    Trashhalo

    1. Re:Songbird is barely usable by Anonymous Coward · · Score: 0

      mod parent up. i used songbird once and my power went out.

    2. Re:Songbird is barely usable by Anonymous Coward · · Score: 0

      these are known issues. downloading from petshopboys.com will freeze songbird.

    3. Re:Songbird is barely usable by nightgeometry · · Score: 1

      I think you mean petshopboys.co.uk

      --
      The best is the enemy of the good
    4. Re:Songbird is barely usable by Z0mb1eman · · Score: 4, Funny

      downloading from petshopboys.com will freeze songbird.

      That's a feature.

      --
      ClutterMe.com - easiest site creation on the Net. Just click and type.
    5. Re:Songbird is barely usable by bcmm · · Score: 1
      This this really is ALPHA!
      And? They admit that. Do you think any application that you use daily was not in that state at some point? I fail to understand how this is supposed to reflect on the probability of a good application resulting from this development.
      --
      # cat /dev/mem | strings | grep -i llama
      Damn, my RAM is full of llamas.
    6. Re:Songbird is barely usable by Trashhalo · · Score: 1
      I fail to understand how this is supposed to reflect on the probability of a good application resulting from this development.
      I am sorry you misunderstood my point. I have no doubt they will work out the kinks and songbird will fly (sorry I couldnt resist). I was just commenting on the fact that there is a trend to label stable software as alpha/beta to avoid responsibility. Songbird is not in this category, currently there are many application breaking bugs (such as the ones I pointed out). The fact that songbird has annoying bugs has nothing to due with how good songbird will one day be, but I was informing people they shouldn't go and get songbird if they expect a useable app.
      --
      Dooom
  7. bugs, questions etc etc by xsst4 · · Score: 5, Informative

    if you guy's are having any bugs or anything just file them at bugzilla.songbirdnest.com and if you guy's have any questions or just want to idle be sure to connect your clients to irc.landoleet.org and join us in #songbird. Thanks have a good one! --Inc

  8. What's the big deal? by Brix+Braxton · · Score: 3, Interesting

    A browser within a media player - I thought Winamp did that (and it was annoying to me) years ago. Musicmatch does it and WMP does it to - so what's new about any of this? I guess if you were a maker of Kiosks, this would be interesting but for the average user - any of the free existing software is just fine.

    --
    www.wildpad.com
    1. Re:What's the big deal? by r0bl0rd · · Score: 2, Interesting

      Check this screencast: http://songbirdnest.com/screencast/ and try to do that in Winamp, MusicMatch, WMP, etc. =)

      best, r0b

      --
      *Rob Lord, CEO, Pioneers of the Inevitable | rob@songbirdnest.com* Play music. Play the Web. http://songbirdnest.c
    2. Re:What's the big deal? by mrchaotica · · Score: 1
      so what's new about any of this?

      This one uses XUL.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    3. Re:What's the big deal? by aymanh · · Score: 5, Informative
      Erm, I think you are missing the point, Songbird is a stand-alone music player, some of its key features that give it special interest here are:
      • Written in XUL and JavaScript.
      • Runs on top of Mozilla's XULRunner platform.
      • Cross-platform, can run on Linux, Windows, and Mac OS X (among the others).
      It can be seen as a proof of concept on how general purpose multi-platform applications can be developed on top of XULRunner. Songbird also lets you visit online music stores and organize your music library, which makes it an Open Source alternative to iTunes.

      Enough to deserve /.'s interest I guess.
      --
      python>>> q="'";s='q="%c";s=%c%s%c;print s%%(q,q,s,q)';print s%(q,q,s,q)
    4. Re:What's the big deal? by Stealth+Dave · · Score: 4, Funny
      so what's new about any of this?


      This one goes to eleven
      --
      Evil is as eval("does");
    5. Re:What's the big deal? by j1mc · · Score: 5, Informative
      While I wouldn't get too excited about being able to just search the web through a browser within a media-player, I think that there's more to Songbird than just that.

      On the Linux front, Songbird will give us a media player with an attractive front end, all of the standard rip-organize-burn capabilities, plus the ability to purchase music from online music stores. Not to knock the current Linux offerings (I'm currently an Amarok user), but the UI's aren't as attractive as Songbird's UI (yes, XMMS is slick-looking, but those buttons are so small . . . ), and AFAIK, the ability to buy music from online music stores through a Linux app is slim to none.

      As for iTunes and Windows Media Player, they each lock you into their own music stores (the iTunes Music Store and the MTV-powered Urge, respectively). Songbird is going to allow you to purchase music from a wider array of online music stores from the outset, and online music stores will be able to write plugins to make them searchable from within Songbird. From the website . . . "Web page authors will be able to publish playlists and transfer MP3s into Songbird to build digital music stores like eMusic, music subscription services like Yahoo! Music Unlimited, virtual jamming services like Ninjam, playlist sharing services like WebJay and more."

      And, of course, neither iTunes nor WMP plays natively under Linux. All in all, a strong cross-platform app like this just makes Linux that much more viable for everyday desktop users.

    6. Re:What's the big deal? by Anonymous Coward · · Score: 0

      You don't seem to have noticed that all three of those points are the same thing, and that point isn't impressive at all. Companies like Opera have been writing cross-platform applications using much nicer toolkits for years.

    7. Re:What's the big deal? by punkass · · Score: 1

      But does it go to 11?

      --
      "Nobody owns the fucking words man." - James Dean
    8. Re:What's the big deal? by Kethinov · · Score: 1

      None of which are music players.

      --
      You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
    9. Re:What's the big deal? by Anonymous Coward · · Score: 0

      FYI SB website says Mac and LInux versions coming soon... so it's only in theroy that it will work on other platforms.

      Can't count it until it does.

    10. Re:What's the big deal? by Anonymous Coward · · Score: 0

      wow, a web page in an application *gasp* how um... uh... decades old.

    11. Re:What's the big deal? by Anonymous Coward · · Score: 0

      If I might offer an alternative, it's Yammi. It's out of development, unfourtantly, but it offers a excellent cross between the simplicity/lightweightness of XMMS with the better parks of Amarok's management abilities.
      It was a slightly uncomfortable swtich, grew up on winamp & xmms, despise WMP, but it works great. Leave it shaded or on another desktop for most use, and full-screen on the playlist for parties. works good for DJ'n too, for a quick-n-easy solution (no crossfading, etc., but for 'jerry's kegger' it's gold)

      excellence.

  9. songbird? by Lachryma · · Score: 4, Funny

    Oh right, the music player with the farting bird logo.

    1. Re:songbird? by LiquidCoooled · · Score: 5, Funny

      If you think the original logo was bad, take a look at the songbird bugzilla page.

      THey have the logo with cramps, the runs and throwing up.

      lovely.

      --
      liqbase :: faster than paper
    2. Re:songbird? by ramunasg · · Score: 1

      So they have sense of humor :)

  10. Re:Sounds great by Anonymous Coward · · Score: 0

    No pun intended, your post sucks.

  11. Doesn't play anything on Mac OS X by RustNeverSleeps · · Score: 2, Informative

    Too bad it reports that all songs are 1:22 seconds long and won't play them in OS X.

  12. Why XUL? by kahei · · Score: 4, Insightful


    Is XUL a good application platform? If so, why?

    It doesn't seem to have much to reccommend it at first glance -- a language that lacks features and performance (javascript) a runtime that's bulky (mozilla), and worst of all a real case of Java-itis -- XML files and source files that endlessly have to be kept in sync and bundled together, no self-documentation and no metadata.

    I ask because I tried porting a semi-complicated IE plugin to XUL and had to give up -- admittedly, I had to give up because of limitations in the HTML renderer, but long before then I had learned to dread the process of hooking into Mozilla at all. And that's saying something, considering that the original IE plugin was entirely made of hand-written COM, written against IE's none-too-predictable interfaces.

    So, why XUL? I appreciate that you _could_ write an application in it, but what's the unique selling point that justifies all the work?

    --
    Whence? Hence. Whither? Thither.
    1. Re:Why XUL? by Svartalf · · Score: 1

      Cross. Platform. Support.

      With ActiveX/IE, you only provide Windows support. (Now, hear me out here before you dismiss that statement as Windows-Only isn't being a problem...)

      With that, your application will only be runnable there. With XUL, and some work, your app will run on the following:

      MacOS X (x86 AND PPC)
      Linux

      and of course...

      Windows

      There's a bunch of others, but they're subsets of the above in most cases. If you think Windows is the thing, you'd
      be rather mistaken since approximately 10-20% of the global end-user workstation OS install base is one of the other
      two. To be sure, you don't need to do XUL- you can do the application in Qt, GTK+, Fltk, and a few others and get
      the same results with less effort unless you need some HTML rendering support- then it requires more effort to integrate
      a browser in your code.

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
    2. Re:Why XUL? by Marcus+Green · · Score: 1

      What do you mean by Java-itis?

    3. Re:Why XUL? by kahei · · Score: 3, Insightful


      To be honest, your reply comes across as 'don't use XUL'. Being cross-platform (to platforms that have Mozilla available and installed) is hardly a big unique selling point that justifies a whole new way of doing things. As you point out:


      To be sure, you don't need to do XUL- you can do the application in Qt, GTK+, Fltk, and a few others and get
      the same results with less effort unless you need some HTML rendering support
      ...and even if I do need HTML rendering support, I can embed a browser or launch a browser or use an HTML control, or use Java or (on a good day with the wind blowing S by SE) Mono or Ruby+[binding].

      So, why use XUL...

      --
      Whence? Hence. Whither? Thither.
    4. Re:Why XUL? by Darkforge · · Score: 1

      Many Java application development frameworks (especially those that were developed prior to Java 1.5) required you to explicitly declare a lot of information about your application in XML. Java Server Faces (JSF) can be pretty bad about this, as can numerous other Java-based frameworks that do "dependency injection" like Spring.

      You quickly find that you have almost as many lines of code in XML than you do in Java, (or sometimes even MORE XML than Java) and that keeping your Java and your XML in sync becomes an enormous chore. (Especially since the errors can't normally be detected at compile time.)

      This really doesn't have anything specifically to do with Java, as much as the culture that develops around Java. And there's some hope that Java's 1.5 annotations will allow new versions of those frameworks to be developed that use considerably less XML... but most such frameworks are vapor for now.

      --

      When I moderate, I only use "-1, Overrated". That way, I never get meta-moderated!

    5. Re:Why XUL? by bcmm · · Score: 2, Insightful
      Is XUL a good application platform? If so, why?
      There are other cross-platform systems, but none which integrate as well with the system's look. The browser component is nicely integrated. It's very easy to use HTML + CSS to render interface components.

      It doesn't seem to have much to reccommend it at first glance -- a language that lacks features and performance (javascript) a runtime that's bulky (mozilla), and worst of all a real case of Java-itis -- XML files and source files that endlessly have to be kept in sync and bundled together, no self-documentation and no metadata.
      It isn't written in Java. Javascript isn't even anything to do with Java. Also, it doesn't run inside Mozilla or even require Mozilla to be installed. I haven't looked at the code, but poor commenting and source management isn't an issue with the language.

      I ask because I tried porting a semi-complicated IE plugin to XUL and had to give up -- admittedly, I had to give up because of limitations in the HTML renderer, but long before then I had learned to dread the process of hooking into Mozilla at all. And that's saying something, considering that the original IE plugin was entirely made of hand-written COM, written against IE's none-too-predictable interfaces.
      Why is it a good idea to try and "port" something like that? Neither the interface nor the language have anything in common, and in any case you just said the code you were trying to follow wasn't very nice anyway. XUL doesn't even work in a similar way to COM. That sort of thing calls for a rewrite from scratch.

      So, why XUL? I appreciate that you _could_ write an application in it, but what's the unique selling point that justifies all the work?
      You could I suppose... At least some of the Mozilla suite, Firefox, Thunderbird and Nvu are pretty nice applications, don't you think?
      --
      # cat /dev/mem | strings | grep -i llama
      Damn, my RAM is full of llamas.
    6. Re:Why XUL? by Matt+Perry · · Score: 1
      It isn't written in Java. Javascript isn't even anything to do with Java.
      He never said that Javascript == Java. That isn't what he meant by Java-itis. What he meant is better explained by this post.
      --
      Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
    7. Re:Why XUL? by bahwi · · Score: 1

      I see, but the XML files in XUL declare the UI, there's not much to declare about the application itself(especially in XulRunner). If you need to change the UI, you change the XML. If you need to change how something works, you change either the javascript or the XPCOM(if you're using it). If you need to change the look&feel of the app, pass the CSS back to the web guy, or make the changes yourself. There's little to keep in sync, unless you're making a visible change to the UI.

    8. Re:Why XUL? by bahwi · · Score: 1

      It reuses existing technologies instead of re-creating new ones. Javascript is very quick, depending on what you're doing. We're loading about 8k XML Object's in Javascript and it's only as slow as your bandwidth.

      It uses CSS for style(look&feel), so your web guy can do it, or you can if you're familiar with it.

      It has translation support built in if you wish to use it, nothing requires you to use it but using it is automatic, nothing to enable, no 3rd party libraries to include.

      XUL itself(the XML UI files) are short, terse, and very easy to keep organized if you keep it split up with overlays(instead of a single file, which all languages have problems with).

      It has a plugin interface built in. It's quick and easy to do a UI with it, if you know Javascript you're off pretty quickly, if you don't it's easy to pick up(until you get to the harder stuff). JavaScript is a real language, with Objects, Inheritance, Closures, a Garbage Collector, etc...

      Hell, it runs Firefox and Thunderbird. AIM Triton is the same idea, different implementation(Boxely).

      Making drastic changes to the UI is 10 minutes if you're just moving stuff around, sometimes less, rarely more. You can add themes to your app(Custom Branding for Clients? Not a problem, it's already built in). Again, translation is very little extra work. Client/Server is incredibly simple because of both JSON and E4X. We've got our app with a PHP backend and connecting them together is the simplest thing to do. Don't have to load up any extra libraries because you're dealing with XML, or any extra because you've got to work with XML-RPC.

      JavaScript dev is much faster than C++ dev. If you need C++ dev, then you're at the wrong toolkit, although you can always XPCOM it.

      I think you're questioning it as the end-all-be-all which it is not. It has it's problems, no comments in the xml code, although it's very straightforward and needing it is questionable. JavaScript and CSS comments are all there. Network connectivity is already finished for you. But it has it's problems, it's not the end all be all, but dev time is very quick, although it does have that lag when you're booting up a java app, but only 1/4 the time.

    9. Re:Why XUL? by bahwi · · Score: 1

      The best point is, "all the work" is reduced vs. many other languages. Nothing is a fit-all, but if you want simple UI layouts, a simple client/server app(network connectivity already done), plugin capability + management, i18n, then yeah, about 90% of that work is already finished.

      But it doesn't work for everything, but it works for a lot more than you would think. I've only done app dev, not really any firefox plugins with it though. And I've barely touched XPCOM, haven't had to(yet).

  13. all ofmp3 by minus_273 · · Score: 0, Flamebait

    what? no all of mp3?

    --
    The war with islam is a war on the beast
    The war on terror is a war for peace
    1. Re:all ofmp3 by aymanh · · Score: 1

      I haven't tried it yet, but if it doesn't, why don't you file a feature request at their bugzilla? If there is enough demand, and given that the project is in active development, I think it will be implemented in later versions.

      --
      python>>> q="'";s='q="%c";s=%c%s%c;print s%%(q,q,s,q)';print s%(q,q,s,q)
  14. Re:Sounds great by Anonymous Coward · · Score: 0

    God you're an idiot.

  15. Curious about the 'variety of online music stores' by thatguywhoiam · · Score: 2, Interesting
    Surely Songbird doesn't support DRM-wrapped content? (Not that this is their fault at all, even remotely).

    (also, nitpick: did they have to make it look like iTunes so much? sheesh. As if these users need a superfriendly, superbasic user interface. XULRunner is innovative, but the app design, not so much.)

    --
    If Jesus wants me it knows where to find me.
  16. Do we really need another media player? by Anonymous Coward · · Score: 0

    Did anyone hear about FoxyTunes?
    Looks like their latest release does everything Songbird does but without making you change your media player http://blog.jedbrown.net/?p=63

  17. What good is an 'online' music player... by ch424 · · Score: 1

    ...if it doesn't support a proxy server?

    At least, version 0.1 didn't, and it certainly wasn't copying my IE or FF settings properly, if at all.

    Let's hope they fix it this time round.

  18. Open Source Media Player? by dbc001 · · Score: 2, Interesting

    While we're talking about media players, can somebody recommend a lightweight, open source media player for me? I'd really like to find one that has nice visualizations, FLAC support, support for streaming radio, and a decent id3 tag editor.

    I'm still using winamp 2.72 because I've never found anything that compares (although Snackamp is pretty slick for dealing with my 20,000 song mp3 collection).

    1. Re:Open Source Media Player? by bawolff · · Score: 1

      try VLC. A little light on visualization but still has a couple.

    2. Re:Open Source Media Player? by TheModelEskimo · · Score: 1

      I know what you mean. I even tried installing Winamp through WINE but no luck (I like using the modern Winamp skins). The best solution I've found so far is a combination of XMMS for streaming audio (hooked up through StreamTuner) and AmaroK for when I want to see the album covers of the crazy netlabel tunes on my HD.

      Rhythmbox was really nice too (seemed lightweight even though it was very capable), but I couldn't get it to play random songs from my playlist in a way that I liked (it added songs to the playlist and then seemed to subtract them as it went along, which I assumed would leave me with zero songs in my playlist at the end). I believe XMMS even supports FLAC with a plugin, as do most other Linux audio players.

    3. Re:Open Source Media Player? by WoLpH · · Score: 2, Informative

      I use MPD with QMPDClient, there are probably some visualisations available aswell but personally I don't use them.

      I also use Amarok, altough it does have visualisations build in, I can't call it really lightweight.

    4. Re:Open Source Media Player? by DittoBox · · Score: 1

      Foobar2000: http://www.foobar2000.org/ It works well with my ~2000 MP3/OGG/M4A and Mod tracks. It's fast, has a small footprint, is expandable, has library features, it's extremely customizable, works nearly out of the box with most standard multimedia keyboards, has a decent following and is actively developed. It's also GPL. I could babble on about the plugins I use but I'll let the HydrogenAudio wiki do my talking for me :) http://wiki.hydrogenaudio.org/index.php?title=Foob ar2000:Components You'll be most interested in the ColumnsUI stuff but there's quite a few other gems in there. HTH

      --
      Good. Cheap. Fast. Pick Two.
    5. Re:Open Source Media Player? by ClamIAm · · Score: 1

      Foobar2000 is not GPL'd, and is probably not considered Open Source either. Have you even read the license page?

    6. Re:Open Source Media Player? by shish · · Score: 1

      Quod libet is my player of choice for linux, it's GTK + GStreamer glued together with python. It's still nowhere near the resource efficiency or functionality of foobar2000 for windows though D:

      --
      I mod down anyone who says "I will be modded down for this", regardless of the rest of their comment
  19. Now this is stupid by Aptiva · · Score: 1

    This so obviously not ready for release. here's my entire songbird experience: Double clicked the icon selected language songbird downloaded "some extension" songbird displays "Songbird example extension 0.1 is not compatible with songbird" songbird quits ...that's stupid

    1. Re:Now this is stupid by Anonymous Coward · · Score: 0

      Click "Cancel" instead of "Okay" and it'll let you proceed. I agree, it's stupid. Almost as stupid as using Quicktime for playback on a Mac when according to their own website they had it working on OSX with VLC as the playback engine. I'd bet money most people on a Mac who are interested in this are looking for something a lot like iTunes, only with more supported formats. People looking for a lightweight player have plenty of choices - VLC most notably. This doesn't deliver the goods at all. If Apple would stop being dicks and just make iTunes work with more formats like Shorten, Ogg, Flac, etc., I'd not even be curious about this program.

  20. Release the source of a script? by kieran42 · · Score: 1

    The title is a tad misleading - you've been able to view the "source" since it's first release... after all, it's written in javascript and XML.

    Now if they open sourced the project, that would be something!

    1. Re:Release the source of a script? by Anonymous Coward · · Score: 1, Informative

      Uh, it IS open sourced. All of it. Including the non-script components.

      http://publicsvn.songbirdnest.com/trac/browser

  21. On a Mac it's using Quicktime for playback? WTF!? by Anonymous Coward · · Score: 0

    So on a Mac I'm stuck using the exact same limited number of formats iTunes supports? Wasn't this supposed to be using VLC as the playback engine? No Ogg, no FLAC, no reason at all for me to even bother with this thing. Someone hurry up and put an Amarok binary out there for Mac - they say you can compile it under OSX but I have had zero luck getting it to build, and that's a player that I would actually find useful.

  22. Re:Sounds great by detour207 · · Score: 1

    "Of course using subversion instead of cvs may and will slow down that forking process" Yes could you please explain how using Subversion somehow magically slows down the forking process? Maybe you think fewer people know how to use it? The only thing that will slow down any forking is the license that they slap onto this, which neither the summary nor TFA mention.

  23. Forgot about this by TheSkepticalOptimist · · Score: 1

    Actually just came across an old installation of this today, what a coincidence.

    Wasn't overly impressed with it, iTunes and its simplicity has left me pretty jaded. Songbird is almost a direct rip off of iTunes. I prefer originals to copy cats.

    My biggest question is, why does every music player have to have online music store tie ins? I mean, whatever happend to a simple music player that played music. Now I must be affliated with some music store which robs me of system and network resources in the background. Whether I fire up WMP with Urge, iTunes with the iTMS, or WinAmp and AOL, its going off in the background and updating its music store tie ins and making sure to make me aware of music advertising.

    You would think that an open source application would avoid this kind of overhead and bloat.

    I guess that its a matter of money, and online music stores off big bucks to have some media player tie in.

    The bottom line is, no media player out there is that great. They really don't organize music well. Showing me lists and lists of music files isn't the best way to organize music, and ALL application lack personality in favour. In fact, I actually prefer the new Windows Media Player 11 interface as its the first media player to organize music that looks like collections of CD's.

    Anyways, I will give Songbird another shot as I don't have any arrogant preference to which music player I use, I am still struggling to find one that works well without the bloat of multimedia and blatant RIAA DRM and music store fronts.

    --
    I haven't thought of anything clever to put here, but then again most of you haven't either.
    1. Re:Forgot about this by Anonymous Coward · · Score: 1, Interesting

      Considering your requested featureset, might I suggest Amarok ?

  24. linux by caudron · · Score: 1, Offtopic

    When will a linux version be released? Is this something the original developers intend to do or should the community step up to port it now that we have the source?

    Just curious.

    Tom Caudron
    http://tom.digitalelite.com/

    --
    -Tom
    1. Re:linux by Kethinov · · Score: 3, Informative
      Quoth the main page:
      Songbird is open source, will run on Windows, Mac OS X and Linux and supports user contributed, cross-platform extensions.
      --
      You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
  25. MPD? by Jords · · Score: 1

    While i like their interface, I'm still a mpd fan... a feature or derived project for mpd support, including adding music to mpd from the music stores online/ CD's . Now that would be neat.

  26. iTunes integration? by Eccles · · Score: 1

    A number of my coworkers have iTunes, so we have limited sharing. Does Songbird allow sharing? If so, can I make playlists including their songs? Can it show their album art? Could it connect to someone else's iTunes or vice-versa?

    One thing I couldn't figure out how to do in iTunes (granted, I didn't try very hard) was to order a (non-smart) playlist in any order, not just sorting by one of the column headers. Does Songbird allow this?

    --
    Ooh, a sarcasm detector. Oh, that's a real useful invention.
    1. Re:iTunes integration? by goMac2500 · · Score: 1

      You really really must not have tried very hard. Re-ordering songs in a playlist in iTunes consists of dragging a song to where you want it on the playlist.

    2. Re:iTunes integration? by Eccles · · Score: 1

      I just tried it again, and the songs just go back into the order they were.

      D'oh! The key is you have to have the very first column selected as the sort column. I was a little boggled that iTunes didn't allow me to order things to my preference.

      --
      Ooh, a sarcasm detector. Oh, that's a real useful invention.
  27. Parent is offtopic??? by jmataya · · Score: 1

    Why is the parent's post modded as offtopic? The story is about Songbird's source being release and the parent asked a question about the source. I think it was a perfectly valid question... I'm pretty sure that the developers are planning on making it work on Linux, but when did community work in a OSS project ever hurt?

  28. Oops by jmataya · · Score: 1

    Oops... I meant the grandparent

  29. Damn, I Really Need This by Kozar_The_Malignant · · Score: 1, Interesting

    All I have on my machine here is Winamp, Musicmatch, Sonique, ITunes, the POS Win media player, and probably some festering bits of RealPlayer that I haven't completely rooted out. I really need another player.

    --
    Some mornings it's hardly worth chewing through the restraints to get out of bed.
    1. Re:Damn, I Really Need This by godless+dave · · Score: 1

      Dude, if Sonique played FLAC I'd be all over it. It does everything else I need it to; there's even that plugin that plays videos.

      --
      "If it's real, then it gets more interesting the closer you examine it. If it's not real, just the opposite is true." -
  30. The DRM question by Kadin2048 · · Score: 2, Insightful

    Yeah I was kinda wondering about how they're going to manage the whole DRM business.

    It sounds like it will support DRM-ed music stores (they mention Yahoo's subscription service, I think); how they're going to accomplish this I'm not sure of. I can only assume that each service will have its own binary blob for parsing and playing back its own files, and then the interface will pass commands to these blobs?

    Still seems like it would be easy to get around: if the DRM parts are compartmentalized, how hard would it be to lie to them? For example, let's say you have a subscription-music service that makes all your music expire after a certain date if it doesn't get a 'keep alive' reset command. Couldn't you just keep passing it the wrong date? (This is a trivial example, I'm sure that the system would pull its time off the internet from an authenticated, trusted server, but it seems like there could be other attacks that would take this form.)

    And if the music player software actually has access to the decrypted audio stream that the blob produces (for example, if it has a graphic equalizer, or visualizer), then it's pretty trivial to make the software do conversion as well. I can only imagine that even if you asked people not to implement such features, they would be in such demand that people would put them in and distribute modded versions regardless. (And, if it's GPL OSS, you can't really do anything about this.)

    I don't see how the DRM components could possibly be open source. As I think we all know, DRM relies fundamentally on obscurity: you can't build "open source DRM," because then you just make the inevitable reverse-engineering happen more quickly. And I don't think you can have a subscription music service without DRM (unless it's like eMusic's, where you get a certain number of downloads per month). I guess what I mean is that you can't have an "all you can eat" subscription service without DRM, at least that I can imagine.

    --
    "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
    1. Re:The DRM question by Myen · · Score: 2, Informative

      Even more fun - their actual audio playing stuff is XPCOMized VLC, used under GPL2.