############################# #MP3 STATION Version 1.0 rc3 #do not edit this comment unless you know what you are doing #configure uses this to automatically set up version and revision level ############################# Unecessary header files are no longer around. *BSD problems should be solved and you sould be able to compile as is. #MP3 STATION Version 1.0 rc2 Better timing using nanosleep where avalible (will work even witout RTC). configure now checks out all header files and a woraround for xBSD fuser problem. Updates in the examples given for the IR remote controlled desktop. Updates in the documentation concerning LIRC and RTC. #MP3 STATION Version 1.0 rc1 Updated documentation. Fixed the examples given for the IR remote controlled desktop to handle new lirc_client. lirc_client now 100% functional. Added IR receiving device circuit diagrams to README.remote. Fixed IR receiving device not working on low power com ports. Fixed manual startx mangling up irexec. #MP3 STATION Version 1.0 pre4 Fixed the cm3s does nothing when no mpg?2? software is found: cm3s now states in log if it didn'n find mpg?2? software before aborting. Fixed some bugs in the examples given for the IR remote controlled desktop. Modified configure.ac and Makefile.in for the new lirc lient: now lirc_client will automatically get built if you have lirc installed on your system. Modified scripts for the binary package installation to handle the new lirc_client. Configure now automatically sets version according to CHANGELOG. Added a specific lirc_client to talk directly with irexec but this is still experimental. Updated documentation. #MP3 STATION Version 1 PRE 3 Fixed some minor bugs in the binary install. Fixed some minor bugs in the make package scripts. Minor updates in documentation. Minor updates in the example directory: switching out of xawtv now closes properly tv audio #MP3 STATION Version 1 PRE 2 Added better support for gmplayer in the example remote directory (film selector stil lnot working with IR) Added partial support for mlayer in the example remote directory (still need film selector before starting mplayer ... is there any expert in menuconfig?) Made better function changing in the example remote directory. Fixed the dual instance running simultaniously if cm3s was started manually in the remote examples. Updated documentation on Infrared remote control. #MP3 STATION Version 1 PRE 1 Added some documentation on Infrared remote control Removed spo as acpi is now stable in 2.4 kernels and is more practical #MP3 STATION Version BETA 5 Fixed a bug in function that converted hex strings to integers (atox). (now interpreting correctly hex number containing a->f digits) Fixed a bug in binary install scripts introduced with the new way of dropping root privileges. The spc will only try to manage the mixer master volume if there is support for mixer on the targhet platform (this is decided at configure time so you may get errors on the binary package if your mixer is nor working properly). #MP3 STATION Version BETA 4 Added a manager for a simple 4 button client on parallel port. (see the documentation aboud SPC). Changed the way programs drop privileges so that ioperm can still work (only if you start it from root). Fixed false detection of other instances dew to pid restarting numbering. Added a simple check for the SPC hardware presence. Added a sleep64 funcion tha sleeps 1/64 second units using rtc, I'll be using ths for polling the buttons on the Simple Parallel Client (spc). Added ini confugurable ability to restart playback at last frame being played of last track being played. #MP3 STATION Version BETA 3 Added mixer volume settings to ini file. #MP3 STATION Version BETA 2 Minor bugfix in configure. The binary install is now compatible with bothe slackware install and future flash linux install script architecture. Minor changes in makefile (version and package inherent). #MP3 STATION Version BETA 1 Updated README You can now start playback at the track after the last one played. Added a new setting in configuration file (start_next = ). Added a new command line feature (--next, -n). #MP3 STATION Version ALPHA6 Minor chances to the configure script. Totally new binary install procedure compatible with the package structure that will be used in flash_linux. #MP3 STATION Version ALPHA5 Fixed the incorrect abortion dew to false detection ao ther process and/or /dev/dsp in use. Now cm3s look for ini file in ~/.cm3s.ini then in /etc/cm3s.ini ... this was mandatory because when my rc.local is executed root's home directory in not yet set in teh environment. Fixed another issue on options that take optional arguments. #MP3 STATION Version ALPHA4 Added blank line skipping while reading ini file. Added blank, tab and other white space stripping while readini ini file. Added ini like configuration file management. Fixed the no option bug causing hang at cm3s program execution. #MP3 STATION Version ALPHA3 Fixed bug introduced in configure when looking always for bothe versions of mpg. No more need to edit Makefile even on older versions of gcc. Made better cpu and architecture detection for the intel Linux platform. #MP3 STATION Version ALPHA2 Configure now will allways look for bothe mpg321 and 123, so that if you specify one that is not found it will try to do with the oter one. Fixed optionam argument selection in my portable option parser Optional parameter will be accepted only if it is not the last one. Fixed the illegal instruction problem un via C3 cpu (you may still haveto edit makefile manually if you are usind gcc < 3.1 see README.viaC3) #MP3 STATION Version ALPHA1 Made better architecture detection in configure script relying on modular scripts in the scripts directory Added checks for fuser and ps in configure script Fixed failing to detect other instance already running in some particilar instances. Fixed a portability problem with ps ( some unix do not understand args ... using command instead) Fixed a portability problem with math.h (sun and bsd had some trouble withe the way I used floor) Rewrote my own portable getopt and embedded it in options.c (this should be a good help to get things working across other platforms). Also removed the unnecessary header file option.h. Configure script now checks fot all curses functions used in project #MP3 STATION Version ALPHA1 RC3 Fixed some other (hopefully all)stray messages erroniously showing in the upper window. Removed the ATX power supply specifications pdf, I'll put some usefull links in the project homepage for those of you who need this sort of information (which can come in handy if you need to runs normal pc hardware in a car). I'm sorry for any of you who downloaded dew to the very different size of the rc2 release. Fixed failing to start if there is another process that has cm3s in it's arguments, but will still fail to start if another process has the string "^.*cm3s " in arg* (in other words anithing that ends with cm3s in arg0). Fixed failing to go into bacground properly when compiled with gcc3 or better. Made a patch for mad-0.14.2b so that you get optimization for your ix86 platform. see ../uti (this will only be of intrest for those who use mpg321). #MP3 STATION Version ALPHA1 RC2 Configure script now checks out all required header files, this should be a good help when trying to compile on non linux/gnu platforms. Misc code and comment cleanups Fixed id3 tag sometimes showing in the upper window (at leas in the circumstances where I noticed the problem) Since it appears that the buzz is not dew to the skipping stuff I'm changing the default to 15 and try to se if mpg321 developers will help me solve the problem. Made a very simple change to mpg123 source code in order to make it produce less frame status information (look at the end ov README.mpg123) Many thanks to Michael Hipp for giving me a tip on how to do this efficiently without having to understand the whole code involved. Review of the documentation Added checking other instances and/or /dev/dsp being open by some other process. Since if you use it in a car it will probably be started automatically at boot time for the moment cm3s aborts on such an occurrence. On the other hand if you are starting it manually than you can take a look at what is going on if it aborts. #MP3 STATION Version ALPHA1 RC1 Improved the feedback through the smaller lower window of the client and removed unnecessary white space from ID3 tag output. Lowered to 5 the default skip-printing-frames for mpg321, this value i seems to be best for bothe the buzz and jam bugs. I have found a sequence of 2 of my mp3 that regularly reproduce the problem. If anyone wants to investigate on this I can send them the files. (bad, si tu eres min ombre) Added played time and total track time to the ID3 information displayed Added ID3 tag reading to client (help does not have enough room to show the i option in the main menu) Added mixer capabilities to client (configure sorts out if your platform supports it) Fixed the recompile playlist bug, it used to hang if you cm3s hadto recompile playlist with random mode enabled. You can now choose at configure time which mpg player to use default is to look fore mpg321 then for mpg123 if you specify one configure will only look for the one you inputted Fixed PGUP + PGDOWN did not return to the same track Now PGUP and PDDOWN skip the actual amount of tracks that are displayed Added track number to ipc msg sent by cm3s at track loading Now client also displays track number Added a configurable skip-printing-frames option in configure script this is to help solve the mysterious buzz bug Fixed backplay repeat loop bug, now playlist repeat works in backplaymode too Misc cleanups for unnecessary debug messages Fixed bug introduced with the NOP in the cm3s protocol Added b button to client to toggle playlist order Added a parser for the new feature added in cm3s protocol (BACKPLAY) Added a parser for BACKPLAY Added the ability of playing a playlist backwards (still haveto implement the ability to eventually recall last playlist order mode) Added parsing status pipe for any stray stuff not recognized, that is probably coming from player stderr. Also added flushing after plosing player so that ll the stuff written to status pipe can be parsed. Added configure capabilities. Changed the whole software to be used allways as a specific user (Makefile determined), root drops privileges to that user, while for the other users I used the set owner on execution bit. Internally the programs do set the uid,euid,gid,egid to the owner of the owner of the file (the set owner on execution bit plays a vital role in this); Added option to make cm3s go into background (-D) Added a loop that waits for commands even when finished plying a non repeat playlist. This avoids cm3s from exiting at end of non repeat playlist. Added capability of regenarating a directory playlist when a newer file is found on the directory tree This uses the # comment feature above to track how the saved playlist was generated. Added # comment to real playlists so that usefull comments can be written like playlist origin and random value Added a basic help for the 2 menu modes of the client Created a basic text client for cm3s from whitch you can: move around in current playlist set and unset repeat randomize playlist load any new playlist with an easy navigation tool Added a transparent historical playlist archival method so that when you load any playlist that has already being played you will start playback of list in same position and order (even if randomized) Added ipc msg sending so that client can tel what cm3s is doing Each time a message is written any previous unread messages are discarded so that if no client is reading them queue will not overflow. On the other hand when writing a client you are not forced to implement the msgreading stuff if you do not wnat to know what manager is doing. Added user request written on status pipe handler: //x; x<-9, x>9 skip x tracks "#E SKIP X" //0 track finished correctly or force finish track request arrived "@P 0" //1 if restart from begining of playlist request arrived "#E BEGIN" //2 if restart playlist of current file "#E RESTART" //3 if reload previous track request arrived "#E PREV" //4 if randomize playlist "#E RAND" //5 if repeat playback "#E REPEAT" //6 if load new playlist arrived "#L playlist" //7 if pause playback arrived "#E PAUSE" Added an option parser that reads options from command line at this time parameter increasing importance is: program defaults, command line Added loading last track being plaied if last playlist was saved Added loading last playlist saved if found if not then will play default mp3 direcdory Added save last playlist loaded Added case insensitive hit for .MP3 and NO_AUTOPLAY Added transparent directory loading (skipping any subdirectories named no_autoplay) Added restart from a given position to playback Added cicling ability to playback Added randomization at playlist loading Added playlist playback Started mpg123 in remote control mode reading from pipes also used extra params to have 1Mb play buffer quiet output and maximun auto recovery options on mp3 stream errors. at this time it is possible to sckip any playing sog by appending "@P 0" to the status pipe and quit by appending "QUIT" to cmd pipe. this way of quitting produces a broken pipe message as child closes pipes when father is not expecting that