MPG123 1.23.4 is now available in OKay's RPM repository since today. The mpg123 distribution contains a real time MPEG 1.0/2.0/2.5 audio player/decoder for layers 1,2 and 3 (most commonly MPEG 1.0 layer 3 aka MP3), as well as re-usable decoding and output libraries. Among others, it works on GNU/Linux, MacOSX, the BSDs, Solaris, AIX, HPUX, SGI Irix, OS/2 and Cygwin or plain MS Windows.
Some changes from older releases are:
- mpg123: Fix logic of prebuffering small bits for glitch-free start of playback. The logic as introduced in 1.23.0 actually introduced stuttering! The fix for this is really minimal and I urge everyone to at least include that one. It is the changeset of rev. 4041.
- Actually make OUT123_KEEP_PLAYING on by default, as documented.
- Fix buffer logic with regard to draining, use common device writing code to handle resuming from pause. This fixes sdl output with buffer, possibly other sfifo-based outputs like CoreAudio (those were poorly tested with buffer, as the combination is indeed unusual, see bug 230).
- Buffer pauses devices for prebuffering, to avoid underruns.
- More reliable playback with SDL, Portaudio and CoreAudio outputs. This includes FIFO draining on close to avoid dropping of the end. It should fix parts of bug 230.
- Fixed memory leaks with some outputs where a call to the deinit() function is necessary during available/working module checking.
- mpg123, out123: Use the default output flags to get OUT123_KEEP_PLAYING. Without this, there is a good chance to abort on SIGSTOP/CONT while playing. This is a regression from 1.22 .
- Build fixes (bugs 227 and 228) and some build system hackery. Gone are libc feature test macros in compat.h . This means always using our own strdup() implementation. Simpler than being bugged by feature test macros in strict compiler mode (when _DEFAULT_SOURCE is not defined).
- ./configure --enable-nagging does something also without --enable-debug, explictly triggers -std=c89, too (hence the above).
- Some fixup to make things work in pedantic C89 mode again. It really might be time to swich on some serious C99 for the next release, since there's a followup standard to _that_ which we can ignore now.
- Update list of renamed internal symbols to reduce conflicts during static linking of libmpg123 or libout123.
- Internal compatibility functions now handled via libtool convenience archives, avoiding the hackish code copies.
RPM's are available for Centos 6 and 7. And you can find it if you type yum search mpg123.
Enjoy!blog comments powered by Disqus