Re: changed configure.in for proper arts-check

2001-05-26 Thread rob

On  1 May, Stefan Gehn wrote:
 Hi,
 
 On my system freeamp's configure did not find arts-includes or -libs because 
 they're not in my include/lib-path by default. I now patched configure.in to 
 use artsc-config which by default is installed on every system where arts is 
 installed on.
 I have taken bits of the test from SDL's configure.in, just in case somebody 
 has seen those lines before ;)

Thanks! I just applied the patch -- its in CVS now.

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Reviving the RTSP thread

2001-05-08 Thread Rob Lanphier

Hi all,

I saw an earlier thread regarding RTSP support in FreeAmp.  I've tinkered 
around with the idea myself, and I think this task can be made much easier 
with the RTSP reference kit we recently put out, available on SourceForge 
(http://rtsp.sourceforge.net).  There's a bit of the SDP parsing that we 
haven't put out yet, but most of what you need is there.

It would be very cool to get FreeAmp playing MP3 files off of a RealServer, 
something that should be possible sans any bugs in the RealServer 
implementation of MP3/RTSP/RTP streaming (which I'd be happy to facilitate 
getting fixed).

Rob
-
From: Wayne F Davis [EMAIL PROTECTED]
Date: Tue, 13 Mar 2001 11:46:45 -0500 (EST)
To: [EMAIL PROTECTED]
Subject: RTSP Support?

  I certainly plan on adding support for
  this when the next version gets underway.
 
  Any timeline yet?

Ok, cool.  I'd definitely like to help.  Has anyone started the design
yet?  What type of timeline were you looking at?

Thanks,
Wayne

  Wayne F Davis wrote:
  
   Hello,
  
   Are you considering adding RTSP support into FreeAmp?
  
   I'd be willing to help with this.
  
   --
   Wayne Davis - [EMAIL PROTECTED] - PGP Key Available
  
   ___
   [EMAIL PROTECTED]
   http://www.freeamp.org/mailman/listinfo/freeamp-dev
 
 

-- 
Wayne Davis - [EMAIL PROTECTED] - PGP Key Available


___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



FreeAmp 2.1 Released

2001-04-21 Thread rob

Hi everyone!

At long last, we've wrapped up futzing with FreeAmp 2.1! The new version
is now available on the website: http://www.freeamp.org 

The changes from the last release candidate were:

Changes for version 2.1.0 final


- Upgraded the code that interfaces with the musicbrainz client library.
- Fixed a streaming bug where it never finish buffering small files.
- Fixed a couple of minor theme alignment issues
- Fixed bugs where metadata was not written to ID3v1/v2 tags.
- Fixed bug where ID3v1 tags were favored over ID3v2 tags.
- Added a right client context menu to the main freeamp ui
- Improved the Ogg/Vorbis streaming support
- Added Bitzi lookup support
- Updated the help files


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: FreeAmp 2.1 Released

2001-04-21 Thread rob

On 21 Apr, Karl Ove Hufthammer wrote:
 I can't update to 2.1 using the update functionality in FreeAmp. It displays
 2.0.8.0 as the latest version.

Yup. I never saw that feature work right, and I didn't feel like
maintaining/debugging it any further, so I removed the feature.

I apologize for the inconvenience, but please update by hand.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: TODO for a new developer

2001-03-15 Thread rob

On 15 Mar, Wayne F Davis wrote:
 Hi,
 
 I would like to help out with the freeamp project.  Is the "Help
 Wanted" page of the website still up to date?
 
 If so, has anyone done any design for the KDE/GNOME stuff?

Its not complete. Check out the following thread from last month:

http://www.freeamp.org/pipermail/freeamp-dev/2001-February/001076.html


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Track numbers for MP3s

2001-03-14 Thread rob

On 14 Mar, Isaac Richards wrote:
 Ehrm.  FreeAmp already writes id3v2 tags when you edit things..  Has ever 
 since 2.1, maybe even before..  You did need to have id3lib installed up 
 until the RC6 release to have support to write them, but we've since 
 swallowed the id3lib source into our tree to get a consistant API/ABI, so 
 you don't need it anymore.

I think there are some bugs in the code that forces the id3 tags out to
the files. I haven't seen FreeAmp write any id3 tags in a while. It
another one of the things on my massive todo list...

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



FreeAmp Vorbis streaming fixed (was: RTP)

2001-03-08 Thread rob

On  7 Mar, Dave Phillips wrote:
 Yes, it handles single Ogg files beautifully, but it fails with the
 streaming stuff right after pre-buffering. Says something like "Skipped
 corrupted file" then just stops.
 
 Plese let me know if you get the streaming stuff repaired soon. I'm
 submitting an article to the O'Reilly Network Friday, it's on streaming
 audio for Linux and I'd be happy to include a mention and a screenshot
 of FreeAmp streaming Vorbis.

I just tracked that bug down, and I've been listening to the icecast2
server kicking out vorbis for the last hour. :-)

The fixes have been checked into the FreeAmp CVS, or if you prefer not
to deal with CVS, you can download the vorbis streaming enhanced tarball
here:

  ftp://ftp.freeamp.org/pub/freeamp/src/freeamp-vorbis-streaming.tar.gz

This link is also on the main FreeAmp page. If enough people bug me I
may even compile new Vorbis plugins for windows.

H. Bedtime.

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: vorbis streaming bugs

2001-03-08 Thread rob

On  8 Mar, Michael Smith wrote:

 I asked Jack to set up a server for testing purposes (he has actual 
 bandwidth:) 
   http://i.cantcode.com:8000/test.ogg
 
 It should be up for at least the rest of the day. 

Thanks -- that was a perfect test case. And, for a change I got to debug
with *good* music. Yeah!


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: vorbis streaming bugs

2001-03-07 Thread rob

On  8 Mar, Michael Smith wrote:
 Having finally got icecast2 running, I found that freeamp didn't play the
 stream correctly. Here's a patch for the problem. Basically, it's not
 dealing correctly with one possible return from ov_read() (this happens
 usually when connecting to a stream, and won't usually occur with files)
 
 However, it still fails on bitstream boundaries (i.e. between each track in
 a stream). A failed assertion occurs, which appears to be because the 
 BeginWrite() call failed on line 428 of vorbislmc.cpp - any ideas? I can't
 see anything obvious for this one, but I don't know any of the freeamp code
 at all well.

I'll try and take a look at it -- do you have an icecast server that is
publicly available? I'd hate to have to install icecast2 just to fix
this bug. :-)

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Problem with Layer 2 and 3 files in same obs RTP stream

2001-03-06 Thread rob

Apologies for not responding to this sooner. My freeamp-dev mail was
going into the wrong folder and I never spotted it.

On 26 Feb, Dave Chapman wrote:
 On Monday 26 February 2001 02:46, Marty Schoch wrote:
 A more complicated solution would be to modify Obseqium to set
 the Market bit in the RTP header when it's about to change format.
 Then just have the player reconfigure the decoder when it
 detects the Market bit in the stream.

That's what I wanted to do in the first place, but then Ross Finlayson
advised me against it. I forget what his reasoning was. The obs side of
things is not hard -- its the FreeAmp side that is harder to solve.

 Whenever this bit is set, Freeamp should assume that the audio type (layer, 
 bitrate, whatever) has changed, and reconfigure itself appropriately.  It 
 could also reset it's own time display to zero (if people want that - I do).
 
 Do people agree?

Agreed. I'll see what I can do.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye   --[EMAIL PROTECTED]   --   http://www.mayhem-chaos.net

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: freeamp as an archive tool?

2000-12-11 Thread rob

On  7 Dec, elk bot wrote:
 
 hello everyone,
 
 I've been helping out a local radio station get set up for live streaming...
 previously they were streaming via real server (yech!) and I set them
 up w/ a nice shoutcast stream... the only problem is archiving.
 
 in their prior set-up they were running real producer on windows 98 (yech
 again...). anyways, one thing that's really nice about real producer
 is that it has a good command line interface. among other things you
 can:
 
 1) specify what the name of the output file will be
 2) specify how long real should encode before disconnecting

I just answered this question to another user in private e-mail:

On  7 Dec, Doron Gura wrote:
 hello...
 
 I'd like to use freeamp to create archives of some live streams... I figure
 I can do this by scheduling batch jobs as follows: "freeamp
 myradiostation.m3u"
 
 what I was wondering is if there are ANY command line options at all for
 freeamp on windows. I'd really like to put in flags for things like what to
 call the output file, how long to record, etc.

There are some command line options for selecting a user interface, but
not for any of the streaming stuff. Saving streams to disk is a trivial
task and it would probably be better done outside of freeamp if you're
trying to create an automated system. I've got a simple perl script that
I could send you that saves data from a given stream URL to disk -- that
script could be run from a scheduled batch job...



--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



FreeAmp 2.1 rc5 released

2000-11-15 Thread rob

And another rc release of FreeAmp. This should be the last one. Yeah, I
know -- you've heard that before. :-) We just want to make sure we get
it right this time. As usual, download it from here:

   http://www.freeamp.org/index.html?mode=download

Changed for this version:
   
Changes for version 2.1.0 rc5

- Fixed some streaming (HTTP) issues (some streams not found)
- Improved the default theme to look a bit more consistent and to include
  a balance slider
- Implemented notches in sliders so that the EQ settings can be reset easily.
- Fixed a bug where after an audio breakup the time display/slider setting
  in win32 was incorrect.
- Fixed a segfault when switching themes, theme modes or cancelling out
  of the options dialog.
- Included new and improved Relatable TRM technology


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Uncategorized Tracks unsorted in 2.1

2000-11-13 Thread rob

On 12 Nov, Nicholas Dronen wrote:
 Hi, 
 
 I'm running freeamp 2.1 on Linux (compiled from source).
 Since upgrading, the Uncategorized Tracks folder is unsorted.
 Am I missing something?

Can you please enter a bug report into Bugzilla and we'll take a look at
it?

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Audio cutting out follow-up, xing code?

2000-11-10 Thread rob

On 10 Nov, Mark Lehrer wrote:
 
 I'm digging through the code here and it is leading me to a bunch of
 files that say MP3 Decoder originally Copyright (C) 1995-1997 Xing
 Technology
 
 Are most of these streaming mp3 players based on this same code?
 Although freeamp does a better job than other mp3 players, I get this
 same symptom in Winamp, xmms, and freeamp - audio_decode is sometimes
 returning 0 and I haven't followed the code through yet, but this is
 obviously bad.  Perhaps it keeps re-trying the frame until it is
 successful or something.

No, the xing engine is found in the real jukebox and in freeamp. It
probably is in a lot of other places by now, but not Winamp or XMMS.
If other players are exhibiting the same symptoms I would suspect
icecast or the bitstream itself. Can you capture a section of the
bitstream with the following perl script and then send me about 30
seconds worth of the stream? 

If the saved file does not play back correctly using normal file
playback in FreeAmp then its an icecast problem. If it does, its a
freeamp problem...


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert


#!/usr/bin/perl -w

use strict;
use Socket;

use constant BLOCK_SIZE = 1024;
use constant TRUE = 1;
use constant FALSE = 0;

sub SaveStream
{
my $remote = $_[0];
my $port = $_[1];
my $size = $_[2];
my $file = $_[3];
my ($iaddr, $paddr, $proto);
my ($line,  $ret, $rest, $query);
my ($space, $read, $myhost, $i);

$iaddr = inet_aton($remote);
$paddr = sockaddr_in($port, $iaddr);
$proto = getprotobyname('tcp');

if (!socket(SOCK, PF_INET, SOCK_STREAM, $proto))
{
print "Cannot create socket\n";
return;
}

if (!connect(SOCK, $paddr))
{
print "Cannot connect to server\n";
return;
}
print ("Connected to server...\n");

send(SOCK, "GET / HTTP/1.0\n\n\n", 0);

for(;;)
{
   $line = SOCK;
   print $line;

   chop($line);
   chop($line);
   if (length($line) == 0)
   {
   last;
   }
}

open(TEMP, "$file") or die"Cannot open file $file.\n";

$read = 0;
 for(; $read  $size;)
 {
$ret = read SOCK, $line, 
   ($size  BLOCK_SIZE) ? $size : BLOCK_SIZE;
if (!defined $ret)
  {
last;
  }
  $read += $ret;

print "Read $read bytes\n";
  print TEMP $line;
 }
 close(TEMP);
close(SOCK);
}

if (scalar(@ARGV)  4)
{
print "\nUsage: savestream.pl host port num bytes to save file to save 
to\n\n";

exit(0);
}

my ($host, $port, $size, $file);

$host = shift;
$port = shift;
$size = shift;
$file = shift;

SaveStream($host, $port, $size, $file);



Re: Follow up on hosed streaming playback

2000-11-10 Thread rob

On  9 Nov, Mark Lehrer wrote:
 
 Well I am continuing to dig and the short packets/frames are
 unfortunately showing up in XingLMC::DecodeWork()... perhaps the
 scariest looking routine (comment-free too) in the whole program.
 
 If I had to take a preliminary guess, I'd say it's trying to play a
 frame at a time (420 bytes or so) and sometimes it only grabs a
 partial frame at a time.  Trying to play a null frame makes the sound
 card angry.

I've got one track that this happens on and I've always thought the
track was messed up. However, upon closer inspection I've found that the
track itself is fine. However, when the track is captured using the save
stream utility it does not play back properly.

Using the mp3_check utility it becomes clear that some of the frames end
up being two bytes short, which causes freeamp to skip the following
frame since the sync marker got consumed as part of the previous frame.

I tried upgrading my icecast server, but that failed miserably on my old
mandrake box that I use as my Obsequiuem server. I would suspect this to
be an icecast problem -- can you upgrade your icecast server to the
latest and greatest?


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: MB_SelectExchangedAlbum, median.cpp

2000-11-02 Thread rob

On  3 Nov, Clemens Bentzien wrote:
 Is freeampRC4 in CVS? Could you tell me the suitable command?

RC4 plus a few more changes are the head rev in CVS. Go to freeamp.org
and check out the developer pages. There are detailed instructions for
accessing CVS...

 
 **
 
 Another little bug, seems to be a "write error" in median.cpp,
 but i don't remember whether there was a reason to search for:
 
 int compare(const void * a1, const void * a2)
 {
 ...
   case 2:
 c1 = BLUE(color2), c2 = BLUE(color2);
 ...
 should be
 c1 = BLUE(color1), c2 = BLUE(color2);

Sure looks that way, huh. So, are you reading all of the FreeAmp source
code? :-)

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



FreeAmp rc4 Release

2000-10-30 Thread rob

This should hopefully be the last release candidate before we release
the 2.1 final version. As usual, to download go here:

   http://www.freeamp.org/index.html?mode=download

Aside from the changes listed below, I've set up the automatic stream
update scripts on the server. Now when the user opens up the streams
tree in the music browser they will get a listing of the top icecast
streams, and digitally imported streams.

If you have a stream that you'd like to suggest to be added to the
FreeAmp Team  Friends picks, please drop me a line of e-mail.


Changes for version 2.1.0 rc4

- MusicBrainz CD lookup will no longer attempt to look up each track
  after the first track lookup fails.
- The data coming from the MB client lib and the vorbis metadata plugin
  now gets converted to ISO 8859-1
- The ALSA plugin does not report an error during stream rebuffering
- Stream rebuffering values have been tweaked a bit to improve the
  rebuffering of the stream.
- The proxy support has been improved. Previously the URI special
  character encoding function was a bit too overzealous.
- The mouse wheel/middle button mute was not working properly on themes
  without a mute button.
- Added support for redirects for http streaming




--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: minor bug in httpinput.cpp

2000-10-24 Thread rob

On 24 Oct, Scott McCaskill wrote:
 Right around line 507 is the following code:
 
 file = string(strchr(m_path + 7, '/'));
 
 Problem is, this blows up if m_path is something like
 "http://205.188.245.131:8038", since strchr is returning null and the string
 constructor doesn't like that (on windows anyway).  I worked around it like
 this:
 
 const char* address = strchr(m_path + 7, '/');
 file = (address ? address : "");

Thanks for catching this. I haven't run these changes on windows yet.

 I'm at a loss as to why I didn't see this problem last week, when I was
 doing the exact same thing (playing a stream).  Oh well..

It looks like you're updating from CVS. Late last week I was tweaking
with the proxy support and changed those lines of code.

 Incidentally, I've been looking at the code because I want to see if it's
 feasible to augment the stream-saving functionality so that songs will be
 saved in separate files and directories according to artist and song title.
 I don't even know yet if this is doable (if the server provides enough info)
 but I figured I would take a look.

We've already received a patch to do this, but the user interface
elements are still missing from this patch. We're getting really close
to 2.1 and I'm not likely to include this in the 2.1 series. However,
I've created a branch and checked this patch in, so anyone that cares to
play with this patch can do so. In order to get the CVS code with the
splitting stuff, do this:

cvs -z9 update -rhttp_split_branch

or

cvs -z9 co -rhttp_split_branch freeamp

Thanks to Arne Janson for writing the first version of this stuff.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Title scrolling

2000-09-28 Thread rob

On 26 Sep, gunnm wrote:
 I have the current stable version of freeamp, 2.0.8, and I
 think the program rules!  No really, it is way better than
 winamp, I am very impressed.  I think you need to improve
 your "marketing" though, since I just heard about it
 recently from a slashdot post and would have used it a long
 time ago if I knew it existed.
 On to my question.  I cannot seem to stop the title
 from scrolling repeatedly during song playback.  Is there a
 way to stop the scrolling that I haven't figured out?  I
 find it very distracting.  If it isn't possible now, would
 it be difficult to implement?

I've been meaning to add support for this in the themes. I will try and
get this done next week.

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: StreamTimer

2000-09-23 Thread rob

On 21 Sep, Isaac Richards wrote:
 
 On 22-Sep-2000 Chris Kuklewicz wrote:
 Once the stream part of the music browser is opened, it downloads
 and parses the xml file every 30 seconds.
 
 Doesn't it just need to hit it once?
 
 Naw..  Plan is for it the server .xml to be automatically updated quite often. 
 Stream stats -- current users, bitrate, that sorta stuff.

Just as with the CD stuff -- updating by default is kinda funky --
especially at that frequency. Perhaps we could dial it down to updating
every 5 minutes with a menu item that says: update now! ??

 
 Also, everytime it reloads, the tree is collapsed, which the user
 is not expecting.

This is the part that bothers me. Its kinda annoying. I realize from the
nature of tree controls that this is a hard thing to do. So, instead of
making the tree do things its not supposed to do, lets just dial down
the interval, and the user shouldn't get caught in it too often.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: char* Freestore proposal

2000-09-23 Thread rob

On 22 Sep, Chris Kuklewicz wrote:
 Have a hash_setchar* which holds new refcount 1 strings (and thus
 has no int overhead), and a hash_mapchar*, unsigned int which holds
 any refcount string.  A duplicate has to be searched for in both the
 hash_map and hash_set when adding a new string.  When ++refcount on
 char* in the hash_set, move char* to the hash_map with refcount 2.
 Note: If the stored refcount in hash_map is zero, it means the string
 is static and need never be freed, and the refcount stays at zero.
 When --refcount, do not move char* back from hash_map to hash_set,
 just leave it in hash_set with a refcount of 1.

Interesting idea -- do you know how much memory overhead there is for a
hash_map? I really like the not duplicating strings -- in the case of
the data that we're throwing at it that would be a good way to save
memory.

Would you be interested in hacking on this?


 The only outside code change that needs to happen is that when someone
 creates a metadata/playlist object, the freestore pointer needs to get
 passed in.
 
 Hmmmhere you seem to want the context (which is currently
 singular?) to not be a guaranteed singleton.  But the freestore could
 be a singleton, why not?  Then you could access it without needing to
 pass its address to MetaData/PlaylistItem every single time.
 
 ---
 
 A wierd hack, but space efficient.  Note that the size of each
 album_key instance is only the size of one char*.  Besides, no
 hairbrained amateur scheme in C++ is complete without a YASPC (yet
 another smart pointer class).
 
 extern freestore get_album_freestore();  // Global function or method of singleton.

The only problem is that global functions are not global under windows
across DLL boundaries. While DLLs get mapped into the same address
space, globals/global functions are not visible unless explicitly
exported. We could pass this in as part of the initialization of each of
the plugin DLLS, but that's kinda ugly and a pain too.



--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: cvs freeamp not compiling because of vorbis stuff?

2000-09-22 Thread rob

On 22 Sep, Michael Lea wrote:
 lmc/vorbis/src/lib/psy.c: In function _vp_psy_init':
 lmc/vorbis/src/lib/psy.c:175: structure has no member named ath_att'
 lmc/vorbis/src/lib/psy.c:272: structure has no member named toneatt_125Hz'
 
 ...etc etc etc.
 
 lmc/vorbis/src/lib/psy.c: In function _vp_apply_floor':
 lmc/vorbis/src/lib/psy.c:623: structure has no member named noisefit_threshdB'
 lmc/vorbis/src/lib/psy.c:650: structure has no member named noisefitp'
 lmc/vorbis/src/lib/psy.c:651: structure has no member named noisefit_subblock'
 lmc/vorbis/src/lib/psy.c:665: structure has no member named noisefit_subblock'
 make[1]: *** [lmc/vorbis/src/lib/psy.o] Error 1
 
 
 Clean checkout.

Completely clean? Hmmm. do a rm -rf lmc/vorbis followed by a cvs update
-dA ...


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Evil in Http.cpp? HELP!

2000-09-21 Thread rob

On 21 Sep, Isaac Richards wrote:
 Could you upgrade mb_client from CVS and see if that fixes it?

I've got all the latest and greatest and the crash happens for me as
well


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Evil in Http.cpp? HELP!

2000-09-21 Thread rob

On 21 Sep, Isaac Richards wrote:
 
 On 21-Sep-2000 [EMAIL PROTECTED] wrote:
 I've got all the latest and greatest and the crash happens for me as
 well
 
 Positive about that?  Problem was the Http class in libmusicbrainz was clashing
 w/ the Http class in freeamp..  Renamed it to MBHttp and the problem went away
 here.

Nope. I had the latest and greatest, but it was not installed. :-|


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Evil in Http.cpp? HELP!

2000-09-21 Thread rob

On 21 Sep, Chris Kuklewicz wrote:

 Use namespaces.
 
 C++ has even more flexible namespaces than Java.
 
 You library code become more legible since your library can call MB::Http as Http.
 People using the library get to only pull in what they want to into their namespace.
 
 Since this library is still "alpha" cvs only code, such a change should be possible.

You're totally right -- I will make this change.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Evil in Http.cpp? HELP!

2000-09-21 Thread rob

On 21 Sep, Isaac Richards wrote:
 Only problem is that namespaces don't work with current versions of g++.

Yea. They don't work at all? Where can I find some details on this?


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



sigapp now available

2000-09-21 Thread rob

I've created a standalone audio signature generation program that will
take in an MP3 file and kick out the ASCII signature for that track. To
build this app, do this after the configure in freeamp:

   make -f Makefile.towav sigapp

This creates the sigapp application. Right now it has no ID3 support --
it just generates the signature from the audio track. I'll work to
include ID3 support soon. If you'd like to use this, make sure you have
the latest and greatest musicbrainz client lib installed.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Misrecognition of Songs

2000-09-21 Thread rob

On 21 Sep, Joseph A. Martin wrote:
 On Thu, 21 Sep 2000, Isaac Richards wrote:
 
 Could you upgrade mb_client from CVS, remove these tracks from the music tree,
 and get it to re-signature them?  I believe I've fixed the problem -- seemed
 some tracks didn't like the old downmix code that was in there.
 
 Uhhm, I tried. I updated both mb_client and freeamp from CVS. I
 updated FreeAMP as well, because my enhancement "bug" regarding Vorbis
 metadata was marked fixed. Anyway, I recompiled both (mb_client
 followed by FreeAMP just for the record) and now it's segfault city.

Uhm. Hmmm. Did you do a make distclean  configure  make on both
projects? If not, please go back and try that.

If so, try this. Remove vorbis.mdf from the plugins directory. Can you
do a search now? The vorbis.mdf file is the metadata reader for vorbis.
Please let me know if this fixes it -- and then if you can figure out
which file is causing it I'd like to get a hold of that file for some
testing.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Memory footprint.

2000-09-19 Thread rob

On 19 Sep, Sean Ward wrote:

 Yep, freeamp as a whole is a lot more bloated than say, winamp or XMMS. The
 primary size difference comes from the musicbrowser, because it loads all
 the metadata entries at startup, so has a memory footprint proportional to
 the number of tracks in your collection. Additionally, there are a bit too
 many internal copies which go on, which are part of the general musicbrowser
 issue ;).

I did some basic snooping around in the codebase to see why we use so
much memory and what we can do about it. First, the musicbrowser and the
musiccatalog duplicate the playlist items, which is a known bug and
would take a serious amount of work to take care of.

Second is the our abundant use of string objects, especially in the
Metadata class. There are 7 string objects (m_artist, m_album, m _title,
m_genre, m_comment, m_extension, m_guid) which may or may not be all
filled out.

So I wrote a quick program to compare normal C string use with the
string object which allocates 1 20 byte strings and tosses them into
a vector:

1 20 byte traditional strings:
16271 robert 8   0  3080 3080   284 S   0  0.0  4.7   0:00 a.out
1 20 byte strings:
16264 robert 8   0  7244 7244   436 S   0  0.0 11.2   0:00 vstring 
1 2 byte strings:
16250 robert 8   0  7244 7244   436 S   0  0.0 11.2   0:00 vstring 
 
The C++ string class uses more than twice as much memory as the
traditional string stuff. Even more eyeopening is the fact that there is
no difference between a 1 2 byte strings and 1 20 byte strings.

So, I would propose the following as a footprint reducing measure that
we could easily implement before we release 2.1 and somewhat ease
crunch.

1) Find some code on the net that manages a freestore for small strings
2) Add an instance of the freestore to the context object so its
 available all over the place.
3) Instead of using strings in the Metadata class, we use pointers to
 entries in the freestore. We convert to and from strings when the
 accessor methods are called.

The only outside code change that needs to happen is that when someone
creates a metadata/playlist object, the freestore pointer needs to get
passed in.

A freestore memory footprint for the above should look similar to this:

1 20 byte freestore strings:
16308 robert 7   0  2400 2400   284 S   0  0.0  3.7   0:00 a.out

7244 down to 2400 is not a bad improvement. Thoughts?


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Segfaults. Search capability. Memory footprint.

2000-09-19 Thread rob

On 19 Sep, Chris Kuklewicz wrote:
 Open the music browser, play a few tunes, then select each Theme and return
 to the Freeamp theme.  The theme memory is NOT released:
 
   PID USER PRI  NI  SIZE  RSS SHARE STAT  LIB %CPU %MEM   TIME COMMAND
 21310 ckuklewi   0   0 41260  38M  3528 S   0  0.0 50.4   0:05 freeamp
 21311 ckuklewi   0   0 41260  38M  3528 S   0  0.0 50.4   0:00 freeamp
 21312 ckuklewi   0   0 41260  38M  3528 S   0  0.0 50.4   0:00 freeamp
 21313 ckuklewi   0   0 41260  38M  3528 S   0  0.0 50.4   0:00 freeamp
 21314 ckuklewi   1   0 41260  38M  3528 S   0  2.8 50.4   0:02 freeamp
 21315 ckuklewi   0   0 41260  38M  3528 S   0  0.0 50.4   0:00 freeamp
 21320 ckuklewi   0   0 41260  38M  3528 S   0  1.1 50.4   0:21 freeamp

I just tried this myself and I found that when I switched away from the
freeamp theme to another theme it gobbled up 7megs. But, switching to a
number of other themes does not further consume memory. In some cases it
might take another meg or let go of another meg.

Is that what you are seeing? I'll bring this up in BoundsChecker under
windows and see what it has to say.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: More Feedback

2000-09-19 Thread rob

On 19 Sep, Joseph A. Martin wrote:
 On Tue, 19 Sep 2000, Isaac Richards wrote:
 
 
 On 19-Sep-2000 Joseph A. Martin wrote:
  I fired up my new copy of FreeAMP, and specified my music directory as
  the directory for the Music Browser to scan. All went well for about
  three minutes. It zipped through the MP3 albums and moved slower for
  Vorbis albums. I put that down to the lower amount of optimisation
  done by the Vorbis team. However, as FreeAMP scanned, the system grew
  slower and slower. Eventually mouse movements wouldn't appear on
  screen for 30 seconds or more. FreeAMP ceased to update the name of
  the directory being scanned, even though I could hear the hard drive
  still spinning. After about 5-7 minutes X came crashing down.
 
 Could you see if current CVS fixes this?  I fixed a largish memory leak when
 calculating the length of vorbis files earlier today..  Should have squashed
 this.
 
 Wow! Your fix does work. I updated, recompiled, and re-scanned.
 FreeAMP completed indexing in approx 2 min. All of my tracks are now
 listed in the Music Browser. My only remaining beef is that the Vorbis
 title, author, and album tags are not being read. Can I expect any
 changes on that front?

Yeah, I'll try and do that. When I first wrote support for Vorbis, the
title, artist and album stuff wasn't congealed yet... Can you please go
to bugzilla and enter an enhancement request and assign it to
[EMAIL PROTECTED]? That will ensure me getting it done.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: flow controlled http

2000-09-07 Thread rob

On  7 Sep, shren wrote:

   Everyone else - sorry to use the list to find someone whose email I
 lost, and thanks again for the great player.  One question
 though.  Freeamp doesn't seem to play wav files.  Is this on the
 agenda?  I could probably code it myself, if not.

Its been on my agenda for weeks. But, I keep finding that I've got so
many other things to deal with. If you'd like to do it, I'd be more than
glad to accept that patch!


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Beta 8 additional info..

2000-09-06 Thread rob

On  1 Sep, Isaac Richards wrote:
 Oops, I forgot to mention that the Redhat RPMs haven't been updated for beta 8
 yet.  Source is still available, and we'll get those RPMs up soon.

The rpms for beta8 have been posted in the download page. Have at them!

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: GET problem tracked down (patch included)

2000-08-26 Thread rob

On 26 Aug, Mo DeJong wrote:
 Hi all.
 
 I have been chasing down a little bug that was keeping me
 from using freeamp to pull mp3 files off a web server.
 The odd part was that it worked just fine with winamp
 but when I connected with freeamp the webserver puked
 saying the GET line was invalid.
 
 At any rate, I was able to get the GET method sent
 out by freeamp to work with the sever by adding a
 \r before the \n in the GET line. I think the RFC
 says that you need both \r and \n, but there are
 at least some web servers that are really picky
 about this. This patch was enough to get things
 working. It would really be better to add a \r
 to all the header bits that just use \n now, but
 I will leave that up to you developers.

Groan is right. At first I had everything with just \n. Then someone
pointed out that the HTTP spec calls for \r\n. I checked it out and
agreed and applied the change. Then people started reporting that it was
not working with proxies anymore. Not having had any bad feedback with
just the \n (other than not being compliant) I went back to that. Sigh.

However, your solution with just the first line having the \r\n is not
something I've tried. What made you decide to do just the first line?
What I will do when I get back from Burning Man is to build a version
with your fix and then send it to the people that were having problems.
If they are happy, then I will apply your patch. If they are not happy,
I will go with Sean's suggestion and add a checkbox to the options
dialog.

Sound fair?


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Would you be interested in sponsoring FreeAmp?

2000-08-25 Thread rob

Back in June EMusic had to make the tough decision to stop supporting
FreeAmp, and the FreeAmp team lost two paid developers Isaac Richards
and Keith Steinbeck.

In the meantime, Relatable.com has stepped up to the plate and hired
Isaac Richards as a full time FreeAmp developer. Isaac has been working
for Relatable for the last few weeks and as a result the FreeAmp team is
back in action. Thanks much to all the folks over at Relatable.com!

Unfortunately our team is still somewhat crippled -- our main windows
developer has not been picked up by another sponsor yet. Our list of
windows specific bugs is growing and we're still not back to full speed
as a result of this.

If you are interested in hiring on Keith Steinbeck to work on FreeAmp,
please contact me. What do you get out of it? Well, the sponsoring
company will obviously have access to get features that benefit them
into the FreeAmp and well as creating a completely co-branded player.
For a relatively low price you will get a complete player that can
greatly extend the business model of your company. This sure beats
having to hire 3 developers to start one from scratch!

If you are interested in this proposal, please contact me:
[EMAIL PROTECTED]


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: FreeAmp-dev digest, Vol 1 #162 - 4 msgs

2000-08-24 Thread rob

On 24 Aug, Mark Lehrer wrote:
 
 
 OK I figured out how to extract the title from the httpinput stream;
 but I'm not quite sure where to apply the title.  It looks like
 currently it only sets it when you advance to the next item in the
 playlist.

Ok, I'm confused. What is it that you are trying to do?

1) Fix shoutcast title streaming which isn't broken.
2) Fix icecast title streaming which isn't broken in CVS.
3) Implement id3 sniffing as part of httpinput.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: title streaming

2000-08-23 Thread rob

On 22 Aug, Mark Lehrer wrote:
 
 Hello!  I just got rid of xmms forever and I'm quite enjoying freeamp.
 Finally, fonts I can actually read.
 
 The only feature I like in xmms is the title streaming.  Is there
 active work on this?  If not, I can try to hack it in.  It doesn't
 look like a difficult job to read in the id3v2 tags.

FreeAmp 2.0.8 supports shoutcast style title streaming, and I just
applied a patch to fix the icecast title steaming. If you check the code
out of CVS the titlestreaming should work ok.

Let me know if you run into any problems.


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: delphi

2000-08-23 Thread rob

On 23 Aug, johnn wrote:
 i don't know if this is off the mark but is there a delphi component(object) that i 
can use to make it easy to create a simple mp3 player?
 
 where else can i look for a component like this?

Yup, check this out:

From: Kei Ishida [EMAIL PROTECTED]
 Subject: Thanks! FreeAmp is great and has cool engine.
Date: Wed, 20 Oct 1999 17:49:50 +0900
  To: [EMAIL PROTECTED]

Hello. 

My name is Kei Ishida.  I made GPLed Delphi component "MP3Player" and
released it. It can play MPEG Audio file. I'm using FreeAmp's decode
engine in my component. Thank you for great and fast open source:)

If you have an interest in my component, you can get it on 
Delphian World(http://home1.infonia.ne.jp/~delphian/delphi/index.html)
It's most famous delphi component library page in Japan.
I'm sorry to write my component document in Japanese.

Sincerely

Kei Ishida


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Problems with release executable

2000-08-16 Thread rob

On 16 Aug, Peter wrote:
 
 Hi, I have been compiling with visual c++ 6.0 in windows 98 in debug
 mode and i haven't had any problems but then I make a release exec
 and try it on NT, and it has been asking me about some dll's of MSVC
 i.e. MSVCP60.dll  that obviously are not installed on that computer.
 
 Any one can tell me what am I doing wrong?

Nothing really -- you just need to install the missing DLLs on the NT
machine. One easy way to do this is to install one of the prefab
installers from the website, which will then install these files into
your system directories. Your build should then run. You can also
install these files by hand from the VC++ 6.00 distribution...


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: Solaris version

2000-08-10 Thread rob

On 10 Aug, Steve Kennedy wrote:
 What the cvs command to get the Solaris version, I downloaded
 the latest beta from the Freeamp site, but this has a few
 problems.

That's because we don't have Solaris support. Unless you're going to fix
some problems or volunteer to maintain the Solaris port, please don't
keep pointing out that FreeAmp has problems on Solaris. We know!


--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev