<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:admin="http://webns.net/mvcb/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:html="http://www.w3.org/1999/html" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>Ross Burton</title><link>http://www.burtonini.com/blog</link><description>A potted account of Ross' life</description><language>en</language><ttl>60</ttl><dc:creator>Ross Burton</dc:creator><admin:generatorAgent rdf:resource="http://pyblosxom.sourceforge.net/"/><admin:errorReportsTo rdf:resource="mailto:ross+web@burtonini.com"/><item><title>Sound Juicer Sub-optimal?</title><guid isPermaLink="false">computers/sound-juicer/suboptimal-2005-10-03-20-57</guid><link>http://www.burtonini.com/blog/computers/sound-juicer/suboptimal-2005-10-03-20-57</link><description>GStreamer-hero Andy Wingo recently blogged about his experience with Sound Juicer. He went as far as pinging me on IRC, ...</description><content:encoded><![CDATA[    <p>
      GStreamer-hero Andy Wingo <a
      href="http://wingolog.org/archives/2005/09/30/suboptimality">recently
      blogged</a> about his experience with Sound Juicer.  He went as far as
      pinging me on IRC, so I presume he'd like a full and thorough reply.
    </p>
    <dl>

      <dt>
        <cite>So. Someone puts in a CD. A while later, although there's no indication
        something is happening, sound-juicer pops up.</cite>
      </dt>
      <dd>
        <p>
          This is a bug in gnome-volume-manager: it doesn't give you any
          feedback that it is probing the new media, or starting Sound Juicer.
          I think a notification area icon for "new media inserted" would be
          good whilst it probes, and then the standard startup notification
          animation/panel entry when it starts up Sound Juicer.
        </p>
      </dd>

      <dt><cite>1. The process of getting tracks from wherever blocks the rest of the
      UI. I should be able to play while this is happening.</cite></dt>
      <dd>
        <p>
          The lookup of tracks does happen in a seperate thread, and starts when
          the UI unblocks.  The interface blocks because Sound Juicer called
          <tt>open</tt> on the device node, and that is blocking until the drive
          has spun up.  I may be able to put that section of code in another
          thread.  Filed as <a
          href="http://bugzilla.gnome.org/show_bug.cgi?id=317860">#317860</a>.
        </p>
      </dd>

      <dt>
        <cite>2. If I press 'play', nothing happens. I have to select the first track, then press play.</cite>
      </dt>
      <dd>
        <p>
          Weird.  [looks for CD to test] Works for me, what version are you
          using?  The 2.11.x series had lots of fixes for various issues like
          this, so you may need to upgrade.
        </p>
      </dd>

      <dt>
        <cite>3. While playing, the extract button is insensitive. So it seems I can't
        extract while playing? Fine, maybe I can play while extracting... No, can't do that
        either... It should be possible -- the first thing you want to do with a
        new CD is play it, and ripping it would be a close second. Two birds, one stone
        would be nice.</cite>
      </dt>
      <dd>
        <p>
          My stock argument for requests like this is that the playback
          functionality in Sound Juicer is intended as a guide to find the track
          the user wants to rip and not as a fully-featured player.  However,
          that's just an excuse in this case for "looks tricky".  I'm not
          expecting GStreamer to sanely handle playback and ripping at the same
          time, but maybe I'll give this a go when I switch to <tt>libcdio</tt>.
          Filed as <a
          href="http://bugzilla.gnome.org/show_bug.cgi?id=317862">#317862</a>.
        </p>
      </dd>

      <dt>
        <cite>4. If there is an error in the disc, the whole UI blocks for a long time.</cite>
      </dt>
      <dd>
        <p>
          [Insert stock grumble about cdparanoia] The extraction is in another
          thread so is about as far removed as it can get from the mainloop as I
          can get, without forking.
        </p>
      </dd>

      <dt>
        <cite>5. When the ripping is finished, the disc is ejected. Great. When I put
        another in, it blocks the sound-juicer UI without any stated reason
        for 4-5 seconds, and then doesn't even read my new CD. I have to
        fiddle in menus to manually tell s-j to reread the disc. Duh...</cite>
      </dt>
      <dd>
        <p>
          The interface blocking is the same as (1).  Sound Juicer used to
          re-read CDs correctly, so something has broken.  I'm tempted to blame
          HAL, but I'm not sure if that is correct.  I see this too so will try
          and get it fixed in 2.12.3.  Filed as <a
          href="http://bugzilla.gnome.org/show_bug.cgi?id=317864">#317864</a>.
        </p>
      </dd>

      <dt>
        <cite>6. Then, neither Rhythmbox nor Jamboree automatically adds these files to their
        libraries. There should be some way of adding files as they are finished
        writing, so that I can play them immediately. At the very least they should
        all be added when ripping finishes. Not sure how to do this though.</cite>
      </dt>
      <dd>
        <p>
          The standard solution here is that the applications should monitor the
          directories they read from with
          <tt>dnotify</tt>/<tt>inotify</tt>/whatever, so they are notified when
          a new file is created.
        </p>
      </dd>
    </dl>
    
    <p>
      Hopefully this answered all of the complaints.  Not a bad tally: two bugs
      not in Sound Juicer, a duplicate, a regression, and some bugs which are
      very non-trivial to fix.
    </p>
]]></content:encoded><category domain="http://www.burtonini.com">/computers/sound-juicer</category><dc:date>2005-10-03T19:57:00Z</dc:date></item></channel></rss>