PDA

View Full Version : =?iso-8859-1?q?Gapless_support_for_MP3_=28=E0_la_fo?==?iso-8859-1?q?obar2000=29?=



2005-02-09, 16:05
Do you think it would be possible to look into the way foobar2000
handles MP3s in order to provide gapless support?

I understand that the gapless implementation is more of a hack than
anything done by the developers of LAME, but if the guy (Peter
Pawlowski) at foobar2000 (and the ones at Rio – I think all of their
latest mp3 players support gapless) have managed to support it, I think
it would be great if the Slimserver would support it. Especially when
most of the code of Foobar2000 is open source… A good source of
inspiration!

Stéphane

dean
2005-02-09, 18:02
Stephane,

Check out sean's posting on the matter:

<http://forums.slimdevices.com/gforum.cgi?post=20602;
search_string=gapless;guest=3868#20602>

So it should work already. Are you hearing gaps?

-dean

On Feb 9, 2005, at 3:05 PM, <sbourque-mailinglists5103 (AT) mailblocks (DOT) com>
wrote:

> Do you think it would be possible to look into the way foobar2000
> handles MP3s in order to provide gapless support?
>
> I understand that the gapless implementation is more of a hack than
> anything done by the developers of LAME, but if the guy (Peter
> Pawlowski) at foobar2000 (and the ones at Rio I think all of their
> latest mp3 players support gapless) have managed to support it, I
> think it would be great if the Slimserver would support it. Especially
> when most of the code of Foobar2000 is open source A good source of
> inspiration!
>
> Stphane

James Lo
2005-02-09, 18:25
Hi guys,

I am new to the list and just purchase an squeekbox for demo purposes. We are currently trying to build a custom player for it, however, currently I can only find request/response or poll-only messages. It's a bit problematic as the gui will have to constantly poll the slim server to get song status. Is there any unsolicited message from slim server via socket that sends out automatically when song changes? this way at least we only need to poll after receiving that message.

Previously we have worked with Lansonics and Russound systems and they both support such messages, I am just thinking it should be already in there I just can't activate it somehow.

thanks for the info



L. James Lo
Director of Technology, eDNA Systems
No.4, Lane 318, Sec. 1, Jian-Guo S. Rd, Taipei City, Taiwan.
TEL: +886-2-27058895
FAX: +886-2-27007503
US: 512-699-9480
james (AT) edna-systems (DOT) com
http://www.edna-systems.com

Jeff Coffler
2005-02-09, 19:01
Hi James,
I am new to the list and just purchase an squeekbox for demo purposes. We are currently trying to build a custom player for it, however, currently I can only find request/response or poll-only messages. It's a bit problematic as the gui will have to constantly poll the slim server to get song status. Is there any unsolicited message from slim server via socket that sends out automatically when song changes? this way at least we only need to poll after receiving that message.

Previously we have worked with Lansonics and Russound systems and they both support such messages, I am just thinking it should be already in there I just can't activate it somehow.
There is a "listen" mode. Check out a 5.4.1 nightly and see the CLI documentation; it's there. (I say download a nightly, because it was omitted in error - a recent checkin resolved this.)

The problem is that this mode gives much more data than you'd like (like you get a message for each and every I/R command, if you use that). I plan on addressing this with Fred in the short term future (perhaps in time for v6.0, but we're not sure yet). My goal is to have a new listen mode (like 'listen 2') that will just tell when something in the "status" command changes (which contains current/next tracks, etc).

For now, if you enable "listen" mode, and then issue "status" each time you get anything other than a response to your "status", you'll get what you want. In the future, it will be easier.

Note, by the way, that you can get this today. For example, you know the song length. So you could poll every 30 seconds or so, or when the song is ending, whichever comes first. This is what the WWW interface does, as well as my NetLinx automation module. It works well. But, as you say, you do have to poll. The code involved to do that is fairly trivial.

-- Jeff

2005-02-09, 21:16
Yes, I'm hearing gaps.

Albums ripped with LAME 3.96.1 are playing flawlessly with foobar2000
and winamp with the in_mpg123.dll plugin. Unfortunately, there are gaps
when listening to live and classical albums on the Slimserver. Gaps are
shorter than, say, using Windows Media Player, but they are still very
annoying.

I did not try the "solution" of using a cue file or ripping a CD as one
big MP3 and split them manually because this is not practical for me.

I checked with collegues at the office and they have noticed the same
issue (we bought 5 Squeezeboxe, call us geeks...).

Stéphane

-----Original Message-----
From: dean blackketter <dean (AT) slimdevices (DOT) com>
To: Slim Devices Developers <developers (AT) lists (DOT) slimdevices.com>
Sent: Wed, 9 Feb 2005 17:02:00 -0800
Subject: Re: [Developers] Gapless support for MP3 ( l a foobar2000)

Stephane,

Check out sean's posting on the matter:

<http://forums.slimdevices.com/gforum.cgi?post=20602;
search_string=gapless;guest=3868#20602>

So it should work already. Are you hearing gaps?

-dean

On Feb 9, 2005, at 3:05 PM, <sbourque-mailinglists5103 (AT) mailblocks (DOT) com>
wrote:

> Do you think it would be possible to look into the way foobar2000 >
handles MP3s in order to provide gapless support?
>
> I understand that the gapless implementation is more of a hack than
> anything done by the developers of LAME, but if the guy (Peter >
Pawlowski) at foobar2000 (and the ones at Rio – I think all of their >
latest mp3 players support gapless) have managed to support it, I >
think it would be great if the Slimserver would support it. Especially
> when most of the code of Foobar2000 is open source… A good source of
> inspiration!
>
> Stéphane

dean
2005-02-09, 23:11
Stephane,

Can you post a couple of sample MP3 files that have gaps when played
sequentially?

-dean

On Feb 9, 2005, at 8:16 PM, <sbourque-mailinglists5103 (AT) mailblocks (DOT) com>
wrote:

> Yes, I'm hearing gaps.
>
> Albums ripped with LAME 3.96.1 are playing flawlessly with foobar2000
> and winamp with the in_mpg123.dll plugin. Unfortunately, there are
> gaps when listening to live and classical albums on the Slimserver.
> Gaps are shorter than, say, using Windows Media Player, but they are
> still very annoying.
>
> I did not try the "solution" of using a cue file or ripping a CD as
> one big MP3 and split them manually because this is not practical for
> me.
>
> I checked with collegues at the office and they have noticed the same
> issue (we bought 5 Squeezeboxe, call us geeks...).
>
> Stphane
>
> -----Original Message-----
> From: dean blackketter <dean (AT) slimdevices (DOT) com>
> To: Slim Devices Developers <developers (AT) lists (DOT) slimdevices.com>
> Sent: Wed, 9 Feb 2005 17:02:00 -0800
> Subject: Re: [Developers] Gapless support for MP3 ( l a foobar2000)
>
> Stephane,
>
> Check out sean's posting on the matter:
>
> <http://forums.slimdevices.com/gforum.cgi?post=20602;
> search_string=gapless;guest=3868#20602>
>
> So it should work already. Are you hearing gaps?
>
> -dean
>
> On Feb 9, 2005, at 3:05 PM,
> <sbourque-mailinglists5103 (AT) mailblocks (DOT) com> wrote:
>
> > Do you think it would be possible to look into the way foobar2000 >
> handles MP3s in order to provide gapless support?
> >
> > I understand that the gapless implementation is more of a hack than
> > anything done by the developers of LAME, but if the guy (Peter >
> Pawlowski) at foobar2000 (and the ones at Rio I think all of their >
> latest mp3 players support gapless) have managed to support it, I >
> think it would be great if the Slimserver would support it. Especially
> > when most of the code of Foobar2000 is open source A good source of
>> inspiration!
> >
> > Stphane

K Suominen
2005-02-10, 08:44
I've been using gapless encoding with LAME and the files play back
perfectly (gapless) on Winamp (no special plugins used), the Turtle
Beach AudioTron (AT), and through Icecast (streamed MP3). I haven't
been using mpg123 anymore for quite some time, but back in 1997/1998
is was playing the gapless MP3 files perfectly gaplessly as well.

I just did an experiment with the Squeezebox (and SlimServer V6):
1: The Alan Parsons Project / Eye in the Sky
- 1. Sirius / 2. Eye in the Sky
2: Marillion / Misplaced Childhood
- 1. Pseudo Silk Kimono / 2. Kayleigh / 3. Lavender / 4. Bitter Suite

First test had a slight break in the rhythm over the song (file)
change -- less like a gap and more like a couple of frames *missing*.
I replayed it on the AT, and it played perfectly on it, so something
happens differently with the Squeezebox. I tried it a couple more
times on the Squeezebox, and it always does the same "quick-step"
between the tracks.

The second test plays the first two transitions perfectly on the
Squeezebox. However, the third transition has a tiny but audible gap.
Just to verify, did the replay on AT to make sure all transitions
play perfectly without gap there.

I can make the MP3 files available for anyone wanting to test, but I
don't feel comfortable posting a download URL in a public list like
this one. Send me private mail if you want to test. (General
requests for MP3 swapping will be ignored.)

I have a document on how I rip and encode my MP3's:

Converting CDs to MP3
http://kimmo.suominen.com/docs/mp3-howto/

While the tools I use are UNIX-based, you could still easily apply the
general approach to EAC and LAME on Windows. The important part is
LAME, and the options should be the same regardless of the platform.
(In fact, I have ripped some of my CD's with EAC, in the so far rare
but inevitable cases where cdparanoia fails to read the disc.)

I have also a short blurb about the software I use to produce the
Icecast stream:
http://kimmo.suominen.com/gwradio/

Gaps are a "builtin feature" of the MP3 format, unfortunately, but
there are a few players that manage to avoid the problem: Winamp,
Turtle Beach AudioTron, Rio Karma, Icecast.

Unfortunately my iPod is not one of them (but that's what I carry
today). Neither was the iRiver SlimX (IIRC -- plus NiMH batteries
were less than ideal). I seem to recall that RockBox on the Archos
was gapless, but that's an old memory now (the sound quality on the
6GB Archos left a lot to be desired).

If FLAC or Ogg Vorbis was more widely supported (especially on
portable players) maybe I would re-rip the hundreds of albums I've
already converted to MP3. For the time being, I'm dreaming of gapless
MP3 support being more likely...

Regards,
+ Kim


On Wed, 09 Feb 2005 20:16:12 -0800,
sbourque-mailinglists5103 (AT) mailblocks (DOT) com
<sbourque-mailinglists5103 (AT) mailblocks (DOT) com> wrote:
> Yes, I'm hearing gaps.
>
> Albums ripped with LAME 3.96.1 are playing flawlessly with foobar2000
> and winamp with the in_mpg123.dll plugin. Unfortunately, there are gaps
> when listening to live and classical albums on the Slimserver. Gaps are
> shorter than, say, using Windows Media Player, but they are still very
> annoying.
>
> I did not try the "solution" of using a cue file or ripping a CD as one
> big MP3 and split them manually because this is not practical for me.
>
> I checked with collegues at the office and they have noticed the same
> issue (we bought 5 Squeezeboxe, call us geeks...).
>
> Stéphane
>
> -----Original Message-----
> From: dean blackketter <dean (AT) slimdevices (DOT) com>
> To: Slim Devices Developers <developers (AT) lists (DOT) slimdevices.com>
> Sent: Wed, 9 Feb 2005 17:02:00 -0800
> Subject: Re: [Developers] Gapless support for MP3 ( l a foobar2000)
>
> Stephane,
>
> Check out sean's posting on the matter:
>
> <http://forums.slimdevices.com/gforum.cgi?post=20602;
> search_string=gapless;guest=3868#20602>
>
> So it should work already. Are you hearing gaps?
>
> -dean
>
> On Feb 9, 2005, at 3:05 PM, <sbourque-mailinglists5103 (AT) mailblocks (DOT) com>
> wrote:
>
> > Do you think it would be possible to look into the way foobar2000 >
> handles MP3s in order to provide gapless support?
> >
> > I understand that the gapless implementation is more of a hack than
> > anything done by the developers of LAME, but if the guy (Peter >
> Pawlowski) at foobar2000 (and the ones at Rio – I think all of their >
> latest mp3 players support gapless) have managed to support it, I >
> think it would be great if the Slimserver would support it. Especially
> > when most of the code of Foobar2000 is open source… A good source of
> > inspiration!
> >
> > Stéphane