Re: changed configure.in for proper arts-check
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
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
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
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
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
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)
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
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
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
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?
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
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
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?
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
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
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
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
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
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
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
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?
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!
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!
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!
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!
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
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
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.
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.
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
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
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..
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)
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?
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
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
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
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
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
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