Changelog for lame: 3.100 -> 4.0 Source: ChangeLog - Generated from svn log entries (svn2cl) 2026-07-11 07:40 aleidinger * testcase.mp3: Prepare for release 2026-07-11 07:39 aleidinger * libmp3lame/version.h: Prepare for release 2026-07-11 07:36 aleidinger * doc/html/history.html, frontend/get_audio.c: get_audio: reject AIFF files with an undersized FORM chunk size A crafted AIFF/AIFC whose FORM chunk size is below 4 underflowed the unsigned chunk-size counter when the 4-byte form type is subtracted from it, wrapping it to roughly 4 billion and sending the chunk-scanning loop into an effectively unbounded spin - a denial of service triggerable with a tiny (~16-byte) malicious file. Validate the size before the subtraction. The remaining in-loop subtractions are already bounded by the surrounding "chunk size >= 8" loop guard, so the single entry check closes the hole. CVSS 5.5 (AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H). 2026-07-11 07:36 aleidinger * libmp3lame/util.c: util.c: document why fill_buffer_resample's offset assert is a sufficient guard The blackfilt[joff] table index in fill_buffer_resample() looks like it could run one slot past the precomputed window table when offset exceeds +0.5, guarded only by an assert that compiles out under NDEBUG. It cannot: offset is bounded to [-0.5, +0.5) by construction for integer sample rates, which are the only kind LAME ever sees, so joff always stays within blackfilt[0..2*bpc]. Record that reasoning next to the assert so the assert-only guard is not later mistaken for a missing runtime bounds check. 2026-07-11 07:35 aleidinger * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h, doc/html/history.html: Blade DLL: bounds-check beInitStream() config copy, fix packed layout beInitStream() copied the caller-supplied BE_CONFIG into a stack local using the caller-controlled dwStructSize as the length, with no check that it fits. A host that sets dwStructSize larger than the struct -- whether malicious or merely built with a different compiler -- overflows the stack. Clamp the copy to sizeof(lameConfig). The size mismatch was also reachable benignly: ATTRIBUTE_PACKED was attached to the pointer typedef, not the struct, so under GCC/MinGW the packed attribute was ignored and sizeof(BE_CONFIG) was 332 rather than the 331 the header intends and MSVC produces. Apply the existing pack(1)/pop pragma unconditionally so both compilers agree on 331. CVSS 8.4 (AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H). 2026-07-11 07:34 aleidinger * doc/html/history.html, include/libmp3lame.sym, libmp3lame/id3tag.c: id3tag: export the UTF-8 tag functions and guard against OOM Export id3tag_set_textinfo_utf8 and id3tag_set_comment_utf8 from the shared library, and fix a possible crash on out-of-memory in the ID3v2 user-defined tag setters. SF bug #518. 2026-07-11 07:30 aleidinger * doc/html/history.html, include/lame.h, libmp3lame/id3tag.c: id3tag: retype the UTF-8 text setters to char* to fix modern GCC/Clang builds Their text parameter was cloned from the UTF-16 siblings (unsigned short*), which recent GCC/Clang reject as an incompatible pointer type; char* matches the UTF-8 bytes the function bodies already handle, and also fixes the --id3v2-utf8 --tg genre corruption. Patch by Rudi Heitbaum, SF patch #102. Reported by lazka, SF bug #523. 2026-07-11 07:26 aleidinger * doc/html/history.html: history.html: switch entry colours to descriptive CSS classes, add security category Use descriptive CSS classes instead of direct per-entry colour references, and add a "security" category (class plus legend entry) ahead of the first security fix that will use it. 2026-07-10 18:28 aleidinger * ABOUT-NLS, ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, compile, config.h.in, config.rpath, configure, configure.ac, depcomp, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, install-sh, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, ltmain.sh, m4/build-to-host.m4, m4/gettext.m4, m4/host-cpu-c-abi.m4, m4/iconv.m4, m4/intlmacosx.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4, m4/libtool.m4, m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4, m4/nls.m4, m4/po.m4, m4/progtest.m4, mac/Makefile.in, misc/Makefile.in, missing, mpglib/Makefile.in, po, po/Makefile.in.in, po/Makevars.template, po/Rules-quot, po/boldquot.sed, po/en@boldquot.header, po/en@quot.header, po/insert-header.sed, po/quot.sed, po/remove-potcdate.sed, vc_solution/Makefile.in: update/regen with more recent autotools 2026-07-10 18:18 aleidinger * .gitignore, configure.ac, doc/Doxyfile.in, doc/Makefile.am, doc/doxygen, doc/doxygen/doxygen-awesome-css, doc/doxygen/doxygen-awesome-css/doxygen-awesome.css, doc/doxygen/lame-theme.css, doc/doxygen/logo, doc/doxygen/logo/lame_logo.svg, doc/doxygen/logo/lame_logo_full.svg, doc/doxygen/mainpage.md: Add Doxyfile: API documentation build configuration Sets up Doxygen-based API documentation for include/, libmp3lame/, and frontend/, generated on demand via a new "doxygen" target in doc/Makefile.am - not part of all/check, since there's no per-function documentation yet for it to build. - doc/Doxyfile.in is a template rather than a static Doxyfile. - Graphviz's dot is autodetected via configure, or specified explicitly with --with-dot=PATH; HAVE_DOT/DOT_PATH fall back cleanly to no diagrams when it isn't found. - doc/doxygen/mainpage.md is a purpose-written entry page (API entry points, license pointer) for the generated docs. - Vendored doxygen-awesome-css (MIT-licensed, https://github.com/jothepro/doxygen-awesome-css) with a color/font override (doc/doxygen/lame-theme.css) matching the lame.sf.net site's own palette. - Doxyfile comments mark the public (include/lame.h) vs. internal (everything else in libmp3lame/) surface split. 2026-07-10 18:17 aleidinger * configure.ac, doc/html/history.html, libmp3lame/VbrTag.c, libmp3lame/machine.h, libmp3lame/version.c, libmp3lame/version.h: Bump major version to 4.0 to fix LAME-tag encoder-version field overflow The LAME tag embedded in every encoded MP3 has a fixed 9-byte field for the encoder-version string ("LAME" + major + "." + minor + type-marker). Since 3.100, the 3-digit minor version left no room for the trailing alpha/beta/release marker character: strncpy(...,9) silently truncated it on every 3.100-3.102 build. The field's width and format can't change without breaking third-party decoders that parse it at a fixed offset and pattern-match its exact format, so the version numbers had to give instead. - libmp3lame/version.h, configure.ac: version bump (LIB_MAJOR_VERSION/ LIB_MINOR_VERSION, the shared-library ABI version, are untouched - the ABI hasn't changed) - libmp3lame/version.c: add a compile-time assertion tying the encoder- version string's actual length to the 9-byte budget, so a future version bump that reintroduces the overflow fails the build instead of silently truncating again; Doxygen documentation of the field's fixed width/format and the exact byte-budget formula - libmp3lame/VbrTag.c: matching documentation at the field's write site - libmp3lame/machine.h: fix compiletime_assert(), which the check above needed - ##-pasting doesn't expand __FILE__/__LINE__, so two uses in one translation unit collided on the same enum tag (dead code before this, zero call sites) - doc/html/history.html: user-facing changelog entry Verified: rebuilt with UCRT64 GCC; the assertion compiles clean at 4.0 and correctly fails against the original 3.102 numbers; spot-checked across major/minor digit-count combinations (10.0, 99.9, 9.99 pass; 10.89, 10.90, 100.0, 9.999 correctly fail) to confirm it checks the true combined string length rather than a fixed digit-count rule. 2026-07-09 13:13 aleidinger * configure.ac, libmp3lame/version.h: Welcome to 3.102 2026-07-09 12:14 aleidinger * ChangeLog: Update ChangeLog for 3.101 release. 2026-07-09 12:08 aleidinger * doc/html/history.html, libmp3lame/version.h, testcase.mp3: Prepare 3.101 release. 2023-12-18 13:41 aleidinger * frontend/get_audio.c: Use suitable typedef for Windows. 2023-12-18 13:40 aleidinger * frontend/main.h, frontend/parse.c: Use better return types and provide prototype for toUtf8(). 2023-12-15 12:07 aleidinger * frontend/parse.c, include/lame.def, include/lame.h, libmp3lame/id3tag.c: Fix UTF8 id3tag support. 2023-12-14 09:13 aleidinger Unbreak UTF8 genre tag. Text tags still broken. Disable UTF8 for now in the frontend. 2023-12-14 09:12 aleidinger * include/lame.def, include/lame.h, libmp3lame/id3tag.c: Unbreak UTF8 genre tag, text-tags still broken (wrong encoding). 2023-12-12 21:07 aleidinger * frontend/parse.c: Try to provide a toUtf8() function for Windows. Completely untested, based upon the assumption that Windows already uses UTF8. This assumption is based upon the function names of the Windows implementation of toUtf18() and toLatin1(). 2023-11-21 18:00 aleidinger * libmp3lame/version.h: increase beta patch-level after todays changes 2023-11-21 15:12 aleidinger * configure: regen 2023-11-21 15:12 aleidinger * config.h.in: regen 2023-11-21 15:12 aleidinger * configure.ac, doc/html/history.html, frontend/mp3rtp.c, frontend/rtp.c: Add IPv6 support for mp3rtp. This includes an incompatible change to the command line arguments for existing use cases / scripts. Submitted by: Surabhi Patch: #69 2023-11-21 15:06 aleidinger * doc/html/history.html: pkg-config support and some tab to spaces 2023-11-21 14:34 aleidinger * configure: regen 2023-11-21 14:33 aleidinger * configure.ac: fix variable name 2023-11-21 14:32 aleidinger * config.h.in: regen / modernize with newer autotools 2023-11-21 14:32 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in, vc_solution/Makefile.in: regen / modernize with newer autotools 2023-11-21 14:31 aleidinger * configure: regen / modernize with newer autotools 2023-11-21 14:31 aleidinger * aclocal.m4: regen / modernize with newer autotools 2023-11-21 14:30 aleidinger * configure.ac, configure.in: rename to current convention and modernize with newer autotools 2023-11-21 14:29 aleidinger * Makefile.am: modernize with newer autotools 2023-11-21 14:29 aleidinger * m4, m4/libtool.m4, m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: modernize with newer autotools 2023-11-21 14:29 aleidinger * compile, depcomp, missing: modernize with newer autotools 2023-11-21 14:28 aleidinger * install-sh, ltmain.sh: modernize with newer autotools 2023-11-21 14:27 aleidinger * libmp3lame/Makefile.am, libmp3lame/lame.pc.in: Add pkg-config support. Taken from: Nicolas Boulenguez https://salsa.debian.org/multimedia-team/lame/-/blob/master/debian/patches/pkg-config.patch Support Request: #42 2023-11-21 13:34 aleidinger * doc/html/history.html, doc/man/lame.1, frontend/parse.c, include/lame.def, include/lame.h, include/libmp3lame.sym, libmp3lame/id3tag.c, libmp3lame/id3tag.h: Add ID3v2.4 support (UTF-8) to libmp3lame. Submitted by: "kris" Patch: #99 The use in the frontend is by me and only slightly tested (simple --tt with umlauts). 2021-06-19 12:14 aleidinger * frontend/get_audio.c: Fix build on cygwin with configure options --disable-static --enable-shared --disable-decoder. Submitted by: Carlo Bramini Patch: #97 2021-06-19 12:05 aleidinger * libmp3lame/util.c: Fix build on FreeBSD riscv (replace compile time arch detection by feature detection). Patch by: arichardson of LLVM project. Submitted by: Robert Clausecker Patch: #96 2021-03-12 12:58 aleidinger * libmp3lame/version.h: bump to beta 2 2021-03-12 12:48 aleidinger * libmp3lame/vector/xmm_quantize_sub.c: Fix some issues with clang build. Obtained from: VLC Original commit log from mstorsjo: ---snip--- …GCC target("sse") Clang doesn't support the pragma, but does support the attribute. Update the existing patch to do things this way. With previous versions of lame, this hasn't been an issue, because if one doesn't pass any -march flag, clang defaults to pentium4 as target for i386 targets, and there both sse and sse2 are available by default. Since lame 3.100, lame now passes -march=i686 even for clang, which disables SSE by default, requiring the per-function enabling to actually work. ---snip--- 2021-03-12 12:39 aleidinger * INSTALL: Remove the part about NDEBUG, we use existing asserts as a quick and easy way to prevent bad input to cause issues. 2021-03-10 12:07 aleidinger * doc/html/history.html: Fix version of upcomming release. 2021-03-10 11:45 aleidinger * COPYING: Correct the address of the FSF. [bugs#420] 2021-03-10 11:37 aleidinger * frontend/lametime.c: Cygwin documents O_BINARY instead of _O_BINARY, see https://cygwin.com/cygwin-ug-net/using-textbinary.html This should fix [bugs#451] and [bugs#494]. 2021-03-10 11:25 aleidinger * configure: regen 2021-03-10 11:25 aleidinger * configure.in: Simplify (remove superflous). Suggested by: Thomas Orgis 2021-03-10 10:13 aleidinger * Makefile.in: regen 2021-03-10 10:12 aleidinger * configure: regen 2021-03-10 10:05 aleidinger * configure.in: Fix decoder/mpg123 logic. 2021-03-10 10:05 aleidinger * frontend/get_audio.c: Fix implicit declaration. 2021-03-10 10:03 aleidinger * Makefile.am: Remove superflous dependency. Submitted by: vemakereporter via [patches#84] 2021-03-09 13:12 aleidinger * ChangeLog: Add recent commits. 2021-03-09 12:01 aleidinger * libmp3lame/version.h: Update version to 3.101 beta 1. 2021-03-09 11:51 aleidinger * configure: regen 2021-03-09 11:51 aleidinger * config.h.in: regen 2021-03-09 11:50 aleidinger * configure.in: Remove reference to internal decoder. 2021-03-09 11:29 aleidinger * doc/html/history.html: Add recent changes. 2021-03-09 11:29 aleidinger * README: Document dependency on mpg123. 2021-03-09 11:27 aleidinger * mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.c, mpglib/dct64_i386.h, mpglib/decode_i386.c, mpglib/decode_i386.h, mpglib/huffman.h, mpglib/interface.c, mpglib/interface.h, mpglib/l2tables.h, mpglib/layer1.c, mpglib/layer1.h, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h, mpglib/mpg123.h, mpglib/tabinit.c, mpglib/tabinit.h: RIP mpglib 2021-03-09 11:26 aleidinger * Makefile.in, mpglib/Makefile.in: regen 2021-03-09 11:26 aleidinger * mpglib/mpglib.h: Replace mpeg decoder with external libmpg123 - step 2 Remove the internal mpglib. Submitted by: Michael Fink via [patches:#95] 2021-03-09 11:26 aleidinger * libmp3lame/mpglib_interface.c, mpglib/Makefile.am, mpglib/README: Replace mpeg decoder with external libmpg123 - step 2 Remove the internal mpglib. Submitted by: Michael Fink via [patches:#95] 2021-03-09 11:25 aleidinger * configure: regen 2021-03-09 11:24 aleidinger * configure.in: remove macosx xcode directory 2021-03-09 11:04 aleidinger * Makefile.am, macosx: Remove xcode project, nobody stepped up to adapt it for the libmpg123 changes. 2021-03-09 10:52 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, mpglib/Makefile.in, vc_solution/Makefile.in: regen 2021-03-09 10:52 aleidinger * configure: regen 2021-03-09 10:52 aleidinger * aclocal.m4: regen 2021-03-09 10:35 aleidinger - Remove cases which matches all previous cases, this was not intended. - In the clang case, do the same as for gcc, if someone provied CFLAGS on his own, do not add flags on our own. 2020-08-25 10:24 aleidinger * vc_solution/README.vs2019.txt, vc_solution/vs2019_lame.sln, vc_solution/vs2019_lame_config.props, vc_solution/vs2019_lame_lame.vcxproj, vc_solution/vs2019_libmp3lame.vcxproj, vc_solution/vs2019_libmp3lame_dll.vcxproj, vc_solution/vs2019_libmpg123_config.props, vc_solution/vs2019_libsndfile_config.props: Add 64-bit support. Submitted by: Michael Fink via [patches:#94] 2020-08-25 10:18 aleidinger * include/lame.def, include/libmp3lame.sym: Add hip_decode_init_gapless() to the linker exports. Submitted by: Michael Fink via [patches:#92] 2020-08-25 10:14 aleidinger * frontend/get_audio.c: Fix the "Could not close audio input file" message when decoding from mp3 or transcoding. The message only occurred on Win32 builds of lame.exe. Submitted by: Michael Fink via [patches:#93] 2020-08-19 14:06 aleidinger * ACM/acm.rc, Dll/BladeMP3EncDLL.c, LICENSE, Makefile.MSVC, debian/copyright, doc/man/lame.1, dshow/Property.rc, libmp3lame/id3tag.c, misc/abx.c: Fix the homepage of LAME. The old www.mp3dev.org is pointing to the sourceforge page. 2020-08-19 13:13 aleidinger * libmp3lame/i386/nasm.h: Fix nasm include file (UTF-8 BOM which nasm does't know about). Submitted by: KO Myung-Hun via [patches:#81] 2020-08-19 12:56 aleidinger * vc_solution/Makefile.am, vc_solution/Makefile.in, vc_solution/README.vs2019.txt, vc_solution/arch_nasm.vsprops, vc_solution/arch_sse2.vsprops, vc_solution/arch_x87.vsprops, vc_solution/vc9_lame.sln, vc_solution/vc9_lame_acm.vcproj, vc_solution/vc9_lame_acm_adbg.vcproj, vc_solution/vc9_lame_acm_tinyxml.vcproj, vc_solution/vc9_lame_clients.sln, vc_solution/vc9_lame_config.vsprops, vc_solution/vc9_lame_dll.vcproj, vc_solution/vc9_lame_dll_example.vcproj, vc_solution/vc9_lame_dshow.vcproj, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3rtp.vcproj, vc_solution/vc9_lame_mp3x.vcproj, vc_solution/vc9_lame_test.vcproj, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_mpglib.vcproj, vc_solution/vc9_nasm.rules, vc_solution/vs2019_arch_nasm.props, vc_solution/vs2019_arch_sse2.props, vc_solution/vs2019_arch_x87.props, vc_solution/vs2019_gtk_config.props, vc_solution/vs2019_lame.sln, vc_solution/vs2019_lame_acm.vcxproj, vc_solution/vs2019_lame_acm.vcxproj.filters, vc_solution/vs2019_lame_acm_adbg.vcxproj, vc_solution/vs2019_lame_acm_adbg.vcxproj.filters, vc_solution/vs2019_lame_acm_tinyxml.vcxproj, vc_solution/vs2019_lame_clients.sln, vc_solution/vs2019_lame_config.props, vc_solution/vs2019_lame_dshow.vcxproj, vc_solution/vs2019_lame_dshow.vcxproj.filters, vc_solution/vs2019_lame_enc_dll.vcxproj, vc_solution/vs2019_lame_enc_dll.vcxproj.filters, vc_solution/vs2019_lame_lame.vcxproj, vc_solution/vs2019_lame_lame.vcxproj.filters, vc_solution/vs2019_lame_mp3rtp.vcxproj, vc_solution/vs2019_lame_mp3rtp.vcxproj.filters, vc_solution/vs2019_lame_mp3x.vcxproj, vc_solution/vs2019_lame_mp3x.vcxproj.filters, vc_solution/vs2019_lame_test.vcxproj, vc_solution/vs2019_libmp3lame.vcxproj, vc_solution/vs2019_libmp3lame.vcxproj.filters, vc_solution/vs2019_libmp3lame_dll.vcxproj, vc_solution/vs2019_libmpg123_config.props, vc_solution/vs2019_libsndfile_config.props, vc_solution/vs2019_nasm.props, vc_solution/vs2019_nasm.targets, vc_solution/vs2019_nasm.xml, vc_solution/vs2019_win71sdk_config.props: - add files to build LAME with Visual Studio 2019 - remove the old project files for VC 9 - add a readme with a description about what you can do with the files Submitted by: Michael Fink via [patches:#91] 2020-08-19 12:45 aleidinger * frontend/get_audio.c: On Win32 compiles it can happen that lame.exe and libmp3lame.dll use different C++ runtimes, which maintail different FILE* lists, and fileno() would produce invalid file numbers for those msvcrt instances. So use mpg123_replace_reader_handle() / mpg123_open_handle() here instead of mpg123_open_fd(). Submitted by: Michael Fink via [patches:#90] 2020-08-19 12:36 aleidinger * libmp3lame/version.h: Change the URL of the LAME webpage to the canonical https location. Submitted by: Michael Fink via [patches:#89] 2020-08-19 12:29 aleidinger * ACM/ACM.cpp: An obsolete method TranslateURL() is called which is not strictly necessary. The patch is in the ACM module, which is the ancient Windows "Audio Codec Manager". Applying this patch is necessary before applying the Visual Studio 2019 project files patch. Submitted by: Michael Fink via [patches:#88] 2020-07-11 10:24 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, mpglib/Makefile.in, vc_solution/Makefile.in: Replace mpeg decoder with external libmpg123 - step 1/2 part 3/3 Step 1 is to allow to use external libmp123 (preferred) or interal mpglib to decode mpeg audio. Patch by Thomas Orgis , with some minor modifications to the autotools build by me. Part 3: Regenerate automake stuff. Step 2 would be to remove the internal mpglib. 2020-07-11 10:23 aleidinger * config.h.in, configure: Replace mpeg decoder with external libmpg123 - step 1/2 part 2/3 Step 1 is to allow to use external libmp123 (preferred) or interal mpglib to decode mpeg audio. Patch by Thomas Orgis , with some minor modifications to the autotools build by me. Part 2: regenerate autoconf stuff Step 2 would be to remove the internal mpglib. 2020-07-11 10:23 aleidinger * configure.in: Replace mpeg decoder with external libmpg123 - step 1/2 part 1/3 Step 1 is to allow to use external libmp123 (preferred) or interal mpglib to decode mpeg audio. Patch by Thomas Orgis , with some minor modifications to the autotools build by me. Part 1: commit the source files and the input files for the build. Step 2 would be to remove the internal mpglib. 2020-07-11 10:22 aleidinger * frontend/Makefile.am, frontend/get_audio.c, frontend/parse.c, include/lame.h, libmp3lame/Makefile.am, libmp3lame/mpglib_interface.c, libmp3lame/util.h, mpglib/Makefile.am, mpglib/common.h, mpglib/mpglib.h, mpglib/tabinit.c, mpglib/tabinit.h: Replace mpeg decoder with external libmpg123 - step 1/2 part 1/3 Step 1 is to allow to use external libmp123 (preferred) or interal mpglib to decode mpeg audio. Patch by Thomas Orgis , with some minor modifications to the autotools build by me. Part 1: commit the source files and the input files for the build. Step 2 would be to remove the internal mpglib. 2020-05-08 16:02 aleidinger * doc/html/history.html: Add recent changes. 2020-05-08 15:33 aleidinger * configure: regen 2020-05-08 15:32 aleidinger * configure.in: Disable Takehiros IEEE hack by default, add an option for not so modern CPU architectures to enable it. While I'm here, make some whitespace fixes in user visible parts of the --help option. 2020-05-07 07:51 aleidinger * libmp3lame/Makefile.in: regen 2020-05-07 07:51 aleidinger * libmp3lame/Makefile.am, libmp3lame/VbrTag.c, libmp3lame/VbrTagCrc.h: Faster CRC calculation by Robert Kausch from the fre:ac project (https://freac.org/developer-blog-mainmenu-9/14-freac/277-fastcrc). The gain here is small, but measurable. If you encode multiple independent streams at once and if there are not small (not just a few minutes of play time), you may notice a difference. 2020-05-06 13:17 aleidinger * include/libmp3lame.sym: Remove lame_init_old from symbols file. It is made static in lame.h and as such is not available as a symbold for export in libmp3lame. 2020-05-06 12:31 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, configure, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, mpglib/Makefile.in, vc_solution/Makefile.in: regen 2020-05-06 12:31 aleidinger * config.h.in: regen 2020-05-06 12:30 aleidinger * aclocal.m4: regen 2020-05-06 12:29 aleidinger * compile, config.guess, config.sub, depcomp, install-sh, missing: Update do recent autotools. 2020-05-06 12:08 aleidinger * configure.in: Fix case statements with character ranges. Autoconf is eating up the single '[' and ']'. Duplicating them escapes them. Reported as part of [bugs:#491]. While I'm here add gcc v10.* until v19.x to the gcc optimization parts. 2020-05-06 10:06 aleidinger * ChangeLog: Add 2 years of changes. 2019-07-23 12:20 robert * doc/html/history.html: udating history 2019-07-23 09:34 robert * ACM/ddk/msacmdrv.h: fix for tracker item #444 msacmdrv.h (structure packing alignment) 2019-07-23 09:18 robert * ACM/ACM.cpp, ACM/AEncodeProperties.cpp: fixed some uninitialzed variables 2019-07-19 13:27 robert * libmp3lame/quantize.c: bug fix for tracker item 501 Encoder: Assertion `eov->bitrate_index <= cfg->vbr_max_bitrate_index' failed When encoding a file in ABR mode, the resulting frame size could exceed the targeted amount of bits. This happens, when analog silence is detected and 'analog slince bits' is larger than 'target bits'. 2019-06-28 13:05 robert * doc/html/history.html, libmp3lame/lame.c: bug fix for tracker item #500 Buffer overflow in encoder 2019-01-10 23:25 robert * libmp3lame/vector/xmm_quantize_sub.c: bug tracker item #496: A critical bug in init_xrpow_core_sse 2018-04-06 19:40 robert * doc/html/history.html, frontend/console.c, frontend/console.h, frontend/timestatus.c, frontend/timestatus.h: - patch #82: Take advantage of terminal width on printing file names - some code refactorings 2018-04-05 23:31 robert * ACM/tinyxml/tinyxml.cpp, ACM/tinyxml/tinyxmlparser.cpp, Dll/Example.cpp, dshow/Encoder.cpp, dshow/Encoder.h, dshow/Mpegac.cpp, dshow/Mpegac.h, frontend/get_audio.c, frontend/get_audio.h, frontend/lame_main.c, frontend/main.c, frontend/main.h, frontend/parse.c, frontend/parse.h, frontend/rtp.c, libmp3lame/quantize.c, libmp3lame/reservoir.h, libmp3lame/set_get.c, libmp3lame/util.c, libmp3lame/util.h, misc/abx.c, misc/scalartest.c, test/lame_test.cpp: fixing some issues found by the cppcheck tool 2018-03-17 10:53 robert * configure.in, doc/html/history.html, frontend/main.c, frontend/parse.c, libmp3lame/i386/nasm.h, libmp3lame/version.h: patch #80 OS/2 patches, submitted by KO Myung-Hun 2018-01-23 20:05 robert * frontend/get_audio.c: Apple AIF format 'fl32' now possible to read, even without libsndfile 2017-10-25 16:12 rjamorim * doc/html/about.html, doc/html/abr.html, doc/html/cbr.html, doc/html/contact.html, doc/html/contributors.html, doc/html/detailed.html, doc/html/images/valid-html401.png, doc/html/index.html, doc/html/introduction.html, doc/html/list.html, doc/html/ms_stereo.html, doc/html/usage.html, doc/html/vbr.html: Comprehensive HTML formatting. Code now is much more readable 2017-10-25 16:02 rjamorim * doc/html/links.html: Minor fix 2017-10-25 15:59 rjamorim * doc/html/history.html: Fixed lots of formatting 2017-10-24 18:41 rjamorim * doc/html/styles/lame.css: Made the style more similar to the webpage's 2017-10-24 18:30 rjamorim * doc/html/history.html: Ooops. Missed one remote image in the history 2017-10-24 18:17 rjamorim * doc/html/links.html: Updated links information based on web site 2017-10-24 17:20 rjamorim * doc/html/about.html, doc/html/abr.html, doc/html/cbr.html, doc/html/contact.html, doc/html/contributors.html, doc/html/detailed.html, doc/html/images/sflogo.gif, doc/html/index.html, doc/html/introduction.html, doc/html/links.html, doc/html/list.html, doc/html/ms_stereo.html, doc/html/usage.html, doc/html/vbr.html: Replaced remote SF logo with local one. Because we care about privacy! 2017-10-23 19:50 robert * configure.in, frontend/parse.c: lame patches ticket #75: Fix for completing svn-r6410 submitted by Elio Blanca 2017-10-23 19:17 robert * doc/man/lame.1, frontend/get_audio.c: some changes in spelling, suggested by Fabian Greffrath 2017-10-14 15:41 robert * frontend/parse.c: bug tracker item #487: v3.100 breaks Windows compatibility the change is incomplete, we need to add 'HAVE_LANGINFO' to our autoconf magic 2017-10-14 14:17 aleidinger * ChangeLog: svn2cl does not include branches anymore, this is "current-branch only" now 2017-10-14 14:14 aleidinger * Makefile.in: regen 2017-10-14 14:12 aleidinger * ChangeLog.header, Makefile.am, doc/html/contact.html, doc/html/contributors.html, doc/html/links.html, make_changelog.sh: switch references from CVS to SVN 2017-10-13 20:39 aleidinger * doc/html/history.html: release date of lame 3.100 2017-10-13 20:27 aleidinger * ChangeLog, vc_solution/Makefile.in: update 2017-10-13 20:21 aleidinger * vc_solution/Makefile.am: list each file explicitely, make dist does not like globs. 2017-10-13 20:16 aleidinger * testcase.mp3: Update testcase for 3.100 release. Build on FreeBSD 64bit, clang 5.0.0, no advanced compiler flags/optimisations. 2017-10-10 19:31 aleidinger * ChangeLog: update 2017-09-26 12:25 robert * frontend/parse.c: forcing MS for j-stereo mode only 2017-09-26 12:14 robert * Dll/BladeMP3EncDLL.c, frontend/parse.c, libmp3lame/lame.c: forcing MS for j-stereo mode only 2017-09-26 10:31 robert * libmp3lame/lame.c: set 'use of safe joint' for joint-stereo only, (only effects a bit in vbr tag, sometimes) 2017-09-21 11:00 robert * libmp3lame/gain_analysis.c, libmp3lame/machine.h: + fix multiple_of macro 2017-09-19 16:58 robert * libmp3lame/version.h: release candidate 2017-09-19 16:57 robert * frontend/parse.c: patch for bug #484: Lame doesn't recognize user locale correctly 2017-09-06 19:40 aleidinger * ChangeLog: update 2017-09-06 19:38 aleidinger * libmp3lame/psymodel.c: Add missing (at least in FreeBSD) include for FLT_EPSILON. 2017-09-06 15:07 robert * frontend/get_audio.c, libmp3lame/fft.c, libmp3lame/gain_analysis.c, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, libmp3lame/set_get.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, mpglib/interface.c, mpglib/tabinit.c: small fixes 2017-08-31 14:14 robert * frontend/lame_main.c, include/lame.def, include/lame.h, include/libmp3lame.sym, libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/set_get.c: another go to fix bug #474: Buffer Overflow possible when input sample rate very low - do_copy_buffer did not check buffer size, when size was zero! 0 was a bad choice for the purpose of not checking, because it was possible to get there, even when checking was demeanded! 2017-08-30 20:48 robert * libmp3lame/lame.c: fix for bug #474: Buffer Overflow possible when input sample rate very low When the input sample rate is very low, like 1 Hz, resampling to 8 kHz can result in a buffer overflow. Found by Gustavo Grieco. 2017-08-30 14:11 robert * frontend/lame_main.c, frontend/parse.c, frontend/parse.h: fix for bug #473: Buffer Overflow possible in lame_main.c - replaced parse_nogap_filename by generateOutPath (now there is only one function building the output file names) - all nogap file names are now build before any encoding starts - decode and nogap are no valid combination of arguments anymore, wouldn't work as expected 2017-08-28 15:39 robert * libmp3lame/id3tag.c: fix for bug #472: NULL Pointer Dereference in id3v2AddAudioDuration - plus some more pointer checks 2017-08-28 12:48 robert * frontend/gtkanal.c: fixing resource leak, hip deocder wasn't closed on quit 2017-08-26 13:20 robert * libmp3lame/lame.c, libmp3lame/set_get.c: lame_init_params: - removed some impossible returns 2017-08-26 10:54 robert * libmp3lame/encoder.c: more of psy downgrade 2017-08-24 20:43 robert * frontend/mp3rtp.c: - free was called twice for some argument c-string 2017-08-23 13:22 robert * mpglib/interface.c, mpglib/layer1.c: hip layer 1 decode: testing for illegal bit allocation value 2017-08-22 23:31 robert * mpglib/layer2.c: fix for bug #470: global-buffer-overflow mpglib/layer2.c:144 II_step_one 2017-08-22 19:44 robert * libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/util.c: id3v2: set 'language'property to a valid language code (COMM field) 2017-08-22 16:02 robert * doc/html/history.html, frontend/get_audio.c, frontend/lame_main.c: fixing bug i#434: --clipdetect scale suggestion unaware of --scale input value 2017-08-21 17:10 robert * frontend/get_audio.c: fix for bug #469 Unable to build without mpglib 2017-08-20 20:06 robert * mpglib/layer3.c: It looks like 'intensity stereo' decoding is broken. This change prevents a buffer overflow (read) and instead prints an indication, that there is something wrong. 2017-08-20 13:56 robert * mpglib/layer3.c: fixing map for mixed-block band infos 2017-08-19 20:17 robert * mpglib/layer3.c: fix for #467: stack-buffer-overflow mpglib/layer3.c:945 III_dequantize_sample fix for #468 global-buffer-overflow mpglib/layer3.c:1244 III_i_stereo 2017-08-19 14:20 robert * mpglib/common.c: fix for bug #465: global-buffer-overflow layer2.c:144 II_step_one - mpeg-2.5 is only supported by Layer3 2017-08-19 12:51 aleidinger * ChangeLog: update 2017-08-18 22:06 robert * mpglib/layer3.c: fix for bug #466: "stack-buffer-overflow in ./mpglib/layer3.c:1264 III_i_stereo" 2017-08-18 21:56 robert * frontend/get_audio.c, frontend/lame_main.c: fix for bug #464: attempting double-free 2017-08-15 19:51 robert * libmp3lame/set_get.c: estimation of total number of frames changed 2017-08-15 15:40 aleidinger * make_changelog.sh: add comment how to generate the input file 2017-08-15 15:35 aleidinger * ChangeLog: update ChangeLog 2017-08-15 15:20 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, configure, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, mpglib/Makefile.in, vc_solution/Makefile.in: regenerate 2017-08-15 15:16 aleidinger * configure.in: Improve compiler version detection (clang changed version string). Add some future GCC versions in the optimisation part. 2017-08-15 15:15 aleidinger * include/lame.def: Add lame_encode_buffer_interleaved_int() by Michael Fink. LAME Patch #27. 2017-08-15 14:51 aleidinger * include/lame.h, include/libmp3lame.sym, libmp3lame/lame.c: patch #27: Add lame_encode_buffer_interleaved_int() by Michael Fink 2017-08-15 14:46 aleidinger * compile, config.sub, depcomp, frontend/depcomp, install-sh, libmp3lame/depcomp, misc/depcomp, missing, mpglib/depcomp: update to a more recent autotools version 2017-08-13 16:18 robert * libmp3lame/set_get.c: prevent some rare overflow in estimation of total number of frames in case samplerate-out is higher than samplerate-in (it is a visual glitch only) 2017-08-13 13:57 robert * doc/html/history.html, frontend/get_audio.c, libmp3lame/version.h: - sanity check when reading pcm data, avoid buffer overflow - version 3.100 beta 0 2017-08-12 18:56 robert * frontend/get_audio.c, frontend/lame_main.c, frontend/main.c, mpglib/common.c, mpglib/interface.c: - avoid calling exit in library - free up resources after error condition in frontend 2017-08-12 18:14 robert * mpglib/layer3.c: - workaround for heap corruption while decoding layer3 - some fix for mpeg2.5 decoding with mixed block feature, taken from Takehiro's branch 2017-08-08 17:52 robert * doc/man/lame.1: fix typo 2017-08-08 13:56 robert * doc/html/history.html, libmp3lame/vector/xmm_quantize_sub.c: Fix for bug ticket [ #449 ] Make sure functions with SSE instructions maintain their own properly aligned stack. Thanks to Fabian Greffrath 2017-08-08 13:26 robert * doc/html/history.html, mpglib/interface.c: Fix for bug ticket #445: dereference of a null pointer possible in loop. Thanks to Renu Tyagi 2017-08-08 12:40 robert * doc/html/history.html, frontend/lame_main.c: Fix for bug ticket #447: Fix dereference NULL and Buffer not NULL terminated issues. Thanks to Surabhi Mishra 2017-08-06 18:15 robert * frontend/get_audio.c, libmp3lame/VbrTag.c, libmp3lame/lame.c, libmp3lame/set_get.c, libmp3lame/util.h: in case of illegal sample rate and number of channel, let lame print an error message 2017-08-03 13:07 rjamorim * HACKING, INSTALL, LICENSE, README, README.WINGTK, TODO: Typos, formatting, grammar... 2017-08-03 13:06 rjamorim * ACM/lame.ico: Updated icon to the current LAME logo 2017-08-03 12:32 rjamorim * USAGE: Updated USAGE: fixed typos, formatting, some grammar 2017-08-02 19:56 robert * doc/html/history.html: - reverting psymodel to that of version 3.99.5 - changing version back to 3.99.5 to ease binary mp3 file comparisons with version 3.99.5 Committed on the Free edition of March Hare Software CVSNT Client. Upgrade to CVS Suite for more features and support: http://march-hare.com/cvsnt/ 2017-08-02 19:48 robert * libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/util.h, libmp3lame/version.h: - reverting psymodel to that of version 3.99.5 - changing version back to 3.99.5 to ease binary mp3 file comparisons with version 3.99.5 Committed on the Free edition of March Hare Software CVSNT Client. Upgrade to CVS Suite for more features and support: http://march-hare.com/cvsnt/ 2016-01-29 21:36 aleidinger * ChangeLog: update history 2016-01-29 21:09 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, compile, config.guess, config.h.in, config.sub, configure, depcomp, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, frontend/depcomp, include/Makefile.in, install-sh, libmp3lame/Makefile.in, libmp3lame/depcomp, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, ltmain.sh, mac/Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, misc/depcomp, missing, mpglib/Makefile.in, mpglib/depcomp, vc_solution/Makefile.in: regen 2016-01-29 21:06 aleidinger * Dll/Makefile.mingw32, HACKING, Makefile.MSVC, Makefile.am.global, Makefile.unix, configure.in, libmp3lame/Makefile.am: - better check for SSE intrinsics [1] - don't define NDEBUG in release builds -> asserts trigger segfaults even in release builds -> quick and user-unfriendly fix until user-fiendly error checks are implemented - fix spelling mistakes in HACKING file [2] - enable cross-compiling for mingw [3] - fix linker path for libmpelame for mingw [3] - fix out-of-source-tree builds [4] - update files to automake 1.15, autconf 2.69 - update compiler version detection (detect clang and add optimization for at least 3.7.x) Submitted by: dim@FreeBSD.org [1], FreeBSD PR 206620 tridecethtwelve@users.sf.net [2] LAME patch #68 bardware@users.sf.net [3] LAME patch #70 m-a@users.sf.net [4] LAmE patch #67 2015-05-11 07:01 rbrito * libmp3lame/lame.c: libmp3lame: Remove redundant check for invalid sample rates. Thanks Fabian Greffrath for letting me know that I screwed up. :) Signed-off-by: Rogério Brito 2015-04-28 22:12 rbrito * libmp3lame/lame.c: libmp3lame: Add check for negative number of channels. Thanks to Maks Naumov and Fabian Greffrath for the contribution. 2015-04-28 22:07 rbrito * libmp3lame/util.c: libmp3lame: Fix decision if sample rate ratio is an integer value or not. From Fabian Greffrath's original description: If the sample rate of the input file is sufficiently close to an integer multiple of the output sample rate, the value of the intratio variable is calculated incorrectly. This leads to further values being miscalculated up to the joff variable which is used as an index to dereference the esv->blackfilt array. This leads top an overflow and causes a segmentation fault. See https://bugs.debian.org/778529 for a discussion. 2015-04-28 22:03 rbrito * frontend/get_audio.c: frontend: Avoid division by zero. Avoid malformed wav causing floating point exception (integer divide by zero). Kindly contributed by Fabian Greffrath . See https://bugs.debian.org/777159 for a discussion. 2015-02-21 23:03 rbrito * test/lametest.py: test: lametest: Some more PEP-8 love. This is mostly regarding not having parentheses around boolean expressions. 2015-02-21 22:57 rbrito * test/lametest.py: test: lametest: Add some PEP-8 love. 2015-02-21 22:49 rbrito * test/lametest.py: test: lametest: Fix some trailing whitespace. 2015-02-21 22:35 rbrito * libmp3lame/lame.c: Add check for invalid input sample rate. Patch by Maks Naumov , forwared to me by Fabian Greffrath from the Debian packaging. Thanks for the contribution! 2014-10-01 17:54 jaz001 * doc/html/links.html: links update. 2014-01-28 14:48 robert * Makefile.MSVC, frontend/get_audio.c, frontend/main.c, libmp3lame/lame.c, libmp3lame/machine.h: some minor changes: - do not disable replaygain calc and find peak sample, when not writing LAME info header (patch tracker item #66) - remove deprecated linker option from Makefile.MSVC (bug tracker item #442) 2013-12-17 11:24 robert * frontend/get_audio.c, frontend/main.h, frontend/parse.c, libmp3lame/gain_analysis.c, libmp3lame/id3tag.h, libmp3lame/machine.h, libmp3lame/psymodel.c: applying submitted patches #64: fixes undefined references when compiling with mingw32 (send by Patrick) #59: changes static_assert into a more portable form (send by Doug Cook) #55: fixes issues with wave files >2GB (send by lvqcl) plus some minor changes to reduce compiler warnings with GCC v4.7.1 2013-12-08 19:49 jaz001 * LICENSE, USAGE, doc/html/detailed.html, doc/man/lame.1, frontend/parse.c: Documentation updates: -q setting rewording in all docs general updates in USAGE and man page. Small updates in the --help, --longhelp , and --preset help 2013-06-12 09:16 rbrito * aclocal.m4, configure.in, doc/html/Makefile.am, doc/man/Makefile.am, libmp3lame/i386/Makefile.am: Make autotools files compatible with automake >= 1.12 Newer autotools versions don't seem to support ansi2knr, which is probably not a problem, given the last decades of compilers accepting ANSI C (and the rest of the LAME code being written in ANSI C itself). This fixes ticket #60, with a patch of Brennan Shacklett, from the Gentoo community. 2013-06-12 09:06 rbrito * aclocal.m4, configure.in, doc/html/Makefile.am: Kill spurious trailing whitespace from some files. 2013-06-11 08:41 rbrito * frontend/brhist.c: frontend: brhist: Fix type of formatting string parameter. 2013-06-11 08:41 rbrito * frontend/get_audio.c: frontend: get_audio: Add missing formatting string parameter. 2013-06-11 08:19 rbrito * Dll/Example.cpp: Dll/Example.cpp: Remove (some) spurious whitespace. 2013-06-11 08:19 rbrito * Dll/Example.cpp: Dll/Example.cpp: Remove resource leaks in example code. 2013-06-11 07:26 rbrito * config.guess, config.sub: config.{sub,guess}: Update files to pick up newer arches. This closes ticket #406. Perhaps a better solution would be to rewrite part of our autotools system, but, then, perhaps not. 2013-06-11 06:46 rbrito * include/libmp3lame.sym: libmp3lame: Regenerate libmp3lame.sym from header file. Part of patch submitted by Reimar Döffinger on ticket #63. We should review this to check if there are any symbols that we don't want exported. 2013-06-11 06:45 rbrito * libmp3lame/Makefile.am: libmp3lame: Consider the symbols in libmp3lame.sym. This is part of the patch sent by Reimar Döffinger in ticket #63. 2013-03-20 20:41 robert * doc/html/history.html, frontend/timestatus.c: fix for tracker item 3608583: input file name displayed with wrong character encoding (windows) 2012-10-25 18:46 robert * doc/html/history.html, frontend/lame_main.c, frontend/main.c, frontend/parse.c: fix for tracker item 3580176: environment variable LAMEOPT doesn't work anymore 2012-10-13 14:10 robert * doc/html/history.html, frontend/parse.c: fix for tracker item 3544957: scale (empty) silent encode without warning switches with missing argument values will be ignored. (Those with integer or floating point values, at least) 2012-10-13 11:50 robert * doc/html/history.html, frontend/parse.c: fix for tracker item 3565659: no progress indication with pipe input :( 2012-10-13 10:36 robert * doc/html/history.html, frontend/parse.c: fix for tracker item 3567844: problem with Tag genre 2012-10-13 09:33 robert * doc/html/history.html, frontend/parse.c: fix for tracker item ID 3558466: Bug in path handling 2012-10-09 21:39 robert * libmp3lame/version.h: bump version 2012-10-09 21:37 robert * libmp3lame/psymodel.c, libmp3lame/util.h: trying to improve strong tonal samples (lead-voice.wav) 2012-10-09 21:35 robert ignore developer-only switches, but parse them for command line compatibility reasons 2012-10-06 15:54 robert * libmp3lame/psymodel.c: - code refactorings - changed "mask adding", get the max of 3 different ones 2012-10-06 11:44 robert * frontend/parse.c, libmp3lame/presets.c: + new command line option "--gain x", more convenient to adjust replay gain, just use whatever decibel value LAME reported before. + out-dir option mentioned in long help text 2012-07-19 20:57 robert * doc/html/history.html, frontend/get_audio.c, libmp3lame/version.h, mpglib/interface.c: Improved detection of MPEG audio data in RIFF WAVE files. see tracker item 3545112: Invalid sampling detection 2012-07-11 18:31 jaz001 * doc/html/detailed.html, doc/html/usage.html: Updates to reflect recent changes in hydrogenaudio wiki. 2012-06-19 00:15 rbrito * doc/html/history.html: Update the HTML changelog. 2012-06-19 00:00 rbrito * Makefile.am, configure.in: Don't use use the debian directory as build target. Include debian as extra directory instead of directory part of subdirectories used in build. Patch stolen from: http://anonscm.debian.org/gitweb/?p=pkg-multimedia/lame.git;a=tree;f=debian/patches 2012-06-18 20:52 rbrito * libmp3lame/i386/Makefile.am: libmp3lame: Fix possible race condition causing build failures. This was discovered in automated builds by the Debian project and the patch provided is by Andres Mejia . Please, note that only part of the patch (the one touching Makefile.am) was applied, since the changes in Makefile.in should be picked up when regenerating files with autotools. Signed-off-by: Rogério Brito 2012-06-18 20:51 rbrito * acinclude.m4: acinclude.m4: Include GTK-1 autoconf directives in build system. Resurrect knowledge of how to deal with GTK1. This was transplanted back from aclocal.m4 with a patch provided by Andres Mejia , from Debian's packaging of lame, even though the original code is attributed to Owen Taylor and dated 97-11-3. Anyway, with this part not lost again, we can easily regenerate autotools' files with a simple `autoconf -vfi` invocation. Signed-off-by: Rogério Brito 2012-06-18 20:48 rbrito * configure.in: configure.in: Rewrap for (human) legibility. This also helps by being diff-friendly if we change only one of the parts of a long line. Signed-off-by: Rogério Brito 2012-02-28 19:07 robert * doc/html/history.html: bug-fix release 3.99.5 2012-02-19 00:02 robert * libmp3lame/gain_analysis.c, libmp3lame/machine.h: rearranging gain analysis kernel table and calc loops to allow better code vectorization 2012-02-18 13:09 robert * frontend/get_audio.c, frontend/lame_main.c, frontend/main.c, frontend/parse.c, libmp3lame/mpglib_interface.c, mpglib/layer2.c: removing VC11 x86-64 compiler warnings 2012-02-14 14:24 robert * libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/psymodel.c, libmp3lame/util.c, libmp3lame/util.h: some code refactorings 2012-02-14 11:06 robert * ChangeLog, doc/html/history.html: updating history/changelog 2012-02-11 12:11 robert * frontend/get_audio.c: Bug fix for tracker item ID: 3486753 Artifacts at the beginning of decoded file 2012-02-11 12:10 robert * mpglib/layer3.c: some hidden global temporary variable removed, could have been some multi threading issue 2012-02-10 18:13 rbrito * config.h.in, configure.in: autotools: Fix compilation on alpha using proper ifdef guards. Thanks to Andres Mejia for the patch (with minor whitespace adjustments). 2012-02-10 18:11 rbrito * doc/html/history.html: doc: Correctly spell Fabian Greffrath's name to give proper credit. 2012-02-07 13:52 robert * configMS.h: reduce compiler warnings for SSE2 build with VC 11 2012-02-07 13:40 robert * configMS.h, libmp3lame/l3side.h, libmp3lame/machine.h, libmp3lame/quantize_pvt.c, libmp3lame/vbrquantize.c: - workaround for cygwin build problem - fix "fast floating point math" problem (possible bitrate bloat on quiet pieces) 2012-01-25 13:01 robert * ChangeLog, doc/html/history.html: updating Changelog and History 2012-01-19 12:15 robert fix for tracker item ID: 3475581 - lame crashes at .w64 input file 2012-01-08 23:50 robert * include/lame.h, libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/quantize_pvt.c, libmp3lame/util.c: Addressing things brought to attention by tracker item ID: 3463197: 3.99.x problem WFED and PCST frames + WFED and PCST frames can now be added, to tag podcasts iTunes recognizes + USER frames are now supported + COMM frames can now have a description, when passed via --tv "COMM==" - possible divide-by-zero exception should be fixed - adding malformed user-defined-frames could result in abnormal program termination, fixed 2011-12-04 12:35 robert * libmp3lame/lame.rc: re tracker ID: 3449748 Incomplete resource definition file A translation value seems to be mandatory by convention. 2011-11-26 18:26 robert * doc/html/history.html, libmp3lame/id3tag.c: bug fix for tracker item ID: 3441349: --tg does not handle genre number when adding unicode tag 2011-11-18 09:51 robert * doc/html/history.html, libmp3lame/VbrTag.c, libmp3lame/version.c: merge with 3.99 branch modifications 2011-11-10 18:46 robert * libmp3lame/version.c: small fix 2011-11-10 13:19 robert * frontend/get_audio.c, frontend/get_audio.h, frontend/lame_main.c: when transcoding, copy old id3v2 tag. feature requests: ID: 1985551 lame --pass-ID3-tags-unscathed ID: 977304 ID3 tags lost when transcoding 2011-11-09 00:15 robert * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c: aiming for a more balanced bit reservoir usage 2011-11-08 19:36 robert * libmp3lame/quantize_pvt.c: at lower sample rates, make a cut at last usable scalefactor band 2011-11-08 18:19 robert * libmp3lame/quantize.c: 8kHz mpeg2.5 uses fewer scale factor bands. 2011-11-06 18:34 robert * libmp3lame/encoder.c: use same meaning of PE in cbr and vbr modes 2011-11-05 17:53 robert * configure, configure.in, doc/html/history.html, libmp3lame/version.h: main-branch open for next development cycle 2011-11-05 16:32 robert * misc/Makefile.am, misc/Makefile.in: adding mk_mp3.sh to dist files 2011-11-02 00:20 robert * Makefile.MSVC, libmp3lame/machine.h: fixing vc6 compile problem, VC6 seems to miss exporting some inline functions from math.h. 2011-11-01 19:50 robert * libmp3lame/id3tag.c: oops, fixing writing unicode strings in id3tags 2011-11-01 16:59 robert * doc/html/history.html, frontend/parse.c, libmp3lame/id3tag.c: Fixes for several issues with ID3v2 unicode tags, using Big-Endian text encodings. Because of several other software (like Windows Media Player), LAME writes Little-Endian unicode tags only. Thanks to Taihei Monma, for reporting these issues. Tracker items: [ 3431203, 3431222, 3431241 ] 2011-10-18 21:54 robert * Dll/BladeMP3EncDLL.h: Fixing typedef HBE_STREAM, has to be a pointer type. 2011-10-18 21:51 robert * libmp3lame/lame.c, libmp3lame/util.c: Fixing a small display problem for x64 platform 2011-10-17 23:15 robert * libmp3lame/id3tag.c: bug fix: ID3 tags are always added 2011-10-16 13:09 robert * frontend/Makefile.am, frontend/Makefile.in: file rtp.h was missing in distribution list 2011-10-15 15:46 robert * doc/html/history.html: Updating history 2011-10-15 14:37 robert * ChangeLog: updating Changelog 2011-10-15 14:31 robert * debian/Makefile.am, debian/Makefile.in, doc/html/detailed.html, libmp3lame/version.h, testcase.mp3: preparing release 2011-10-15 12:38 robert * misc/mk_mp3.sh: updating script for building mp3 collection from lossless archive 2011-10-06 23:12 robert * ChangeLog: updating changelog 2011-10-06 23:07 robert * frontend/get_audio.c, frontend/parse.c: let iconv use transliteration 2011-10-04 15:37 robert * frontend/parse.c: fixing compiler warning 2011-10-04 11:42 robert * frontend/get_audio.c, frontend/lame_main.c, frontend/main.h, frontend/parse.c: using our input file reading functions when reading from stdin allow -s to overwrite input samplerate for non RAW input files too 2011-10-03 13:28 robert * doc/html/history.html, frontend/lame_main.c: fix for tracker item ID: 3034259 Fix for confusing fatal error: can't update LAME-tag frame! 2011-10-03 13:22 robert * frontend/parse.c, libmp3lame/id3tag.c: making sure, the id3v1 tags get filled 2011-10-02 21:45 robert * doc/html/history.html, frontend/get_audio.c: Bug fix for tracker item ID: 3368977 Wave Parser doesn't pad chunks 2011-10-02 18:39 robert * frontend/portableio.c, frontend/portableio.h: removing portableio.[ch] files, not needed anymore 2011-10-02 18:24 robert * frontend/parse.c, libmp3lame/id3tag.c: fixing some compiler warnings 2011-10-02 17:13 robert * Makefile.MSVC, Makefile.unix, frontend/Makefile.am, frontend/Makefile.in, frontend/get_audio.c, frontend/mp3rtp.c, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3rtp.vcproj, vc_solution/vc9_lame_mp3x.vcproj: replacing "portableio" by own code in get_audio.c 2011-10-02 14:52 robert * doc/html/detailed.html, doc/man/lame.1, frontend/main.c, frontend/main.h, frontend/parse.c, include/lame.def, include/lame.h, libmp3lame/id3tag.c: clearify, unicode tags are utf-16 2011-09-28 19:11 robert * doc/html/history.html, frontend/parse.c, libmp3lame/id3tag.c, vc_solution/vc9_lame.sln, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3rtp.vcproj, vc_solution/vc9_lame_mp3x.vcproj, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_mpglib.vcproj: bug fix for tracker item 3395813: id3tag_set_fieldvalue for URL link frames Broken now one can add URL link frames to the ID3v2 tag, like: --tv "WOAR=www.mypage.com" --tv "WXXX=get remixes here=www.dj.org" 2011-09-25 17:08 robert * libmp3lame/version.h: increasing patch level 2011-07-26 11:48 rbrito * frontend/parse.c: frontend: Update licensing message. Patch supplied by Andres Mejia according to previous discussions in the mailing lists `lame-dev` and `pkg-multimedia-maintainers`. http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/2011-July/020417.html 2011-06-17 06:22 aleidinger * Makefile.am.global: Remove ansi2knr part. It will be deprecated and subsequently removed from automake. Notified by: Stefano Lattarini 2011-05-24 20:45 robert * Makefile.unix, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c: small change in addition of simultaneous maskings 2011-05-24 20:40 robert * mpglib/layer2.c: workaround for tracker item 3301963:"assertion failed in layer 2 decoding" 2011-05-07 16:05 rbrito * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h, Dll/Example.cpp, README, debian/copyright, frontend/brhist.c, frontend/brhist.h, frontend/get_audio.c, frontend/get_audio.h, frontend/gpkplotting.c, frontend/gpkplotting.h, frontend/gtkanal.c, frontend/gtkanal.h, frontend/lame_main.c, frontend/lametime.c, frontend/lametime.h, frontend/main.c, frontend/main.h, frontend/mp3rtp.c, frontend/parse.c, frontend/rtp.c, frontend/rtp.h, frontend/timestatus.c, frontend/timestatus.h, include/lame.h, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/encoder.h, libmp3lame/fft.h, libmp3lame/id3tag.c, libmp3lame/l3side.h, libmp3lame/lame-analysis.h, libmp3lame/lame.c, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/newmdct.h, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/set_get.c, libmp3lame/set_get.h, libmp3lame/tables.c, libmp3lame/tables.h, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h, libmp3lame/vector/lame_intrin.h, libmp3lame/vector/xmm_quantize_sub.c, libmp3lame/version.c, libmp3lame/version.h, test/lame_test.cpp: Make explicit that the licence is the Library GPLv2. According to Jonas Smedegaard, there is no Lesser GPLv2, only Lesser GPLv2.1. Thanks to Andres. 2011-05-07 15:56 rbrito * frontend/parse.c: Fix some warnings in 64-bit arches. Changing s/size_t/unsigned int/ This should not be a problem with the variables in question, as they can't be much larger than what an unsigned int is able to hold. Patch from: http://git.debian.org/?p=pkg-multimedia/lame.git;a=blob;f=debian/patches/07-field-width-fix.patch Sent by Andres. 2011-05-07 15:44 rbrito * configure.in: Work round buggy softfloat optimization in ARM EABI compilers. A bug present in gcc-4.[123] up to 4.3.3 makes a buggy optimization for single-precision floats when -ffinite-math-only (enabled by -ffast-math) Refer to the following. https://sourceforge.net/tracker/index.php?func=detail&aid=2681646&group_id=290&atid=100290 https://trac.xiph.org/ticket/1526 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39501 Thanks to Andres Mejia. This fixes SF bug 2681646. 2011-05-07 15:35 rbrito * libmp3lame/i386/nasm.h: Disable executable patch. Patch from Russell Coker to disable executable stack from Christian Marillat's packaging. Sent by Andres Mejia. 2011-05-07 01:23 rbrito * README: Tweak slightly the disclaimer of patents from the README file. This change was proposed by me with suggestions made by Andres Mejia. 2011-05-06 20:14 rbrito * libmp3lame/lame.c: libmp3lame: lame: Put some parentheses to shut up some static analysis tools. The statement frames_left -= ((frame_num != gfc->ov_enc.frame_number) ? 1 : 0); could probably be written as frames_left -= (frame_num != gfc->ov_enc.frame_number); unless we know of some platform where a boolean evaluation does not result in a 1 in case of it being true. 2011-05-06 19:59 rbrito * README: Remove problematic restriction to the LGPL, to make it legally OK. Also update the copyright years of the LAME team. 2011-04-20 13:03 aleidinger * config.rpath: looks like this is needed now 2011-04-20 12:53 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, config.h.in, configure, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, mpglib/Makefile.in, vc_solution/Makefile.in: regen 2011-04-20 12:51 aleidinger * configure.in: - correct the VBR check message to something more correct (curses) - check for libiconv and use it in the frontend 2011-04-19 15:36 robert * doc/man/lame.1, frontend/parse.c: lame(1) manpage patch - ID: 3161674 Typo in --longhelp - ID: 3288886 replaced strnicmp, isn't portable 2011-04-15 20:17 robert * libmp3lame/lame.c: Bug fix: when aborting an encode before any samples were fed into the encoder, an assert was falsely triggered. 2011-04-14 20:48 robert * frontend/parse.c: Allow -Z switch in none alpha builds (for now) 2011-04-14 19:36 robert * doc/html/history.html, frontend/parse.c, libmp3lame/presets.c, libmp3lame/version.h: 3.99 beta phase 2011-04-08 23:50 robert * misc/mk_mp3.sh: mk_mp3.sh - script to encode and tag CDs 2011-04-08 22:55 robert * libmp3lame/psymodel.c: some code cleanup: unused vars, defines, etc. 2011-04-08 19:26 robert * frontend/lame_main.c, frontend/main.c, frontend/main.h: Unicode support for extra options passed via environment varialbe LAMEOPT 2011-04-07 23:03 robert quick fix for tracker item 3277412: Segmentation fault at layer2.c:105 with --decode (problem sample contains multiple ID3v2 tags) 2011-04-07 23:01 robert * libmp3lame/psymodel.c, libmp3lame/util.h: - some code cleanup - calculate short block thm from long blocks, in case we eventually may need it for pre-echo control of the next granule 2011-04-05 19:17 jaz001 * doc/html/detailed.html: corrected spelling. 2011-04-04 19:40 robert * libmp3lame/psymodel.c: small update for the pre-echo control 2011-04-04 11:49 aleidinger * ChangeLog: Update upto now. 2011-04-04 11:48 aleidinger * make_changelog.sh: Add the script to generate the changelog, not added to Makefile.am as it does not make sense to distribute it. I keep the "cvs log" output in '../log_output', the script expects it there. 2011-04-04 09:54 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, config.h.in, configure, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, mpglib/Makefile.in, vc_solution/Makefile.in: regen 2011-04-04 09:49 aleidinger * configure.in: - depend upon at least autoconf 2.68, this should fix the variable type size check in configure on Windows (mingw) - readd check for termcap lib (needed for brhist) - remove float8 (requested by Robert Hegemann) - my gcc moans about -march=generic not being supported (anymore), use 'native' instead of 'generic' in one place 2011-04-04 09:45 aleidinger * Makefile.am.global: Depend upon automake 1.11. 2011-04-04 09:42 aleidinger * libmp3lame/i386/Makefile.am: Create the directory in any case, seems to prevent a race condition. 2011-04-04 09:41 aleidinger * configMS.h: Remove superflous brhist define. 2011-04-04 09:40 aleidinger * INSTALL: Remove superflous explication about brhist switch. 2011-04-04 09:36 aleidinger * depcomp, frontend/depcomp, install-sh, libmp3lame/depcomp, ltmain.sh, misc/depcomp, missing, mpglib/depcomp: Update files from automake 1.11 and libtool 2.2.10. 2011-04-03 22:26 robert * libmp3lame/psymodel.c, libmp3lame/version.h: pre-echo control for short blocks is dependent on previous frame. maybe we can relax it later, to speed-up things again. 2011-03-25 19:57 robert * frontend/parse.c: dropping note about mpglib being GPL, because we use HIP for decoding. 2011-03-24 20:19 robert * doc/html/detailed.html, doc/man/lame.1, frontend/parse.c, libmp3lame/id3tag.c: new switches controlling the string encoding mode for ID3v2 tags: --id3v2-latin1 turns on ID3v2 tags, text encoding ISO-8859-1 --id3v2-ucs2 turns on ID3v2 only tags, text encoding UCS-2 Similar experimental switches removed. 2011-03-24 10:25 robert * doc/html/history.html: fixing glitch in Joseph's name 2011-03-24 10:21 robert * doc/html/history.html: updating history with info about latest changes 2011-03-22 20:35 robert * ChangeLog, libmp3lame/version.h: updating ChangeLog 2011-03-05 20:05 robert * libmp3lame/presets.c, libmp3lame/quantize_pvt.c: adapting some parameters for vbr-old/cbr/abr, because of the now used psy model 2011-03-05 18:54 robert * libmp3lame/encoder.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c: now all modes use the same (latest) psy model code cleanup 2011-03-05 14:06 robert * mpglib/layer3.c: fix for a possible out of bounds array access re ID: 3091776 crash at III_dequantize_sample This bug may be fixed now, don't have original problem sample to be sure. 2011-03-02 16:56 rbrito * debian/changelog: debian: Update changelog. 2011-03-02 16:56 rbrito * debian/changelog: Put my SF email or we get warnings from lintian. 2011-03-02 16:54 rbrito * debian/control: Verified that the packaging conforms to the Policy version 3.9.1 2011-03-02 16:54 rbrito * debian/control: Verified that the packaging conforms to the Policy version 3.9.0 2011-03-02 16:54 rbrito * debian/control: Remove unused Conflicts: and Replaces: fields. They were never part of any stable release and 3rd party sites were, perhaps, faster than us in providing changed packages (when the packaging was not up-to-date). 2011-03-02 16:53 rbrito * debian/control: Verified that the packaging conforms to the Policy version 3.8.4 2011-03-02 16:53 rbrito * debian/control: Verified that the packaging conforms to the Policy version 3.8.3 2011-03-02 16:52 rbrito * debian/control: Verified that the packaging conforms to the Policy version 3.8.2 2011-03-02 16:52 rbrito * debian/control: Verified that the packaging conforms to the Policy version 3.8.1.0 2011-03-02 16:52 rbrito * debian/control: Fix lintian's debhelper-but-no-misc-depends from the binary packages. 2011-03-02 16:51 rbrito * debian/changelog: Update debian/changelog. 2011-03-02 16:50 rbrito * debian/control: debian/control: Change B-D on nasm to allow any i386 platform (no amd64, though). 2011-03-02 16:50 rbrito * debian/control: debian/control: Rewrap the Build-Depends field for legibility. This also buys us some diff-friendliness. 2011-03-02 16:48 rbrito * debian/changelog, debian/rules: debian: Transition to the debhelper 7 format. This format is easier to manage and other people should find it easy to adapt to downstream necessities. 2011-03-01 00:34 robert * libmp3lame/lame.c, libmp3lame/vbrquantize.c, testcase.mp3: - new VBR: mpeg2.5 at 8 kHz doesn't use some scalefactor bands 2011-02-27 21:08 robert * libmp3lame/lame.c: small update for q_map 2011-02-27 01:52 robert * libmp3lame/lame.c, libmp3lame/presets.c: last patch made manual lowpass setting impossable (for VBR) 2011-02-27 00:52 robert * Makefile.unix, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/version.h: make use of resampling at lower VBR quality levels 2011-02-22 19:00 robert * libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/version.h: Starting to use newer VBR psy-model for CBR and ABR encoding too bug tracker ID: 3187397 - Strange compression behavior 2011-02-22 17:58 robert * libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, libmp3lame/version.c: some code cleanup 2011-02-13 22:54 rbrito * frontend/brhist.c: frontend: remove unused variable and computation from brhist.c 2011-02-13 16:36 robert * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/version.h: make vbr_mt the default vbr mode 2011-02-13 13:50 robert * frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/set_get.c: new mono encoding switches: -ml encodes left channel only -mr encodes right channel only 2011-02-12 16:16 robert * frontend/main.h, libmp3lame/presets.c, libmp3lame/vbrquantize.c: small fixes for compiler warnings (vbrquantize.c) bug fix, out of bounds memory write 2011-02-11 20:17 robert * libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/vbrquantize.c, libmp3lame/version.h: - reintroduction of fast encoding mode (-q7 / -f) (vbr_mt / vbr_mtrh) - minor fix for sfb21 encoding (vbr_mt / vbr_mrth) - small tunings 2010-12-08 15:28 robert * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: fixing some compile issues when compiling as C++ code bug tracker ID: 3125235: make -f Makefile.mingw32 fails 2010-12-05 12:25 robert * Dll/BladeMP3EncDLL.c: fixing some compile issues when compiling as C++ code bug tracker ID: 3125235: make -f Makefile.mingw32 fails 2010-12-04 20:43 jaz001 * doc/html/detailed.html: spelling and better description on -b, -F and -t settings 2010-12-04 13:30 robert * libmp3lame/gain_analysis.h: fixing some compile issues with strict compiler settings. bug tracker ID: 3025801: gain_analysis.h needs int constants 2010-12-04 12:55 robert * Dll/BladeMP3EncDLL.c: fixing some compile issues with strict compiler settings. bug tracker ID: 3125235: make -f Makefile.mingw32 fails 2010-12-03 19:46 jaz001 * doc/html/about.html: fixed listening tests URL. 2010-11-21 20:45 jaz001 * doc/html/detailed.html, doc/html/usage.html: yet more small detail changes. 2010-11-21 20:31 jaz001 * doc/html/detailed.html: more details about the q switch and the vbr-new/old some formating changes 2010-11-21 20:07 jaz001 * doc/html/abr.html, doc/html/cbr.html, doc/html/detailed.html, doc/html/usage.html: updates/fixes to the documentation. 2010-10-30 13:21 robert * Dll/LameDll_vc8.vcproj, Dll/Makefile.am, Dll/Makefile.in, Makefile.am, Makefile.in, frontend/Makefile.am, frontend/Makefile.in, frontend/lame_vc8.vcproj, frontend/mp3x_vc8.vcproj, lame_vc8.sln, libmp3lame/Makefile.am, libmp3lame/Makefile.in, libmp3lame/libmp3lame_vc8.vcproj, mpglib/Makefile.am, mpglib/Makefile.in, mpglib/mpglib_vc8.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj: VC8 no more 2010-09-30 20:58 jaz001 * doc/html/Makefile.am, doc/html/Makefile.in: fixed the erroneous naming of files. (fixes: 3078255) 2010-08-17 23:39 rbrito * README: Put a notice that Mark Taylor is not the current maintainer, but The LAME team is. 2010-08-17 23:36 rbrito * README: Update the URL to point to the Sourceforge webpage. 2010-08-17 23:35 rbrito * README: Update the date of the README file. 2010-08-17 23:34 rbrito * README: Cosmetic: delete trailing whitespaces. 2010-08-17 23:32 rbrito * README: Remove duplicate copyright entry for Mark Taylor. 2010-08-17 23:32 rbrito * README: Update copyright years of the LAME Project. 2010-07-09 18:59 jaz001 * doc/html/basic.html, doc/html/examples.html, doc/html/id3.html, doc/html/lame.css, doc/html/modes.html, doc/html/node6.html, doc/html/switchs.html: delete old documentation 2010-07-09 18:58 jaz001 * doc/html/detailed.html: added anchors to the descriptions, so that one can link to them with an URL. Corrected a few errors. 2010-06-11 17:44 jaz001 * doc/html/Makefile.am, doc/html/about.html, doc/html/abr.html, doc/html/cbr.html, doc/html/contact.html, doc/html/contributors.html, doc/html/detailed.html, doc/html/images, doc/html/images/logo.gif, doc/html/images/valid-css.png, doc/html/images/valid-xhtml10.png, doc/html/index.html, doc/html/introduction.html, doc/html/links.html, doc/html/list.html, doc/html/ms_stereo.html, doc/html/styles, doc/html/styles/lame.css, doc/html/usage.html, doc/html/vbr.html: Initial commit of the new documentation. Makefile.in should be regenerated. 2010-06-07 00:18 robert * libmp3lame/presets.c, libmp3lame/psymodel.c: something to try later 2010-06-06 19:20 robert * frontend/rtp.c: fix compile problem on Linux system 2010-06-06 01:04 robert * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/set_get.c, libmp3lame/util.h, libmp3lame/version.h: some further tweaking of vbr new 2010-06-01 21:55 robert * libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.h, libmp3lame/version.h: more tuning on vbr_mt 2010-06-01 18:51 robert * libmp3lame/bitstream.c, libmp3lame/lame.c: changing default buffer constraint for vbr_mt 2010-06-01 16:21 robert * libmp3lame/lame.c: fixing some compiler warnings 2010-06-01 15:59 robert * frontend/get_audio.c, frontend/get_audio.h, frontend/lametime.c, frontend/lametime.h, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/version.h: some work on VBR scale tuning, accessible with --vbr-new 2010-05-02 20:29 robert * frontend/get_audio.c, frontend/get_audio.h, frontend/gtkanal.c, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/util.c, libmp3lame/version.h: work-in-progress: VBR scale tuning 2010-04-29 00:29 robert * frontend/parse.c, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.h, libmp3lame/version.h: some work on VBR scale tuning, accessible with --vbr-new 2010-04-15 10:44 robert * libmp3lame/VbrTag.c, libmp3lame/lame.c, libmp3lame/util.h: - calculate input transform matrix once on initialization - calculate clip detect even when scaling was set; else one doesn't notice that clipping still might happen. 2010-04-14 09:38 robert * libmp3lame/i386/Makefile.in: Bug fix for tracker item ID: 2986823: Error when building Lame with NASM support -still exists 2010-04-11 15:46 robert * Makefile.MSVC, libmp3lame/lame.rc, libmp3lame/set_get.h: adding version/icon resource to VC6 binary builds 2010-04-11 13:07 robert * include/lame.def, include/lame.h, libmp3lame/lame.c: add encoding functions passing double precision pcm values ( +/- 1 fulll scale) 2010-04-09 21:51 robert * doc/html/switchs.html, doc/man/lame.1, frontend/get_audio.c, frontend/main.h, frontend/parse.c: - unicode filenames now working with libsndfile on MS-Windows - presets use the default VBR engine, no need for extra parameter "fast" 2010-04-08 11:07 robert * frontend/get_audio.c, frontend/get_audio.h, frontend/lame_main.c, frontend/mp3rtp.c, frontend/mp3x.c, frontend/parse.c, libmp3lame/id3tag.c, libmp3lame/version.h: enabling to read OGG Vorbis files via libsndfile 2010-04-06 11:13 robert * frontend/get_audio.h, frontend/lame_main.c, frontend/parse.c, include/lame.def, include/lame.h, libmp3lame/id3tag.c, libmp3lame/lame.c: - preparing to use ieee float [-1,+1] as internal pcm sample representation in LAME frontend - removing id3v2 picture size limit - fixing id3v2 TXXX frame storage 2010-03-23 11:22 robert * include/lame.h: small typo 2010-03-22 23:12 robert * libmp3lame/quantize.c, libmp3lame/version.h: vbrnew: pad frame to build up bitrservoir 2010-03-22 20:28 robert * doc/html/history.html: updating latest changes 2010-03-22 20:20 robert * doc/html/history.html: updating latest changes 2010-03-22 19:44 robert * vc_solution/vc9_mpglib.vcproj: adding header file to project 2010-03-22 14:44 robert * mpglib/AUTHORS, mpglib/README: update licence information/header in decoder files 2010-03-22 14:32 robert * LICENSE, mpglib/Makefile.am, mpglib/Makefile.in, mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.c, mpglib/dct64_i386.h, mpglib/decode_i386.c, mpglib/decode_i386.h, mpglib/huffman.h, mpglib/interface.c, mpglib/interface.h, mpglib/l2tables.h, mpglib/layer1.c, mpglib/layer1.h, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h, mpglib/mpg123.h, mpglib/mpglib.h, mpglib/tabinit.c, mpglib/tabinit.h: update licence information/header in decoder files 2010-03-21 22:22 robert * frontend/parse.c, libmp3lame/set_get.c, mpglib/common.c, mpglib/layer3.c: minor changes 2010-03-21 22:18 robert * libmp3lame/reservoir.c: Bug fix for tracker item ID: 2973877: A problem regarding the new drain code 2010-03-15 01:32 robert * frontend/gtkanal.c, vc_solution/vc9_lame.sln, vc_solution/vc9_lame_mp3x.vcproj: it makes no sense, to link mp3x against libmp3lame.dll, because of strong dependencies between them. (pinfo struct) 2010-03-15 01:07 robert * frontend/parse.c, include/lame.def, include/lame.h, libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/tables.c, libmp3lame/tables.h, libmp3lame/util.c: access functions for bitrate and samplerate tables. exporting of global vars doesn't work well with DLLs. 2010-03-14 22:47 robert * frontend/get_audio.c, frontend/lame_main.c, frontend/main.c, frontend/main.h, frontend/parse.c, frontend/timestatus.c, libmp3lame/set_get.h, vc_solution/vc9_lame.sln: some code refactorings 2010-03-14 19:48 robert * frontend/timestatus.c, libmp3lame/lame.rc, vc_solution/vc9_lame_mp3x.vcproj: adding resource file containing version and program icon to MP3x project 2010-03-14 17:23 robert * Makefile.MSVC, Makefile.unix, configure.in, frontend/Makefile.am, frontend/Makefile.in, frontend/brhist.c, frontend/lame_main.c, frontend/timestatus.c, include/Makefile.am, include/libmp3lame.sym, vc_solution/Makefile.am: BRHIST is mandatory Layer1 and Layer2 decoding is mandatory adding libmp3lame.sym file, to use with libtool, declares exported symbols 2010-03-14 16:15 robert * frontend/mp3rtp.c, libmp3lame/set_get.c: fixing some compiler warnings 2010-03-14 15:39 robert * frontend/main.c, frontend/timestatus.c, libmp3lame/encoder.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/set_get.c, libmp3lame/util.h, testcase.mp3: trying to get rid of remaining GCC compiler warnings 2010-03-13 21:10 robert * Makefile.MSVC: additional target mp3rtp 2010-03-13 20:45 robert * Makefile.MSVC, Makefile.unix, frontend/Makefile.am, frontend/Makefile.in, frontend/lame_main.c, frontend/lame_vc8.vcproj, frontend/main.c, frontend/mp3rtp.c, frontend/mp3x.c, frontend/mp3x_vc8.vcproj, vc_solution/vc9_lame.sln, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3rtp.vcproj, vc_solution/vc9_lame_mp3x.vcproj: main.c is now entry point for all frontend programs similar to mp3x and mp3rtp, there is now lame_main.c for lame 2010-03-13 01:49 robert * doc/html/history.html: support for WAVE_FORMAT_IEEE_FLOAT 2010-03-13 01:17 robert * frontend/get_audio.c: support for WAVE_FORMAT_IEEE_FLOAT (for reading via libsndfile) 2010-03-12 14:00 robert * frontend/get_audio.c: support for WAVE_FORMAT_IEEE_FLOAT (for reading) 2010-03-11 00:59 robert * frontend/console.c, frontend/get_audio.c, frontend/main.c, frontend/main.h, frontend/mp3rtp.c, frontend/parse.c, frontend/rtp.c, frontend/timestatus.c, include/lame.def, include/lame.h, libmp3lame/id3tag.h: experimental unicode support on Windows OS 2010-03-10 01:41 robert * frontend/main.c, frontend/timestatus.c: Starting with Unicode support for LAME on Windows 2010-03-10 00:43 robert * frontend/timestatus.c: small fix for time status display during encoding 2010-03-10 00:35 robert * frontend/get_audio.c, frontend/main.c, frontend/timestatus.c, frontend/timestatus.h: display of estimated number of frames should be more accurate now, even when re-encoding mp3->mp3 2010-03-09 00:03 robert * libmp3lame/set_get.c: calculation of totalframes more in line with current enc-delay+padding 2010-03-08 00:17 robert * frontend/get_audio.c, frontend/main.c, frontend/timestatus.c, libmp3lame/bitstream.c, libmp3lame/util.h: - reducing some warnings - lame_get_totalframes still returns wrong estimate when re-encoding 2010-03-07 21:14 robert * frontend/get_audio.c, frontend/get_audio.h, frontend/main.c, frontend/mp3rtp.c, frontend/mp3x.c, frontend/timestatus.c: some more code refactoring to clean up encoder/decoder loops 2010-03-06 21:34 robert * doc/html/history.html, frontend/get_audio.c, frontend/main.c: Bug fix for tracker item ID: 2962223: Encoder delay and padding values ignored when transcoding 2010-03-06 02:15 robert * frontend/get_audio.c, frontend/get_audio.h, frontend/main.c, frontend/parse.c: some code refactorings 2010-03-05 02:01 robert * doc/html/history.html: updating history text 2010-03-04 21:37 robert * frontend/rtp.c: cleanup some pre-processor code 2010-03-04 20:03 robert * frontend/rtp.c: more work on mp3rtp 2010-03-04 19:42 robert * frontend/mp3rtp.c, frontend/rtp.c, frontend/rtp.h: more work on mp3rtp should compile with VC9 and GCC now 2010-03-04 16:38 robert * frontend/mp3rtp.c, frontend/rtp.c, frontend/rtp.h, include/lame.def, vc_solution/vc9_lame.sln, vc_solution/vc9_lame_mp3rtp.vcproj: mp3rtp compiles with VC9 now 2010-03-04 09:32 robert * vc_solution/vc9_lame_mp3rtp.vcproj: adding mp3rtp project to VC solution 2010-03-04 09:23 robert * vc_solution/vc9_lame.sln: adding mp3rtp project to VC solution 2010-03-03 00:32 robert * mpglib/layer3.c, mpglib/mpglib.h: Eliminated some remaining global variable in layer3 decoder code. 2010-03-02 01:21 robert * frontend/brhist.h, frontend/console.h, frontend/get_audio.c, frontend/gtkanal.c, frontend/lametime.h, frontend/main.c, frontend/main.h, frontend/mp3rtp.c, frontend/parse.c, frontend/parse.h, frontend/portableio.h, frontend/timestatus.c, frontend/timestatus.h: some code refactoring 2010-02-28 17:22 robert * ChangeLog: updating Changelog 2010-02-28 16:52 robert * libmp3lame/bitstream.c: For free format mp3 above 320 kbps, the maximum allowed bits was limited too far. 2010-02-27 03:18 robert * doc/html/history.html: updating history text 2010-02-26 00:55 robert * libmp3lame/i386/Makefile.am: Tracker item ID: 2807676: Error when building Lame with NASM support Patch reported by Bernhard Doebler. 2010-02-20 21:19 robert * test/lame_test.cpp, vc_solution/vc9_lame_clients.sln, vc_solution/vc9_lame_test.vcproj: adding some small LAME test project. 2010-02-20 21:08 robert * libmp3lame/lame.c: Bug fix for tracker ID: 2824296 wrong enc_padding value in LAME 3.99a & 3.98.3 (from CVS) 2010-02-20 21:01 robert * libmp3lame/VbrTag.c: Bug fix for tracker ID: 2872590 LameTAG: "Music length" missmatch in Lame3.98 2010-02-19 00:46 robert * libmp3lame/id3tag.c: Bug fix for tracker ID: 2887359 Wrong length in ID3v2 tag when num_samples isn't set 2010-02-19 00:30 robert * Dll/BladeMP3EncDLL.c: Bug fix for tracker ID: 2893101 Access Violation in BladeMP3EncDLL if UNICODE was defined. 2010-02-19 00:05 robert * doc/man/lame.1: Bug fix for tracker ID: 2928684 Error in man page about "fast insane" 2010-02-13 23:21 robert * frontend/brhist.c, frontend/console.h, frontend/get_audio.c, frontend/parse.c, frontend/timestatus.c, include/lame.h, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/lame.c, libmp3lame/reservoir.c, libmp3lame/version.h: Revisiting the FhG decoder problem (FhG V1.5 build 50, ships with MS Windows): enabling the new drain code seems to solve that issue better, than restricting the buffer size. 2010-02-06 23:01 robert * frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/reservoir.c, libmp3lame/set_get.c, libmp3lame/util.h: added new switch for control buffer constraint 2009-12-12 15:28 robert * frontend/console.c: increasing size of term_buff array, it might have become too small by now 2009-12-11 23:19 robert * libmp3lame/util.c: small issue,: if-def out hip functions, when not using decode-on-the-fly 2009-12-11 22:30 robert * frontend/parse.c: Tracker ID: 2891879 Because of Windows API change, there was a problem with prority switch. Should work again. 2009-11-22 22:29 rbrito * debian/rules: Enable the frontend to be dynamically linked to libmp3lame. 2009-11-22 22:09 rbrito * debian/lame.doc-base: Fix correct section of doc-base. 2009-11-22 21:27 rbrito * debian/changelog: Consolidate changelog entries. 2009-11-22 21:18 rbrito * debian/source, debian/source/format: Part of migration to new format (3.0 quilt) of Debian packages. 2009-09-17 06:42 rbrito * debian/lame.doc-base: Update the section field. 2009-09-17 05:54 rbrito * debian/lame.doc-base: Include Debian's doc-base configuration. 2009-05-16 10:20 rbrito * debian/rules: Revert cleaning of files in the debian/rules file. 2009-05-16 10:19 rbrito * debian/Makefile.am, debian/rules: Update the list of files in Makefile.am 2009-05-15 23:09 robert * mpglib/interface.c, mpglib/layer1.c, mpglib/layer1.h, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h: trying to handle the case, when audio data exceeds frame size 2009-05-15 23:05 robert * libmp3lame/bitstream.c, libmp3lame/lame.c: starting to demangle bitstream buffer handling from postprocessing features like "clip detect" and "replaygain". 2009-05-10 22:08 jwflynn1 * dshow/Mpegac.h: minor correction 2009-05-10 22:06 jwflynn1 * dshow/Mpegac.cpp: Allocator buffer count on the output pin had been hardcoded to 1. This was changed so that it will now attempt to use the buffer count suggested by the downstream filter or default to 1 if none is specified. 2009-05-02 13:45 rbrito * debian/lame.files, debian/libmp3lame0-dev.docs, debian/libmp3lame0-dev.files, debian/libmp3lame0.files: Remove obsolete files. We need to fix the auto* files to use the new files. 2009-05-02 13:44 rbrito * debian/changelog, debian/compat, debian/control, debian/lame.install, debian/libmp3lame-dev.install, debian/libmp3lame0.install, debian/rules: Update Debian/Ubuntu packaging. Add new files. 2009-04-20 21:48 robert * frontend/console.c, frontend/get_audio.c, frontend/main.c, frontend/parse.c, frontend/portableio.c, libmp3lame/fft.c, mpglib/common.c, mpglib/common.h, mpglib/layer1.c, mpglib/layer2.c, vc_solution/vc9_lame_config.vsprops: fixing some more compiler warnings 2009-04-20 05:39 rbrito * debian/changelog, debian/control, debian/copyright, debian/rules, debian/watch: Updating the Debian packaging and doing some investigation regarding symbols. 2009-04-19 22:18 robert * libmp3lame/id3tag.c, libmp3lame/takehiro.c, mpglib/layer1.c: reducing compiler warnings 2009-04-19 18:10 robert * mpglib/interface.c, mpglib/layer2.c: Starting to fix decoding bugs. 2009-04-18 18:33 robert * libmp3lame/lame.rc, mpglib/interface.c, mpglib/layer1.c, mpglib/layer2.c, mpglib/mpg123.h: Starting to fix decoding bugs. 2009-04-17 22:21 robert * frontend/console.c, frontend/console.h, frontend/get_audio.c, frontend/main.c, frontend/parse.c, frontend/timestatus.c, libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h, mpglib/interface.c, mpglib/mpglib.h: commandline option 'quiet' should suppress any message now 2009-04-17 11:24 robert * frontend/get_audio.c, include/lame.h, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/util.c, libmp3lame/util.h, mpglib/common.c, mpglib/common.h, mpglib/interface.c, mpglib/layer3.c, mpglib/mpglib.h: replaced fprintf calls by lame reporting function calls. this allows to silence decoder. (it used to spit out error messages to stderr) 2009-04-11 16:04 jwflynn1 * dshow/README: *** empty log message *** 2009-04-11 15:59 jwflynn1 * dshow/Mpegac.cpp: - Added support for the DirectShow IAMStreamConfig Interface to the LAME encoder filter output pin. - Modified the DirectShow filter registration section so that the LAME Encoder filter is correctly registered in the Audio Compressors filter category. This will allow third-party encoding applications using the DirectShow System Device Enumerator Interface to correctly detect the LAME encoder when querying the Audio Compressors filter group. - Modified the filter registration information so that the MP3 audio subtype is correctly reported as being supported on the encoder output pin. This will allow third-party encoding applications using the DirectShow IFilterMapper2 Interface to recognize that the LAME encoder supports MP3 output. - Altered the Filter Merit Value that was being used when the filter was registered so that it is now using the standard DirectShow compressor filter merit value of MERIT_DO_NOT_USE (0x200000). Previously, the filter was being registered using a value of MERIT_SW_COMPRESSOR (0x100000), which was at a lower priority (i.e. worse priority) than MERIT_DO_NOT_USE. This prevented the LAME Encoder filter from being selected for use by some third-party encoding applications. - Added code to calculate the frame length of the audio frames used for the nBlockSize element of the WAVEFORMATEX output structure. Previously this value was simply hard-coded to 1. 2009-04-11 15:51 jwflynn1 * dshow/Mpegac.h: Added support for the DirectShow IAMStreamConfig Interface 2009-04-11 15:47 jwflynn1 * dshow/Property.rc: Updated the embedded "FileVersion" and "ProductVersion" fields 2009-03-31 22:38 robert * libmp3lame/util.c, libmp3lame/util.h: fix for tracker item 2723518: resampling in 3.98 and 3.99alpha 2009-03-30 14:38 robert * libmp3lame/lame.c: ensure we pad with 288 samples at least 2009-03-30 13:42 robert * frontend/main.c, frontend/main.h, frontend/parse.c: commandline option "--swap-channel" added, as requested. see item: 1118412 2009-03-29 18:28 robert * libmp3lame/psymodel.c: take away sandpaper safety margin for lower samplerates. It seems samplerates which have convolution bands containing single lines are affected only (at least I don't have any testcase for lower samplerates to justify the safety margin right now) 2009-03-29 17:35 robert * libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: workaround for FFMPEG bug, which uses to call lame_encode_flush more than once in loop 2009-03-02 23:27 robert * libmp3lame/VbrTag.c: GetVbrTag only works for Layer3, so ignore it when Layer1 or 2. 2009-02-14 21:59 robert * Makefile.unix: adding CFG=RH_INTEL for Intel C(++) compiler setup 2009-02-13 15:03 robert * libmp3lame/fft.c, libmp3lame/vector/xmm_quantize_sub.c, vc_solution/vc9_libmp3lame.vcproj: fix crash in VC9 Release Build 2009-02-13 03:47 robert * libmp3lame/fft.c, libmp3lame/quantize.c, libmp3lame/takehiro.c, vc_solution/arch_sse2.vsprops: small changes 2009-02-12 14:32 robert * libmp3lame/quantize.c, libmp3lame/takehiro.c, libmp3lame/vector/xmm_quantize_sub.c: some tiny changes 2009-02-12 11:35 robert * libmp3lame/fft.c, libmp3lame/vector/lame_intrin.h, libmp3lame/vector/xmm_quantize_sub.c, vc_solution/arch_sse2.vsprops: first try to add fht using SSE intrinsics 2009-02-11 00:22 robert * vc_solution/vc9_lame_config.vsprops: adding configuration for SSE2 target architectures 2009-02-07 11:19 robert * Dll/Makefile.mingw32: applying patch from item tracker: [ 2406420 ] compile lame_enc.dll under cygwin 2009-02-07 00:44 robert * libmp3lame/id3tag.c, libmp3lame/vector/xmm_quantize_sub.c: small changes 2009-02-06 23:27 robert * libmp3lame/id3tag.c: silence some GCC compiler warning 2009-02-06 23:26 robert * libmp3lame/VbrTag.c, libmp3lame/lame.c: bug-fix: low bitrate CBR incorrectly tried to write LAME-Tag; var inconsistency 2009-02-06 23:22 robert * libmp3lame/vector/xmm_quantize_sub.c: - fix compiler warning about strict-aliasing problem - fix possible use of uninitialized vars 2009-02-06 23:20 robert * Makefile.unix: adding work-configuration for SSE2 optimization under SuSE 32bit 2009-02-06 00:21 robert * vc_solution/arch_sse2.vsprops, vc_solution/arch_x87.vsprops, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3x.vcproj, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_mpglib.vcproj: adding configuration for SSE2 target architectures 2009-02-06 00:21 robert * configMS.h, libmp3lame/vbrquantize.c, vc_solution/arch_nasm.vsprops, vc_solution/vc9_lame.sln, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3x.vcproj, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_mpglib.vcproj: adding configuration for SSE2 target architectures 2009-01-18 15:57 robert * frontend/get_audio.c, frontend/gtkanal.c, frontend/lametime.c, frontend/main.c, libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, libmp3lame/vector/xmm_quantize_sub.c, mpglib/interface.c, mpglib/mpglib.h: replacing C++ style comments by C style comments 2009-01-18 13:59 robert * doc/html/switchs.html, doc/man/lame.1: fix for bug tracker item [ 2051870 ] documentation clarifications 2009-01-18 13:10 robert * doc/man/lame.1: fix for bug tracker item 2423650 2008-12-26 11:58 robert * libmp3lame/presets.c, libmp3lame/psymodel.c: disabling testcode 2008-12-02 03:23 robert * libmp3lame/presets.c, libmp3lame/psymodel.c: testing some low quality tuning (VBR-new only) 2008-11-30 00:20 robert * Makefile.unix, libmp3lame/presets.c, libmp3lame/psymodel.c: testing some different short block switching and change in masking tonal samples (VBR-NEW only) 2008-11-09 14:16 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, mpglib/Makefile.in, vc_solution/Makefile.in: regen 2008-11-09 14:13 aleidinger * aclocal.m4, config.h.in, configure: regen (with autoconf 2.62) 2008-11-09 14:10 aleidinger * libmp3lame/Makefile.am: Add missing files, remove deleted ones. 2008-11-09 14:06 aleidinger * vc_solution/Makefile.am: Add missing automake Makefile. 2008-11-09 14:05 aleidinger * configure.in: Add possibility to build frontends with dynamic libmp3lame. 2008-11-09 14:00 aleidinger * frontend/Makefile.am: Remove -static in preparation for corresponding configure option. 2008-11-09 13:56 aleidinger * ltmain.sh: Update to version from libtool 1.5.26. 2008-11-09 13:50 aleidinger * ACM/ADbg/Makefile.am, ACM/Makefile.am, ACM/tinyxml/Makefile.am, Dll/Makefile.am, Makefile.am, debian/Makefile.am, dshow/Makefile.am, frontend/Makefile.am, include/Makefile.am, libmp3lame/i386/Makefile.am, mpglib/Makefile.am: Add files which are new, and remove deleted ones. 2008-11-06 07:10 rbrito * doc/html/history.html: Update history file with my changes. 2008-11-06 06:56 rbrito * debian/rules: Actually remove the rpath issue part. 2008-11-06 06:55 rbrito * debian/changelog, debian/control: Include suggestions of Fabian on the packaging. Clean up the packaging a bit. Update the mainline version package. 2008-11-02 15:26 robert * libmp3lame/quantize_pvt.c, libmp3lame/version.h: start of 3.99 development cycle: - demangling "calc_xmin" 2008-11-01 21:39 robert * ACM/ADbg/ADbg_vc7.vcproj, ACM/lameACM_vc7.vcproj, ACM/tinyxml/tinyxml_vc7.vcproj, dshow/Mpegac.cpp, dshow/REG.CPP, dshow/REG.H, dshow/aboutprp.cpp: - Name clash with our CRegKey class and ATL::CRegKey class solved by putting ours in namespace Lame. 2008-11-01 21:21 robert * vc_solution/vc9_lame_acm.vcproj, vc_solution/vc9_lame_acm_adbg.vcproj, vc_solution/vc9_lame_acm_tinyxml.vcproj, vc_solution/vc9_lame_dll.vcproj, vc_solution/vc9_lame_dll_example.vcproj, vc_solution/vc9_lame_dshow.vcproj, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3x.vcproj, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_mpglib.vcproj: moving common VS projects settings into own property page 2008-10-23 23:26 robert * mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.c, mpglib/dct64_i386.h, mpglib/decode_i386.c, mpglib/decode_i386.h, mpglib/huffman.h, mpglib/interface.c, mpglib/interface.h, mpglib/l2tables.h, mpglib/layer1.c, mpglib/layer1.h, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h, mpglib/mpg123.h, mpglib/mpglib.h, mpglib/tabinit.c, mpglib/tabinit.h: fixing indentation 2008-10-23 23:20 robert * mpglib/huffman.h, mpglib/interface.c, mpglib/interface.h, mpglib/layer1.h, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h, mpglib/mpg123.h, mpglib/tabinit.c, mpglib/tabinit.h: removing some tabs preparing for indent 2008-10-23 23:17 robert * frontend/brhist.h, frontend/get_audio.c, frontend/get_audio.h, frontend/main.c, frontend/main.h, frontend/portableio.c, frontend/portableio.h, mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.c, mpglib/dct64_i386.h, mpglib/decode_i386.c, mpglib/decode_i386.h, mpglib/huffman.h: removing some tabs preparing for indent 2008-10-21 23:09 robert * mpglib/TODO, mpglib/interface.c, mpglib/layer3.c, mpglib/mpg123.h, mpglib/mpglib.h: re-applying some of our changes to decoding lib 2008-10-21 22:35 robert * mpglib/README, mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.c, mpglib/dct64_i386.h, mpglib/decode_i386.c, mpglib/decode_i386.h, mpglib/huffman.h, mpglib/interface.c, mpglib/interface.h, mpglib/l2tables.h, mpglib/layer1.c, mpglib/layer1.h, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h, mpglib/mpg123.h, mpglib/mpglib.h, mpglib/tabinit.c, mpglib/tabinit.h: replacing mpglib by libhip 2008-10-21 22:34 robert * include/lame.h: fix small issues with C99 2008-10-12 19:47 robert * libmp3lame/lame.rc, libmp3lame/logoe.ico, libmp3lame/version.c, libmp3lame/version.h, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj: Adding resources to EXE and DLL 2008-10-11 18:58 robert * frontend/gtkanal.c, libmp3lame/mpglib_interface.c, libmp3lame/util.h: fixing mp3x build 2008-10-11 18:04 robert * doc/html/history.html, frontend/gtkanal.c, include/lame.def, include/lame.h, libmp3lame/id3tag.c, libmp3lame/mpglib_interface.c, mpglib/layer3.c, mpglib/mpglib.h, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj: Library API change: lame_decode functions are now obsolete but still present, please use hip_decode instead. The reason for this change is: lame_decode functions use a single global variable within the library to store decoder setup, hip_decode functions don't. The encoder now uses hip_decode internally and it is now possible to use clipdetect feature while reencoding mp3 to mp3. 2008-10-07 21:57 robert * doc/html/history.html, frontend/parse.c: - let ignore-tag-errors effect albumart option too - updating history 2008-09-21 15:29 robert * doc/man/lame.1: fixing Rogerios patch 2008-09-19 07:02 rbrito * doc/man/lame.1: Fixing warnings generated by nroff. 2008-09-14 15:21 robert * frontend/parse.c: replacing stricmp by local_strcasecmp 2008-09-14 11:55 robert * USAGE, doc/html/history.html, doc/html/id3.html, doc/man/lame.1, frontend/parse.c, libmp3lame/id3tag.c: Fixing some ID3 tagging issues: - some sloppier search for genre names - new switch --pad-id3v2-size which allows some user defined padding 2008-09-12 19:41 robert * frontend/parse.c, include/lame.def, include/lame.h, libmp3lame/id3tag.c, libmp3lame/id3tag.h: new frontend switch "--pad-id3v2-size ": allow id3v2 padding of 0 to 128000 bytes 2008-09-11 00:49 robert * frontend/parse.c: replace common suffixes by MP3/WAV when no output filename was given 2008-09-08 22:46 robert * frontend/main.c, frontend/parse.c, include/lame.h, libmp3lame/mpglib_interface.c: eleminating some compiler warnings 2008-08-31 19:31 robert * include/lame.h, libmp3lame/i386/nasm.h: fixing the fix to get it assembling for ELF again 2008-08-31 17:52 robert * include/lame.h: remove some debugging noise 2008-08-31 16:14 robert * frontend/get_audio.c, frontend/gtkanal.c, frontend/parse.c, include/lame.def, include/lame.h, libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/util.c, libmp3lame/util.h, mpglib/layer3.c, mpglib/mpglib.h: Fix for API problem: lame decoding functionality used one global data structure in libmp3lame for all decoding ativities. This is a big problem with dynamic linking! New API functions added, which use handles to work with. Old API functions are still there, but are deprecated. 2008-08-31 12:28 robert * libmp3lame/i386/choose_table.nas, libmp3lame/i386/fft3dn.nas, libmp3lame/i386/fftsse.nas, libmp3lame/i386/nasm.h: fixing none PIC assembling problem 2008-08-27 10:27 rbrito * libmp3lame/i386/Makefile.am, libmp3lame/i386/choose_table.nas, libmp3lame/i386/fft3dn.nas, libmp3lame/i386/fftsse.nas, libmp3lame/i386/nasm.h: Committing the changes from Gentoo and PaX Team to the HEAD. 2008-08-16 12:49 robert * doc/man/lame.1: adding MPEG-2.5 bitrate table 2008-08-13 21:01 robert * libmp3lame/tables.h: revert 2008-08-13 20:38 robert * libmp3lame/tables.c, libmp3lame/tables.h: fix compilation via configure/make 2008-08-11 20:56 robert * libmp3lame/takehiro.c: loop rewritten; result of discussion with Michael Stoner 2008-08-08 20:34 robert * libmp3lame/takehiro.c: tiny speed-up 2008-08-07 20:55 robert * Makefile.unix, doc/html/switchs.html, doc/man/lame.1, frontend/parse.c, libmp3lame/lame.c: making some switches developer only switches 2008-08-07 14:53 robert * mpglib, mpglib/common.c, mpglib/dct64_i386.h, mpglib/huffman.h, mpglib/interface.c, mpglib/l2tables.h, mpglib/layer1.h, mpglib/mpg123.h, mpglib/mpglib.h, mpglib/tabinit.h: sync with HIP development 2008-08-07 14:52 robert * libmp3lame/lame.c: we did init bitstream (Xing header) before final decisions were made 2008-08-06 17:12 robert * doc/html/history.html, frontend/parse.c: fix for tracker item [ 2039648 ] potential memory leak in parse_args() function in parse.c 2008-08-06 16:14 robert * frontend/parse.c: internal switches are available only when compiled with preprocessor symbol _ALLOW_INTERNAL_OPTIONS defined. 2008-08-06 16:11 robert * USAGE, doc/html/switchs.html, doc/man/lame.1, frontend/parse.c: removing some obsolete switches 2008-08-05 17:45 robert * doc/html/history.html, frontend/parse.c, libmp3lame/lame.c: fix for bugtracker item [ 2029282 ] Frequency filtering API broken in 3.98 2008-08-05 14:19 robert * doc/html/history.html: updating history 2008-08-05 12:33 robert * libmp3lame/id3tag.c: fix for bug: LAME writes ID3v2 tag when some ID3v1 field length is too short to hold the text, even in case ID3v1 only is specified. 2008-08-05 12:32 robert * libmp3lame/bitstream.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: changes after doing some linting 2008-08-04 19:53 robert * libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/encoder.h, libmp3lame/fft.c, libmp3lame/fft.h, libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h, libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/lame-analysis.h, libmp3lame/lame.c, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/set_get.c, libmp3lame/tables.c, libmp3lame/tables.h, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h: changes after doing some linting 2008-07-28 17:18 robert * libmp3lame/lame.c, misc/abx.c: fixing swapped parameters on calloc call 2008-07-28 16:57 robert * libmp3lame/psymodel.c: fixing small typo 2008-07-28 16:38 robert * include/lame.h, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/encoder.h, libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/machine.h, libmp3lame/newmdct.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/set_get.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: reorganizing the huge lame_internal_flags structure 2008-07-23 14:59 robert * libmp3lame/util.c: removed extra line. tracker item: [ 2022101 ] tiny bug(?) in fill_buffer_resample() 2008-07-23 14:46 robert * libmp3lame/lame.c: fix for tracker item: [ 2022035 ] encoder_padding value and resampling 2008-07-19 13:34 rbrito * HACKING: Fixed HACKING documentation. 2008-07-19 13:09 rbrito * HACKING: Fix documentation for set_get/get_set confusion. 2008-07-19 12:54 rbrito * doc/html/history.html, frontend/mp3rtp.c, frontend/rtp.c: Fixed compilation of mp3rtp and closed bug on sourceforge tracker. 2008-07-18 22:43 robert * libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/gain_analysis.c, libmp3lame/id3tag.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/vbrquantize.c: - removing some unused variables - fix a possible 'divide by zero' in vbrpsy_mask_add 2008-07-12 15:59 rbrito * Makefile.unix: Tidying up the Makefile.unix file. Possibly more to come. 2008-07-12 14:32 rbrito * debian/changelog: Mention changes to the build system on debian/ubuntu/whatever systems. 2008-07-12 14:28 rbrito * debian/rules: Include changes so that the linker only includes libraries directly needed. 2008-07-12 14:26 rbrito * Makefile.unix: Include a clue for emacs to know that this is a makefile. 2008-07-08 07:14 rbrito * doc/man/lame.1: Small updates to the manpage 2008-07-07 23:50 robert * doc/html/history.html, libmp3lame/presets.c: linear interpolate preset param sf21mod 2008-07-07 10:20 rbrito * Makefile.unix: Fixed typo in one option. 2008-07-07 09:32 rbrito * Makefile.unix: Include flags for compilation for newer machines running Linux. Comment the use of gtk1.2 for Linux at least (don't know about *BSD). 2008-07-07 02:18 rbrito * doc/html/history.html: Many fixes to the HTML file (too numerous to mention here). Now, it validates at w3.org (and let us keep it this way, please). 2008-07-07 00:17 rbrito * misc/abx.c: Finally fix the endianness issue and be able to close the reported bug. 2008-07-07 00:16 rbrito * misc/abx.c: Fix a memory leak (detected by running valgrind). 2008-07-07 00:14 rbrito * misc/abx.c: Remove inactive/commented coded that doesn't seem to be necessary. 2008-07-05 11:51 robert * lame_clients_vc6.dsw, lame_projects_vc6.dsp, lame_vc6.dsw: we don't support VC6 anymore 2008-07-05 07:50 robert * ACM/ADbg/ADbg.dsp, ACM/lameACM_vc6.dsp, ACM/tinyxml/test.dsp, ACM/tinyxml/test.dsw, ACM/tinyxml/tinyxml.dsp, Dll/Example_vc6.dsp, Dll/Example_vc6.dsw, Dll/LameDll_vc6.dsp, dshow/dshow.dsp, dshow/dshow.dsw, frontend/lame_vc6.dsp, frontend/mp3x_vc6.dsp, libmp3lame/libmp3lame_dll_vc6.dsp, libmp3lame/libmp3lame_vc6.dsp, mpglib/mpglib_vc6.dsp: we don't support VC6 anymore 2008-07-05 07:38 robert * configure.in, libmp3lame/version.h: Main branch at 3.99 alpha 2008-06-30 23:31 robert * configMS.h, dshow/Property.rc, dshow/aboutprp.cpp: updating LAME version property 2008-06-29 21:40 rbrito * configure, configure.in, debian/changelog: New updated options for compiling with expopt (to be cleaned up latter). Fixes to the Debian packaging for the pending release. 2008-06-29 03:25 rbrito * doc/html/history.html: Fixed my name on an older entry of the history. 2008-06-28 22:36 robert * doc/html/Makefile.am, doc/html/Makefile.in: removing presets.html, it is not in repository anymore 2008-06-27 20:47 robert * Makefile.unix, testcase.mp3: updating testcase for 3.98 stable release 2008-06-26 21:26 robert * vc_solution/vc9_lame.sln, vc_solution/vc9_lame_acm.vcproj, vc_solution/vc9_lame_acm_adbg.vcproj, vc_solution/vc9_lame_acm_tinyxml.vcproj, vc_solution/vc9_lame_dll.vcproj, vc_solution/vc9_lame_dll_example.vcproj, vc_solution/vc9_lame_dshow.vcproj, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3x.vcproj, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_mpglib.vcproj: removing blanks from configuration and project names (because of NASM rule) 2008-06-26 10:26 bouvigne * doc/html/index.html, doc/html/presets.html, doc/man/lame.1, frontend/parse.c: simplified --preset docs 2008-06-26 10:09 bouvigne * doc/html/history.html, doc/html/index.html: updated the html docs for 3.98 2008-06-26 08:57 bouvigne * libmp3lame/psymodel.c: revert my calc_energy changes 2008-06-25 21:59 robert * mpglib/layer2.c, mpglib/layer3.c, mpglib/mpg123.h: cosmetic changes, some more compiler (gcc) warnings eliminated 2008-06-25 12:45 aleidinger * ChangeLog: recent changes 2008-06-25 12:43 aleidinger * doc/html/history.html: a little bit of history 2008-06-25 12:40 aleidinger * configure: regen 2008-06-25 12:37 aleidinger * configure.in: fix --diable-cpml switch 2008-06-25 12:17 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regen (math lib change) 2008-06-25 12:13 aleidinger * configure.in: export the math lib, allow to disable the use of the alpha optimized math lib 2008-06-25 12:12 aleidinger * libmp3lame/Makefile.am: add the math lib explicitely to the build of the lib 2008-06-25 08:20 robert * frontend/parse.c, mpglib/decode_i386.c, mpglib/interface.c, mpglib/interface.h, mpglib/layer1.c, mpglib/layer2.c, mpglib/mpglib.h: Some cosmetic changes, now the vc9 compiles the workspace vc9_lame without any warning 2008-06-24 19:07 rbrito * doc/html/history.html: Add some modifications of mine to the history 2008-06-24 18:39 rbrito * debian/changelog, debian/control, debian/rules: Updates to the Debian packaging. 2008-06-24 17:06 rbrito * misc/abx.c: Quick and dirty fix for some memory leak (detected via Valgrind). 2008-06-22 18:42 robert * doc/html/contributors.html, doc/html/history.html: tracker item [ lame-Patches-1990643 ] DShow direct file writer output patch by Anton Sergunov (setosha) 2008-06-22 18:31 robert * dshow/Encoder.cpp, dshow/Encoder.h, dshow/Mpegac.cpp, dshow/Mpegac.h: tracker item [ lame-Patches-1990643 ] DShow direct file writer output patch by Anton Sergunov (setosha) 2008-06-22 18:29 robert * vc_solution/vc9_lame_acm.vcproj, vc_solution/vc9_lame_acm_adbg.vcproj, vc_solution/vc9_lame_acm_tinyxml.vcproj, vc_solution/vc9_lame_dll_example.vcproj, vc_solution/vc9_lame_dshow.vcproj: linking against multithreaded (debug) DLL 2008-06-17 20:57 robert * frontend/parse.c, libmp3lame/presets.c: bug fix: preset INSANE wasn't a CBR preset anymore, but preset help said it should be 2008-06-10 19:24 rbrito * misc/abx.c: Fixes for consistency (lack of PATH on some commands) 2008-06-10 19:14 rbrito * misc/abx.c: Removing spurious whitespaces at the end of lines. 2008-06-10 16:10 rbrito * misc/abx.c: Corrected the abx.c file to work on Linux x86-64 (it should work on ia32 too). I think that I can remove latter the commented lines. They were prejudicial to playing the file on Linux (i.e., a 1min file was played in less than 5s, which is not exactly something that useful for doing an abx test). 2008-05-24 08:40 aleidinger * ChangeLog: Add nearly a year of history. 2008-05-24 08:37 aleidinger * Makefile.in, configure: regen 2008-05-24 08:31 aleidinger * macosx/English.lproj/Makefile.in, macosx/LAME.xcodeproj/Makefile.in, macosx/Makefile.in: regen 2008-05-24 08:28 aleidinger * configure.in, macosx/English.lproj/Makefile.am, macosx/LAME.xcodeproj/Makefile.am, macosx/Makefile.am: Add some more macosx stuff 2008-05-22 17:32 audiofileeng * macosx/English.lproj, macosx/English.lproj/InfoPlist.strings, macosx/LAME.xcodeproj, macosx/LAME.xcodeproj/project.pbxproj: adding files in subdirectories in macosx 2008-05-22 06:26 aleidinger * Makefile.am, configure.in, macosx/Makefile.am: add the new macosx directory 2008-05-21 03:05 audiofileeng * macosx, macosx/Info.plist, macosx/LAME_Prefix.pch: added XCode framework project for Mac OS X 2008-05-19 07:41 bouvigne * libmp3lame/psymodel.c, libmp3lame/util.h: faster calc_energy: don't loop if there is a single line within the band 2008-05-18 17:49 bouvigne * libmp3lame/psymodel.c: faster calc_energy: dont' loop if there is a single line within the band 2008-05-14 07:43 rbrito * debian/watch: New file for detecting new versions of the package. 2008-05-14 07:42 rbrito * debian/changelog, debian/control, debian/copyright, debian/lame.docs, debian/libmp3lame0-dev.docs, debian/libmp3lame0-dev.files, debian/rules: Updates to the Debian packaging. 2008-04-28 20:32 robert * frontend/get_audio.c: fixing LIBSNDFILE compile problem found by Rogério Brito 2008-04-23 01:50 robert * frontend/main.c, frontend/parse.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/machine.h, libmp3lame/psymodel.c: fix for bug-tracker item:[ 1948101 ] Memory not freed (lame-3.97, lame-3.98b8) plus, we didn't call lame_close in decode-only case 2008-04-22 23:01 robert * libmp3lame/machine.h, libmp3lame/newmdct.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, mpglib/interface.c, mpglib/layer1.c: fixing a problem if you are using --fast-math compiler switch 2008-04-13 22:03 robert * doc/html/history.html, libmp3lame/version.h: updating history, we are now at 3.98 beta 8 2008-04-13 21:27 robert * frontend/get_audio.c, frontend/main.h, frontend/parse.c, libmp3lame/psymodel.c: found some problem in Naoki's additive masking code and fixed it for VBR_NEW 2008-04-13 13:45 robert * frontend/get_audio.c, testcase.mp3: changed compile-time test for machine byte order into run-time test, this should solve issues PPC users seem to have 2008-04-13 02:52 robert * libmp3lame/psymodel.c: some SNR testcode to try with -Z3 2008-04-12 18:18 robert * frontend/parse.c, frontend/timestatus.c, include/lame.def, include/lame.h, libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/fft.c, libmp3lame/gain_analysis.c, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/reservoir.c, libmp3lame/set_get.c, libmp3lame/tables.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/vbrquantize.c: extended VBR quality scale: 0, ..., 9.999 as floating point value 2008-04-06 15:07 robert * doc/html/history.html, frontend/main.c: updating history.html 2008-04-06 02:38 robert * libmp3lame/lame_global_flags.h, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/set_get.c, libmp3lame/version.h, mpglib/layer3.c: some simpler spreading function for VBR NEW 2008-04-05 17:38 robert * Makefile.unix, frontend/brhist.c, frontend/brhist.h, frontend/main.c, frontend/parse.c, frontend/timestatus.c: removing "#ifdef/#endif" from code bocks, which were always compiled in 2008-04-05 17:13 robert * debian/copyright, lame.spec.in, libmp3lame/id3tag.c, misc/abx.c, misc/lameGUI.html: changing some links from "www.mp3dev.org/mp3" to "www.mp3dev.org" and from "www.sulaco.org/mp3" to "www.mp3dev.org" 2008-03-20 22:28 robert * include/lame.h: keep 'lame_mp3_tags_fid' alive at least for next stable release 2008-03-12 11:23 robert * libmp3lame/psymodel.c, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_mpglib.vcproj: bug fix: stack corruption in vbrpsy_compute_masking_s 2008-03-11 21:57 robert * libmp3lame/set_get.c, libmp3lame/vbrquantize.c: fixing some more compiler warnings 2008-03-11 21:17 robert * libmp3lame/VbrTag.c, libmp3lame/fft.c, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/quantize.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/vbrquantize.c, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj: fixing some more compiler warnings 2008-03-11 00:56 robert * libmp3lame/set_get.c: fixing some more compiler warnings 2008-03-11 00:21 robert * vc_solution/vc9_libmp3lame.vcproj: update for nasm file config 2008-03-10 23:47 robert * libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/gain_analysis.c, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/set_get.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h: fixing some compiler warnings 2008-03-09 22:37 robert * frontend/parse.c: for now, keep old ID3 tag switches passing raw character encoded strings some experimental switches for Linux systems: (ID3v1/ID3v2) --lTtitle --lArtist --lAlbum --lGenre --lComment --lFieldvalue (ID3v2) --uTitle --uArtist --uAlbum --uGenre --uComment 2008-03-09 22:29 robert * include/lame.h: under Linux we need some C-library includes here (why not on Win32?) 2008-03-09 19:31 robert * libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: fixing some compiler warnings about: - integer constant overflow - signed/unsigned mismatch 2008-03-09 17:13 robert * Dll/BladeMP3EncDLL.c, dshow/aboutprp.cpp, frontend/brhist.c, frontend/mp3x.c, frontend/parse.c, include/lame.h: removing unneccessary stdlib includes from lame.h 2008-03-09 16:33 robert * vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_nasm.rules: adding NASM build rule 2008-02-23 20:58 robert * frontend/parse.c, libmp3lame/id3tag.c: adding ICONV character conversion (NOT for WIN32), because ID3 tags have to be in ISO Latin-1 or UCS-2 text encoding. Previously we wrote bytes into ID3 tags, as we got them from the commandline, in locale text encoding. There are some experimental switches to store UCS-2 encoded ID3 tags: --uArtist, --uAlbum, --uTitle, --uGenre and --uComment 2008-02-23 12:58 robert * libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/util.c: locate and replace {TXXX,COMM} field if LANGUAGE and DESCRIPTION match new one 2008-02-22 02:48 robert * libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/util.c: preparing unicode id3v2 tags 2008-02-22 02:38 robert * libmp3lame/lame.c, libmp3lame/vbrquantize.c, libmp3lame/version.c: fixing some compiler warnings 2008-02-20 03:04 robert * vc_solution/vc9_lame_dll_example.vcproj: VC9 Solution files 2008-02-20 02:40 robert * vc_solution/vc9_lame_dshow.vcproj: VC9 Solution files 2008-02-20 01:53 robert * vc_solution/vc9_lame_acm.vcproj: VC9 Solution files 2008-02-20 00:38 robert * vc_solution, vc_solution/vc9_lame.sln, vc_solution/vc9_lame_acm.vcproj, vc_solution/vc9_lame_acm_adbg.vcproj, vc_solution/vc9_lame_acm_tinyxml.vcproj, vc_solution/vc9_lame_clients.sln, vc_solution/vc9_lame_dll.vcproj, vc_solution/vc9_lame_dll_example.vcproj, vc_solution/vc9_lame_dshow.vcproj, vc_solution/vc9_lame_lame.vcproj, vc_solution/vc9_lame_mp3x.vcproj, vc_solution/vc9_libmp3lame.vcproj, vc_solution/vc9_libmp3lame_dll.vcproj, vc_solution/vc9_mpglib.vcproj: VC9 Solution files 2008-02-15 01:27 robert * Dll/BladeMP3EncDLL.c: use new API function for LAME-tag frame update 2008-02-15 00:23 robert * libmp3lame/VbrTag.c: let the dummy Xing frame have a valid mp3 sync word 2008-02-10 18:38 robert * include/lame.def, include/lame.h, libmp3lame/id3tag.c: fixes: id3tag.c - some block scope missing lame.h, lame.def: - some exported function was missing 2008-02-10 17:36 robert * frontend/main.c, include/lame.def, include/lame.h, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c, libmp3lame/version.h: Adding some new API functions - to en-/dis- able automatic ID3 tag writing into audio stream (default on): void CDECL lame_set_write_id3tag_automatic(lame_global_flags * gfp, int); int CDECL lame_get_write_id3tag_automatic(lame_global_flags const* gfp); - to query ID3 tags into a buffer: size_t CDECL lame_get_id3v1_tag( lame_global_flags * gfp, unsigned char* buffer, size_t size); size_t CDECL lame_get_id3v2_tag( lame_global_flags * gfp, unsigned char* buffer, size_t size); - to query the final Xing/LAME tag frame into a buffer: size_t CDECL lame_get_lametag_frame( const lame_global_flags *, unsigned char* buffer, size_t size); Those new functions allow to encode a complete input file into RAM first, before writing it into a file/socket/whatever... 2008-02-03 14:28 robert * libmp3lame/psymodel.c: VBRPSY: don't use ATH in 'additive masking' function 2008-01-09 20:46 rbrito * debian/changelog, debian/compat, debian/control, debian/rules: Updated the Debian packaging. 2008-01-06 16:46 robert * libmp3lame/lame.c, libmp3lame/quantize.c: VBR-NEW can be mixed with free format now. The result will be a free format stream using VBR-NEW quantization routine. note: following free format bitrates are maximum bitrates which make sense: samplerate: 8 11 12 16 22 24 32 44 48 kbps 109 151 164 218 301 327 435 600 640(652) Using the maximum bitrate one may look and see how the VBR code behaves when the bitrate pressure is lowered to the theoretical minimum, like: lame -V0 -b600 --freeformat x.wav x.mp3 2008-01-03 00:03 aleidinger * configure: regenerate with autoconf 2.61 2008-01-03 00:02 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regenerate with automake 1.10 2008-01-03 00:01 aleidinger * aclocal.m4: update with stuff from more recent autotools 2008-01-03 00:00 aleidinger * ltmain.sh: update to a libtool 1.5.24 version 2008-01-02 23:58 aleidinger * configure.in: After installing sndfile: - fix SNDFILE_xxx Give a better failure description for some errors (sizeof check). If there are intXX_t but no uintXX_t, use the intXX_t with "unsigned" instead of trying to find the right K&R-C integral type. Use macho as the format type for NASM on OSX, but disable the nasm use by default there, as there seems to be a problem with the nasm code on OSX. 2008-01-02 22:00 aleidinger * configure.in: - If SNDFILE_xxx are defined and the fileio is sndfile, then assume the user is knowing what he does (some systems don't have pkg-config but have sndfile). - Fix the problem case where SNDFILE_CFLAGS has spaces at the beginning. 2008-01-02 20:30 robert * libmp3lame/id3tag.c: fix for tracker item: [ 1861450 ] TLEN tag fixed on encode from stdin with ID3v2 tags 2007-12-26 22:04 robert * ACM/ACMStream.cpp, Dll/BladeMP3EncDLL.c: removing obsolete function calls 2007-12-26 13:12 robert * Makefile.MSVC, frontend/parse.c, include/lame.h, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/set_get.c, libmp3lame/set_get.h, libmp3lame/util.h: removing dead code 2007-12-25 16:15 robert * libmp3lame/vbrquantize.c: some small code simplification 2007-12-25 00:16 robert * libmp3lame/presets.c, libmp3lame/psymodel.c: clean code from obsolete branches 2007-12-24 16:00 robert * frontend/parse.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/set_get.c, libmp3lame/takehiro.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: - removing legacy ISO quantization code - vbr-new now has only two -qx settings left: q0 and q5 - vbr-new can't use legacy GPSYCHO anymore TODO: + remove legacy GPSYCHO code, as we don't use it anymore + remove superflouos psy-model selection switches + remove superflouos psy-model configuration switches like --cwlimit 2007-12-20 14:44 robert * libmp3lame/vbrquantize.c: in rare cases, where one channel is completely zero, some illegal "scalefactor selection info" might be used in VBR-NEW. fixed 2007-12-17 20:54 robert * doc/html/history.html: fixing typo 2007-12-17 00:08 robert * libmp3lame/vbrquantize.c: fixing typo 2007-12-16 17:56 robert * doc/html/history.html, libmp3lame/psymodel.c: disabling the use of the "interchannel masking feature" in dual-channel case 2007-12-16 17:18 robert * libmp3lame/psymodel.c, libmp3lame/vbrquantize.c: VBR-NEW: -quantization: another "out of bits" strategy -psymodel: dropped "inter channel effect", because the effect doesn't save many bits, but raises the chance of annoying artefacts a lot. 2007-12-14 02:52 robert * libmp3lame/psymodel.c: found new test sample SNAPS which needs some more short blocks 2007-12-09 22:47 robert * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize_pvt.c, libmp3lame/util.h: merger from test branch: - features a new psy model, a modification from NSPSY VBR NEW uses the new psy model, unless you call lame with --nspsytune, or the developer only switch --psymodel x, with x in {1,2} features of the new psy model: - speed: it does determine the resulting block type before doing the fft and other psy stuff and will calc long/short blocks only as necessary - interchannel masking effect: it will be calculated after the mid-side fix and it's working on convolution bands, instead of scalefactor bands - mid-side fix: calculated on convolution bands, instead of sf bands - mask_adjust feature: it's now used earlier in the convolution calculation 2007-11-26 00:14 robert * Makefile.unix, frontend/get_audio.c, frontend/parse.c, libmp3lame/psymodel.c, libmp3lame/vbrquantize.c: psymodel.c: - bug fix in init_numlines: it returned sometimes a too large npart_[sl] - fixing some more compiler warnings get_audio.c: - some fix in error-report in case of unsupported input format 2007-11-21 21:30 robert * libmp3lame/quantize.c, libmp3lame/quantize_pvt.h: bug fix for bin_search_StepSize. It returned illegal values, leading to assertion failures in fast encoding mode, which only adjusts global step size. 2007-11-01 19:52 robert * frontend/get_audio.c: enabling --signed / --unsigned switches for 8 bit raw pcm input data 2007-11-01 19:25 robert * frontend/get_audio.c, frontend/parse.c: [ 1823881 ] lame 3.97 produces complete garbage now invalid WAV/AIFF files are rejected, instead of trying to encode them as raw pcm files. 2007-11-01 19:23 robert * doc/man/lame.1: [ 1158193 ] Man page doesn't tell about stereo format in raw [ 1158253 ] Data format is not described in the manpage added some info to manpage 2007-11-01 19:16 robert * libmp3lame/lame.c: bitrate_index may have been uninitialized under some rare circumstances 2007-10-24 02:04 robert * libmp3lame/psymodel.c: back to the roots. Maybe I'll branch from here 2007-10-23 23:23 robert * libmp3lame/vbrquantize.c: turn of scalefac scale feature 2007-10-23 02:46 robert * libmp3lame/psymodel.c: yeah, ok it's C and not C++ open block scope for local variable 2007-10-23 02:31 robert * libmp3lame/psymodel.c, libmp3lame/vbrquantize.c: dropping Naoki's idea of "simultaneous masking addition" for the newer VBR code for now 2007-10-22 12:00 robert * libmp3lame/presets.c, libmp3lame/psymodel.c: re-establishing previous mask adjustments 2007-10-21 00:45 robert * libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/version.h: recalibration of VBR new's compression level settings, because of recent bug fixes 2007-10-19 00:10 robert * Makefile.unix: moving GTK config script to MP3x target compilation, it's not needed outside MP3x 2007-10-18 02:54 robert * frontend/get_audio.c: seems, VC compiler doesn't like redundant semicolon, fixed 2007-10-18 02:09 robert * libmp3lame/machine.h, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/set_get.c: PSY: the newer vbr code uses tonalality estimation from long blocks for short blocks 2007-10-16 01:07 robert * doc/html/history.html, frontend/get_audio.c: Fix for bugtracker item: [ 1813496 ] AIFF parsing bug 2007-10-14 20:18 robert * frontend/get_audio.c, libmp3lame/id3tag.h, libmp3lame/util.c: some more compiler and compiler-warning fixes 2007-10-14 19:54 robert * frontend/get_audio.c, frontend/get_audio.h, frontend/mp3x.c, frontend/parse.c, frontend/portableio.c, include/lame.h, libmp3lame/bitstream.c, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/set_get.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/vector/xmm_quantize_sub.c: eliminating some of the several hundred compiler warnings 2007-10-14 14:16 robert * doc/html/history.html: updating history to latest changes: - bug fix scalefactor selection in vbr new code - feature added: WAVE_FORMAT_EXTENSIBLE 2007-10-14 13:33 robert * frontend/get_audio.c: feature request [ 1811483 ] WAVE_FORMAT_EXTENSIBLE support We still support PCM wave files only with our little wave reader, it is just that we now accept them when written in wave format extensible. 2007-10-13 20:34 robert * libmp3lame/vbrquantize.c: Bug-fix: the quantization-find-routine could under some circumstances return some way too large quantization step size. For example, the song Piku from The Chemical Brothers had almost 550 scalefactors wrong. For most songs this fix makes no difference. 2007-10-08 20:59 robert * frontend/brhist.c: replaced variable 'lines' by 'lines_used', because term.h has some macro definition for 'lines'. 2007-09-29 19:17 robert * libmp3lame/vbrquantize.c: - Removing dead code. - Avoiding unnecessary search for quantization step sizes. This speeds-up lower quality encodings. If energy is below masking threshold, the resulting step size will be at 255. So no need to search what we already know. 2007-08-29 13:44 aleidinger * configure: regen 2007-08-29 13:43 aleidinger * configure.in: Don't change the include/library path, if there's no corresponding soundfile path set. This is supposed to fix the compile problem with soundfile Rogério sees on Debian. 2007-08-20 21:54 robert * Makefile.MSVC: removing duplicate target_dir references 2007-08-12 18:30 robert * Makefile.MSVC: let targets link against multi threaded C-library 2007-08-12 00:07 robert * doc/html/history.html, libmp3lame/vbrquantize.c, libmp3lame/version.h: small speedup in VBR NEW we are now at 3.98 beta 5, a release candidate for 3.98 stable? 2007-08-12 00:04 robert * logo: Removing the 6 MB fat logo files from encoder sources. We can expect the logo files to be almost static and having them in a separate directory seems to be the better choice. 2007-08-11 23:06 robert * testcase.mp3: updating "testcase.mp3" for LAME 3.98 beta 5 2007-08-11 21:44 robert * libmp3lame/psymodel.c: Short block masking: the CBR/ABR code seems to rely on the old masking definition. The VBR NEW code on the other hand needs the lowered masking. 2007-07-30 06:51 aleidinger * ChangeLog: Add the changelog for the last ~10 months. 2007-07-30 06:39 aleidinger * configure: regen with autoconf 2.61 2007-07-30 06:37 aleidinger * configure.in: oops, previous fix for the gcc version pattern matching was wrong... 2007-07-30 06:30 aleidinger * configure.in: - fix the pattern matching for the gcc version check - improve the optimization stuff for gcc 4.x 2007-07-30 06:28 aleidinger * config.h.in: regen with autoconf 2.61 2007-07-30 06:28 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/vector/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regen with automake 1.10 2007-07-29 22:46 robert * doc/html/history.html: adding latest bug fixes to history 2007-07-29 22:08 robert * ACM/ADbg/ADbg.dsp, ACM/lameACM_vc6.dsp, ACM/tinyxml/tinyxml.dsp, Dll/LameDll_vc6.dsp, dshow/dshow.dsp, frontend/lame_vc6.dsp, frontend/mp3x_vc6.dsp, include/lame.def, lame_vc6.dsw, libmp3lame/libmp3lame_dll_vc6.dsp, libmp3lame/libmp3lame_vc6.dsp, mpglib/mpglib_vc6.dsp: updating VC6 project files from MSDN: DLLs should be linking against multi-threaded MS VC rountime library 2007-07-29 16:02 robert * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: Fixing a possible resource leak 2007-07-28 12:48 aleidinger * configure: regen (new LAME version) 2007-07-28 00:41 robert * frontend/get_audio.c: task tracker item [ 1445175 ] Input being stdin fails in Windows on WAV files and item [ 1576370 ] Fix for piping in a non PCM file via stdin under Windows The workaround tests the actual file descriptor being a pipe or not. In case being a pipe, the number of bytes to skip are simply read. 2007-07-27 08:49 bouvigne * README: 3.98 2007-07-24 17:46 bouvigne * frontend/brhist.c, frontend/brhist.h, frontend/get_audio.c, frontend/get_audio.h, frontend/gpkplotting.c, frontend/gpkplotting.h, frontend/gtkanal.c, frontend/gtkanal.h, frontend/lametime.c, frontend/lametime.h, frontend/main.c, frontend/main.h, frontend/parse.c, frontend/timestatus.c, frontend/timestatus.h, include/lame.h, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/encoder.h, libmp3lame/fft.h, libmp3lame/id3tag.c, libmp3lame/l3side.h, libmp3lame/lame-analysis.h, libmp3lame/lame.c, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/newmdct.h, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/set_get.c, libmp3lame/set_get.h, libmp3lame/tables.c, libmp3lame/tables.h, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h, libmp3lame/vector/lame_intrin.h, libmp3lame/vector/xmm_quantize_sub.c, libmp3lame/version.c, libmp3lame/version.h: Library GPL -> Lesser GPL 2007-07-24 15:26 robert * frontend/get_audio.c, frontend/parse.c: bug item [ 1160757 ] --big-endian and --little-endian don't work with -m s -a and item [ 1160741 ] --big-endian and --little-endian are swapped the --big-endian/--little-endian switches do now work with our minimal wave and pcm reader too. The problems reported in the above bug tracker items should be solved now 2007-07-22 18:49 robert * libmp3lame/lame.c: bug fix: [ 1746336 ] Incorrect Bitrate with ABR und --resample, LAME 3.98b4 There was a typo in patch Revision 1.294 "restrict mpeg 2.5 to 64kbps" which set the average bitrate up to the maximum allowed bitrate. 2007-07-20 23:23 robert * libmp3lame/bitstream.c: fixing task tracker item: [ 1755981 ] Percent signs in print format not escaped 2007-07-16 20:06 bouvigne * include/lame.h: gpl -> lgpl (we forgot about it a long time ago) 2007-07-10 21:05 robert * dshow/Property.rc: updating version info 2007-07-01 20:05 robert * mpglib/common.c, mpglib/common.h, mpglib/interface.c, mpglib/layer1.c, mpglib/layer2.c, mpglib/layer2.h, mpglib/mpg123.h: we will always use Layer1 and 2 decoding 2007-07-01 16:17 robert * doc/html/history.html: word wrapping fixed 2007-07-01 16:16 robert * doc/html/history.html: adding latest changes for Task tracker item [ 1719593 ] and [ 1742623 ] 2007-07-01 14:39 robert * frontend/get_audio.c, frontend/get_audio.h, frontend/gtkanal.c, frontend/main.c, frontend/parse.c: trying to fix Bugs item #1742623 2007-06-30 17:14 robert * USAGE, frontend/parse.c, include/lame.h, libmp3lame/id3tag.c: bug fix: [ 1719593 ] Track numbers > 255 not allowed even with --id3v2-only 2007-06-27 21:23 robert * configMS.h, configure.in: changing version number 3.97 to 3.98 2007-06-27 21:22 robert * include/lame.def: adding newly id3tag functions to DLL export definition 2007-06-26 01:33 robert * libmp3lame/VbrTag.c: I missed the swapped arguments in the patch by Jonathan Stott, now fixed. 2007-06-26 00:57 robert * doc/html/contributors.html, doc/html/history.html, libmp3lame/VbrTag.c, libmp3lame/lame.c: Patch by Jonathan Stott: Bug tracker items: [ 1590693 ] ID3v2 tag not writing, [ 1636267 ] ID3v2 tags overwritten If the output file is opened 'write-only', then LAME can't update the LAME tag. In this case LAME silently overwrote the first bytes of the file and an optional ID3v2 tag disappeared. Now an error message will be printed and no data is written in this case. 2007-06-23 18:43 robert * libmp3lame/id3tag.c, libmp3lame/util.c, libmp3lame/util.h: fixing another possible memory leak 2007-06-23 17:39 robert * frontend/main.c, frontend/parse.c, libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/util.c, libmp3lame/version.h: Some simplifications on ID3 tag usage: - specifying an unlisted ID3v1 genre does not count as an error anymore, it is mapped to "Other" and passed as-is to an ID3v2 genre tag - an ID3 track argument is passed directly to an ID3v2 TRCK tag, allowing for example "002/012" 2007-06-23 15:16 robert * libmp3lame/id3tag.c, libmp3lame/util.c: Now ID3 tag are local copies of given parameters. This allows to pass strings located on the program stack and you don't have to think about the lifetime of your strings you pass as arguments. 2007-06-23 13:27 robert * libmp3lame/util.c: Bug fix: Nyaochi's "ID3v2 extension" patches introduced some memory leaks 2007-06-04 22:31 robert * doc/html/history.html: ups: moved history entry "TLEN bug" up into correct list 2007-06-04 22:25 robert * doc/html/history.html: added: bugfix TLEN computation 2007-06-04 22:04 robert * libmp3lame/id3tag.c: bug fix: [ 1730875 ] TLEN calculation wrong fixing the calculation of "playlength in ms" written into the ID3v2 tag TLEN 2007-05-30 23:17 rjamorim * logo, logo/logoERGB.ai, logo/logoEncodedRGB.ai, logo/logoPDF.pdf, logo/logoRGB.ai, logo/logoRGB.eps, logo/logoRGB.svg, logo/logoe.ai, logo/logoe.eps, logo/logoe.svg, logo/logofull.ai, logo/logofull.eps, logo/logofull.svg, logo/logomini.ai, logo/logomini.eps, logo/logomini.svg: Initial import of the Lame logo in several vectorial formats 2007-05-25 03:38 robert * libmp3lame/vbrquantize.c: VBR_NEW: more tuned 'out of bits' strategy 2007-05-24 13:26 bouvigne * doc/html/contributors.html, doc/html/history.html, doc/html/id3.html, doc/man/lame.1, frontend/parse.c: support for total tracks count in the frontend (id3 tags) 2007-05-24 13:10 bouvigne * libmp3lame/id3tag.c: adding a total track count should add an id3 V2 tag 2007-05-24 12:58 bouvigne * doc/html/history.html, doc/html/id3.html, frontend/main.c, frontend/parse.c, frontend/parse.h, include/lame.h, libmp3lame/id3tag.c, libmp3lame/id3tag.h: Albumart (APIC ID3v2.3 frame) patch by Nyaochi 2007-05-24 12:29 bouvigne * doc/html/contributors.html, doc/html/history.html, doc/html/id3.html, frontend/parse.c, include/lame.h, libmp3lame/id3tag.c, libmp3lame/id3tag.h: Ability to set user-defined ID3v2.3 frame (patch from Nyaochi) 2007-05-23 14:44 bouvigne * doc/html/contributors.html, doc/html/history.html, doc/html/index.html: Updated history 2007-05-22 10:10 robert * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/version.h: ok, now the real bug fix, forget the last commit: the ABR routine did not apply format specific bitrate constrains when allocating bits; now it does 2007-05-22 08:39 robert * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c: bug fix: reduce side was given a too large 'max bits' parameter, resulting in assertion aborts 2007-05-21 22:20 robert * libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: bug fix for feature request: "adjust user min/max bitrate if outside of allowed range (ex: -V9 -B320) Requested by Benski" Some input files with unusual sample frequencies couldn't be encoded at CBR anymore, no matter what resample/bitrate options where passed to LAME. (Testsample: FX319.WAV) 2007-05-20 18:07 robert * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/version.h: VBR_NEW: 'out of bits' situation improved 2007-05-17 22:25 robert * ACM/ACM.cpp, libmp3lame/VbrTag.c: Bugs item #1693461: fixing memory leaks in LAME ACM 2007-05-16 02:43 robert * libmp3lame/version.h: we are now at 3.98 beta 1 (of many more to come) 2007-05-16 01:30 robert * frontend/parse.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, libmp3lame/set_get.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: - some code clean-up - bug fix: in rare cases 'on_pe' returned target bits violating the 4095 bit maximum constrain for a granule - VBR-NEW: modified strategy to handle 'out of bits' cases 2007-05-13 18:31 robert * libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/id3tag.c, libmp3lame/lame_global_flags.h, libmp3lame/util.h, libmp3lame/version.h: bug fix: [ 1711980 ] LAME writes invalid Xing header when ID3 tags exist 2007-03-12 21:56 bouvigne * libmp3lame/util.c: adjust user min/max bitrate if outside of allowed range (ex: -V9 -B320) Requested by Benski 2007-01-13 18:02 robert * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/util.h: bug fix. bug tracker entry: [ 1634092 ] encoder.c doesn't compile with --disable-brhist 2007-01-09 23:10 robert * Makefile.unix: adding vector/xmm_quantize_sub.c 2007-01-09 22:24 bouvigne * libmp3lame/libmp3lame_vc8.vcproj: directory x86_64 -> vector 2007-01-09 12:02 aleidinger * libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/psymodel.c: fix the easy warnings 2007-01-09 10:37 aleidinger * libmp3lame/x86_64: Remove all files, they reside in the vector directory now. This breaks the VC build until Gabriel or Robert catch up with those changes. 2007-01-09 10:31 aleidinger * libmp3lame/quantize.c: include the right intrinsics header and only if we need it 2007-01-09 10:29 aleidinger * Makefile.MSVC: use the code in the vector directory 2007-01-09 10:27 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, config.h.in, configure, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regen 2007-01-09 10:24 aleidinger * libmp3lame/lame.c, libmp3lame/quantize.c: remove the CPUCCODE check, it is not needed anymore 2007-01-09 10:23 aleidinger * libmp3lame/i386/Makefile.am: the quoting does not work out as expected, remove it 2007-01-09 10:20 aleidinger * configure.in: Use the vector lib on amd64 and x86. This only works with gcc when -msse is specified in CFLAGS at configure time. Currently I get a sigbus with gcc 3.4.6 with the vector lib. Remove the HAVE_GTK define, it is not used anymore. 2007-01-09 10:18 aleidinger * libmp3lame/Makefile.am: add the vector lib and remove the x86_64 part 2007-01-09 10:15 aleidinger * libmp3lame/vector, libmp3lame/vector/Makefile.am, libmp3lame/vector/Makefile.in, libmp3lame/vector/lame_intrin.h, libmp3lame/vector/xmm_quantize_sub.c: this is a copy of the x86_64 parts with modified automake stuff 2007-01-07 21:28 robert * Makefile.MSVC: do not build legacy BLame DLL on make target all 2007-01-07 20:00 aleidinger * libmp3lame/i386/Makefile.in: regen 2007-01-07 20:00 aleidinger * libmp3lame/i386/Makefile.am: fftsse.nas is used now. 2007-01-07 18:03 robert * frontend/lame_vc6.dsp, frontend/mp3x_vc6.dsp, lame_vc6.dsw, libmp3lame/libmp3lame_dll_vc6.dsp, libmp3lame/libmp3lame_vc6.dsp, mpglib/mpglib_vc6.dsp: VC6 project files updated, added project to generate Libmp3lame-dynamic.lib/dll 2007-01-07 14:51 robert * Makefile.MSVC: Makefile with some basic Libmp3lame-dynamic.lib generation ability 2007-01-07 14:31 robert * include/lame.def: export definition for Libmp3lame-dynamic.lib 2007-01-07 14:30 robert * Makefile.unix, frontend/parse.c, include/lame.h, libmp3lame/fft.c, libmp3lame/lame.c, mpglib/mpg123.h: adding FFTSSE assembler code to the HAVE_NASM conditional code 2007-01-07 14:28 robert * ., frontend, lame_clients_vc6.dsw: collecting all LAME client projects in lame_clients_vc6.dsw workspace. 2007-01-07 14:24 robert * dshow/README, dshow/dshow.dsp: DirectShow Filter links against Libmp3lame-dynamic.lib now 2007-01-07 14:23 robert * Dll/LameDll_vc6.dsp: BLAME DLL links against Libmp3lame-dynamic.lib now 2007-01-07 14:22 robert * ACM/ADbg/ADbg.dsp, ACM/lameACM_vc6.dsp, ACM/tinyxml/tinyxml.dsp: ACM links against Libmp3lame-dynamic.lib now 2007-01-07 14:21 robert * ACM/ADbg/ADbg.dsp, ACM/lameACM_vc6.dsp: ACM links against Libmp3lame-dynamic.lib now 2006-12-28 21:56 robert * Dll/BladeMP3EncDLL.c: we are now at 3.98a11 2006-12-28 21:49 robert * dshow/dshow.dsp, libmp3lame/version.h: we are now at 3.98a11 2006-12-28 21:41 robert * doc/html/history.html: update history 2006-12-28 20:41 robert * dshow/Encoder.cpp, dshow/Encoder.h, dshow/Property.rc, dshow/dshow.dsp, dshow/dshow.dsw: DirectShow filter uses LAME Library API now 2006-12-27 22:19 robert * libmp3lame/reservoir.c: small change in the bitreservoir handling, enable the old --strictly-enforce-ISO switch again 2006-12-27 22:09 robert * doc/html/history.html: updating history entries 2006-12-25 21:37 robert * ACM/ACM.cpp, ACM/ACM.h, ACM/ACMStream.cpp, ACM/ACMStream.h, ACM/AEncodeProperties.cpp, ACM/DecodeStream.h, ACM/acm.rc, ACM/lameACM_vc6.dsp, ACM/main.cpp: some changes, now I can compile the ACM stuff at least 2006-12-25 16:15 robert * libmp3lame/reservoir.c: relaxing the FhG bitreservoir restriction a little bit: at 320 kbps it seems to be possible to use the reservoir if we limit it to almost the size of bits used for sideinfo 2006-12-23 13:54 aleidinger * libmp3lame/x86_64/Makefile.in: regen 2006-12-23 13:54 aleidinger * libmp3lame/x86_64/Makefile.am: fix the build on non x86 CPUs 2006-12-21 09:19 aleidinger * libmp3lame/x86_64/quantize_sub.c: Add a comment to the #endif so that you know where it belongs. 2006-12-21 09:16 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, configure, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/x86_64/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regen 2006-12-21 09:14 aleidinger * libmp3lame/Makefile.am: Handle CPU specific C code in a generic way. 2006-12-21 09:09 aleidinger * libmp3lame/i386/Makefile.am: Quote some parts in case directory names contain spaces. 2006-12-21 09:08 aleidinger * aclocal.m4, config.h.in: regen 2006-12-21 09:04 aleidinger * configure.in: Additional stuff for x86_64. First cut... 2006-12-21 09:03 aleidinger * acinclude.m4: Properly quote some parts according to the new rules auf aclocal. 2006-12-21 09:02 aleidinger * libmp3lame/x86_64/Makefile.am: First cut on adding the x86_64 code. Only tested on IA32. 2006-12-21 09:00 aleidinger * libmp3lame/lame.c, libmp3lame/quantize.c: On x86 we also have the xmmintrin header, but we don't use such code there. So not only check for the header, but also for a CPUCCODE define. This may be refined later depending on further inline C code showing up or not. 2006-12-21 02:18 robert * libmp3lame/machine.h, libmp3lame/version.h: we are now at patch level 10 2006-12-21 02:17 robert * libmp3lame/psymodel.c: fixing some divide by zero error 2006-12-20 00:17 robert * frontend/get_audio.c, frontend/parse.c: let LAME be more strict when it comes to unrecognized program options or unsupported input file formats 2006-12-19 18:50 bouvigne * libmp3lame/libmp3lame_vc8.vcproj: include paths 2006-12-19 01:23 robert * frontend/parse.c: add some help text entries 2006-12-19 01:23 robert * libmp3lame/lame.c: disabling temporal masking effect by default for vbr-mtrh, it works against other tunings in this mode 2006-12-18 23:11 robert * libmp3lame/psymodel.c: fixing some index problems in convolution loops 2006-12-17 23:21 robert * libmp3lame/version.h: we are at 3.98 alpha 9 2006-12-17 21:16 robert * libmp3lame/psymodel.c: fixing two possible out of range index errors accessing fftenergy array for GPSYCHO too 2006-12-17 20:53 robert * libmp3lame/psymodel.c, libmp3lame/util.h: fixing two possible out of range index errors accessing fftenergy array convert partition to scalefac: as we replaced ISO tables with own calculations we forgot to add proper weightening for the convolution band where the transition from one scalefactor to th next scalefactor happens. Now added. 2006-12-17 20:49 robert * libmp3lame/bitstream.c: assert didn't match valid input range: bitrate 8 - 640 kbps 2006-12-15 22:16 robert * libmp3lame/version.h: we are now at 3.98 alpha 8 2006-12-15 22:15 robert * libmp3lame/psymodel.c: 2 bug fixes a) in some cases we did access uninitialized data in conversion from partition bands to scalefac bands b) in nsspy-code the conversion from partition to scalefac bands for short blocks did not match the long block case, nor gpsycho. 2006-12-07 10:50 robert * frontend/main.c, libmp3lame/util.c: disabling the "process affinity kludge" 2006-11-27 20:28 robert * libmp3lame/lame.c: - removed unused function parameter nVbrScale in function PutVbrTag 2006-11-20 20:02 robert * libmp3lame/VbrTag.c, libmp3lame/VbrTag.h: - removed unused function parameter nVbrScale in function PutVbrTag - reduced compilation warnings 2006-11-15 02:25 robert * libmp3lame/lame.c: bug fix: [ 1596306 ] lame 3.97: "fatal error during initialization" with this wav an invalid MPEG samplerate was returned by optimum_samplefreq function 2006-11-15 02:21 robert * Makefile.MSVC, libmp3lame/quantize.c: fixing compile problem with quantize_sub.c 2006-11-12 11:44 bouvigne * doc/html/history.html: history 2006-11-11 17:58 bouvigne * libmp3lame/libmp3lame_vc8.vcproj, libmp3lame/quantize.c, libmp3lame/x86_64, libmp3lame/x86_64/lame_intrin.h, libmp3lame/x86_64/quantize_sub.c: intrinsics functions are now in a separate directory (as in v4) 2006-11-11 17:32 bouvigne * frontend/mp3x_vc8.vcproj: bring back mp3x to life (vc8) 2006-11-11 17:14 bouvigne * Dll/LameDll_vc8.vcproj, README.WINGTK, frontend/lame_vc8.vcproj, lame_vc8.sln, libmp3lame/libmp3lame_vc8.vcproj, mpglib/mpglib_vc8.vcproj: bring back mp3x to life (vc8) 2006-11-08 01:53 robert * frontend/get_audio.c, frontend/main.c, frontend/main.h, frontend/parse.c: feature request: [ 1588283 ] Flushing output stream in lame.exe 'flush' option added 2006-11-07 01:35 robert * libmp3lame/gain_analysis.c, libmp3lame/id3tag.c, libmp3lame/lame_global_flags.h, libmp3lame/util.c: fixing some compiler warnings, removing some unused lame_global_flags elements 2006-11-07 00:36 robert * frontend/parse.c, libmp3lame/VbrTag.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/quantize.c, libmp3lame/set_get.c, libmp3lame/util.h: removing dead code: side channel sparsing didn't work as hoped 2006-11-06 22:39 robert * frontend/brhist.c, frontend/get_audio.c, frontend/parse.c: eliminating some compiler warnings 2006-11-05 18:54 robert * frontend/console.c: bug tracker item: [ 1585942 ] lame not --silent when TERM not set in case LAME was build with TERMCAP defined and no TERM environment is defined, now we do not issue an error message and silently fallback to the default behaviour as if LAME was compiled without TERMCAP defined. 2006-11-05 17:49 robert * frontend/timestatus.c: include string header file added unused variable removed in encoder_progress_end 2006-11-05 16:08 robert * frontend/main.c, frontend/timestatus.c, frontend/timestatus.h: refactoring progress display code out of encoding loop it's located in timestatus.c now Windows specific: fixed parameter type for SetProcessAffinityMask Gabriel: do we need similar things for Win64 too? 2006-11-05 13:37 robert * frontend/console.c: dead code removed 2006-11-05 02:30 robert * libmp3lame/libmp3lame_vc8.vcproj: using fftsse.nas 2006-11-05 01:55 robert * Makefile.MSVC: using fftsse.nas 2006-11-04 18:59 robert * Makefile.MSVC, Makefile.unix, frontend/parse.c, libmp3lame/fft.c, libmp3lame/i386/fft3dn.nas, libmp3lame/i386/fftsse.nas, libmp3lame/i386/nasm.h, libmp3lame/lame.c, libmp3lame/version.h: we are now at patch level 7 changes in lame frontend switches -k removed, call lowpass and highpass if you need to change them --short/noshort/allshort - degraded into DEVELOPER ONLY switches normal users shouldn't use them -X -Z degraded to DEVELOPER ONLY switches -X is too tough to communicate to end users -Z isn't used actualy fft3dnow and fftsse nasm code taken from LAME4 branch but not added to the configure stuff/VC project files 2006-10-18 20:29 bouvigne * Dll/LameDll_vc8.vcproj: added back the .def config 2006-10-05 21:07 bouvigne * libmp3lame/lame.c: error in a test (noticed by Robert) 2006-09-30 19:55 kylev * lame.spec.in: we distribute a .gz, not a .bz2, and there really isn't a public URL for the file 2006-09-30 15:37 aleidinger * Dll/Makefile.in, Makefile.in, configure, frontend/Makefile.in, libmp3lame/Makefile.in, mpglib/Makefile.in: regen 2006-09-30 15:35 aleidinger * configure.in: Only check for sndfile if it is requested. 2006-09-30 09:17 bouvigne * Dll/Makefile.am, Makefile.am, frontend/Makefile.am, libmp3lame/Makefile.am, mpglib/Makefile.am: updated the .am files to change vc7 to vc8 2006-09-24 16:17 bouvigne * doc/html/history.html: updated history 2006-09-23 21:46 bouvigne * doc/html/history.html: release 3.97 2006-09-23 19:30 aleidinger * configure: regen 2006-09-23 19:29 aleidinger * config.h.in, configure.in: check for xmmintrin.h 2006-09-23 08:25 bouvigne * Dll/BladeMP3EncDLL.c: fix in boolean comparison for Delphi progs (bug #1536751) 2006-09-22 19:18 aleidinger * ChangeLog: update from CVS history 2006-09-22 18:51 aleidinger * configMS.h: Borland C seems to follow the lead of MSC. Bug ID: 1563522 2006-09-10 14:25 bouvigne * frontend/parse.c, libmp3lame/lame.c, libmp3lame/tables.c, libmp3lame/util.c: restrict mpeg 2.5 to 64kbps 2006-09-03 15:07 bouvigne * Dll/LameDll_vc7.vcproj, frontend/lame_vc7.vcproj, frontend/mp3x_vc7.vcproj, lame_vc7.sln, libmp3lame/libmp3lame_vc7.vcproj, mpglib/mpglib_vc7.vcproj: removed unmaintained VC7 project files 2006-07-30 13:53 bouvigne * configMS.h, libmp3lame/util.c: enable SSE code when using x64 2006-07-30 09:51 bouvigne * Dll/LameDll_vc8.vcproj, frontend/lame_vc8.vcproj, lame_vc8.sln, libmp3lame/libmp3lame_vc8.vcproj, mpglib/mpglib_vc8.vcproj: x64 builds 2006-07-30 09:32 bouvigne * Dll/LameDll_vc8.vcproj: updated project 2006-07-30 09:11 bouvigne * Dll/LameDll_vc8.vcproj, lame_vc8.sln: added lame DLL VC8 project 2006-07-14 16:06 bouvigne * frontend/lame_vc8.vcproj, lame_vc8.sln, libmp3lame/libmp3lame_vc8.vcproj, mpglib/mpglib_vc8.vcproj: VC8 projects 2006-07-14 15:58 bouvigne * libmp3lame/psymodel.c: slight change in the short block detection safety threshold 2006-06-28 23:05 robert * libmp3lame/lame.c: full outer loop search disabled because of audible distortions it may generate 2006-06-28 21:05 robert * libmp3lame/psymodel.c: normalizing the spreading function (vbr-new) 2006-06-24 15:19 robert * libmp3lame/lame.c, libmp3lame/quantize_pvt.c, libmp3lame/version.h: enabling the conditional RH_ATHAA_FIX code for vbr-new we are now at patch level 6 2006-06-24 01:57 robert * libmp3lame/lame.c, libmp3lame/quantize_pvt.c: tuning ATHAA_FIX for high quality VBR new presets 2006-06-23 23:40 robert * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/vbrquantize.c: tuning ATHAA_FIX for midrange VBR new presets 2006-06-23 23:09 robert * libmp3lame/machine.h: always compile in assertions for alpha builds 2006-06-23 23:06 robert * Makefile.MSVC: updating LibSndFile support, it's used by default now 2006-06-23 20:52 aleidinger * libmp3lame/version.h: bump the patchlevel for the updated sndfile support 2006-06-23 20:49 aleidinger * doc/html/history.html: document the updated libsndfile support 2006-06-23 20:46 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, configure, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regen 2006-06-23 20:41 aleidinger * configure.in, frontend/Makefile.am, frontend/get_audio.c: Add support for a recent sndfile library. Submitted by: Erik de Castro Lopo (sndfile author) 2006-06-18 23:02 robert * libmp3lame/lame.c: developer only switch "--tune x" mow modifies current mask_adjust settings instead of assigning x to it 2006-06-18 21:32 robert * Makefile.unix, libmp3lame/quantize.h: adding RH_TEST_ATHAA_FIX to the Makefile config RH matching declaration and implementation of trancate_smallsspectrums 2006-06-18 20:49 robert * libmp3lame/bitstream.c: fixing asserts 2006-06-18 20:48 robert * libmp3lame/psymodel.c: bugfix: in NSPSY highpass filter, out of bounds access in fircoef bugfix: loss of fraction in equal loudness weighting 2006-06-18 19:20 robert * libmp3lame/quantize_pvt.c: small update to the ATHAA problem fix 2006-06-18 18:16 robert * Makefile.MSVC, libmp3lame/machine.h, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/reservoir.c: trying to fix ATHAA problem for low volume files to enable the code, one has to define RH_TEST_ATHAA_FIX at compile time 2006-06-18 16:45 robert * frontend/gtkanal.c: needs console.h 2006-06-18 16:44 robert * libmp3lame/bitstream.c: fixed assertion 2006-06-16 00:16 robert * libmp3lame/quantize.c, libmp3lame/util.h, mpglib/interface.c: few more include dependencies sorted 2006-06-15 23:51 robert * frontend/gtkanal.c, frontend/mp3x.c, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/encoder.h, libmp3lame/fft.c, libmp3lame/fft.h, libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h, libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/l3side.h, libmp3lame/lame-analysis.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/lameerror.h, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/newmdct.h, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/set_get.c, libmp3lame/set_get.h, libmp3lame/tables.c, libmp3lame/tables.h, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/version.c, libmp3lame/version.h, mpglib/interface.c, mpglib/layer3.c, mpglib/mpglib.h: some more header dependencies, indentation 2006-06-15 23:07 robert * libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/encoder.h, libmp3lame/fft.c, libmp3lame/fft.h, libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h, libmp3lame/lame.c, libmp3lame/libmp3lame_vc6.dsp, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/tables.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h, libmp3lame/version.c, libmp3lame/version.h: making arguments and variables const where possible 2006-06-15 16:03 robert * libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/encoder.h, libmp3lame/fft.c, libmp3lame/fft.h, libmp3lame/gain_analysis.h, libmp3lame/id3tag.c, libmp3lame/id3tag.h, libmp3lame/l3side.h, libmp3lame/lame-analysis.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/set_get.c, libmp3lame/set_get.h, libmp3lame/tables.c, libmp3lame/tables.h, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/version.c: tried to avoid includes within include headers to make dependencies more obvious 2006-06-03 13:34 aleidinger * ChangeLog: Add nearly a year of history. 2006-06-03 13:14 aleidinger * doc/html/history.html: add todays history 2006-06-03 13:12 aleidinger * ltconfig, mkinstalldirs, stamp-h.in: Remove obsolete files (at least after the use of the new autotools, they are not created anymore). 2006-06-03 13:11 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.am.global, Makefile.in, aclocal.m4, config.h.in, configure, configure.in, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.am, libmp3lame/i386/Makefile.in, ltmain.sh, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: Update to: - libtool 1.5.22 - automake 1.9 - autoconf 2.59 2006-06-03 13:03 aleidinger * libmp3lame/lame.c: - Fix bug introduced in last revision. - Don't segfault in lame_close() in case of an error on initialisation. 2006-06-03 11:41 aleidinger * libmp3lame/lame.c: Plug some memory leaks in the error case. Noticed by: Christophe Fergeau SF-Bug: 1443630 2006-06-03 11:05 aleidinger * lame.spec.in: - Remove requirements for specific gcc versions, since modern ones "just work". - Remove out-dated hyper-optimizations (some of which weren't valid compiler flags anymore). - Update to current RPM techniques and macros (inspired by freshrpms.net spec). Submitted by: Kyle VanderBeek SF-Patch: 1488468 2006-05-04 19:50 bouvigne * libmp3lame/reservoir.c, libmp3lame/version.h: restrict max mp3 buf to solve compatibility issue with FhG directshow filter 2006-05-04 19:43 bouvigne * libmp3lame/psymodel.c: attack detection: workaround against "low freq" periodic signals (like trumpet) 2006-04-16 09:02 takehiro * configure.in: better socket library configuration. 2006-04-16 07:06 takehiro * config.h.in, configure.in: remove winsock check. It seems we do not need it anymore. 2006-04-08 07:12 takehiro * libmp3lame/id3tag.c: fix genre tag spelling as reported by CrazySoul 2006-04-08 07:08 takehiro * doc/html/id3.html: fix spelling as reported by CrazySoul 2006-02-18 16:35 takehiro * frontend/get_audio.c: remove redundant description. 2006-02-18 16:35 takehiro * frontend/main.c: fix decoding problem when the output is stdout, reported by john.edwards33 (sf.net bugid #1430719) 2006-02-03 06:52 vitaly-ivanov * dshow/README: typo fix 2006-01-30 15:41 takehiro * frontend/get_audio.c: fix error message when unsupported format AIFF file. (related bugid #1414515, http://sourceforge.net/tracker/index.php?func=detail&aid=1414515&group_id=290&atid=100290 ) 2006-01-22 17:52 robert * include/lame.h, libmp3lame/encoder.c, libmp3lame/lame-analysis.h, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/util.h, libmp3lame/version.h: bug fixes: psy code used long block ATH in short block case workaround: quantization routines of new vbr code failed on strong tonal samples, due to over optimistic masking promises from psy model 2006-01-21 13:10 takehiro * libmp3lame/id3tag.c: patch #1379187, "id3tag_write_v2 doesn't allocate enough memory for track" 2005-12-21 21:41 robert * frontend/parse.c: bug fix: implementation of the priority commandline switch did not what the documentation says (windows only) 2005-12-18 18:26 robert * frontend/brhist.c: fixing display glitch with very long files 2005-12-05 15:57 takehiro * libmp3lame/id3tag.c: fix id3v2 genre tag problem, reported by wylda@volny. now LAME won't crash with "--id3v2-only --tg 14". 2005-11-29 21:21 robert * frontend/mp3rtp.c, frontend/mp3x.c: commit was pending, needed for John33's decoding patch 2005-11-29 19:49 robert * doc/html/history.html: updating history 2005-11-28 10:09 vitaly-ivanov * dshow/Encoder.h, dshow/Mpegac.cpp, dshow/Mpegac.h, dshow/PropPage.cpp, dshow/PropPage.h, dshow/PropPage_adv.cpp, dshow/PropPage_adv.h, dshow/Property.rc, dshow/README, dshow/iaudioprops.h, dshow/resource.h: Property page update - moved "set duration" check box to the advanced page, added "allow sample overlap" check box (uncheck it if downstream filter is Avi Mux, otherwise use it for better video/audio synchronization - especially when capturing). Copying terms update (README file) 2005-11-27 15:02 bouvigne * doc/html/history.html, doc/man/lame.1, frontend/parse.c, libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/fft.c, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/reservoir.c, libmp3lame/set_get.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/vbrquantize.c: merge from 3.97 branch 2005-11-22 22:15 robert * frontend/console.c, frontend/console.h, frontend/get_audio.c, frontend/get_audio.h, frontend/gtkanal.c, frontend/lametime.c, frontend/main.c, frontend/main.h, frontend/parse.c, frontend/rtp.c: John33's lame decoding fix 2005-11-20 14:24 takehiro * libmp3lame/gain_analysis.c: fix built problem with Sun Studio 10, reported by Moinak Ghosh 2005-11-12 18:52 bouvigne * libmp3lame/gain_analysis.c: speedup of silent parts analysis 2005-11-12 18:33 bouvigne * doc/html/history.html: history from 3.97 branch 2005-11-12 18:21 bouvigne * Makefile.MSVC: added console.c 2005-11-09 18:56 aleidinger * frontend/rtp.c: Fix bug #1349332 2005-11-09 18:40 aleidinger * libmp3lame/id3tag.c: Fix bug #1351021. 2005-11-05 16:35 aleidinger * doc/html/history.html: add todays work 2005-11-05 16:20 aleidinger * libmp3lame/id3tag.c, libmp3lame/id3tag.h: Add support for total number of tracks per album. Submitted by: Kyle VanderBeek While I'm here add some abort() calls in case we overflow some arrays (this is only compile tested, so pass me the pointy hat if it fails). 2005-11-05 15:54 aleidinger * libmp3lame/id3tag.c: Add id3v2 TLEN support. Submitted by: Linus Walleij 2005-11-05 15:52 aleidinger * frontend/console.c: some compilers really want the void nowadays... 2005-11-05 15:51 aleidinger * frontend/Makefile.in: regen 2005-11-05 15:49 aleidinger * frontend/console.h: make some pseudo prototypes to real prototypes (fixes gcc warnings) 2005-11-05 15:48 aleidinger * frontend/Makefile.am: console.[ch] is now mandatory, so build it 2005-11-05 15:47 aleidinger * include/lame.h: remove redundant function prototypes (we need only one prototype) 2005-11-01 20:17 robert * frontend/console.c: bug fix: FILE pointer may be NULL for DEBUGF 2005-11-01 13:54 robert * frontend/mp3rtp.c, frontend/rtp.c: getting mp3rtp working again 2005-11-01 13:10 robert * frontend/mp3x.c: replacing (f)printf by console_printf, error_printf and report_printf. fixes the problem that some messages would be send to stdout instead of stderr. added internal switch '--debug-file ', allows to debug the code more comfortably by writing DEBUGF(xyz) at code hot spots. 2005-11-01 13:01 robert * frontend/.indent.pro, frontend/amiga_mpega.c, frontend/brhist.c, frontend/brhist.h, frontend/console.c, frontend/console.h, frontend/get_audio.c, frontend/get_audio.h, frontend/gpkplotting.c, frontend/gpkplotting.h, frontend/gtkanal.c, frontend/gtkanal.h, frontend/lame_vc6.dsp, frontend/lame_vc7.vcproj, frontend/lametime.c, frontend/lametime.h, frontend/main.c, frontend/main.h, frontend/mp3rtp.c, frontend/mp3x.c, frontend/mp3x_vc6.dsp, frontend/mp3x_vc7.vcproj, frontend/parse.c, frontend/parse.h, frontend/portableio.c, frontend/portableio.h, frontend/rtp.c, frontend/rtp.h, frontend/timestatus.c, frontend/timestatus.h: replacing (f)printf by console_printf, error_printf and report_printf. fixes the problem that some messages would be send to stdout instead of stderr. added internal switch '--debug-file ', allows to debug the code more comfortably by writing DEBUGF(xyz) at code hot spots. 2005-11-01 12:51 robert * Makefile.unix, configMS.h: *** empty log message *** 2005-10-31 13:02 bouvigne * libmp3lame/quantize.c: fixed bug 1227632 2005-10-31 13:01 bouvigne * libmp3lame/lame.c: fixed bug 1337556 2005-10-31 13:00 bouvigne * frontend/main.c: spelling of Takehiro's name 2005-10-10 07:06 rbrito * COPYING, debian/changelog, debian/copyright, debian/rules, doc/man/lame.1: Updated manpage to include accented characters; Updated debian packaging; Updated documentation to include the new FSF address. 2005-09-29 21:22 robert * libmp3lame/i386/fft3dn.nas: taken from lame4 branch: fix possible link problem on cygwin 2005-09-25 22:09 glessard * libmp3lame/quantize.c: GCC 4 on OS X was choking on line 615. Given the assignment on line 630, clearly 'work' isn't a pointer to an array of constants anyway. 2005-09-20 19:51 robert * libmp3lame/util.c: fix wrong typing 2005-09-20 19:41 robert * libmp3lame/quantize.c, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h: moved loop from quantize.c to vbrquantize.c 2005-09-20 19:38 robert * libmp3lame/util.c, libmp3lame/util.h: malloc with n-bytes alignment 2005-09-20 09:19 robert * frontend/parse.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c: added internal developer switch to select between ISO and x^3/4 quantization --quantization-type n n=0: no change, n=1: ISO, n=2: x^3/4 2005-09-18 22:57 robert * libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h, libmp3lame/version.h: vbr new noise shaping: let lame abort in exceptional cases now on alpha 2 2005-09-18 21:38 robert * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/util.h, libmp3lame/vbrquantize.c: vbr-new: bug fix for "searchGlobalStepSizeMax" demangling vbr_old and vbr_new code 2005-09-11 10:20 bouvigne * libmp3lame/version.h: welcome to 3.98 2005-09-11 09:57 bouvigne * lame_vc7.sln: missing file 2005-09-11 09:14 bouvigne * libmp3lame/version.h: 3.97b 2005-09-08 22:57 takehiro * doc/html/history.html: fixed style. 2005-09-08 22:57 takehiro * doc/html/history.html: added my changes for 3.97. 2005-09-08 02:44 rbrito * doc/man/lame.1: Fixed typo. 2005-09-07 21:15 bouvigne * testcase.mp3: updated testcase for 3.97b1 2005-09-06 18:24 bouvigne * doc/html/history.html: typo 2005-09-05 21:24 bouvigne * doc/html/history.html, doc/html/index.html: updated history for 3.97b 2005-09-05 20:49 bouvigne * frontend/parse.c: -Vx short help 2005-09-05 04:29 rbrito * debian/changelog, debian/rules: Update generation of package with full optimization, now that compilation with GCC 4 works. 2005-09-04 19:52 aleidinger * ChangeLog: Update with recent history. 2005-09-04 19:45 aleidinger * configure: Regen. 2005-09-04 19:35 aleidinger * config.h.in: Add the bits for largefile support. Submitted by: Diego "Flameeyes" Pettenò Bug ID: 1271744 2005-09-04 19:11 aleidinger * configure.in: Remove some flags which gcc 4.x doesn't understand anymore. Noticed by: Rogério Brito 2005-09-04 19:07 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, config.h.in, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: Regen. 2005-09-04 19:05 aleidinger * depcomp, frontend/depcomp, install-sh, libmp3lame/depcomp, ltmain.sh, misc/depcomp, missing, mkinstalldirs, mpglib/depcomp: Update to recent autotools. 2005-09-04 19:02 aleidinger * frontend/Makefile.am: Play catchup with the autotools. 2005-09-04 18:54 aleidinger * configure.in: Initialize autoconf correctly (with lame mailinglist address). 2005-09-04 11:52 rbrito * doc/man/lame.1: Fixed typo in manpage. 2005-09-02 18:09 bouvigne * frontend/parse.c: fixed a stupid bug with --preset medium/standard/extreme 2005-09-01 18:12 bouvigne * libmp3lame/VbrTag.c: 320kbps cbr was flagged as "non optimal" in the info header 2005-08-28 17:30 bouvigne * frontend/parse.c, libmp3lame/version.h: Changed the way "--preset xxx" is handled, as I've seen many users passing "--preset standard --vbr-new". Presets are now evaluated during initialisation, so this kind of command line now properly works. 2005-08-28 17:02 bouvigne * Makefile.MSVC, frontend/parse.c, libmp3lame/lame.c, libmp3lame/version.c, libmp3lame/version.h: 64bits build from within win64 platform sdk 2005-08-27 08:25 takehiro * configure, configure.in: fix for configure problem reported by Steven P. Ulrick. 2005-08-25 12:14 takehiro * debian/Makefile.am, debian/Makefile.in: follow the file name change. 2005-08-21 17:32 bouvigne * ACM/ADbg/ADbg_vc7.vcproj, ACM/ADbg/Makefile.am, ACM/Makefile.am, ACM/lameACM_vc7.vcproj, ACM/tinyxml/Makefile.am, ACM/tinyxml/tinyxml_vc7.vcproj, Dll/LameDll_vc7.vcproj, Dll/Makefile.am, Makefile.am, frontend/Makefile.am, frontend/lame_vc7.vcproj, frontend/mp3x_vc7.vcproj, libmp3lame/Makefile.am, libmp3lame/libmp3lame_vc7.vcproj, mpglib/Makefile.am, mpglib/mpglib_vc7.vcproj: added project files for VC7 2005-08-20 17:48 bouvigne * doc/html/switchs.html: typo 2005-08-16 07:56 rbrito * debian/changelog, debian/control: Make libmp3lame0 provide and replace liblame0, not conflict with it. 2005-08-16 07:11 rbrito * debian/changelog, debian/control, debian/libmp3lame0-dev.files: Fixed development package to not include shared libraries. Other misc fixes. Yet more to come. 2005-08-15 04:25 rbrito * debian/changelog, debian/control, debian/liblame0-dev.docs, debian/liblame0-dev.files, debian/liblame0.files, debian/libmp3lame0-dev.docs, debian/libmp3lame0-dev.files, debian/libmp3lame0.files, debian/rules: Update Debian packaging so that the library packages follow the SONAME rules. Also incorporate some changes from Christian Marillat's packages in the basic lame package. More changes to come soon. 2005-08-07 14:07 takehiro * doc/man/lame.1: when the input is raw, the input file will be treated as native endian. (bugid 1158189) 2005-08-07 13:24 bouvigne * doc/html/switchs.html: update of stereo modes description 2005-08-05 15:22 takehiro * doc/man/lame.1: added "per sample" for the description of --bitwidth option. (bugid #1158196) 2005-08-05 09:22 vitaly-ivanov * dshow/Mpegac.cpp, dshow/Mpegac.h: Another timestamp fix. Added additional resynchronization points (now there are 4 resynch points) in order to implement absolutely accurate in-out synchronization 2005-08-04 01:42 rbrito * debian/changelog, debian/control, debian/rules: Updates for Debian packaging. 2005-08-04 01:40 rbrito * doc/man/lame.1: Documentation of switches: --{un,}signed and --{big,little}-endian. 2005-08-01 13:10 vitaly-ivanov * dshow/Mpegac.cpp, dshow/Property.rc: Output timestamps fix. There was a serious bug when input audio samples had time gaps between each other - DirectShow timestamps for output samples were calculated wrong in this case 2005-07-28 13:05 rbrito * doc/html/basic.html, doc/html/contributors.html, doc/html/examples.html, doc/html/history.html, doc/html/id3.html, doc/html/switchs.html: Minor spelling corrections and other fixes to documentation. 2005-07-28 13:02 rbrito * debian/rules: Safe version for compilation with GCC 4. 2005-07-27 21:49 rbrito * doc/html/presets.html, doc/html/switchs.html: Spelling fixes for documentation. 2005-07-27 21:38 rbrito * doc/man/lame.1: Include description of the "medium" preset in the manpage. Fix some spelling errors on the manpage. 2005-07-27 08:43 rbrito * debian/changelog, debian/control, debian/lame.manpages, debian/rules, doc/man/lame.1: Small fixes for lame manpage to make lintian happy. More updates to come. 2005-07-27 07:41 rbrito * debian/changelog: Preparation for the new beta release. More changes to come. 2005-07-10 16:13 bouvigne * libmp3lame/presets.c, libmp3lame/version.h: alpha 11: update of abr/cbr 160-320 2005-06-29 12:26 vitaly-ivanov * dshow/Encoder.cpp, dshow/PropPage.cpp, dshow/PropPage_adv.cpp, dshow/Property.rc: Joint / Standard stereo selection fix. Got rid of automatic joint stereo encoding when the bit rate is relatively low, now it's up to the user 2005-06-25 08:15 vitaly-ivanov * dshow, dshow/Encoder.h, dshow/Property.rc, dshow/aboutprp.cpp: *** empty log message *** 2005-06-24 10:04 vitaly-ivanov * dshow, dshow/Encoder.cpp, dshow/Encoder.h, dshow/Mpegac.cpp, dshow/Mpegac.def, dshow/Mpegac.h, dshow/PropPage.cpp, dshow/PropPage.h, dshow/PropPage_adv.cpp, dshow/PropPage_adv.h, dshow/Property.rc, dshow/README, dshow/REG.CPP, dshow/UIDS.H, dshow/aboutprp.cpp, dshow/aboutprp.h, dshow/dshow.dsp, dshow/dshow.dsw, dshow/iaudioprops.h, dshow/resource.h: *** empty log message *** 2005-06-24 09:37 vitaly-ivanov * dshow/REG.H: *** empty log message *** 2005-05-29 16:10 takehiro * debian/changelog, debian/control: fixed version number (upstream -> downstream) patch from Jack, from http://sourceforge.net/tracker/index.php?func=detail&aid=1201172&group_id=290&atid=100290 2005-05-25 14:17 takehiro * frontend/get_audio.c, frontend/parse.c: fixed output message even when "--silent" (bug #1145932) 2005-05-25 13:56 takehiro * libmp3lame/lame.c: fix format strings to print out the "float" value. (bug #1207470) 2005-05-25 13:47 takehiro * frontend/parse.c: removed -Z option description, which has no effects currently. 2005-03-20 17:28 bouvigne * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/quantize.c, libmp3lame/quantize.h: allow masking adjustements in ABR/CBR 2005-03-19 18:34 bouvigne * libmp3lame/version.h: alpha 10 2005-03-19 17:51 bouvigne * libmp3lame/presets.c: updated vbr 0/1/2/3 presets 2005-03-19 15:04 bouvigne * libmp3lame/quantize_pvt.c: also use nssfb21 in short blocks 2005-03-19 15:03 bouvigne * libmp3lame/quantize.c: typo 2005-03-19 14:44 bouvigne * libmp3lame/quantize.c: updated psfb21 analog silence detection 2005-03-18 05:26 rbrito * debian/changelog, debian/control, debian/rules, doc/man/lame.1: Slight modifications to debian packaging (with more to come). Minor changes to the frontend manpage. 2005-03-15 00:26 robert * libmp3lame/vbrquantize.c: yet another -Y thing: calc_xmin does not compute upto max_nonzero_coeff in the -Y case. 2005-03-14 22:32 robert * libmp3lame/vbrquantize.c: bugfix for vbr-new when sub block gain violates IXMAXVAL constrain in -Y case 2005-03-14 21:53 robert * libmp3lame/quantize_pvt.c: removed an assert in calc_noise_core_c cod_info->count1 == 0 seems to be a common case 2005-03-13 17:20 robert * libmp3lame/presets.c: removing placebo -bx from fast presets it's a placebo with vbr-old too, but keep it that way a little bit longer 2005-03-13 17:01 robert * frontend/mp3x.c: forgot to commit this one, removed unused parameter from usage parameter list 2005-03-13 14:46 robert * libmp3lame/encoder.c, libmp3lame/set_get.c, libmp3lame/version.c, libmp3lame/version.h: removing unused ATH auto adjust types. JDs is now the only one 2005-03-13 14:43 robert * ACM/ACM.cpp: version 2005-03-13 14:42 robert * frontend/main.c, frontend/parse.c, frontend/parse.h: print helptext for internal switches only when internal switches are available 2005-03-12 23:01 robert * libmp3lame/vbrquantize.c: vbr-new: fixing the -Y bug, that sfb21 wasn't quantized at all 2005-03-12 17:39 bouvigne * libmp3lame/lame.c: fix: q2 and higher were NOT enabling substep shaping 2 2005-03-12 17:38 bouvigne * mpglib/mpg123.h: fix for replaygain-accurate 2005-03-08 23:07 robert * Makefile.unix, frontend/parse.c, libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/presets.c, libmp3lame/set_get.c, libmp3lame/util.h: removing some unused member of lame_internal_flags structure 2005-03-06 18:59 bouvigne * libmp3lame/takehiro.c: faster noquant_count_bits 2005-03-06 16:56 bouvigne * doc/html/history.html: history 2005-03-06 16:17 bouvigne * libmp3lame/presets.c, libmp3lame/version.h: updated V3 and V2 presets 2005-03-05 18:26 bouvigne * libmp3lame/quantize.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: slightly faster quantization (not totally sure if it is really faster) Also fixed a severe bug in ISO quantization when not using the IEEE hack 2005-03-05 13:45 bouvigne * configMS.h, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/util.h: update of the intrinsics coding style 2005-03-05 12:40 bouvigne * libmp3lame/quantize_pvt.c: minor speed increase in calc_noise 2005-02-28 22:45 bouvigne * libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.h: calc_noise is back to the C version 2005-02-27 22:03 bouvigne * libmp3lame/quantize_pvt.c: calc_noise: fixed an assertion failure in frames with no big_values 2005-02-27 20:43 bouvigne * libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.h: sse version of calc_noise (speedup is very small) 2005-02-27 15:09 bouvigne * configMS.h, libmp3lame/quantize.c, libmp3lame/util.h: slightly faster init_xrpow_core_sse 2005-02-26 06:21 takehiro * frontend/get_audio.c: fix mp3 frame # estimation (bugid #934072). 2005-02-25 19:01 bouvigne * configMS.h: intrinsics support for ICL 2005-02-25 01:21 robert * frontend/brhist.c, frontend/timestatus.c: RH_HIST: don't print unused channel modes and block types 2005-02-24 00:27 robert * frontend/brhist.c: fix scrolling problem I introduced with the last commit 2005-02-23 17:58 bouvigne * libmp3lame/quantize_pvt.c: slightly faster calc_noise 2005-02-22 02:06 robert * libmp3lame/psymodel.c: Compile time option to enable GPSYCHO like block type switching in NSPSYTUNE. Due to differences in convolution, the switching does not happen exactly as in GPSYCHO. (disabled by default, edit psymodel.c to activate) 2005-02-19 22:47 robert * frontend/brhist.c, frontend/brhist.h, frontend/main.c: some statistics about block type distribution 2005-02-19 18:48 bouvigne * configMS.h: conditionnal intrinsics support for MSVC (probably also works for ICL) 2005-02-19 15:32 bouvigne * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.h: SSE intrinsic version of init_xrpow It is now using 1% of total time (using 4% in the standard version) 2005-02-13 14:42 bouvigne * libmp3lame/psymodel.c: minor speedup 2005-02-07 22:02 robert * configure.in, libmp3lame/Makefile.am, libmp3lame/Makefile.in: fixing mingw32 configure problems 2005-02-06 23:05 robert * libmp3lame/quantize.c, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h: some MSVC warning level 4 issues resolved 2005-02-06 20:23 robert * libmp3lame/quantize.c, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: resolved compiler warnings 2005-02-06 19:49 robert * libmp3lame/lame.c, libmp3lame/machine.h, libmp3lame/quantize_pvt.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: lame.c: fixed lost break in lame_init_parms reduced calloc/free calls (where called once per frame, now once per run) machine.h: removed IIPOW20 util.c, util.h: removed VBR_t, added in_buffer_[0/1] to lame_internal_flags vbrquantize.c: fixed some small rounding problem in quantize routines 2005-02-05 14:14 robert * libmp3lame/vbrquantize.c: eleminating dead code expanding preprocessor defines works probably not with GPsycho anymore, but NSPSYTUNE only (G.not tested) doesn't try to use 126 bits at minimum per granule anymore, less bloating on mono like signals where the difference signal is almost zero. 2005-02-05 13:32 bouvigne * libmp3lame/version.h: bumped alpha 2005-02-05 13:31 bouvigne * libmp3lame/lame.c: enabled ath adjustment for abr/cbr 2005-02-04 18:34 bouvigne * libmp3lame/lame.c: sorry, I shouldn't have commited this one 2005-02-01 10:29 bouvigne * libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/takehiro.c: reduced warnings 2005-01-30 22:31 robert * Makefile.unix, libmp3lame/vbrquantize.c: scalefactor allocation should work now as expected 2005-01-30 22:27 robert * libmp3lame/machine.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: off by one bug: we do access iipow20 by values in [0,Q_MAX2] inclusive, that makes Q_MAX2+1 entries in total 2005-01-29 19:40 bouvigne * libmp3lame/presets.c: updated vbr presets 9 to 4 2005-01-29 18:42 bouvigne * libmp3lame/takehiro.c: fixed a crash 2005-01-29 18:11 bouvigne * libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c: quantize_xrpow: also re-use previously computed data in short blocks 2005-01-25 21:47 bouvigne * libmp3lame/quantize.c: X9: more bits into reservoir 2005-01-23 16:25 bouvigne * libmp3lame/takehiro.c: oops, quantize_xrpow optimization has been accidentally disabled in november 2005-01-23 14:27 bouvigne * libmp3lame/lame.c: reinstated old q1 (increase only 1 sf per iteration) 2005-01-22 18:15 bouvigne * libmp3lame/quantize_pvt.c: problem with q1 and q0 finally found. I am unable to trace it prior to "the big 3.94 merge". 2005-01-20 16:38 takehiro * libmp3lame/quantize.c: to clarify the relationship of "if-then-else" and suppress warnings from gcc, added braces. 2005-01-13 19:18 bouvigne * libmp3lame/version.h: bump alpha 2005-01-13 19:17 bouvigne * libmp3lame/quantize.c, libmp3lame/quantize_pvt.h: use bits in quant_comp 2005-01-13 18:54 bouvigne * libmp3lame/presets.c: updated ath values for abr/cbr 2005-01-13 18:20 bouvigne * frontend/gtkanal.c, libmp3lame/lame-analysis.h, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: Replaced X9 by the former X10 (ssd). The abr/cbr modes are using this comparison 2005-01-10 09:23 takehiro * libmp3lame/quantize_pvt.c: seems it cannot build on Linux and some Unix. to fix this, I changed max() -> Max(). 2005-01-09 17:31 bouvigne * frontend/gtkanal.c, libmp3lame/lame-analysis.h: display SSD in mp3x 2005-01-09 17:31 bouvigne * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: do not compute noise if best quant has no distorted band and current quant is bigger than the best one 2005-01-08 11:47 bouvigne * libmp3lame/version.h: bumped alpha 2005-01-08 11:46 bouvigne * libmp3lame/psymodel.c: limited ATH effect in short blocks. This is fundamentally wrong, but otherwise it produces bad quality 2005-01-08 10:58 bouvigne * libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: updated VBR presets to match the cbr/abr changes (also corrected the --cbr behavior) 2005-01-08 10:56 bouvigne * doc/html/history.html: history 2004-12-31 12:07 takehiro * frontend/main.c: merge 1.73.2.34 -> 1.73.2.35 fix it outputs CR even when --silent/--quiet (bug #973302) 2004-12-31 11:26 takehiro * frontend/mp3rtp.c: fix buffer overrun(same in my experimental branch). 2004-12-27 16:13 bouvigne * libmp3lame/lame.c: cbr/abr: adjusted lowpass 2004-12-27 15:32 bouvigne * libmp3lame/presets.c: abr/cbr: adjusted m/s and short/long 2004-11-29 23:41 takehiro * libmp3lame/psymodel.c: fix ATHlower is always "0". 2004-11-28 19:10 bouvigne * libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c: some FLOAT -> int 2004-11-28 18:21 takehiro * Dll/BladeMP3EncDLL.c: added brancket to fix bugid#1003342 on sf.net 2004-11-17 19:54 bouvigne * libmp3lame/quantize.c, libmp3lame/util.h: noise shaping type 3: amplify bands within 50% of distortion, then refine by amplifying the most distorted band 2004-10-24 14:26 bouvigne * libmp3lame/version.h: bump alpha 2004-10-24 14:25 bouvigne * libmp3lame/lame.c: reworked -q values: noise_shaping_amp 2 removed full Huffman search removed in q0 full outer loop search enabled in q0 2004-10-24 14:22 bouvigne * libmp3lame/quantize.c, libmp3lame/util.h: full outer loop search: allows to search for better quantization until global_gain==255 2004-08-19 19:49 bouvigne * doc/html/history.html: added 3.96.1 2004-08-19 19:36 bouvigne * doc/html/modes.html: spelling, clarifications 2004-07-21 18:46 bouvigne * ACM/ACM.cpp: fix by Dmitriy Startsev 2004-07-11 18:12 bouvigne * ACM/acm.rc: updated version number because of recent fixes 2004-07-11 18:11 bouvigne * ACM/ACMStream.cpp: fixed a potential crash 2004-07-11 18:05 bouvigne * ACM/ACM.cpp: Should fix the display issue under win95 2004-07-11 17:11 bouvigne * ACM/ACM.cpp: fix crash when used through directshow. It still does not work in this configuration, but at least it does not crash anymore. 2004-06-27 13:02 bouvigne * libmp3lame/psymodel.c: fixed short block detection using mid and side channels 2004-06-26 15:35 bouvigne * libmp3lame/encoder.c: lame_encode_frame_init 2004-06-20 17:28 bouvigne * doc/html/history.html, libmp3lame/lame.c: restored use of padding when not using bit reservoir 2004-06-18 19:15 bouvigne * libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/l3side.h, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h, libmp3lame/version.h: FLOAT8 -> FLOAT 2004-06-06 15:31 bouvigne * frontend/gpkplotting.c, frontend/gtkanal.c: more explicit display of noise values 2004-06-06 14:15 bouvigne * frontend/gtkanal.c: display more scalefactor band splitting lines. (as in exp branch) 2004-06-06 09:48 bouvigne * doc/html/history.html: history 2004-06-05 15:46 bouvigne * libmp3lame/quantize.c: small speedup: init_xrpow only up to max non-zero coeff 2004-05-31 17:35 bouvigne * libmp3lame/takehiro.c: reduced the number of calls to quantization function 2004-05-27 23:55 robert * libmp3lame/version.h: now at 3.97 alpha 2 2004-05-27 23:52 robert * libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: bug fix for lame crashing occasionally when using --vbr-new PS: scalefactor allocation is still not optimal 2004-05-26 21:37 bouvigne * libmp3lame/takehiro.c: fixed a stupid bug 2004-05-26 21:04 bouvigne * libmp3lame/takehiro.c: fixed a bug in quantize_xrpow, but it is still crashing Oddly, cbr/abr are working fine, and low vbr settings are also working fine. -V2 is not working 2004-05-23 13:16 bouvigne * libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/util.h: Use function pointer to select between quantization methods. This should ease plugin of vectorized versions 2004-05-23 12:47 bouvigne * libmp3lame/takehiro.c: factorized code which is selecting which lines to quantize 2004-05-23 12:43 bouvigne * configMS.h: version 2004-05-14 19:29 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/ddk/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, aclocal.m4, configure, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regen with new auto* version 2004-05-14 19:20 aleidinger * depcomp, frontend/depcomp, install-sh, libmp3lame/depcomp, missing, mpglib/depcomp: update to a new version 2004-05-14 19:12 aleidinger * testcase.mp3: update it to have a more sane number 2004-05-14 19:11 aleidinger * Makefile.am: Tell the users that they do not have to care about the output of make test. 2004-04-25 12:33 bouvigne * frontend/gtkanal.c: fixed mp3x monopolizing processor in its idle loop 2004-04-25 06:13 takehiro * libmp3lame/psymodel.c: fix bug id 921798 http://sourceforge.net/tracker/index.php?func=detail&aid=921798&group_id=290&atid=100290 This is reported as bug for "BCC", but it may happen for every compiler. 2004-04-24 18:29 olcios * libmp3lame/gain_analysis.h: changed some constants' types to long 2004-04-24 17:47 olcios * libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h: A better fix for the FP x86 problem. Provided by Andrew Church. Modified by olcios. 2004-04-14 22:15 robert * frontend/get_audio.c, mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.c, mpglib/decode_i386.c, mpglib/interface.c, mpglib/layer1.c, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h, mpglib/mpg123.h, mpglib/mpglib.h, mpglib/tabinit.c: fixing the decoding issue with the reported "Christmas" song. I've taken Takehiro's modifications and getting the same output as he does on his 4.0 branch. Imho this is not the best solution to the given problem, but it works for now. 2004-04-12 12:29 aleidinger * debian/lame.docs: PRESETS.draft does not exists anymore. 2004-04-11 15:39 glessard * frontend/main.c, include/lame.h, libmp3lame/set_get.c: Added two sets of set/get functions to the API. They modify and read the nogap_total and nogap_current variables of the internal_flags struct. Added calls to these functions to the gapless-encoding loop of the frontend. 2004-04-11 15:06 aleidinger * ChangeLog: update 2004-04-11 15:04 aleidinger * configure: regen 2004-04-11 15:00 aleidinger * config.h.in: Add some missing LARGEFILE pieces. This patch is also in the generated lame-3.96 tarball, it just enters the CVS repository for 3.97 for organizational reasons. 2004-04-11 14:58 aleidinger * configure.in: Welcome to lame 3.97. 2004-04-11 13:05 bouvigne * libmp3lame/version.h: 3.97a1 2004-04-11 13:03 bouvigne * libmp3lame/version.h: release 3.96 2004-04-11 13:03 bouvigne * doc/html/history.html: history 2004-04-11 13:02 bouvigne * debian/changelog: updated debian changelog 2004-04-11 13:01 bouvigne * libmp3lame/presets.c: use X9 to select abr/cbr quantization, use sfscale up to 160kbps 2004-04-11 12:50 bouvigne * Makefile.in: manually updated Makefile.in 2004-04-03 17:28 bouvigne * frontend/gtkanal.c, libmp3lame/lame-analysis.h, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: Add X9 quantization selection method. It increases applaud.wav substancially. Not enabled by default 2004-03-28 13:11 bouvigne * libmp3lame/version.h: 3.96 beta 2 2004-03-28 13:10 bouvigne * doc/html/history.html: history 2004-03-28 13:10 bouvigne * libmp3lame/presets.c: updated minimal bitrate for V1 and V2 2004-03-23 22:17 robert * Makefile.unix, libmp3lame/vbrquantize.c: rewritten vbr-new the scalefactor allocation functions take into account now, that some minimal scalefactor has to be used (the less IXMAX_VAL case) the output of vbr-new is not bit identical to previous ones, but the code is much more straight forward now. 2004-03-23 22:11 robert * libmp3lame/util.c: patch for resampling code, found by Takehiro this patch removes some unneccessary integer rounding resulting mp3s where bit identical, but resampling is faster now 2004-03-23 03:07 olcios * frontend/parse.c: fixed a compile-time issue in --longhelp 2004-03-23 01:57 olcios * USAGE, doc/html/switchs.html, doc/man/lame.1, frontend/main.c, frontend/parse.c, include/lame.h, libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c, libmp3lame/util.h: 1. added --noreplaygain switch that disables RG 2. added --replaygain-fast switch that complements --replaygain-accurate. The new switch is enabled by default in the frontend. 3. Made RG analysis no longer default in libmp3lib. RG can still be fully controlled via the libmp3lib interface, but for other interfaces, like DLL or ACM, that provide no RG control, RG analysis is now _disabled_. 4. updated documentation 2004-03-19 22:09 olcios * libmp3lame/gain_analysis.c: changed the pre-processor condition related to the x86's extended FP bug when compiled by GCC with optimizations 2004-03-19 18:18 olcios * libmp3lame/gain_analysis.c: improved comment 2004-03-19 13:17 olcios * libmp3lame/gain_analysis.c: workaround for the gcc ceil() bug when compiled with optimizations 2004-03-18 22:00 olcios * libmp3lame/gain_analysis.h: fixed compile-time problem with uint32_t on gcc 2004-03-18 14:27 aleidinger * libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h: Replace Uint32_t and Int32_t with uint32_t and int32_t. There are only few instances of them used, so there's no need to typedef new types for them. I hope this fixes problems on OSX reported on lame-dev. While I'm here, fix a cast (rgData->sampleWindow is long, not int). 2004-03-17 18:56 aleidinger * libmp3lame/bitstream.c, libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h, libmp3lame/lame.c: - remove config.h (prerequisite) include from gain_analysis.h - make sure prerequisites get included in every file before gain_analysis.h 2004-03-14 18:22 bouvigne * libmp3lame/gain_analysis.h: solved the potential data type problem 2004-03-11 23:43 olcios * libmp3lame/bitstream.c: fixed a bug related to the usage of mpglib when decoding on the fly 2004-03-11 19:35 olcios * libmp3lame/lame.c: fixed compile-time problem when mpglib is disabled 2004-03-10 20:49 robert * doc/html/contributors.html, doc/html/history.html: history 2004-03-10 00:50 robert * mpglib/interface.c: patch for freeformat decoding bug 2004-03-09 19:04 bouvigne * libmp3lame/lame.c: typo 2004-03-09 00:35 robert * libmp3lame/vbrquantize.c: found a sample which did not give bit identical result with the previous patch. found out why and corrected it, so now the results for find_scalefac_ave_[x34|ISO] are identical to the original code, but --preset fast standard is ~7 percent faster now. 2004-03-08 00:54 robert * libmp3lame/vbrquantize.c: faster "find_scalefac_ave_[x34|ISO]": this patch gave bit identical results on all tested samples compared to previous version, so I'm pretty much confident that I don't introduce a new bug here. the speeding up of this functions results in an overall speed increase of almost 7 percent for --preset fast standard 2004-03-07 23:55 robert * Makefile.MSVC, Makefile.unix: in case of single precision (FLOAT8==float) we have to make sure that the mpglib uses REAL==float too. otherwise the decoder will moan about too small buffers 2004-03-06 15:36 bouvigne * libmp3lame/version.h: entering beta stage 2004-03-06 15:34 bouvigne * doc/html/history.html: history 2004-03-01 22:21 robert * configMS.h, libmp3lame/version.h: we are now at 3.96 alpha 4 2004-03-01 22:20 robert * libmp3lame/psymodel.c: bug fix: the highly optimized loops did an off by one access resulting in often invalid energy and threshold calculations. (both psy models affected). added a workaround and some assertions. 2004-02-29 19:55 robert * libmp3lame/bitstream.c, libmp3lame/takehiro.c: fixing the "huffman decode overrun" and "mp3x problem" 2004-02-29 18:20 bouvigne * doc/html/contributors.html, doc/html/history.html: no message 2004-02-29 17:17 takehiro * mpglib/layer1.c: fix layer1 decoding bug 2004-02-26 17:20 takehiro * frontend/get_audio.c: fixed Layer2 decoding bug reported by Goran Markovic 2004-02-25 22:10 robert * libmp3lame/util.c: fixing some aliasing problem in fastlog2 calculation 2004-02-25 21:46 robert * libmp3lame/vbrquantize.c: getting rid of a warning about a function being defined but not used 2004-02-25 21:46 robert * libmp3lame/gain_analysis.c: fixing code relying on compiler implementation details 2004-02-25 21:41 robert * frontend/parse.c, libmp3lame/VbrTag.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/set_get.c, libmp3lame/util.c: getting rid of some compiler warnings: - about too long string constants - about C++ stylish comments there is still a warning about the use of a C99 hexadecimal floating constant in portableio.c. will this compile on older C-compilers? 2004-02-24 01:57 olcios * libmp3lame/lame.c: fixed a bug with --resample and ReplayGain analysis of input data. With certain parameters the data sent to analysis was mangled (some samples missing, some doubled, some in the wrong order). With most natural music the error wasn't vast (below 1dB), but with e.g. a sine wave the gain error was audible. 2004-02-23 19:48 bouvigne * libmp3lame/gain_analysis.h: now works under gcc, but I am not sure about the typedefs on different platforms. 2004-02-23 18:53 bouvigne * libmp3lame/gain_analysis.h, libmp3lame/util.h: moved replaygain_t to gain_analysis.h 2004-02-22 21:17 bouvigne * libmp3lame/bitstream.c, libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h, libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: made ReplayGain reentrant 2004-02-22 21:16 bouvigne * libmp3lame/quantize_pvt.c: yet another "usefullsize" bug (found by passing the python tests) 2004-02-22 21:14 bouvigne * test/CBRABR.op, test/VBR.op, test/misc.op, test/shortCBRABR.op, test/shortVBR.op: Updated test files. As the cbr/abr and vbr ones are quite long, I also added some short ones. 2004-02-17 00:37 robert * libmp3lame/lame.c: bug fix: in mono mode all block type where of short type due to forced block type coupling 2004-02-16 21:51 robert * libmp3lame/gain_analysis.c: bug fix by John Edwards (48 kHz replay gain segmentation fault) 2004-02-15 21:39 robert * libmp3lame/lame.c, libmp3lame/vbrquantize.c: standard ISO quantization for vbr-mtrh 2004-02-15 19:05 robert * libmp3lame/lame.c, libmp3lame/takehiro.c: bug fix: usefullsize may become negativ due to some optimizations 2004-02-15 01:20 robert * libmp3lame/takehiro.c: a simple -V9 -f line lets LAME crash, there seems to be something wrong with scalefactor width at least my inserted assertions indicate this 2004-02-10 02:04 robert * libmp3lame/vbrquantize.c: try to make some use of max_nonzero_coeff in vbr-mtrh 2004-02-08 19:00 bouvigne * libmp3lame/presets.c: reduced the number of short blocks 2004-02-08 14:08 bouvigne * Makefile.am, lame.dsw: removed old workspace 2004-02-08 12:44 bouvigne * libmp3lame/quantize_pvt.c, libmp3lame/takehiro.c: inverted a while statement, some int ->unsigned. I hope that they will be safe this time. 2004-02-08 03:10 robert * libmp3lame/takehiro.c: sorry Gabriel, reverting your signed->unsigned patch due to exceptions while encoding awe32_20sec.wav using --preset standard 2004-02-08 03:06 robert * libmp3lame/quantize_pvt.c: sorry Gabriel, reverting your signed->unsigned patch because of exceptions in awe32_20sec.wav using --preset standard 2004-02-08 03:01 robert * libmp3lame/vbrquantize.c: bug fix: scalefactors may have been read from uninitialized memory 2004-02-08 02:12 robert * libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: calculating xrpow_max for vbr_mtrh too 2004-02-07 19:38 bouvigne * libmp3lame/quantize_pvt.c, libmp3lame/takehiro.c: some int -> unsigned int 2004-02-06 16:56 takehiro * frontend/get_audio.c, mpglib/interface.c: mp3 decoding patch from Dmitriy Startsev 2004-02-04 20:17 bouvigne * libmp3lame/version.h: bump alpha because of the fixed crash 2004-02-04 20:16 bouvigne * libmp3lame/takehiro.c: fixed a crash in quantize_xrpow occuring when using low bitrates (32kbps) 2004-02-02 15:20 olcios * USAGE, doc/html/switchs.html: reworded the RG part. Discussed with: Alexander Leidinger 2004-02-02 14:17 olcios * testcase.mp3: oops, committed an experimental file, reverting back to 1.80 2004-02-02 13:28 aleidinger * configure: regen 2004-02-02 13:25 aleidinger * configure.in: Add a check for 64 bit off_t's ("LARGEFILE" support). This may not be enough as lame uses ints and longs where other types may be more correct, but it may work in some cases. HOWTO provided by: Dan Nelson 2004-02-02 13:02 aleidinger * doc/man/lame.1: - reformatted the replaygain part (less than 80 characters per line) - reworded some parts - add a note about the decoder requierement for the --decode, --replaygain-accurate and --clipdetect options Discussed with: Aleksander Korzynski 2004-02-02 12:59 aleidinger * config.h.in, configure: regen 2004-02-02 12:57 aleidinger * configMS.h: Add the DECODE_ON_THE_FLY define in the HAVE_MPGLIB case. 2004-02-02 12:57 aleidinger * configure.in, include/lame.h: - enable bitrate histogram by default discussed with Gabriel in Sept. 03 - define DECODE_ON_THE_FLY for the replaygain feature in the HAVE_MPGLIB case too (moved from include/lame.h, I think it's cleaner this way) discussed with Aleksander Korzynski 2004-02-02 12:38 aleidinger * libmp3lame/id3tag.c: Patch from Ti Kan : ---snip--- Below is a patch to make Lame 3.95.1 compile and run on AIX, HP-UX, IRIX, Solaris, UnixWare, SCO Open Server and SunOS 4.1.x. The change involves the call to snprintf() in libmp3lame/id3tag.c., but snprintf() is not available on many of these platforms. I know that in general replacing snprintf() with sprintf() removes a layer of string buffer overflow protection, but in this case it should be safe because the size of string is bounded. ---snip--- 2004-01-31 20:05 olcios * frontend/main.c, libmp3lame/lame.c, testcase.mp3: disabled peak sample detection when LAME tag is not written into the file 2004-01-29 16:39 bouvigne * doc/html/history.html: history 2004-01-29 16:31 bouvigne * libmp3lame/version.h: bump alpha because of the fixed crashes 2004-01-29 16:26 bouvigne * libmp3lame/takehiro.c: fixed bug #886989 2004-01-26 14:00 olcios * USAGE, doc/html/switchs.html, doc/man/lame.1, frontend/parse.c: updated documentation and --longhelp on RG 2004-01-26 12:05 olcios * frontend/main.c, frontend/main.h, frontend/parse.c, include/lame.h, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/set_get.c, libmp3lame/util.h: removed ReportLameTagProgress (it is not LAME API). Fixed --replaygain-accurate and --clipdetect. 2004-01-21 13:50 aleidinger * ACM/Makefile.in, Dll/Makefile.in, Makefile.in, frontend/Makefile.in, libmp3lame/Makefile.in, mpglib/Makefile.in: regen 2004-01-21 13:48 aleidinger * frontend/main.h: only include limits.h if it is present on the system 2004-01-21 10:17 bouvigne * libmp3lame/quantize.c: missing {} in last fix 2004-01-21 09:41 bouvigne * ACM/ACM.dsw, ACM/Makefile.am, ACM/lameACM.dsp, Dll/Example.dsp, Dll/Example.dsw, Dll/MP3EncDll.dsp, Dll/MP3EncDll.dsw, Dll/Makefile.am, Makefile.B32, Makefile.DJGPP, Makefile.am, PRESETS.draft, README.B32, README.DJGPP, frontend/Makefile.am, frontend/lame.dsp, frontend/lame.dsw, frontend/mp3x.dsp, frontend/mp3x.dsw, libmp3lame/Makefile.am, libmp3lame/libmp3lame.dsp, mpglib/Makefile.am, mpglib/mpglib.dsp: removed old unmaintained files 2004-01-20 18:41 bouvigne * libmp3lame/quantize.c: fixed a crash: sometimes quantization could overflow because of big xr_pow values 2004-01-15 19:05 aleidinger * frontend/parse.c: We should not need errno... introduced in the last commit, remove it. 2004-01-15 19:04 aleidinger * frontend/parse.c: Different fix for the priority parsing bug, uses less code. Tested by: Gabriel 2004-01-15 13:54 bouvigne * ACM/TODO, doc/html/history.html, doc/html/index.html, doc/html/switchs.html: doc, history 2004-01-15 11:15 bouvigne * include/lame.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c: made lame.h identical with or without DECODE_ON_THE_FLY. made gfp identical with or without DECODE_ON_THE_FLY. 2004-01-15 01:24 olcios * USAGE, frontend/parse.c, libmp3lame/lame.c: changed the behaviour of --clipdetect to force RG analysis on decoded data (not input data). Updated --longhelp and documentation 2004-01-14 14:38 bouvigne * libmp3lame/psymodel.c: minor code change in mask_add 2004-01-14 14:16 bouvigne * libmp3lame/psymodel.c: minor code change in mask_add 2004-01-13 19:23 bouvigne * frontend/parse.c: isnumber ->is_number 2004-01-13 18:35 glessard * frontend/get_audio.c: Removed a spurious fprintf that occurred during AIFF-C decoding. 2004-01-13 17:36 bouvigne * USAGE: ReplayGain ->89dB 2004-01-13 17:30 takehiro * frontend/get_audio.c: fix mp3 decoding... 2004-01-13 13:30 bouvigne * frontend/parse.c: fixed issue when --priority is not followed by a number but by another argument. Btw, the situation is the same with a lot of other settings. 2004-01-13 12:36 bouvigne * libmp3lame/version.h: 3.96a1 2004-01-12 09:03 bouvigne * doc/html/history.html: history 2004-01-12 08:59 bouvigne * libmp3lame/gain_analysis.c: changed RG level to 89dB 2004-01-12 08:42 bouvigne * libmp3lame/version.h: back into 3.95 because of the fixed crash 2004-01-12 08:41 bouvigne * libmp3lame/takehiro.c: fixed a potential crash with fast vbr (introduced by myself) 2004-01-11 15:01 bouvigne * libmp3lame/lame.c: small cleanup in the lowpass/samplefreq selection code 2004-01-11 11:22 aleidinger * configure: regen 2004-01-11 11:20 aleidinger * configure.in: Welcome to 3.96. 2004-01-11 10:21 bouvigne * libmp3lame/version.h: We are now in 3.96 2004-01-10 21:20 olcios * doc/html/history.html: cosmetic 2004-01-10 17:28 olcios * USAGE: cosmetic change 2004-01-10 16:14 takehiro * libmp3lame/lame.c: fix the display of lowpass fileter config. 2004-01-10 12:29 aleidinger * testcase.mp3: testcase for 3.95 2004-01-10 12:29 takehiro * doc/html/history.html: added mpglib fix 2004-01-10 12:18 aleidinger * ChangeLog: update CVS history 2004-01-10 12:13 aleidinger * libmp3lame/version.h: Preperation for 3.95 RELEASE. Please notify me and Gabriel in case you change something from this point in time upto the 3.96 version bump. 2004-01-10 12:10 aleidinger * doc/html/history.html: faster on PPC 2004-01-10 12:03 aleidinger * libmp3lame/util.h: do not use FastLog implicitely 2004-01-10 12:02 aleidinger * configMS.h: explicit use of FastLog 2004-01-10 11:42 aleidinger * configure: regen 2004-01-10 11:35 aleidinger * configure.in: - use the IEEE 754 hack and FastLog on x86 and PPC only - make the use of FastLog explicit PPC performance: 1GHz G4 "Standard" : 396 s (100%) FastLog : 371 s ( 93%) FastLog, 754 : 365 s ( 92%) 754 : 388 s ( 98%) 2GHz G5 (dual), cbr, vbr "Standard" : 166 s (100%), 328 s (100%) FastLog : 169 s (102%), 338 s (102%) FastLog, 754 : 148 s ( 90%), 288 s ( 88%) 754 : 145 s ( 87%), 279 s ( 85%) On a G5 we shouldn't use FastLog (I assume highly optimized for G5 log*() routines in the standard math library), but configure doesn't know ATM how do check for a G5. 2004-01-10 10:38 takehiro * frontend/get_audio.c: backport from my experimental branch to fix the crash when invalid input. 2004-01-10 10:27 takehiro * mpglib/common.c, mpglib/interface.c, mpglib/layer1.c, mpglib/layer3.c: backport from my experimenhtal branch, to fix the crash when invalid input. 2004-01-10 09:55 takehiro * doc/html/history.html: effetc->affect reported at sf.net (BugID #867502) 2004-01-08 19:55 olcios * libmp3lame/gain_analysis.c: comment update (clarification) 2004-01-08 19:14 olcios * USAGE: Removed --replaygain from USAGE, because it had been defaulted and the option removed from LAME. Updated information on --replaygain-accurate. 2004-01-08 15:58 bouvigne * configMS.h, doc/html/history.html, doc/html/index.html: predicted release date: January 11th 2004-01-07 17:58 aleidinger * frontend/Makefile.in: regen 2004-01-07 17:57 aleidinger * frontend/Makefile.am: Add mp3x_vc6.dsp. Requested by: Gabriel 2004-01-07 17:35 bouvigne * README.WINGTK, frontend/lame_vc6.dsp, frontend/mp3x_vc6.dsp, lame_vc6.dsw, libmp3lame/libmp3lame_vc6.dsp, mpglib/mpglib_vc6.dsp: added back mp3x to the VC6 projects 2004-01-07 15:57 aleidinger * configure: regen 2004-01-07 15:51 aleidinger * configure.in: - bump version to 3.95 - disable layer1 decoding by default - reword the layer options and some option descriptions - enable the use of the fast log function on every CPU (for x86 this is implicit by the ieee hack) 2004-01-07 15:26 aleidinger * config.h.in: add the fast log option 2004-01-07 13:26 bouvigne * mpglib/mpglib_vc6.dsp: disable layer I 2004-01-06 14:38 bouvigne * libmp3lame/version.h: bump alpha 2004-01-06 13:53 bouvigne * libmp3lame/VbrTag.c: do not include the vbr header into the vbr seek table as it breaks a player 2004-01-05 16:25 bouvigne * doc/html/history.html: history 2004-01-05 16:19 bouvigne * ACM/ACMStream.cpp: fixed a buffer requirement error 2004-01-05 09:45 bouvigne * libmp3lame/l3side.h, libmp3lame/quantize.c, libmp3lame/takehiro.c: faster count_bits 2004-01-04 11:04 bouvigne * libmp3lame/lame.c: corrected -k 2004-01-03 16:47 bouvigne * doc/html/history.html: history 2004-01-02 19:53 bouvigne * libmp3lame/lame.c: changed quality mapping 2004-01-02 19:51 bouvigne * libmp3lame/takehiro.c: faster count_bits 2004-01-02 19:49 bouvigne * libmp3lame/quantize.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: Faster quantizations Only 5% speedup when using Takehiro's ieee754 hack, but about 60% speedup otherwise. (Should please Mac users) 2003-12-22 16:36 bouvigne * doc/html/history.html: history 2003-12-22 09:44 bouvigne * libmp3lame/quantize_pvt.c: reduced warnings 2003-12-21 18:41 bouvigne * frontend/get_audio.c, frontend/main.c, frontend/parse.c: reduced warnings 2003-12-21 18:14 bouvigne * libmp3lame/encoder.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.h: FLOAT8 -> FLOAT 2003-12-21 12:46 bouvigne * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.h: FLOAT8 -> FLOAT 2003-12-21 10:16 bouvigne * libmp3lame/VbrTag.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/util.c, libmp3lame/util.h: FLOAT8 -> FLOAT 2003-12-20 14:48 bouvigne * libmp3lame/psymodel.c: fixed calc_interchannel_masking when encoding to mono 2003-12-20 14:33 bouvigne * libmp3lame/lame.c: fixed lowpass value for high bitrate vbr profiles 2003-12-20 14:31 bouvigne * libmp3lame/version.h: Using 3.95 as version number. We will decide latter what to choose about version numbers 2003-12-19 13:55 bouvigne * libmp3lame/version.h: Moved back to 3.94b in order to not have some 3.95b spreading on the web. We now have to decide if we should go in the 3.94release direction or in the 3.95b direction 2003-12-18 18:47 bouvigne * libmp3lame/version.h: welcome in 3.95 2003-12-18 17:13 aleidinger * ChangeLog: ChangeLog for 3.94b. 2003-12-18 15:46 bouvigne * libmp3lame/version.h: 3.94b 2003-12-18 12:54 aleidinger * frontend/get_audio.c: Takehiro noticed a bug in the pipe fix, it results in a click sound at the end of the encoding of BlackBirds.wav. This fix is a merge from the experimental branch and doesn't seem to be harmful while encoding over a pipe, but I'm not sure if I was able to reproduce the situation where the original fix was needed. I've tested: mkfifo pipetest lame -preset 96 pipetest pipetest.mp3 other shell: cat wav >pipetest 2003-12-17 18:45 bouvigne * frontend/parse.c: help 2003-12-17 11:52 bouvigne * libmp3lame/psymodel.c: updated comment regarding spreading function 2003-12-15 17:07 bouvigne * mpglib/layer3.c: fixed 8kHz decoding 2003-12-09 17:22 olcios * frontend/parse.c: Fixed typo. 2003-12-09 17:19 olcios * frontend/parse.c: Fixed an error message. 2003-12-09 16:08 aleidinger * ACM/Makefile.in: regen 2003-12-09 16:01 aleidinger * configure: regen 2003-12-09 15:51 aleidinger * ACM/ddk/Makefile.in: Add the autoconf Makefile. 2003-12-09 15:49 aleidinger * configure.in: Add the ACM/ddk subdirectory. 2003-12-09 15:49 aleidinger * ACM/Makefile.am: Add the ddk subdirectory. 2003-12-09 15:48 aleidinger * ACM/ddk/Makefile.am: Add an automake Makefile. 2003-12-09 15:06 bouvigne * libmp3lame/version.h: Bump alpha 2003-12-09 15:05 bouvigne * frontend/parse.c: do not display --r3mix in help 2003-12-09 15:03 bouvigne * doc/html/history.html: 3.94 release date? 2003-12-09 14:59 bouvigne * doc/html/basic.html, doc/html/examples.html, doc/html/history.html, doc/html/index.html, doc/html/modes.html, doc/html/presets.html, doc/html/switchs.html: 3.94 documentation 2003-12-08 16:52 bouvigne * libmp3lame/VbrTag.c: Use integer format for ReplayGain peak value 2003-12-05 12:49 aleidinger * libmp3lame/i386/Makefile.in: add missing " 2003-12-04 12:26 aleidinger * libmp3lame/i386/Makefile.in: nasm -> NASM fix 2003-12-03 03:09 olcios * include/lame.h: comments / doc 2003-12-03 02:18 olcios * frontend/get_audio.c, libmp3lame/lame.c, libmp3lame/mpglib_interface.c: Brought back the possibility to run lame_decode_init() more than once 2003-12-03 01:44 olcios * frontend/get_audio.c, frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/set_get.c: Made it impossible to simultaneously use mp3 input and decoding on the fly. 2003-11-29 12:14 aleidinger * ChangeLog: update 2003-11-29 12:10 aleidinger * test/cvscheck.sh: add the automated test script which mt used to run every day 2003-11-29 12:09 aleidinger * configure: regen with autoconf 2.57 2003-11-29 12:06 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, mac/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regen with automake 1.7 2003-11-29 12:05 aleidinger * configure.in: - Check for some features a little bit earlier. - Fix a AC_DEFINE so the newer tools don't moan. 2003-11-29 12:03 aleidinger * libmp3lame/i386/Makefile.am: HACK HACK HACK, UGLY UGLY HACK! make this work with libtool 1.5 If anybody knows how do this in a more sane way, please teach me how to do it. 2003-11-29 12:01 aleidinger * ltmain.sh: update with libtool 1.5 version 2003-11-29 12:00 aleidinger * aclocal.m4: update with newer autotools 2003-11-29 11:59 aleidinger * config.h.in: add some missing undefs 2003-11-29 11:16 aleidinger * frontend/rtp.c: fix some errors which are new with gcc 3.x 2003-11-29 09:49 aleidinger * depcomp, frontend/depcomp, install-sh, libmp3lame/depcomp, missing, mkinstalldirs, mpglib/depcomp: use the ones provided by automake 1.7 2003-11-29 09:44 aleidinger * config.guess, config.sub: use the ones provided with libtool 1.5 2003-11-28 14:27 bouvigne * libmp3lame/set_get.c: Disabled replaygain decode because it crashes when using mp3 input 2003-11-27 08:24 bouvigne * ACM/ddk, ACM/ddk/msacmdrv.h, ACM/readme.txt: Allow compilation of ACM codec without Microsoft platform DDK 2003-11-26 13:06 bouvigne * lame_vc6.dsw: Updated ACM dependencies 2003-11-24 17:05 bouvigne * libmp3lame/lame.c: Do not compute ReplayGain when not using vbr header 2003-11-24 13:52 bouvigne * libmp3lame/lame.c: Reduced bandwith when encoding in mono 2003-11-24 13:39 bouvigne * libmp3lame/lame.c: Fixed low bitrates lowpass and sampling rate values (I probably broke it recently) 2003-11-21 17:07 bouvigne * Dll/BladeMP3EncDLL.c: Display issues 2003-11-21 16:50 bouvigne * Dll/BladeMP3EncDLL.c: Minor corrections 2003-11-20 16:04 bouvigne * Dll/MP3export.pas: Fixed calling convention 2003-11-20 13:30 bouvigne * Dll/Example_vc6.dsw: Corrected the dll example project 2003-11-20 11:16 bouvigne * frontend/get_audio.c, frontend/main.c, frontend/parse.c, include/lame.h, libmp3lame/set_get.c: Changed some Vorbis messages 2003-11-20 11:08 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/VbrTag.c, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c: Removed mode_automs 2003-11-20 10:57 bouvigne * libmp3lame/fft.c, libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: Removed CPU_features.i387 2003-11-20 10:46 bouvigne * libmp3lame/presets.c: Aliased r3mix to vbr-mtrh V3 2003-11-19 13:00 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: anihilated streaming/radio/portable named presets, leaving only the -Vx 2003-11-18 13:20 bouvigne * libmp3lame/presets.c: low vbr-mtrh presets 2003-11-15 11:21 takehiro * configure: regen 2003-11-15 11:14 takehiro * configure.in: fix migw build(as is done in the experimental branch) 2003-11-15 10:50 takehiro * frontend/get_audio.c: fix ambiguous message (Bug ID #830035) 2003-11-14 16:13 bouvigne * libmp3lame/lame.c: use presets by default when using vbr-mtrh 2003-11-14 13:24 bouvigne * libmp3lame/presets.c: vbr-mtrh high vbr presets 2003-11-10 15:41 bouvigne * libmp3lame/fft.c, libmp3lame/i386/cpu_feat.nas, libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: SIMD->SSE 2003-11-10 15:31 bouvigne * libmp3lame/lame.c, libmp3lame/presets.c: Add missing values for vbr_rh -Vx scale 2003-11-10 15:27 takehiro * libmp3lame/i386/fft3dn.nas: fix cygwin build (with nasm) 2003-11-10 14:58 bouvigne * libmp3lame/lame.c, libmp3lame/presets.c: fix lowpass values for low vbr presets 2003-11-10 12:06 bouvigne * libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/set_get.c: Use presets by default when using vbr_rh 2003-11-05 14:03 bouvigne * libmp3lame/presets.c, libmp3lame/psymodel.c: Use Vx scale for presets 2003-11-03 15:00 bouvigne * libmp3lame/lame.c, libmp3lame/presets.c: allow vbr presets to not be enforced (preparative work before defaulting) 2003-10-30 13:09 bouvigne * libmp3lame/lame.c: Moved replaygain analysis after resampling. It was causing problems when used with non standard sampling frequencies. 2003-10-23 12:09 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: presets 2003-10-22 08:26 takehiro * libmp3lame/takehiro.c: fix assertion failure reported by Gabriel. 2003-10-22 07:33 takehiro * libmp3lame/bitstream.c: better debug message 2003-10-21 09:05 bouvigne * libmp3lame/set_get.c, libmp3lame/set_get.h, libmp3lame/vbrquantize.c: cleanup 2003-10-20 16:10 olcios * doc/html/history.html: Added the word "Radio" to the description of the ReplayGain contribution, as it is actually the "Radio" ReplayGain that is computed. 2003-10-20 12:30 bouvigne * doc/html/history.html: history 2003-10-20 11:08 bouvigne * libmp3lame/version.h: bump alpha 2003-10-20 07:20 bouvigne * libmp3lame/quantize_pvt.c: fixed build problem 2003-10-17 14:39 bouvigne * libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: One more speedup in calc_noise, but the function is now a little messy 2003-10-17 13:50 bouvigne * configMS.h: updated version number 2003-10-17 11:49 bouvigne * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: Speedup calc_noise (about 5-10%) by re-using noise values per sfb between successive calls 2003-10-16 13:26 bouvigne * libmp3lame/VbrTag.c, libmp3lame/presets.c: Put preset used in tag even when just using -b or --abr 2003-10-16 12:55 bouvigne * libmp3lame/VbrTag.c: fixed a Lame header bug: -b xxx --preset yyy was putting xxx as minimum bitrate value in the tag instead of the value defined in the preset yyy 2003-10-02 09:25 takehiro * frontend/parse.c: fix build problem.(I made a mistake when back porting ...) 2003-09-27 06:16 takehiro * frontend/parse.c: added priority control on WIN32, backport from experimental branch. 2003-09-12 13:00 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/set_get.c, libmp3lame/set_get.h, libmp3lame/util.h: --psymodel 1/2 (gpsycho is 1 and nspsytune is 2) 2003-08-20 16:45 bouvigne * libmp3lame/lame.c: fixed CBR settings bug (introduced by me) 2003-08-20 16:16 bouvigne * libmp3lame/set_get.c: fixed an assertion failure on lame_get_interChRatio (introduced by me) 2003-08-16 10:36 aleidinger * doc/html/history.html: add entry for the named pipe bug 2003-08-16 10:26 aleidinger * frontend/get_audio.c: Work around a bug which shows up if the input is a FIFO. Tested by: Ville Herva 2003-08-10 12:48 bouvigne * include/lame.h, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.h, libmp3lame/set_get.c, libmp3lame/set_get.h: use presets by default for abr/cbr 2003-07-16 01:29 rbrito * debian/changelog, debian/control, debian/copyright, debian/lame.docs, debian/lame.files, debian/rules: Updated debian packaging. 2003-07-11 16:35 aleidinger * doc/html/id3.html, doc/man/lame.1, frontend/parse.c: Add --ignore-tag-errors, mostly submitted by Adam Luter . 2003-06-04 17:42 takehiro * Dll/BladeMP3EncDLL.c: fix quality setting API(patch for BugID 746439 at sf.net, reported by mikokong). 2003-06-01 18:22 aleidinger * libmp3lame/Makefile.in: regen 2003-06-01 18:22 aleidinger * libmp3lame/Makefile.am: add new private header 2003-06-01 17:20 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/libmp3lame_vc6.dsp, libmp3lame/presets.c, libmp3lame/set_get.c, libmp3lame/set_get.h: private header for internal set/get interfaces 2003-06-01 16:12 bouvigne * libmp3lame/id3tag.c: let's use snprintf, with a define for msvc 2003-06-01 09:14 bouvigne * libmp3lame/VbrTag.c: fix seek table for freeformat There is still something strange because with -b128 and -b128 --freeformat I do not get the same seek table 2003-05-31 14:05 bouvigne * libmp3lame/id3tag.c: ID3 TAG of "Encoder name", backported from experimental branch. Btw snprintf does not exist under msvc, so I used sprintf. 2003-05-25 15:34 bouvigne * libmp3lame/VbrTag.c: corrected the bitrate index of LAME tag in case of freeformat, but the seek table is still wrong 2003-05-20 12:21 aleidinger * configure, debian/Makefile.in: regen 2003-05-20 12:17 aleidinger * aclocal.m4: remove gtk12-config 2003-05-20 12:14 aleidinger * Makefile.am, debian/Makefile.am: move the dist-hook into the directory where the action happens 2003-05-20 12:13 aleidinger * configure.in: some enhancements for compiler problems and detection of the right size of some types 2003-05-18 15:05 takehiro * Makefile.am: added chmod +x debian/rules when make dist. 2003-05-18 14:15 takehiro * Dll/BladeMP3EncDLL.h: patch from sf.net, Dll compile with gcc. 2003-05-11 15:03 bouvigne * libmp3lame/presets.c: updated low bitrate presets. Considering quality, we have: ns1 comp1 > ns1 comp3 >ns2 comp3 >ns2 comp1 2003-05-11 13:15 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c: --sfscale, inhibited -Z 2003-05-11 09:49 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/set_get.c, libmp3lame/util.h: --sbgain 2003-05-09 14:06 aleidinger * frontend/lametime.c, frontend/main.c: Fix on SunOs 4, Submitted by: Ti Kan 2003-05-09 13:44 aleidinger * frontend/brhist.c: fix on BSD/OS 3.x, Submitted by: Ti Kan 2003-05-09 13:14 bouvigne * libmp3lame/quantize.c: re-enabling the psfb12 analog silence detection. This time, the coeffs should be correct. However, the coding gain is now quite small 2003-05-08 12:58 bouvigne * libmp3lame/quantize.c: I am disabling the code for psfb12 analog silence detection, as it produces some kind of dropouts. It probably means that there is a bug somewhere inside. 2003-05-04 15:36 bouvigne * libmp3lame/version.h: bump alpha 2003-05-04 15:35 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: working on presets 2003-05-03 14:34 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c: ability to set vbr smooth (for vbr-mtrh) 2003-05-02 17:38 bouvigne * frontend/parse.c: internal command line options only available in debug or in alpha. This way we should not be worried again by users using non docummented options: they will not be available for them 2003-05-02 16:18 bouvigne * libmp3lame/vbrquantize.c: comments based on some mails exchanged with Robert 2003-05-01 15:23 bouvigne * libmp3lame/lame.c: maskingadjust/maskingadjust_short available for vbr-mtrh 2003-04-27 15:18 bouvigne * libmp3lame/encoder.h, libmp3lame/l3side.h, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/util.h: Analog silence detection in partitionned sfb21 or sfb12 for short blocks 2003-04-20 17:32 bouvigne * libmp3lame/presets.c: changed short block quantization comparison to method 0 for abr/cbr on medium bitrates (because of spahm, fatboy and the likes) , as suggested by Takehiro. 2003-04-20 17:03 bouvigne * libmp3lame/version.h: bump alpha 2003-04-20 16:56 bouvigne * libmp3lame/quantize.c: trivial coding change in psfb21_analogsilence 2003-04-20 15:57 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: presets (testing) 2003-04-20 13:28 bouvigne * libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: simplified prototype of FindNearestBitrate 2003-04-20 12:58 bouvigne * libmp3lame/presets.c: preset insane is now aliased to preset 320 2003-04-20 12:53 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: removed some old experimental presets 2003-04-20 12:33 bouvigne * frontend/parse.c, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/set_get.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: removed presetTune struct 2003-04-19 16:34 bouvigne * libmp3lame/presets.c: fixed medium bitrates cbr/abr presets 2003-04-19 10:19 bouvigne * TODO: updated the TODO file 2003-04-12 13:47 bouvigne * doc/html/contributors.html, doc/html/history.html: history 2003-04-12 10:20 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/lame.c: enable fast replaygain analysis by default define DECODE_ON_THE_FLY if compiled with mpglib 2003-03-30 15:11 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: presets portable/portable1 2003-03-24 21:21 bouvigne * libmp3lame/version.h: bump alpha 2003-03-24 21:19 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: presets 2003-03-24 20:32 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/quantize.c, libmp3lame/set_get.c, libmp3lame/util.h: maskingadjust/maskingadjustshort for vbr-rh 2003-02-27 17:57 bouvigne * libmp3lame/libmp3lame_vc6.dsp: fix MSVC build (replay gain) 2003-02-27 17:46 bouvigne * libmp3lame/encoder.h, libmp3lame/l3side.h, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.c, libmp3lame/util.h: analog silence detection in partitionned sfb21 2003-02-23 16:30 olcios * libmp3lame/lame.c: fixed bug with --resample and --replaygain (input data analysis) 2003-02-22 02:21 olcios * Makefile.B32, Makefile.DJGPP, Makefile.MSVC, Makefile.unix, USAGE, configMS.h, frontend/parse.c, include/lame.h, libmp3lame/Makefile.am, libmp3lame/Makefile.in, libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c, libmp3lame/util.h: ReplayGain analysis of a single file (RadioGain) 2003-02-21 15:54 cisc * config.guess, config.sub: Update to latest config files to support more hosts/targets. 2003-02-19 19:46 olcios * libmp3lame/mpglib_interface.c, libmp3lame/util.h, mpglib/decode_i386.c, mpglib/decode_i386.h, mpglib/interface.c, mpglib/interface.h, mpglib/layer3.c, mpglib/layer3.h: Extending mpglib by the option to return unclipped floating-point values of samples. 2003-02-19 12:14 takehiro * libmp3lame/presets.c: fix comment style. ( // -> /* */ ) 2003-02-18 01:11 olcios * Makefile.DJGPP: Workaround for a problem with make clean, regarding long filenames on some systems. 2003-02-16 18:46 bouvigne * libmp3lame/presets.c: cbr/abr presets (still not finished?) 2003-02-16 08:38 takehiro * libmp3lame/psymodel.c: PE calculation improvement (backported from experimental branch). Better pe calculation for nspsytune. This brings - better MS/LR switching - better reservoir handling (brings better ABR/CBR result) I hope the trouble on "SeriousTrouble.wav" is partially fixed (not perfect ?). 2003-02-16 08:25 takehiro * libmp3lame/quantize_pvt.h: fix build problem (calc_xmin() prototype fix) 2003-02-16 08:22 takehiro * libmp3lame/quantize.c: fix one more subblock_gain handling code. 2003-02-15 14:07 bouvigne * libmp3lame/quantize.c: init max_nonzero_coeff to 575 instead of 0 2003-02-14 17:41 bouvigne * libmp3lame/l3side.h, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/takehiro.c: do not calc noise in upper 0 part 2003-02-09 12:36 bouvigne * libmp3lame/quantize_pvt.c: revert speedup 2003-02-09 01:25 markt * include/lame.h: added a comment about reading the file API 2003-02-08 17:46 bouvigne * libmp3lame/presets.c, libmp3lame/version.h: presets 2003-02-08 13:53 bouvigne * libmp3lame/quantize_pvt.c: small speedup 2003-02-08 09:51 takehiro * frontend/main.c: trivial simplification 2003-02-07 18:17 bouvigne * DEFINES: KLEMM_44 2003-02-06 20:04 markt * include/lame.h: updated comments about lame_init() from Kendrick Hamilton 2003-02-02 18:51 bouvigne * libmp3lame/version.h: bump alpha 2003-02-02 18:50 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/presets.c, libmp3lame/set_get.c: preset medium 2003-02-02 17:10 bouvigne * libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: removed KLEMM_44 2003-02-02 15:50 bouvigne * libmp3lame/lame.c, libmp3lame/util.h: removed useless structure (coding_t) 2003-02-02 14:45 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: presets: standard should be fine, working on medium 2003-02-02 10:15 bouvigne * libmp3lame/psymodel.c: comments regarding TMN and NMT (thank you Takehiro) 2003-01-30 12:13 takehiro * frontend/get_audio.c: bit better mp3 input file sync. but we need one more for Chris.mp3.... 2003-01-30 08:48 markt * libmp3lame/encoder.c, libmp3lame/lame.c: Formula for the amount of data that had to be in the buffer before it could be encoded was incorrect. Old formula (for the polyphase filterbank) was: old formula: 286+576*(1+gfc->mode_gr) = 2014 (MPEG1) Correct formula is: 512+framesize -32 = 1632 Best way to see this is to go through window_subband() in newmdct.c It access samples x[32*i] through x[510+32*i] for i=0..17. So our old condition was too conservative. However, the FFT still requires 1904 samples, so the net change is just to lower the requirement from 2014 to 1904. 2003-01-28 00:29 markt * libmp3lame/lame.c: short blocks are coupled, even in regular stereo mode. This is to fix bugs reported in several different hardware decoders. see comments in lame.c 2003-01-27 11:39 takehiro * libmp3lame/VbrTag.c: fix warning(added return value) 2003-01-26 17:37 takehiro * frontend/get_audio.c: added ID3tag v2 skipping function. 2003-01-26 12:09 bouvigne * libmp3lame/version.h: bumped alpha 2003-01-26 12:08 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: presets (under testing) 2003-01-26 11:31 bouvigne * libmp3lame/lame.c: verbose 2003-01-25 11:02 bouvigne * libmp3lame/lame.c, libmp3lame/quantize.c: changed -q mapping 2003-01-24 19:26 bouvigne * doc/html/history.html: history 2003-01-21 02:46 takehiro * frontend/parse.c: added \n in --preset help 2003-01-20 18:09 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: presets (under testing) 2003-01-19 15:55 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/presets.c: presets (under testing) 2003-01-13 00:49 glessard * frontend/get_audio.c, frontend/main.c, frontend/main.h, frontend/parse.c: NOGAP-related changes. - added '-T' option to force VBR/INFO tag inclusion. - moved a VBR/INFO tag inclusion decision to parse.c, eliminating the use of a global variable across modules. - fixed reading of multiple little-endian AIFF-C files in get_audio.c. For those files, 'swapbytes' was getting toggled for each file opened in the sequence, so only every other output file was correct. 2003-01-11 18:40 bouvigne * libmp3lame/presets.c: low bitrates presets 2003-01-11 17:56 markt * libmp3lame/VbrTag.c, libmp3lame/lame_global_flags.h, libmp3lame/util.c: reorganized VBR tag initialization code so that it could be reset/initialized several times (for use when encoding in nogap mode) 2003-01-11 17:42 markt * libmp3lame/lame_global_flags.h: removed comment within comment delimiter 2003-01-11 17:41 markt * include/lame.h, libmp3lame/VbrTag.c, libmp3lame/lame_global_flags.h: cleaned up some comments about VBR tags being written to the mp3 file after internal data structures are free (this has not been true for a long time) na 2003-01-11 15:43 bouvigne * libmp3lame/presets.c: low bitrates presets 2003-01-11 12:46 takehiro * libmp3lame/lame.c: fix ath curve initialization. 2003-01-11 04:16 markt * frontend/main.c, libmp3lame/VbrTag.c: in nogap mode, with VBR tags, we were calling init_bitstream() (which resets VBR tag data) before writing the VBR tag data. This is now fixed, but there is still a bug when initializing the VBR data for the 2nd (or more) encoding in the nogap series. 2003-01-10 21:22 markt * frontend/parse.c: forgot a \n in the --longhelp documentation 2003-01-10 20:18 markt * USAGE: note that --voice option is obsolete 2003-01-10 20:12 markt * frontend/main.c, frontend/main.h, frontend/parse.c: added the "--nogaptags" option. this will allow VBR tags even for gapless encoding. The default behavoir is to disable tags for gapless encoding. 2003-01-10 20:07 markt * frontend/parse.c, libmp3lame/VbrTag.c: Updated the TOC calculation in the VBR tag to also count the size of the VBR tag itself. This is to make the VBR tag consistent with the recent change in the VBR frame count (changed so that it also counts the VBR tag as a frame) 2003-01-02 18:42 bouvigne * libmp3lame/psymodel.c: In psymodel_init set blocktype_old to NORM_TYPE because the VBR header is long blocks. This might be the problem encountered in some WMP 6.4 2003-01-02 18:37 bouvigne * libmp3lame/VbrTag.c: Add the Info frame to the number of frames reported by the Info/vbr tag 2003-01-02 18:30 bouvigne * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/vbrquantize.c: reduced 63 warnings to 55 under visual c++. Those were mainly differences between function prototypes in declarations and implementations. 2003-01-02 18:27 bouvigne * frontend/parse.c, include/lame.h, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c, libmp3lame/util.c, libmp3lame/util.h: Ability to change ath4 shape independantly from vbr_q 2003-01-01 16:14 aleidinger * libmp3lame/machine.h: Removed u_char typedefs, u_char is not used in the tree (according to grep -r u_char). 2003-01-01 16:12 aleidinger * frontend/rtp.c: Include alloca.h if neccessary. Noticed by: Tomi Vainio 2002-12-27 04:42 takehiro * libmp3lame/psymodel.c: use ATH value as short block masking lower limit. 2002-12-27 04:21 takehiro * frontend/parse.c, include/lame.h, libmp3lame/set_get.c, libmp3lame/version.h: new option --shortthreshold and bump up version number(alpha 8) and new psymodel version(0.90) for ATHadjust aware psymodel 2002-12-27 04:17 takehiro * libmp3lame/psymodel.c: fix assertion failure (oops, my mistake in ATH handling change) 2002-12-26 05:43 takehiro * libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h: cleanup psymodel initialization preparing for --shortthreshold option. 2002-12-25 12:13 takehiro * libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/set_get.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: ATH handling fix and simplification. - use ATH adjust in ns_msfix(), mask_add(), and masking lower limit calculation. - all ATH adjust related thresholding(ns_msfix, quantcompare and scalefac_scale) is removed. 2002-12-18 16:29 takehiro * libmp3lame/libmp3lame_vc6.dsp: removed tools.h 2002-12-18 16:27 takehiro * libmp3lame/Makefile.am, libmp3lame/Makefile.in, libmp3lame/debugscalefac.c, libmp3lame/tools.c, libmp3lame/tools.h: remove unused files and regen Makefile 2002-12-16 18:46 takehiro * libmp3lame/quantize.c: oops, I checked in the wrong version... 2002-12-16 18:45 takehiro * libmp3lame/quantize.c: fix inc_subblock_gain() to properly handle sfb12 (16kHz over region) MDCT coefs. 2002-12-15 12:56 bouvigne * frontend/parse.c, libmp3lame/lame.c: warning about alpha versions 2002-12-15 11:59 takehiro * ACM/ACMStream.cpp: fix access violation when LAME failed to initilize. I hope this fixes BUG ID 646894 (at sf.net). 2002-12-15 11:11 takehiro * libmp3lame/lame.c: fix warning (reported at sf.net by krick.) 2002-12-15 11:10 takehiro * libmp3lame/takehiro.c, libmp3lame/util.h: fix warning (reported at sf.net by krick. 2002-12-15 09:11 takehiro * libmp3lame/lame.c: fix -q0 convined with --substep x option. 2002-12-15 08:56 takehiro * Makefile.B32, Makefile.DJGPP, Makefile.MSVC, Makefile.unix: fix for vorbis support remove (I hope) 2002-12-14 19:19 robert * ChangeLog, Makefile.MSVC, lame.bat, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/util.c, misc/lame4dos.bat, misc/mlame: removed my email address 2002-12-13 17:48 takehiro * libmp3lame/quantize.c: off by one fix for global_gain. 2002-12-13 16:58 takehiro * configure, frontend/main.h, libmp3lame/Makefile.in: remove vorbis support and regen. 2002-12-13 16:55 takehiro * config.h.in, configure.in, frontend/get_audio.c, frontend/main.c, frontend/parse.c, libmp3lame/Makefile.am, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c, libmp3lame/vorbis_interface.c: remove vorbis support. 2002-12-13 14:34 takehiro * libmp3lame/lame.c: fix for 64bit environment, reported by Tomi Vainio 2002-12-09 19:00 bouvigne * libmp3lame/quantize.c, libmp3lame/version.h: fixed the quant_comp problem (probably introduced by me) so bump the alpha version number 2002-12-08 17:40 takehiro * libmp3lame/version.h: now 3.94 alpha 6 - changed default block switching threshold - fixed mpglib crash. 2002-12-08 17:35 takehiro * libmp3lame/psymodel.c: changed long/short block switching threshold. 2002-12-08 17:23 takehiro * testcase.mp3: new testcase for the new default cutoff frequency. 2002-12-08 17:07 takehiro * mpglib/interface.c: null pointer check patch from Peter Pawlowski , to prevent the random crash. 2002-12-08 17:02 takehiro * Makefile.B32, Makefile.DJGPP, Makefile.MSVC, Makefile.am, Makefile.in, Makefile.unix, configMS.h, configure, configure.in, frontend/brhist.c, frontend/brhist.h, frontend/console.c, frontend/console.h, frontend/get_audio.c, frontend/get_audio.h, frontend/gpkplotting.h, frontend/gtkanal.c, frontend/gtkanal.h, frontend/lametime.c, frontend/lametime.h, frontend/main.c, frontend/main.h, frontend/parse.c, frontend/parse.h, frontend/portableio.h, frontend/rtp.c, frontend/rtp.h, frontend/timestatus.c, frontend/timestatus.h, include/lame.h, libmp3lame/Makefile.am, libmp3lame/Makefile.in, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/encoder.h, libmp3lame/fft.c, libmp3lame/fft.h, libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h, libmp3lame/i386/Makefile.am, libmp3lame/i386/Makefile.in, libmp3lame/id3tag.h, libmp3lame/l3side.h, libmp3lame/lame-analysis.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/libmp3lame.dsp, libmp3lame/machine.h, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/newmdct.h, libmp3lame/presets.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/set_get.c, libmp3lame/tables.c, libmp3lame/tables.h, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h, libmp3lame/version.c, libmp3lame/version.h, libmp3lame/vorbis_interface.c, mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.h, mpglib/decode_i386.h, mpglib/huffman.h, mpglib/interface.c, mpglib/interface.h, mpglib/l2tables.h, mpglib/layer1.c, mpglib/layer1.h, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h, mpglib/mpg123.h, mpglib/mpglib.h, mpglib/tabinit.h, testcase.mp3: overwrite by takehiro_stable branch. 2002-12-08 16:59 takehiro * mac: added 2002-12-01 16:32 aleidinger * ChangeLog: update for 3.93.1 2002-12-01 16:18 aleidinger * configure: regen 2002-12-01 16:15 aleidinger * configure.in: change version to 3.93.1 2002-12-01 16:12 aleidinger * configure: regen 2002-12-01 16:10 aleidinger * doc/html/history.html: sync with webpages 2002-12-01 16:06 aleidinger * configure.in: Check for socket() in libsocket if it isn't in libc so rtp can get compiled on Solaris. Noticed by: "Niki W. Waibel" While I'm here, bail out if some other functions aren't there. 2002-11-30 18:18 bouvigne * libmp3lame/version.h: version 2002-11-29 17:07 bouvigne * Dll/BladeMP3EncDLL.def: dll exports 2002-11-28 21:05 bouvigne * doc/html/history.html, doc/html/index.html: docs 2002-11-28 18:06 bouvigne * libmp3lame/version.h: go back to 3.93 2002-11-28 18:04 bouvigne * libmp3lame/lame.c: revert back q0 to q1 state (due to reports about quality problems) 2002-11-25 18:00 bouvigne * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: sync presets with the executable front-end and libmp3lame 2002-11-23 18:54 bouvigne * libmp3lame/psymodel.c: quick fix of nspsytune 2002-11-17 11:11 aleidinger * configure.in, libmp3lame/version.h: We are now at 3.94alpha... 2002-11-17 10:41 aleidinger * doc/html/history.html: Copy history from webpage. 2002-11-17 10:29 aleidinger * ChangeLog: ChangeLog for 3.93. 2002-11-17 10:25 aleidinger * Dll/Makefile.in, Makefile.in: regen 2002-11-17 10:24 aleidinger * Makefile.am: Add lame.dsw. 2002-11-17 10:23 aleidinger * Dll/Makefile.am: Oops... add missing backslash. 2002-11-17 10:18 aleidinger * Dll/Makefile.in, libmp3lame/Makefile.in: regen 2002-11-17 10:16 aleidinger * libmp3lame/Makefile.am: Add gain_analysis.[ch] to the distributed files. 2002-11-17 10:11 aleidinger * Dll/Makefile.am: Add some missing files. 2002-11-17 10:09 aleidinger * configure: gtk12-config -> gtk-config 2002-11-17 10:05 aleidinger * testcase.mp3: "Official" testcase.mp3 for this release. 2002-11-17 09:51 aleidinger * ChangeLog.header: Add some information about branches. 2002-11-17 09:46 aleidinger * libmp3lame/version.h: We are at 3.93-RELEASE now... 2002-11-17 09:45 aleidinger * doc/man/lame.1, frontend/parse.c: Warn about fast presets. 2002-11-16 10:07 bouvigne * doc/html/presets.html: warning about fast presets 2002-11-13 20:24 bouvigne * libmp3lame/lame.c, libmp3lame/presets.c: rollback of lowpass change before release 2002-11-07 18:47 bouvigne * libmp3lame/lame.c, libmp3lame/presets.c, libmp3lame/util.c, libmp3lame/util.h: change of the default lowpass values (will break testcases) 2002-10-27 14:37 aleidinger regen 2002-10-27 14:36 aleidinger * configure.in: Forced commit: last commit was - remove -funroll-loops as suggested in the nearby comment Noticed by: takehiro 2002-10-27 14:32 aleidinger remove options as suggested in the nearby comment; Noticed by: takehiro 2002-10-24 00:05 robert * libmp3lame/vbrquantize.c: bug fix in vbr-new possible division by zero 2002-10-21 01:27 markt * frontend/parse.c: truely silent when input is stdin patch committed 2002-10-19 02:11 robert * frontend/brhist.c: little bit prettier printing of block types stats 2002-10-18 22:54 robert * frontend/brhist.c, frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: added some simple statistics about block types used: added lame_block_type_hist() and lame_bitrate_block_type_hist() to API using new switch --brief will show one line of percentage types used using switch --verbose will show in more detail used block types 2002-10-17 17:05 bouvigne * frontend/parse.c: removed some unused functions 2002-10-17 13:03 aleidinger * include/lame.h: correct comment about *_bWriteVbrTag() 2002-10-16 21:13 robert * libmp3lame/vbrquantize.c: fixing compiler warnings (unused code removed), some clean up 2002-10-16 18:01 bouvigne * frontend/get_audio.c, frontend/get_audio.h, frontend/parse.c, frontend/parse.h, frontend/timestatus.h, include/lame.h, libmp3lame/set_get.c, libmp3lame/takehiro.c: minor code cleanups in order to reduce warnings 2002-10-15 19:16 robert * Makefile.unix, libmp3lame/psymodel.c, libmp3lame/util.h: reenentrant fix for loudness approx. 2002-10-15 15:24 aleidinger * configure.in: different way of specifying the gcc version in the sparc section, the did not worked because autoconf does some nasty things with [ and ] 2002-10-15 11:30 aleidinger * doc/man/lame.1: catch up with HTML docs 2002-10-15 09:54 aleidinger * configure, doc/html/Makefile.in: regen 2002-10-15 09:54 aleidinger * doc/html/Makefile.am: add presets.html 2002-10-15 09:53 aleidinger * doc/html/presets.html: typo fix 2002-10-15 09:49 aleidinger * configure.in: Use sparc optimization on gcc 3.[123456]. Submitted by: "Spud McDuck" 2002-10-15 09:33 aleidinger * frontend/brhist.c, frontend/main.c, frontend/main.h, frontend/mp3rtp.c, frontend/mp3x.c, frontend/parse.c: PATH_MAX is in POSIX.1 (does not include the trailing NUL, so add +1), not MAXPATHLEN 2002-10-14 20:06 bouvigne * doc/html/contributors.html, doc/html/index.html, doc/html/presets.html: html docs 2002-10-08 19:30 bouvigne * libmp3lame/VbrTag.c, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c: preset info stored into Info tag 2002-10-08 17:43 bouvigne * frontend/main.h: win32 build fix 2002-10-08 12:58 takehiro * frontend/main.c: sync my branch: fix warning of ReportLameTagProgress() definition 2002-10-08 09:09 aleidinger * configure: regen 2002-10-08 08:59 aleidinger * ChangeLog: update with uptodate data 2002-10-08 08:57 aleidinger * ChangeLog.header: add info how to show the branches in the ChangeLog 2002-10-08 08:53 aleidinger * libmp3lame/version.h: bump alpha version 2002-10-08 08:51 aleidinger * configure.in: replace the -pipe hack for mips-sgi-irix with a test for GNU ld (sorry, I forgot who submitted it) 2002-10-08 08:50 aleidinger * acinclude.m4: actually commit the generated file with the alignment fix for 64 bit architectures 2002-10-08 08:50 aleidinger * ltconfig: improved "deplibs_check_method" for freebsd-elf 2002-10-08 08:44 aleidinger * frontend/main.c, frontend/main.h, frontend/mp3rtp.c, frontend/mp3x.c, frontend/parse.c: - spell MAX_NAME_LEN the POSIX way (MAXPATHLEN) and make sure we have a fallback if it doesn't get defined (please test this on Windows) - fix for sizeof(short int) != sizeof(int) in mp3rtp.c Patches based upon bugreport from Greg Lehey and fixes in the FreeBSD ports collection from Mikhail Teterin . 2002-09-30 16:49 bouvigne * libmp3lame/encoder.c, libmp3lame/quantize.c, libmp3lame/util.c: some code cleanups 2002-09-28 09:30 takehiro * libmp3lame/VbrTag.c: remove some #include (these header files are included from VbrTag.h.) 2002-09-23 07:00 bouvigne * include/lame.h: presets (sorry, this part was missing) 2002-09-22 16:53 bouvigne * frontend/parse.c, libmp3lame/presets.c: presets 2002-09-21 00:31 markt * libmp3lame/quantize_pvt.c: fixed bug which was causing the calc_noise assert failure. 2002-09-16 16:28 takehiro * configure, configure.in: we don't want to run the X :) 2002-09-15 17:47 bouvigne * libmp3lame/reservoir.c, libmp3lame/set_get.c: Relax of freeformat reservoir after discussion with Robert 2002-09-13 20:04 markt * frontend/brhist.c: This code: #if defined(HAVE_TERMCAP_H) # include #elif defined(HAVE_NCURSES_TERMCAP_H) # include #endif changed to: #if defined(HAVE_NCURSES_TERMCAP_H) # include #elif defined(HAVE_TERMCAP_H) # include #endif because on my system, both TERMCAP and NCURSES_TERMCAP were defined by configure, but term.h and termcap.h have conflicts, whileterm.h and ncurses/termcap.h works fine. 2002-09-09 21:43 robert * frontend/parse.c, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/psymodel.c: lame.c, encoder.c: fix padding oddities psymodel.c: fix nspsy code for all/no short blocks parse.c: -d now obsolete 2002-09-06 11:11 aleidinger * configure: regen 2002-09-06 10:53 aleidinger * configure.in: - no opts if non empty cflags and no expopt - accumulate-outgoing-args is x86 only Noticed by: Atro Tossavainen - IRIX-gcc doesn't like '-pipe' Noticed by: Atro Tossavainen 2002-09-06 09:24 aleidinger * frontend/brhist.c, frontend/console.c: try to include the right headers for the tgetstr prototype; should fix problems on 64bit arches Noticed by: Atro Tossavainen Ti Kan Tested by: Ti Kan 2002-09-06 09:22 aleidinger * aclocal.m4: prevent unaligned access on some 64 bit arches Noticed by: Ti Kan Tested by: Ti Kan 2002-09-05 16:53 bouvigne * libmp3lame/reservoir.c, libmp3lame/set_get.c: free format fix 2002-09-03 11:34 aleidinger * frontend/parse.c: 1 argument too much for fprintf 2002-09-03 11:18 aleidinger * doc/man/lame.1: add --noasm 2002-09-02 12:02 takehiro * doc/html/history.html: added my psymodel change, and so on. 2002-09-02 11:56 takehiro * testcase.mp3: regen with the latest LAME after psymodel was fixed. This is produced by the LAME with ./configure --enable-nasm --enable-debug --enable-mp3x, compiled gcc 3.1.1, on linux2.4.19, glibc2.2.2, Duron 1GHz(3DNow! is enabled). 2002-09-02 11:51 takehiro * libmp3lame/lame.c: fix for Tru64 UNIX build, reported by Ti Kan. 2002-09-01 16:08 bouvigne * doc/html/contributors.html, doc/html/history.html, doc/html/index.html, doc/html/switchs.html, frontend/parse.c: docs 2002-09-01 16:03 takehiro * libmp3lame/psymodel.c: fix small psymodel bugs since long time ago(some of them are since 3.70 era...) - highpass filter of MS energy calculation to neglect the DC. - always do the Robert's short block pre-echo prevention and fix its initialization (the fix is only for nspsy). - fix energy and threshold of DC and the highest freq. element are halven. - fix nspsytune FIR filter length 2002-08-30 20:52 robert * Makefile.MSVC: MSVC: fix "-GX" typo ICL: allow special compiles for PII and PIII 2002-08-27 22:43 rbrito * debian/changelog, debian/rules: Update Debian packaging. More changes to come. 2002-08-26 20:38 robert * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/util.h: undo of VBR bitres min fill patch 2002-08-25 20:17 bouvigne * frontend/parse.c: merge of alt presets 2002-08-20 16:28 takehiro * libmp3lame/encoder.c: fix mp3x spectrum display 2002-08-08 09:03 aleidinger * Makefile.in: regen 2002-08-08 09:00 aleidinger * Makefile.am: Add lame.spec to the distribution tarball, as suggested in bug #580586 2002-08-08 08:49 aleidinger * Makefile.DJGPP, README.DJGPP: Fix from Peder Hedlund, see bug #590981. 2002-08-05 18:04 afaber * Dll/BladeMP3EncDLL.c: Fixed crashing problem when the INFO TAG was written while it should not 2002-08-02 20:53 afaber * Dll/BladeMP3EncDLL.c: Some code clarifications (remarks from Martin Ruckert) 2002-08-02 20:52 afaber * Dll/LameDLLInterface.htm: Small textual changes (remarks from Martin Ruckert) 2002-07-30 20:24 aleidinger * frontend/get_audio.c, libmp3lame/VbrTag.c, libmp3lame/lame.c: Portability fixes for SunOS 4.x. 2002-07-28 09:18 takehiro * include/lame.h: fix unclosed comment fix typo 2002-07-28 06:59 rbrito * debian/changelog: Updating debian/changelog's reported version. 2002-07-27 10:35 afaber * Dll/Example.cpp, Dll/Example_vc6.dsp, Dll/Example_vc6.dsw: Added example VC6 project files, updated Example.cpp file 2002-07-26 22:27 afaber * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.def, Dll/BladeMP3EncDLL.h: changes to support encoding of multiple streams 2002-07-26 18:56 markt * frontend/get_audio.c, include/lame.h, libmp3lame/mpglib_interface.c: memory leak in multiple decodes fixed. 2002-07-21 15:15 aleidinger * include/lame.h: ANSIfy comments. Requested by Ti Kan for xmcd 2002-07-19 17:20 afaber * Dll/LameDll_vc6.dsp: added ,HAVE_NASM,MMX_choose_table defines to project file, since beGetBersion did not report that the DLL was compiled with MMX enabled 2002-07-15 21:22 markt * libmp3lame/util.c, libmp3lame/util.h: enabled domd's fast_log code 2002-07-13 08:11 aleidinger * configure, libmp3lame/Makefile.in: regen 2002-07-13 08:09 aleidinger * configure.in: Some fixes in the compiler options, removed superfluous BeOS section. 2002-07-13 08:08 aleidinger * libmp3lame/Makefile.am: Fixes for BeOS (and perhaps other arches) to allow the build of a shared lib. Submitted by: Andrew Bachmann 2002-07-05 15:17 afaber * Dll/LameDLLInterface.htm: fixe a couple of typos' 2002-07-03 22:28 afaber * Dll/BladeMP3EncDLL.c: fixed minor problems with the ALT-PRESET CBR/ABR modes 2002-07-03 21:14 afaber * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: avoid crash in beWriteVbrTag when gfp is not allocated, fixed return value of beWriteVbrTag in *.h file 2002-06-29 12:29 aleidinger * libmp3lame/lame.c, libmp3lame/util.c: Patch from Simon Blandford : ---snip--- The problem: When in MONO mode, LAME merges the two channels before the left/right scaling. The left scale acts on the remaining signal and the right scale is ignored. The solution: The scaling operation is simply moved before the channel merge operation. Also, all these operations are moved before the re-sample operation otherwise the signal would have be re-sampled on two channels even in MONO mode which would be a waste of CPU time. ---snip--- 2002-06-17 17:19 domd * DEFINES: added USE_FAST_LOG define 2002-06-16 20:16 domd * libmp3lame/psymodel.c: optimizations on mask_add and L3psycho_anal_ns 2002-06-16 20:14 domd * libmp3lame/quantize_pvt.c: optimization : use of FAST_LOG10 macro in calc_noise 2002-06-16 20:13 domd * libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: added the FAST_LOG10 and FAST_LOG macros 2002-06-15 17:56 markt * Dll/BladeMP3EncDLL.c: added missing ")" 2002-06-12 18:41 markt * dshow/Encoder.cpp: directshow, like ACM, cannot support INFO tag. INFO tag disabled in dshow code. 2002-06-12 18:36 markt * ACM/ACMStream.cpp: added note about INFO tag not possible when using ACM codec, since ACM has no mechanism to rewind output stream when encoding is finished. 2002-06-12 18:27 markt * API, Dll/BladeMP3EncDLL.c, Dll/Example.cpp, Dll/LameDLLInterface.htm: updated documentation (API and DLL) to clarify that INFO tag must be written unless explicitly disabled. 2002-06-11 09:21 aleidinger * configure: gtk-config fix (oops... sorry) 2002-06-09 16:01 takehiro * include/lame.h, libmp3lame/set_get.c: fix return type of lame_get_interChRatio() 2002-06-04 19:16 bouvigne * libmp3lame/psymodel.c: merged little part of Dom's speed optimization 2002-06-04 15:04 aleidinger * configure: regen 2002-06-04 15:03 aleidinger * configure.in: -maccumulate-outgoing-args is x86 only Reported by: "Spud McDuck" 2002-06-02 19:09 aleidinger * configure: regen 2002-06-02 19:08 aleidinger * config.h.in, configure.in: damn autoconf, hopefully this version works as intended 2002-06-02 17:02 aleidinger * configure: regen 2002-06-02 17:00 aleidinger * configure.in: use "else if ... fi" instead of "elif ..." 2002-06-02 17:00 aleidinger * libmp3lame/Makefile.in: regen (removal of pcm.[ch]) 2002-06-02 14:50 robert * libmp3lame/Makefile.in, libmp3lame/libmp3lame_vc6.dsp: moved unused code pcm.[ch] into the Attic interested parties will find it there 2002-06-02 14:45 robert * libmp3lame/Makefile.am, libmp3lame/pcm.c, libmp3lame/pcm.h: moved unused code pcm.[ch] into the Attic interested parties will find it there 2002-06-02 14:20 aleidinger * configure: regen + perl -pi -e 's:--no-verify::' configure Does anyone know how to do this with autoconf directly? 2002-06-02 14:17 aleidinger * aclocal.m4: undo last commit, wrong file and wrong commit message 2002-06-02 14:16 aleidinger * acconfig.h: not needed anymore 2002-06-02 14:15 aleidinger * Makefile.in: regen after removal of aclocal.m4 2002-06-02 14:13 aleidinger * config.h.in: regen 2002-06-02 14:13 aleidinger * configure.in: - redo {,u}int{8,16,32,64}_t stuff with new autoconf 2.53 macros - fix code which sets experimental options Thanks to: Akos Maroy - fix GCC_version for 3.1 Thanks to: Akos Maroy - further autoconf 2.53 updates - minor fixes 2002-06-02 14:10 aleidinger * aclocal.m4: is not needed anymore 2002-06-02 12:21 aleidinger * aclocal.m4: update to autoconf 2.53 2002-06-02 12:17 aleidinger * libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/pcm.c, libmp3lame/pcm.h, libmp3lame/util.h: add some includes 2002-05-28 08:28 aleidinger * ACM/ADbg/Makefile.in, ACM/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, configure, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: regen 2002-05-28 08:07 aleidinger * configure.in: - update to autoconf 2.53 - add ultrasparc detection and compiler switches in case of gcc 3.1 2002-05-28 08:04 aleidinger * Makefile.in: regen 2002-05-28 08:04 aleidinger * Makefile.am: add mac subdir 2002-05-28 08:03 aleidinger * mac/Makefile.in: generated Makefile.in 2002-05-28 07:52 aleidinger * mac/Makefile.am: add automake clue 2002-05-28 07:48 aleidinger * mac/LAME Carbon Debug.pch, mac/LAME Carbon Final.pch, mac/LAME Classic Debug.pch, mac/LAME Classic Final.pch, mac/LAME_Carbon_Debug.pch, mac/LAME_Carbon_Final.pch, mac/LAME_Classic_Debug.pch, mac/LAME_Classic_Final.pch: rename files because of automake (space to underscore conversation) 2002-05-25 23:30 markt * libmp3lame/lame.c: fixed a mono encoding bug found by Justin Schoeman For single channel input, the 2nd channel was still required to exit and have as much data as the 1st channel becaus of memcpy's (even though this data was never used) 2002-05-24 17:28 markt * Dll/BladeMP3EncDLL.c, libmp3lame/lame.c: removed all references to "sample_t" from the DLL. someone put in a call to lame_encode_buffer_sample_t (not a public interface to libmp3lame) when they should have used lame_encode_buffer_float(), since they were assuming 'sample_t' was a float. 2002-05-20 22:21 robert * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/util.h: VBR bitreservoir minimum filling depending on back pointer from largest frame allowed 2002-05-20 18:22 robert * Makefile.unix, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/vbrquantize.c: Makefile.unix: -malign-double enabled, helps memcpy lame.c: new experimental -X{5,9} settings for --vbr-new quantize.c: build up bit reservoir for VBR, allows to limit max frame size with -Bxxx without a too large quality impact vbrquantize.c: fixing sfb21 issues: -Y did not show the wanted effect xxx_block_xr34: replaced copy loop by memcpy, not faster but makes things more obvious some very minor speed ups 2002-05-19 22:11 markt * frontend/timestatus.c: initialize ellapsed time counter to 0. 2002-05-19 22:03 robert * libmp3lame/quantize.c, libmp3lame/vbrquantize.c: avoid calling best_huffman_divide twice for vbr-new 2002-05-14 21:32 robert * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/util.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h: removed warning when using -Y removed unused bitpressure strategie 2 (VBR) 2002-05-14 21:02 robert * libmp3lame/.indent.pro: changing max line length from 80 to 100 chars 2002-05-14 16:23 markt * frontend/timestatus.c: added comment about clock rollover check 2002-05-14 16:19 markt * frontend/lametime.c, frontend/timestatus.c: put in rollover check in frontend cpu/wall clock timing routines. didn't we used to have this? user reported (on a 35min encode) that the output of clock() (of type clock_t) was rolling over and becoming negative. On his system, clock_t is a signed 32 bit int. 2002-05-12 18:47 markt * INSTALL: removed info about vorbis encoding from INSTALL 2002-05-12 18:01 markt * ltmain.sh: applied patch to ltmain.sh from sourceforge.net bug report. it passes LDFLAGS on to the linker? *** ltmain.sh.org Sun Oct 22 14:06:32 2000 --- ltmain.sh Sun Apr 28 11:56:54 2002 *************** *** 818,824 **** convenience= old_convenience= deplibs= ! linkopts= if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var --- 818,824 ---- convenience= old_convenience= deplibs= ! linkopts="$LDFLAGS" if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var 2002-05-12 17:20 markt * include/lame.h, libmp3lame/lame-analysis.h: added documentation to lame.h for lame_decode* functions uped READ_AHEAD from 10 to 40 for the frame analyzer 2002-05-12 09:30 takehiro * libmp3lame/quantize.c: fix inc_scalefac_scale() ignoring preflag. 2002-05-11 18:49 markt * lame.spec.in: new lame.spec.in file from Yosi. 2002-05-11 18:29 markt * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c: applied Takehiro's bug fix for single channel bit reservoir usage for pre-echo control. 2002-05-09 23:25 robert * libmp3lame/vbrquantize.c: vbr-new: more time consuming strategy to handle the case when more bits used than available * libmp3lame/quantize_pvt.h, libmp3lame/vbrquantize.c: allow best huffman divide to be used in vbr-new * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: moved the tiny function ms_convert from quantize_pvt.c to quantize.c--the only client for it--giving a little speed increase * libmp3lame/quantize.c, libmp3lame/quantize_pvt.h, libmp3lame/vbrquantize.c: better decoupling of vbrquantize.c and quantice.c * libmp3lame/bitstream.h, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.h, libmp3lame/util.h: sorry Takehiro, we are back to the last known working version from Sunday 13:35 UTC now * libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/reservoir.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/vbrquantize.c: sorry Takehiro, we are back to the last known working version from Sunday 13:35 UTC now fix for new reservoir handling code with my ABR patch. we don't need the totbits, because the reservoir size is reduced in ResvAdjust() in gr/ch loop and reservoir handler uses it. * ACM, ACM/ADbg, ACM/tinyxml: added cvsignore to ignore Makefile, etc. cleanup. remove a compiling problem and some warnings. one more outer_loop() fix for VBR. outer_loop() fix for vbr_rh and vbr_mtrh update comment * libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/quantize.c, libmp3lame/reservoir.c, libmp3lame/util.c, libmp3lame/util.h: cleanup arround getframebits(). * libmp3lame/quantize.c, libmp3lame/reservoir.c: fix NORES_TEST. and works not only for CBR (don't tell me that's useful :p) * libmp3lame/quantize.c, libmp3lame/reservoir.c, libmp3lame/reservoir.h: oops, I mis-checked in the old files. this is real one. * libmp3lame/quantize_pvt.c, libmp3lame/reservoir.c, libmp3lame/reservoir.h: clean up arround reservoir. * libmp3lame/quantize.c, libmp3lame/reservoir.c, libmp3lame/reservoir.h: trivial cleanup of arround resvoir. cleanup arround inc_scalefac_scale() with new cod_info strcture. * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: cleanup arround calc_noise() with new cod_info strcture. * libmp3lame/quantize.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: more cleanup of new cod_info structure, arround count_bits() * libmp3lame/quantize.c, libmp3lame/quantize_pvt.h: inner_loop() is now static function. * libmp3lame/quantize.c, libmp3lame/vbrquantize.c: changed outer_loop() algorithm. it needs lesser copy and runs faster. - try with new scalefactor combination on work area, and if we get the better result, copy it to the returning area. - make bin_search_StepSize() return the global_gain which assures targ_bits > found_bits. * libmp3lame/quantize.c, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h: some clean-up in parameter passings due to recent change in cod_info structure * libmp3lame/encoder.c, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h: removed again some unused code I thought that was removed some long time ago * libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/l3side.h, libmp3lame/quantize.c: bit cleanup. removed window_switching_flag in l3side. * libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/vbrquantize.c: To fix it does not call the "freorder" and to support for mixed block, the vbrquantize.c uses init_outer_loop()/init_xrpow() in quantize.c to initializatoin. this may fix the MPEG2 problem (but not tested). updated testcase.mp3 * libmp3lame/encoder.c, libmp3lame/quantize.c, libmp3lame/util.c, libmp3lame/util.h: clean up and speed up (optimize for new data structure). - devided init_outer_loop() into init_outer_loop() and init_xrpow(). This makes it easy to use GOGO-no-coda's xrpow calculation routine. # thanx Robert, your fix makes me aware my mistake in VBR mode. - restoring duplicated data of VBR loop are removed. more mixed_block prepare. freorder() in util.c and its caller in encoder.c are moved into init_outer_loop() in quantize_pvt.c trivial optimization * libmp3lame/bitstream.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/vbrquantize.c: the signess process of l3_enc[] are moved from quantize*.c to bistream.c. bit faster, much simpler. removed unused variables. * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c: removed log calculation of klemm_noise in main loop Added quality setting to lame_enc.dll interface 3.93 alpha 1 -> 3.93 alpha 2 * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c: fixing latest floating point exceptions I got for some days within the calc noise routine Mark, because max_noise is initialized with 1E-20 and refreshes Max(max_noise, sfb_noise), so it will never lesser than 1e-20. bit faster best_huffman_divide(). - use the pointer to the structure, not structure itself. large data structure update (1) - mdct values (xr), encoded values (l3_enc), and scalefactors (scalefac) are in the gr_info structure. - it runs faster. - reduce stack size but require large III_side_info_t and lame_global_flags. fix --enable-all-float. when it enabled, FLOAT8_MAX should be FLT_MAX about 1e37, not 1e99. trivial add a mingw comment from Hubert Hanghofer Takehiro, when you changed this code: res->max_noise = 10.*log10(Max(1e-20,max_noise )); res->klemm_noise = 10.*log10(Max(1e-20,klemm_noise)); to: res->max_noise = 10.*log10(max_noise); res->klemm_noise = 10.*log10(klemm_noise); I started getting FPE (I always compile with --enable-debug which aborts on FPE). I went ahead and changed it back- it should have little effect. Added additional debug flags remove unused definition fix typo trivial(reduce magic number) Avoid the VBR Tag space was written when VBR method was disabled (caused empty frame in fornt of MPEG stream for certain CBR settings) new option, --substep, pseudo substep noise shaping now works. - new set_get function, lame_set_substep(), lame_get_substep() - final fix of "do substep" region of selected scalefactor. - noise_shaping_amp == 3 is removed and the method of how to use substep is selecte by the new member "substep" in structure "lame_internal_flags". trivial optimization: gfp/gfc cleanup *** empty log message *** * libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/l3side.h, libmp3lame/newmdct.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: simplify the structure. l3_side->gr[gr].ch[ch].tt is now known as l3_side->tt[gr][ch]. fix misleading indent prepare for mixed block support: count_bits() and best_scalefac_store(). fix bug of noise_shaping_amp==3 on a long block. more mixed_block preparation: inc_scalefac_scale(), amp_scalefac_bands() for better mixed_blcok support, make calc_xmin() use cod_info->sfb_lmax, etc. fix mixed mode (long block max sfb) * libmp3lame/l3side.h, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c: more generalized mixed_block support and considering in MPEG2/2.5 - added new members to cod_info. psy_lmax and psy_smax. we don't need two elements of l3_xmin. - calc_xmin() supports mixed_block noise calculation. - mixed_block parameter(long block end point and short block start point) fix for calc_noise() calc_noise() supports mixed_block noise calculation. remove out-of-date comments * libmp3lame/machine.h, libmp3lame/quantize_pvt.c: first step of clean up calc_noise() for preparing mixed block support. - removed unused variables - make the two loops (long and short) same structure. Added the preset to compile the project (not used... yet) Now the dll should properly applying mono and resampling settings even if presets are used * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: alt-presets now used from inside libmp3lame missing presets.c added regen bump version updated testcases (just because CVS version bumped up to 3.93alpha) updated version to 3.93 alpha 1 abr presets now into libmp3lame --cbr 3dnow identification 2002-04-15 08:18 aleidinger regen got automake 1.5 and ran it: updated debian/Makefile.am but my version of automake is too old: debian/Makefile.am:5: require version 1.5, but have 1.4-p5 * doc/html/history.html, libmp3lame/version.h, testcase.mp3: bumped up version number to 3.92 for release ran cvs2cl.pl * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.def, Dll/BladeMP3EncDLL.h: Added strict-iso option to the interface, added output samplerate parameter to the debug log file added message regarding "internal buffer inconsistency error" to printout: ERRORF(gfc,"This is a fatal error. It has several possible causes:"); ERRORF(gfc,"90% LAME compiled with buggy version of gcc using advanced optimizations"); ERRORF(gfc," 9% Your system is overclocked"); ERRORF(gfc," 1% bug in LAME encoding library"); --noasm option presets.c dm presets in the dll are now used from initialized from inside libmp3lame regen vbr presets are now part of libmp3lame --cbr switch minor change on the DLL versioning * ACM/ACM.cpp, ACM/AEncodeProperties.cpp: Added some new defines that might not be in all platform DDKs (just in case) * ACM/Makefile.in, Makefile.in: regen * ACM/Makefile.am, Makefile.am: add new vc6 file * ACM/lameACM_vc6.dsp, lame_vc6.dsw: added ACM codec to vc6 workspace dummy project to generate all lame projects (select lame_projects in the workspace) Removed the things already done * ACM/ACM.cpp, ACM/AEncodeProperties.cpp, ACM/lameACM.dsp: Clicking on the LAME URL will open the default browser * ACM/AEncodeProperties.cpp, ACM/AEncodeProperties.h: Added tool-tips to the configuration dialog * ACM/ACM.cpp, ACM/acm.rc: Improved LAME version display * ACM/AEncodeProperties.cpp, ACM/AEncodeProperties.h, ACM/acm.rc, ACM/lame_acm.xml, ACM/resource.h: ABR support now complete bugfix, sorry, lost the mail for it 2002-04-06 14:11 aleidinger * ACM/Makefile.in, ACM/tinyxml/Makefile.in, Dll/Makefile.in, Makefile.in, configure, frontend/Makefile.in, libmp3lame/Makefile.in, mpglib/Makefile.in: regen add tinyxml directory * ACM/Makefile.am, ACM/tinyxml/Makefile.am, Dll/Makefile.am, Makefile.am, frontend/Makefile.am, libmp3lame/Makefile.am, add new files * ACM/ACM.cpp, ACM/ACM.h, ACM/ACMStream.cpp, ACM/ACMStream.h: Encoding in ABR is starting to work the different format strings are sorted correctly * ACM/ACM.cpp, ACM/ACM.h, ACM/AEncodeProperties.cpp, ACM/AEncodeProperties.h, ACM/acm.rc, ACM/resource.h: First part of the ABR support (missing use ABR settings on encoding when applied, configuration of ABR params) * ACM/tinyxml/readme.txt, ACM/tinyxml/tinyxml.cpp, ACM/tinyxml/tinyxml.dsp, ACM/tinyxml/tinyxml.h, ACM/tinyxml/tinyxmlparser.cpp, ACM/tinyxml/xmltest.cpp: Updated with version 2.0 beta * Dll/LameDll_vc6.dsp, frontend/lame_vc6.dsp, lame_vc6.dsw, I was annoyed to not be able to open the VC projects in vc6, so I added vc6 ones * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: Added lame presets to DLL interface no fast float to int conversion (Intel compiler) fix for Win2k path seperator issue found by Peter Hartley bugfix, confusion about sideinfo length found by "Kei Ishida" VC Workspace for all(?) targets remove /* withhin comment mp3x now displays quantization noise correctly when using nspsytune. * debian/changelog, debian/control, debian/copyright, debian/lame-dev.docs, debian/lame-dev.files, debian/lame-extras.files, debian/lame.docs, debian/liblame0-dev.docs, debian/liblame0-dev.files, debian/liblame0.files, debian/rules: Reorganization of the lame/debian directory for generating packages closer to what the Debian Policy specifies. Still not there (the liblame0 package still has a dreaded -rpath and thus, is not lintian clean). * doc/html/history.html, doc/html/switchs.html: fix option description, and changed & to & now inter-channel masking works even when without --nspsytune or with -m s fix for --enable-all-float. added inter channel masking effect. gfp->interChRatio is the ratio of inter-channel masking effect, which could be indicated by --interch X option. The default value is 0.0, which means there's no inter-channel masking effect. I think ratio = 0.01 is OK for lower bitrates (like under 128kbps), for like old days songs by the Beatles. presets down to 8kbps prepare for the interchannel masking and substep noise shaping. * ACM/tinyxml/Makefile.tinyxml, ACM/tinyxml/changes.txt, ACM/tinyxml/dox, ACM/tinyxml/makedistlinux, ACM/tinyxml/makedistwin.bat, ACM/tinyxml/readme.txt, ACM/tinyxml/tinyxml.cpp, ACM/tinyxml/tinyxml.dsp, ACM/tinyxml/tinyxml.h, ACM/tinyxml/tinyxmlerror.cpp, ACM/tinyxml/tinyxmlparser.cpp, ACM/tinyxml/xmltest.cpp: Update with newer version of TinyXML Now, nspsytune2 should work, maybe... * libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/util.h: Preparation work for nspsytune2. compile fix for gcc 3.x from Len Walter added preflag count to statics window in mp3x * frontend/parse.c, include/lame.h, libmp3lame/lame.c, libmp3lame/lame_global_flags.h, libmp3lame/set_get.c: preparation work for nspsytune2 temporary fix for resampling code. downsampling from 44101 to 44100 causes a seg fault. Workaround in place for now: resampling disabled if input/output samplerates agree to 4 digits. minor edits added notes about building a working, all encompasing MSVC6 workspace to TODO list added nots about the ACM codec and directshow filter to INSTALL Correct a problem when more than 2 channels are involved Less memory copying on interleaved buffer * ACM/tinyxml/Makefile, ACM/tinyxml/Makefile.tinyxml: replace Makefile with Makefile.tinyxml * ACM/ACM.cpp, ACM/acm.rc: resolved FhG incompatibility, first beta version (can go public), no decoding yet * ACM/ACM.cpp, ACM/TODO, ACM/acm.rc: update version and removed unused buffers build with special dynamic memory handling for ACM * ACM/ACM.cpp, ACM/ACMStream.cpp, ACM/main.cpp, configMS.h: More debugging, special dynamic memory handling for ACM CW6 Project File * mac, mac/.DS_Store, mac/LAME Carbon Debug.pch, mac/LAME Carbon Final.pch, mac/LAME Classic Debug.pch, mac/LAME Classic Final.pch, mac/MacDLLMain.c, mac/Precompile_Common.h: Mac support * ACM/TODO, ACM/acm.rc: more TODO, added icon credit set devault qval to 2 for CBR and ABR. * ACM/TODO, ACM/lame.ico: new icon, more to do * ACM/ACM.cpp, ACM/ACM.h, ACM/AEncodeProperties.cpp, ACM/DecodeStream.cpp, ACM/acm.rc: version 0.7.6, improved the smart output mode, corrected a config saving bug * ACM/ADbg/ADbg.cpp, ACM/ADbg/ADbg.h: more explicit cast regen add lameid3.pl some fixes * ACM/ACM.cpp, ACM/ACM.h, ACM/ACMStream.cpp, ACM/AEncodeProperties.cpp, ACM/AEncodeProperties.h, ACM/TODO, ACM/acm.rc, ACM/lameACM.dsp, ACM/lame_acm.xml, ACM/main.cpp, ACM/resource.h: introducing smart output mode, clean dialog boxes, config saving/loading now works correct a build problem when ENABLE_DECODING is not defined More doc on the release files removed a minor build problem * ACM/ACM.cpp, ACM/ACM.dsw, ACM/ACM.h, ACM/ACMStream.cpp, ACM/ACMStream.h, ACM/AEncodeProperties.cpp, ACM/AEncodeProperties.h, ACM/DecodeStream.cpp, ACM/DecodeStream.h, ACM/LameACM.inf, ACM/TODO, ACM/acm.rc, ACM/lameACM.dsp, ACM/lame_acm.xml, ACM/readme.txt, ACM/resource.h, ACM/tinyxml, ACM/tinyxml/Makefile, ACM/tinyxml/changes.txt, ACM/tinyxml/readme.txt, ACM/tinyxml/test.dsp, ACM/tinyxml/test.dsw, ACM/tinyxml/tinyxml.cpp, ACM/tinyxml/tinyxml.dsp, ACM/tinyxml/tinyxml.h, ACM/tinyxml/tinyxmlerror.cpp, ACM/tinyxml/tinyxmlparser.cpp, ACM/tinyxml/xmltest.cpp: Initial configuration dialog and XML config saving, initial decoding support (not working yet) better handling of C++ include commiting Yosi's new lame.spec.in file * ACM/ACM.cpp, ACM/ACM.dsw, ACM/ACM.h, ACM/ACMStream.cpp, ACM/ACMStream.h, ACM/LameACM.inf, ACM/TODO, ACM/acm.rc, ACM/adebug.h, ACM/lameACM.def, ACM/lameACM.dsp, ACM/main.cpp, ACM/readme.txt: clean the code, put LGPL license, add mpglib to the build added MAX OSX patch from sf bugtrack page added lameid3.pl script to misc directory. (use to reencode mp3's and preserve id3 tags) * Dll/BladeMP3EncDLL.h, libmp3lame/util.h: Better C++ handling regen (ACM) Add ACM directory Add generated autoconf glue Add generated autoconf glueACM/Makefile.in * ACM/ADbg/Makefile.am, ACM/Makefile.am: Add automake clue (for make dist) Eanble correct nasm support * ACM, ACM/ACM.cpp, ACM/ACM.dsw, ACM/ACM.h, ACM/ACMStream.cpp, ACM/ACMStream.h, ACM/ADbg, ACM/ADbg/ADbg.cpp, ACM/ADbg/ADbg.dsp, ACM/ADbg/ADbg.h, ACM/LameACM.inf, ACM/acm.rc, ACM/adebug.h, ACM/lame.ico, ACM/lameACM.def, ACM/lameACM.dsp, ACM/main.cpp, ACM/readme.txt, ACM/resource.h: Initial ACM support updated TODO NASM for Windows fixes (Hubert Hanghofer) regen - Update gcc 3.x and --enable-expopt=full flags based upon suggestions - Remove gcc flags which are marked 'experimental' in the gcc 3.0.3 - Add comment what "expopt" means, and what it doesn't mean. - Update MINGW part pased upon patches and comments from - Some minor changes for consistency. Note: this file is superseded by configure, except for systems where configure didn't work, so if something is broken you have to send patches. * libmp3lame/i386: added *.lo * debian, dshow: added autogen Makefile to ignore * frontend, libmp3lame, mpglib: added *.il, for the intel compiler with ipo option oops, forgot to s/gtk12-config/gtk-config/ regen add gcc 3 specific optimizations, based upon suggestions by Sébastien FORESTIER 2002-01-07 10:37 aleidinger regen: Fix Cygwin and HPUX problems. 2002-01-07 10:36 aleidinger Fix Cygwin and HPUX problems. modified some remark updated hostory.html from master copy in webpages project fix option for pseudo-half step quantization regen: Welcome to 3.92 Welcome to 3.92 sync with webpages/history.html * .: added stamp-h1 dshow/dshow.dsw, frontend/lame.dsp, libmp3lame/libmp3lame.dsp, unix->dos add --alt-preset regen: add missing files to the distribution add missing files to the distribution disable noise shaping 2 for "fast" extreme mode also * libmp3lame/set_get.c, libmp3lame/vbrquantize.c: fix small bug and completely disable noise_shaping 2 with "fast" mode until a better solution can be found. regen: add some files to the distribution add auenc, mugeco,sh and mlame to distrib document NON_LINEAR_PSYMODEL, remove KLEMM_43 non linear psymodel (disabled by default) for GPSYCHO (nspsytune is untouched) regen: Welcome to v3.91 Welcome to v3.91 add icc check regen: (add vbrquantize.h) add vbrquantize.h * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.def, Dll/BladeMP3EncDLL.h: Added DLL interface function beEncodeChunkFloatS16NI for floating point audio Samples are input within the range +/- 32768, in non-interleaved channels updated testcase * libmp3lame/version.c, libmp3lame/version.h: updated version to lame 3.90 update changelog no message * libmp3lame/encoder.c, libmp3lame/set_get.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: improved quality of "fast" modes in certain situations removed bitrate compensation stuff for the abr bitrates since it appears no longer necessary added --alt-preset to the list of switches documented many changes which have been made over 3.90 small tweak to "standard" preset * libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/set_get.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: small quality improvement for "extreme" and "insane", more bitrate tunings for "extreme" -- should average to 256kbps more often regen: vorbis changes - Change vorbis default to disabled - Added -logg in the vorbis case (seems to be needed, I haven't tested it) Try to unbreak vorbis support (it can't get worser). You may need the vorbis source and add -I/path/to/vorbis_src/includes/ to CFLAGS prior to running configure Tested by: Jonathan Ryshpan on RedHat 7.2 Submitted by: Cyrille Lefevre via FreeBSD problem report Minor changes to Gabriel's adjustment for ABR bitrate. Updated testcases. Added the following comments: /* res_factor is the percentage of the target bitrate that should be used on average. the remaining bits are added to the bitreservoir and used for difficult to encode frames. Since we are tracking the average bitrate, we should adjust res_factor "on the fly", increasing it if the average bitrate is greater than the requested bitrate, and decreasing it otherwise. Reasonable ranges are from .9 to 1.0 Until we get the above suggestion working, we use the following tuning: compression ratio res_factor 5.5 (256kbps) 1.0 no need for bitreservoir 11 (128kbps) .93 7% held for reservoir with linear interpolation for other values. */ res_factor = .93 + .07 * (11.0 - gfp->compression_ratio) / (11.0 - 5.5); better abr bitrate approximation (will break abr testcases) * libmp3lame/psymodel.c, libmp3lame/set_get.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: More tunings for "fast" options for "standard" and "extreme" modes. small tweak to "extreme" mode - changed --dm-presets to --alt-presets - modified preset system - applied tunings to vbr and psymodel, especially with --alt-preset standard, improves many difficult clips over the default vbr modes/presets (even those such as --r3mix) such as impulse cases (fatboy, spahm, them, gbtinc, ravebase, etc), pre-echo cases (castanets, death2, florida_seq, etc), tonality/js cases (2nd_vent, serioustrouble, bloodline, etc), low volume clips (piano, rach_original), many clips with problems with noise shaping 2, and much much more. Practically all cases should be equal or improved in quality. - added --no-preset-tune to disable tunings for --alt-preset "modes" updated descriptions of some command line options, as per Dmitry patch from lassauge@mail.dotcom.fr for lame.spec.in file. added lame_encode_buffer_long2(), since lame_encode_buffer_long() had a scaling which restricted the precision of the input to the same as if the input was 'short int' decided to leave the original routine, on the off chance there is some program out there which uses it. regen change description of make test tuning of "pseudo half step noise shaping" with listening test. and it works now even when scalefac_scale == 1 2001-11-26 15:20 takehiro * libmp3lame/VbrTag.c, libmp3lame/psymodel.c: fix warning Bump alpha version. * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/takehiro.c, libmp3lame/util.h: new noise shaping algorithm(pseudo half step noise shaping) it brings slow but more accurate noise shaping. enables with -q0 when CBR Reverted CVS back to before "gglower" option was added. --scale is a better way to do this, and contrary to Hans' claims, --scale is also lossless. patch by Hans van der Heijden, original email: Datum: Sun, 18 Nov 2001 20:13:11 +0100 Von: "Hans van der Heijden" An: Hi Robert, For the first time, I compiled Lame, being a non-programmer (well, my work involves programming, but that's a world apart with logic symbols, not C language). Because sometimes I have the urge to try something with the sourcecode. I'd like to add a switch to avoid the use of --scale for preventing clipping. It manipulates global_gain, similar as the mp3gain tool does, but this would be much more convenient of course (and better quality-wise, being 'lossless'). Since I have no programming experience, can you take a look if I implemented it correctly? The switch is called --gglower x, where each x-step stands for 1,5 dB. gg is short for global gain. So for example, --gglower 1 will decrease the output volume with 1,5 dB (0,841). I would probably use this by default, it will be enough to prevent clipping for all but the oddest samples/settings. I did a lot of copy/pasting from the --athlower switch, otherwise I probably couldn't figure it all out! Files involved are parse.c, lame_global_flags.h, set_get.c, lame.h and bitstream.c. I attached these files, if you search in each for 'gglower' you'll find the added code. Files came from the 11 Nov CVS. Also attached is a cygwin lame.exe if you like to play with it. Let's add it to CVS if it's OK (don't know how to do that myself, have to tell Mark?). Bye, Hans * Dll/Example.cpp, Dll/Makefile.mingw32, Makefile.unix: some mingw fixes from Vladislav Naumov fixes in comments *** empty log message *** spelling fixes in comments fixed bugs: 451879 and 438835 2001-11-11 15:09 aleidinger * configure, doc/man/Makefile.in: regen add CVS Id * Dll/Makefile.in, Makefile.in, debian/Makefile.in, regen bugfix: --disable-{mp3x,mp3rtp} had build them add: --disable-fontend remove mp3x version, it doesn't belong into the lib (this breaks every app which uses the function, but mp3x should be the only app which uses it, so this is ok because I moved it into gtkanal.c) move mp3x version here (from libmp3lame/version.[ch]) regen add missing headers at least fix the bus error on SPARC until Roel or someone else decides if we should fix it in another way resample only for encoding athaa fixes, resample only for encoding Cleaned up preset help; send explicitly requested help to stdout, not stderr. Modularized original presets, with aliases to preserve the original behavior. modify lowpass values for dm-preset abr mode Updated dm-presets * libmp3lame/encoder.h, testcase.mp3: updated padding at end of MP3 to be 1152 samples. So the last frame containing real data will always be followed by a frame containing silence. (since most decoders will only decode the second to last frame) lost i added optimizing some intel compile flags 2001-11-04 18:52 robert * DEFINES, libmp3lame/quantize.h: removed MAXQUANTERROR precompiler define moved MSVC specific #pragma into MSVC section we don't want to make Naoki's msfix part of the API at this time, removed from lame.h again. parse.c compilation was broken by JD's presets_alias function. * libmp3lame/encoder.c, libmp3lame/quantize.c, libmp3lame/vbrquantize.c, libmp3lame/vbrquantize.h: removed MAXQUANTERROR precompiler define update dm-presets.. more to come shortly added msfix --vbr-mtrh is now known as --vbr-new --vbr-mtrh is now known as --vbr-new some fixes in the comments mark --{voice,radio,cd,studio,phone} as deprecated remove --voice (deprecated) Moved "--dm-preset *" preset profiles to "--preset dm-*". Added code for aliasing presets to multiple broad or narrow purpose labels. Allow specifying the r3mix preset with "--preset r3mix" for consistency Renamed experimental switch "--ath-adjust" to "--athaa-type" for consistency. All switches directly affecting ATH auto-adjustment begin with "--athaa-*". Added a bit of documentation to the long help. To better reflect purpose, renamed adapt-thres-type and adapt-thres-level to athaa-loudapprox and athaa-sensitivity, respectively. When determining enc_delay and enc_padding from VBR header, check for reasonable values. VbrTag.c: GetVBRTag() updated to parse enc_delay, enc_padding fields enc_delay is used by 'lame --decode' to determine how many samples to skip at the beginning during decoding. for --nogap option, do not allow Xing VBR tag. We should also not allow id3 tags and --nogap, but the are not turned on by default, and it is more than a 3 line fix :-) * libmp3lame/gain_analysis.c, libmp3lame/gain_analysis.h: adding gain analysis files --nogap and --nogapout fixed in frontend. didn't check if output is really gapless - hopefully no bugs have crept into that while --nogap was broken. Fixed bug in VbrTag.c which is why Xing tag was broken for MPEG2 files. This code: if( h_id == 0 ) pTagData->samprate >>= 1; was, for unknown reasons, cutting the samplrate down by a factor of two for MPEG2, causing the framesize of the Xing header to be too large, causing it to overwrite the first valid MP3 frame. undo previous edit, misunderstanding if ABR, {store bitrate <=255} else { use 4 low bits to store bitrateindex so "-b" for VBR(/CBR) is known. 0F for freeformat} updated testcases sync with HTML * doc/html/basic.html, doc/html/examples.html, doc/html/history.html, doc/html/node6.html, doc/html/switchs.html: doc fixes a small athtype doc modif fixes from Dmitry fixes from Alexander add line breaks, expand examples section, add ID3 section, fixes fix for cygwin/mingw from egor duda no message update based on HTML version * doc/html/basic.html, doc/html/switchs.html: doc Submitted by: "Vladislav Naumov" I canged number 2 of his fixes to be equal to configure.in (-O3 is the highest official supportes optimization option, some of the options are superfluous (because they are included in -O3), some may perhaps change the ABI (ABI, not API!), e.g. -malign-*). Quote: 1. NOUNIXCMD = YES (don't use shell & sed) 2. CC_OPTS are set to produce optimized code. Somewhat faster. 3. frontend_sources & lib_sources are now fixed. GNU Make version 3.79.1 croaked about recursive variable. 4. ASFLAGS are correctly set, 'make -fMakefile.unix UNAME=MSDOS HAVE_NASM=YES' works smoothly (if you have nasm.exe, of course :)) Submitted by: "Vladislav Naumov" Quote: This makefile compiles lame_enc.dll with mingw32 (and possibly cygwin) Of course, you must first build ../libmp3lame/libmp3lame.a. liblame_enc.a can be used to link the lame_enc.dll to your programs. Tested with EAC 0.9pb9 (my own favorite, http://www.exactaudiocopy.de/). headering... documenting...hopefully nearly finished patch by Gian-Carlo Pascutto I saw someone reported a problem with my --nogapout switch on the mailinglist. I have done a quick attempt to fix the problems (and address another potential one). I haven't actually tested the fixes, but I'm reasonably sure they are correct, or at least they show how to address the problem. after discussing with Gabriel added some more AQ flag refinements (--athonly,--noath,--scale-*, free format) and made #define MAXFRAMESIZE 2880, because LAME used to fill the freeformat 640 LAME Tag with junk at the end. fix VERSION after last commit added overflow protection to that lowpass field in the LAME Tag, just in case someone enters a very high lowpass value. 44.1kHz: instead of "transition band: 22228 Hz - 22761 Hz" lowpass filter, "-b320 -a" (mono) will now give "transition band: 21517 Hz - 22050 Hz" (as in the stereo case) likewise on other samplerates. I can imagine this can be done in a much more intelligent fashion. also commented out a bit of similar code that seems obsolete now? documenting - not finished Fixed some compiler warnings (mainly differences between function declaration and definition) added the needed "else", fixed lowpass, added -V0/V1, --nores, -k, ... 2001-10-16 10:36 bouvigne history fixed a wrong bracket causing >=256 CBR not to be AQ added ABR>=256 S as AQ, consistent with CBR >=256S updated testcases * frontend/parse.c, include/lame.h, libmp3lame/lame.c, add --scale-l and --scale-r options Requested by: fasttimes@mochamail.com Written by: mp3gain@hotmail.com update from "lame --longhelp" add --scale-l, --scale-r * doc/html/index.html, doc/html/switchs.html: a few doc updates - not yet finished *** empty log message *** * libmp3lame/encoder.c, libmp3lame/util.h: fix misunderstanding of gfc->padding * libmp3lame/VbrTag.c, libmp3lame/lame.c: consequence, it's "LAME Tag", longhelp said Xing header consequence, it's "LAME Tag" added 13 " if (silent < 10) "s to make "lame --decode --quiet" really silent. there's still a LF I can't locate though... removed experimental X from --r3mix adds delays/padding to tag, no range check and tested exclusively on windows test commit CVS to fix --r3mix size increase (robert identified is as -X being used) bump alpha version Use the official enum names from lame.h instead of numbers or defines. athtype fix added notes about scaling. there are some inconsistencies in the API: lame_encode_buffer() takes short int as input, range +/- 32768 lame_encode_float() takes float, but data must be in the range +/- 32768 lame_encode_double() takes double, but data must be in the range +/- 32768 lame_encode_int() takes int, but data must be in the range of 'int' for 32bit ints, this is +/- 2147483684 updated error messages we now support 8,16,24 and 32 bit input added support for 24 and 32 bit when not using libsndfile. jd had already added the code to do this, just had to make the libsndfile --bitwidth option available when not using libsndfile. Also updated unpack_read_samples to support 32bit. Could not test this since I dont have any 24 bit files, and sox cant seem to create them. * libmp3lame/lame.c, libmp3lame/machine.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/vbrquantize.c: using -Xn similar to the old code to select different noise measurings with the newer VBR code. the actual mapping is not final yet. ath 4 switches to ath 2 in cbr mode made NsPsytune stopping using ath0 as default, as everyone is overriding the athwhen using nspsytune makefile.msvc and projects on par? * libmp3lame/VbrTag.c, libmp3lame/VbrTag.h: fixes for Solaris 8 / add missing include * frontend/main.c, frontend/parse.c: added nogap patch from Gian-Carlo Pascutto. lame --nogapout --nogap file1.wav file2.wav file3.wav ... untested. ran autoconf to make a new configure script split Vorbis support into two pieces: 1. HAVE_VORBIS (decoding support). This code still works! (at least it compiles - I have't actually run it). Can be enabled with ./configure --with-vorbis. Changed the default in configure.in to define HAVE_VORBIS 2. HAVE_VORBIS_ENCODER This is the code which hasn't compiled since Vorbis beta1. Mainly because how you specify varous encoding "modes" has been changed. It's probably not to much work to get this working, but there is no reason for this to be in LAME. * libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/lame.c: Music CRC computed on the fly. Code stubs in place for decoding on the fly. * libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/util.h: started work to put in the ability to compute MusicCRC on the fly, as well as decoding on the fly. removed some unused variable cpu affinity back to #define _WIN32 process affinity patch is back more small updated to USAGE updated USAGE to reflect Dmitry's -B comments harmonization between makefile and project 3dnow fft assembly * frontend/main.c, testcase.mp3: updated testcases (lowpass added to Info tag?) disabled CPU affinity code. should only be in a #ifdef NT-system, but I dont know what the ifdef should be. corrected dsp files for VC++. Should work also under VC5, but not tested. Please report success/error * libmp3lame/VbrTag.c, libmp3lame/lame.c: default lowpass stored in info tag updated testcase.mp3 Fix memory hole (allocation from psymodel_init()). Found by: Michael Fink * libmp3lame/VbrTag.c, libmp3lame/util.c: moved a 1M array from stack to heap in VbrTag.c Some OS, when launching LAME on a seperate thread, allocate a tine (128K?) stack. moving this to the heap is an ugly solution (requires a malloc() and free()) but lets see if it fixes the reported segfaults. more code related to putting encoder padding into VBR tag added new call to API, lame_get_encoder_padding() which returns the amount of padding appended to the input during encoding. moved MSVC cpu affinity code to the top of disable_FPE() regen Bugfix for libffm (Alpha architecture). Submitted by: Simon Burge added a note about LAME being threadsave to the HACKING file. put Todd Richmond's EAC/lame SMP fix in util.c, with all the messy code for setting floating point exceptions. I put this in the #if defined(_MSC_VER) block, so it should only affect people using MSVC. Changed id string from 'Xing' to 'Info' for CBR files only 2001-09-08 18:40 potsticker * frontend/main.c, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h: Don't write Lame Tag status message if --quiet * libmp3lame/VbrTag.c, libmp3lame/VbrTag.h: Don't write Lame Tag status message if --quiet 2001-09-07 23:45 potsticker * frontend/parse.c, libmp3lame/VbrTag.c, libmp3lame/lame.c: Write Lame Tag for all files (unless -t switch used) Implemented most of Lame Tag rev 0 (but no 'replay gain' yet) * libmp3lame/VbrTag.c, libmp3lame/VbrTag.h: Implemented most of Lame Tag rev 0 (but no 'replay gain' yet) Moved some macro definitions into id3tag.h (referenced in VbrTag.c) cr/lf patch 2001-09-02 20:08 potsticker * libmp3lame/id3tag.c, libmp3lame/id3tag.h: Moved some macro definitions into id3tag.h (referenced in VbrTag.c) lowered tolerence in an assert() in the lowpass filtering routine. * libmp3lame/VbrTag.c, libmp3lame/util.h: I hope it's fixed now first implementation of lame Xvbr tag from J Dee msfix changes. forgot to commit them yesterday OS/2 mods from slaughter@malaconet.org (in principle, I had to apply them by hand and modified it a little bit) oops... wrong gtk-config regen (+update to automake 1.5) 2001-08-27 21:06 aleidinger * Dll/Makefile.in, Makefile.in, aclocal.m4, debian/Makefile.in, update to automake 1.5 USE_FFT3DN died some time ago fixes for the update and diff target if you build in a seperate directory Bump MAX_NOGAP from 20 to 40, I wanted to make 34 gapless mp3s. * Makefile.am.global, config.guess, config.sub, depcomp, misc/depcomp, missing, mkinstalldirs, mpglib/depcomp: update to automake 1.5 * DEFINES, Dll/MP3EncDll.dsp, Makefile.B32, Makefile.MSVC, remove USE_FFT3DN, this define died some time ago remove --malign-double completely USE_FFT3DN -> HAVE_NASM * USAGE, doc/html/switchs.html, frontend/parse.c: Submitted by: "DoC" (with minor changes by me) 2001-08-27 16:41 markt typo in man page fixed, new Lame.vbs from "Ralf Kempkens" removed -malign-double, based on Klemm's email. some missing quotes for AmigaOS section of configure.in, submitted by Fredrik Mellstrom (I cant beieve there are still people out there using an amiga :-) * mpglib/interface.c, mpglib/mpglib.h: replaced "look_for_xing" variable with more descriptive name "sync_bitstream". switching --vbr-new to mtrh * debian/changelog, debian/control, debian/lame-dev.docs, debian/lame.docs, debian/rules: Debian packaging modifications. * Dll/BladeMP3EncDLL.c, Dll/MP3EncDll.dsp: Updated new R3Mix settings, use lame get/set function and version info so I got rid of the version.h and lame_global_flag.h include files adding Darin Morrison (author of dm presets) update of abx.c by Frank Klemm making -Z a truely toggling switch reordering the longhelp options list dropping --extrahelp dropped a nagging message for --vbr-mtrh (nspsytune tuned for ...) update for --r3mix by Roel some good presets tuned by Dibrom after die hard listening tests --dm-preset {standard,xtreme,insane,metal} and a switch to modify the --ns-treble setting for sfb21 by --ns-sfb21 x regen - remove optimizations which get already switched on by -O2 or better bump version to 3.90 Added NASM release build option * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h, Dll/Example.cpp, Dll/MP3EncDll.dsp: Added NASM build option, added Very High Quality option BUG fix in "on_pe", was allocating often more than the absolute limit of 4095 bits per granule attention: testcases are most likely broken now! * libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/vbrquantize.c, libmp3lame/version.h: VBR mtrh related, bring --remix near to --r3mix bitrate wise Michel SUCH, wildcard expansion for nogap using the OS/2 shell regen gcc 3.0 fix from Daniel T. Chen 2001-07-23 08:13 aleidinger * Dll/Makefile.in, Makefile.am.global, Makefile.in, aclocal.m4, config.guess, config.sub, configure, debian/Makefile.in, misc/Makefile.in, mpglib/Makefile.in: update to automake 1.4-p5 * libmp3lame/quantize.c, libmp3lame/vbrquantize.c: small fixes Pushed the maximum auto-level adjustment of the ATH from 20 dB to 32 dB small speed up for --vbr-old * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/vbrquantize.c, libmp3lame/version.h: 1) defaulted the old -Y code for --vbr-old 2) new behaviour of -Y: turns off sfb21 noise shaping (VBR) 3) some more tunings for --vbr-old regen - print a "please contact us" message for sparc*-sunos4* and *beos (theses parts of configure.in are perhaps not neccessary) vbr-mtrh related: encode sfb21, may bloat on heavy metal music update by Frank adding a new switch --allshort this one forces LAME to use short blocks on every granule useful for testing the short block masking abilities * libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/util.h, libmp3lame/version.h: first try to fix the short block threshold calculation BUG this patch tries to resolve the shortcommings for the short block threshold calculation using VBR. Applying this patch for CBR/ABR would break the testcases. It should not affect the vanilla --nspsy... too, maybe later. maxmp3buf was beeing ignored fixing the assertion failures mentioned by Albert Faber regenerated configure updated gcc 2.96 check to use -O instead of -O1 *** empty log message *** gcc 2.96 check updated repository to 3.90alpha updateded history file from web page cvs repository update updated to 3.89beta bug fix for --nspsytune minimum bits allocated was too low, resulting in assertion failures changing --vbr-new noise measuring back to its usual one unbreak CBR testcases. * frontend/get_audio.c, frontend/main.h, frontend/parse.c: patch from Nick Duffek for signed/unsigned and bitwidth options. defaulting --vbr-mtrh to -q2 = -h allow --vbr-{old,new} to select between different ATH autoadjust types too * libmp3lame/lame.c, libmp3lame/set_get.c: nspsytune related: now it is possible to turn the scalefac_feature off again giving --nspsytune -Z the change was necessary, because of the hard coded -Z * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/util.h: Restructured ATH auto-leveling code to fix bug for "--adapt-thres-type 1"; relaxed tuning for "--adapt-thres-type 2" for compromise with "--athtype 3" (the previous bit rate is still available with "--adapt-thres-level -1.25") * Makefile.MSVC, frontend/parse.c: fix for compiling mp3x on windows using Makefile.MSVC 2 new modes for --vbr-mtrh available by different -q n selections: -q0 truely max noise -q1 almost max noise revive --nssafejoint --ns-{alto,treble,bass} lame_set_exp_nspsytune is *not an on/off switch* patch for configure.in, replaced a bash specific loop, from Oswald Buddenhagen regen some hardware specific optimization options for gcc regen this is nasty, I want native nasm support in libtool, at least it works for me (sort of) * libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in: regen * libmp3lame/Makefile.am, libmp3lame/i386/Makefile.am: go back to let libtool compile liblameasmroutines, the static case was broken, now the libtool v1.4 case may be broken regen make the use of nasm a configure option Include portableio.h for the WriteBytes() and WriteBytesSwapped() functions. some comments updated adding two more contributors FLOAT8=float for IC let it work again * libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: BUG fix in inc_subblock gain, was amplifying at the wrong place this fix may break the testcases some unused parameters removed patch for DLL Project file by Dmitry * Makefile.MSVC, frontend/lametime.c, frontend/parse.c, mpglib/common.c: some fixes needed by the Borland Compiler BCC, first attempt to support BCC with Makefile.MSVC, DLL not supported yet, MP1 MP2 reencoding does not work with BCCcd lame (why?) fix letting Borland C++ compiler getting thru' again, Makefile.B32 is *not uptodate* BUG fix for mp1 and mp2 input, fixes problem introduced in Revision 1.63 update changelog regen we have a test subdir in cvs, force the test target to be out of date at every invocation of make change of the max frame size * misc/Lame.vbs, misc/lameGUI.html: updates from "Ralf Kempkens" added two new functions to return number of PCM samples buffererd but not encoded, and the number of bytes of mp3 data buffered but not output. also added some comments to mpglib/interface.c to make it easier to tell it to look for Xing headers in the middle of a bitstream. CPU feature detection for fft routines * libmp3lame/fft.c, libmp3lame/util.h: CPU feature autodetection for fft routines Robert's fix to init histgram data with --nogap. lame_reinit_bitstream() renamed lame_init_bitstream(), and it is called by lame_init_params(). It can also be called after a call to lame_encode_flush_nogap(). some fixes for VBR tags with --nogap option. fixed stdin bumped version to alpha 7 * libmp3lame/lame.c, libmp3lame/psymodel.c: added JD's loudness approximation to Naoki's duplicated psy routine as I defaulted JD's adapt stuff I was under the impression that he added his code to both ones, so... fix for nogap truncation call. When processing the last of the .wav files, we need to call lame_encode_flush() instead of lame_encode_flush_nogap(). LFN support for Win32: realized that it would be a good idea to release the search file handle after searching the filename nasm fix long file name support for Win32 systems works under Win95 using Intel compiler 4.5 / MSVC 4.2 not tested under NT, and not much tested anyway ;-) seems to be forgotten by the last committ old crc code removed from bitstream.c. I had added this in when looking for the xing/crc bug fix cygwin build, sort some includes * configure, frontend/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in: regen * libmp3lame/Makefile.am, libmp3lame/i386/Makefile.am: do not use libtool for the asm lib, libtool did not know about nasm - enable shared lib - disable asm routines - fix build of asm routines in the win32 case statically link libmp3lame to the frondends removed CRC error message fix for Xing/CRC problem. Xing toc data must start directly after sideinfo data, assuming no CRC. If CRC is set, then the Xing toc data must *still* start in the same location (since original Xing demo code does not check for CRC and modify the toc offset). * libmp3lame/bitstream.c, libmp3lame/lame.c: put old CRC routine back in (but disabled) added some comments about the DLL's non-standard use of libmp3lame.a Robert created lame_global_flags.h, so I'm adding it to Makefile.am, in the "noinst" section. - fixed Makefile.unix to let mp3rtp compile again (does it still work?) - had to move lame_global_flags structure into a file of its own, committed Robert's patch. lame_global_flags is gone :-) some more new API things * frontend/gtkanal.c, frontend/parse.c: converted rest of frontend code over to "new api" Tracked down a bug in lame_decoder. It was not correctly flushing the internal mpglib buffers when it hit EOF. Problem was most severe with low bitrate example. It the frame size was 32 bytes, only the first 1/3 of the file would be decoded and the reamining 2/3 of the entire file would be buffered inside mpglib. making the old VBR default in preparation for the next release added new version of Lame.vbs from "Ralf Kempkens" including a GUI/HTML interface. * frontend/get_audio.c, frontend/gtkanal.c, frontend/main.c, frontend/main.h: updated some comments related to restructering main.c for the --nogap option preliminary --nogap option added. --nogap file1 file2 file3 and it produces file1.mp3 file2.mp3 file3.mp3 problems: no id3tags, no vbr tags. fix so lametest.py doesn't crash if lame does not create an output file. fixed bug with lame_encode_flush_nogap routine *** empty log message *** --ath-adjust 1 (Gaby's original code) was disabled, any reasons for that JD? started updating frontend code to use the new API. unbreak (at least it compiles), more work needed Allow ATH auto-adjust code to begin at the minimum value on the leading frame Restored some ATH auto-adjust indentation and comments (altered since 3.88 in a code clean up) Choose asm-optimized FHT version if ARCH_X86 defined in fft.c * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: Added R3Mix quality setting sync my entry with the one at the webpages added note about mpglib i-stereo bug in TODO list. fixed typo in INSTALL file documented some variables in reservoir.c. Current status is: maxframesize = no restrictions if strict_ISO is defined, we use Gaby's less restrictive interpretation of the standard. see TODO version 1.30 for a user who has a hardware player which cannot handle 320kbps frames if the bit reservoir is used. I guess the final verdict is tough luck :-) print error message and fail if user selects error_protection (since this is currently broken) added some comments to HACKING on how to add a new option. updated API to reflect that all lame_set/get functions are now working. updated comments about lame_encode_flush_nogap() added lame_encode_flush_nogap(). This routine will flush all internal mp3 buffers, and pad the last frame with ancillary data so it is a complete mp3 frame. It will then set ResvSize to 0, so we can continue encoding. after a call to lame_encode_flush_nogap(), if we close the mp3 file and open a new one for the future data, then the two mp3 files should play back 'gapless' if they are first concatenated together. tweaks to VBR * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: Extended interface with VBR method selection Removed exit call(s) in error conditions, since these errors seems to be good recoverable * libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/util.h: small tweaks to the VBR codes * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/util.h, libmp3lame/version.h: started different bit-pressure strategies (VBR) regen force cygwin users to use "CC=gcc ./configure" Added support for non-compressed AIFF-C files in parse_aiff_header(). removed -pedantic gcc option. From the gcc man page: "There is no reason to use this option; it exists only to satisfy pedants". And there is a reason not to use it: It causes people to send me email asking if all the warning messages about c++ comments are ok. quick fix for a typo that turned off auto adjust code by accident, sorry made JD's ATH adapt stuff default for --vbr-mtrh some typings changed bitpressure strategy for VBR a bit use more digestible code in ATHformula_jd for a pre-release compiler bundled with a popular Linux distribution let the user select -qx for --vbr-mtrh, just to avoid useless e-mails * libmp3lame/lame.c, libmp3lame/quantize_pvt.c: just 5 minutes to add some more on the --verbose printing side history update of the default lowpass value. Will probably break some testcases * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/util.h: some more --verbose output typo fixed starting a very verbose print function about all internal settings, aiming more transparency for the experienced users * libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, libmp3lame/vbrquantize.c: some tunings still problems with fatboy.wav and ns.wav comments in the ath functions * libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/util.c, libmp3lame/util.h: fixing tonality problem for --vbr-mtrh trying to point out the real difference in l3xmin calculation with nspsytune and without it nspsytune & newer vbr compile fixes for Intel Compiler, dropped sfb21 early stopping for vbr-old (found differences) - Make the last few set/get functions functional. - Converted padding_type to an enum. - Correct some typos. - Adjust some lines to conform to the style of the majority of the file. TODO: - Search for XXX and do appropriate actions. - Search for typos (because of alot of cut&paste programming). update of --r3mix * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/vbrquantize.c: some desperate values for the fast mtrh VBR mode * libmp3lame/tools.h, libmp3lame/util.c: Added "--athtype 5" to better represent higher frequencies (14 - 19 kHz). Included supporting functions for quadratic interpolation. * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: some VBR-codeclean-up patch by Alexander Stumpf: - now works both with drag & drop (SFN) and from the 4DOS-Commandline (LFN) - Using wildcards when prozessing from mp3 to mp3 caused a loop - fixed - removed the mp3-extention test since LAME recognizes the input file fomat correctly for several versions now (i.e. no --mp3input neccessary anymore) bumped version number * libmp3lame/quantize.c, libmp3lame/vbrquantize.c: new -q2 mode for --vbr-mtrh change of max frame size * libmp3lame/encoder.c, libmp3lame/quantize_pvt.c, libmp3lame/util.c, libmp3lame/vbrquantize.c: --vbr-mtrh uses now -Y by default, some tweaks * libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, libmp3lame/util.c, libmp3lame/util.h: --experimentalY selects a different ATH adjustment - keeps original noise floor - affects high freqs more than low ones Added MorphOS recognition to configure script. removed mmx notes from README.B32 regen bugfix for gcc version detection bugfix for non x86 architectures with installed nasm, tested by Karl Pauls on Darwin removed 'disable_wave_header' variable from encoding library. It is in the frontend code only. added something to the TODO list. changed: "buffer[1]+i" code to "&buffer[1][i]" in get_audio.c. buffer[1]+i is clever, but it confused the maintainer of EAC enough to cause him to submit it as a bug report. * libmp3lame/lame.c, libmp3lame/util.c: *** empty log message *** update of the ath functions Fixed trailing data bug introduced with the 24 bit input code Add 24-bit PCM waveform input capability (with or without libsndfile), and glue code to preserve the functionality of routines that only handle up to 16-bit data. The changes support both little and big endian architectures. 2001-04-17 20:05 afaber * Dll/BladeMP3EncDLL.c, frontend/lame.dsp, libmp3lame/libmp3lame.dsp, mpglib/mpglib.dsp: Added MMX compile option auto adjusting ath shape for vbr on ath type 4 * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/psymodel.c: wrapped a few things inside of ifdef HAVE_GTK * libmp3lame/psymodel.c, libmp3lame/util.h: spread function is now packed into linear array. it reduces memory assumption and improves cache efficienty. now try to calculate the CRC of VBR header. * libmp3lame/bitstream.c, libmp3lame/bitstream.h: cleaned and improved CRC calculation method add some comments about converting int->enum use some of Marks set-functions, also without error checking (yet) * libmp3lame/encoder.c, libmp3lame/lame.c: *** empty log message *** * libmp3lame/machine.h, libmp3lame/quantize_pvt.c: portability enchancement(from sourceforge's LAME open discussion forum). quantize_pvt.c: changed 1e99 into FLOAT8_MAX machine.h: defined FLOAT8_MAX update of the lowpass values for vbr rh update of -d for joint stereo added an --adapt-thres-level option to allow adding an offset (in dB) to the point below which adaptive ATH level adjustment occurs added set/get functions to include/lame.h for option --adapt-thres-type added set/get functions to libmp3lame/set_get.c for option --adapt-thres-type, and used the set function in frontend * frontend/get_audio.c, test/lametest.py, testcase.mp3: updated testcase.mp3 removed some unused code from get_audio.c delete output mp3 file before running lame. (before, if lame crashes and does not write any output, the script would use the old output mp3 file, and if it hadn't changed, all tests would pass.) * libmp3lame/version.c, libmp3lame/version.h: Moved inclusion of lame.h to version.h for lame_version_t in prototype. added --adapt-thres-type 2 (auto-level adjustment of the ATH, with a frequency-based loudness approximation). added option, --adapt-thres-type 2 (auto-level adjustment of the ATH with a frequency-based loudness approximation). regen (do not enable vorbis by default) do not enable vorbis by default added code to more of the lame_set/lame_get functions- but without any error checking :-( Only 47 more to go! dont scale the input if scale=1.0. updated TODO list with some filtering stuff another MPEG2 bug found by: "Jiri Hajek" This code: > int sum_pe_MS = pe_MS[0][0] + pe_MS[0][1] + pe_MS[1][0] + pe_MS[1][1]; > int sum_pe_LR = pe [0][0] + pe [0][1] + pe [1][0] + pe [1][1]; does not work for MPEG2. now fixed. regen (version bump) Welcome to 3.89 bug in brhist_disp_total() for --freeformat bmode, br_frames = 0 (why?) so sum / br_frames would segfault. if br_frames == 0 , routine now just returns without printing anything. minor editing of TODO file updated version to 3.89 alpha 1 updated version to 3.88beta made ath type 2 the default. updated test cases added set_get.c to libmp3lame.dsp Fixed nspsytune. Removed the last remainings of KLEMM_43 in order to complet the Windows DLL compilation added a few more minor comments to resampling code removed some cruft from blackman() filtering routine Tested fixed resampling code. It seemed to work. Added a few comments. Also added documentation for "-w" for the usage function in lametest.py use the new MSGF API in Vorbis * frontend/get_audio.c, libmp3lame/vorbis_interface.c: use the new ERRORF API in Vorbis encoding (+fixes for needed API change to lame_decode_ogg_{initfile,fromfile}()) Put in fix for resampling bug in fill_buffer_resample. Code assumed it would be fed at least BLACKSIZE samples. For each input buffer, the code would save the last BLACKSIZE samples for use for the next call to fill_buffer_resample. If the code recieves less than blacksize samples, it will now shift in just as many new samples as are available into the save buffer. Not tested :-( regexp: MPG_MD_(.*) -> $1 add set_get.c to the build regen do not forget Makfile.am.global at "make dist" update regen with automake 1.4d instead of 1.4 added assert() to resampling code a few more comments added to psymodel.c * libmp3lame/psymodel.c, libmp3lame/tables.c: removed ISO TABLE reading code from psymodel.c, and ISO psy data from tables.c removed shortlived MINTHMM experiment updated USAGE. ran configuer with --enable-maintainer-mode which seems to have touched all this .in files, sorry about that... a few updates to API fixed a few compiler warnings and the assert in lame_get_mode(). added NOT_SET value to MPEG_mode_e - regen from Makefile.am (testupdate target) * frontend/depcomp, frontend/get_audio.c, frontend/gtkanal.c, frontend/main.c, frontend/mp3x.c, frontend/parse.c, frontend/timestatus.c: *.c: *** lame_set_quality(): should it check for <0 and >9 itself? (parse.c) depcomp: * libmp3lame/depcomp, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/util.c, libmp3lame/util.h: libmp3lame/encoder.c: - MPEG_mode (JOINT_STEREO) change (related to set/get functions change) libmp3lame/lame.c: - MPEG_mode (JOINT_STEREO/...) change (related to set/get functions change) libmp3lame/psymodel.c: - MPEG_mode (JOINT_STEREO/...) change (related to set/get functions change) libmp3lame/util.[ch]: libmp3lame/depcomp: regen - add set_get.c - set and get functions for the gfp a little more tuning of tot_energy for ATH adjust modified ATH adjustment code to use tot_ener returned by psy model and not the maximum of the PCM sample values. We need to replace this with JD's formula. We need to decide if this is really worth while. My preference is to take the most conservative ATH possible, but this seems to produce too high bitrates for VBR modes. (this may no longer be true not that masings are computed in all scalefactor bands) added 127 also, on recommendation of JD, to 8bit -> 16bit conversion routine fix from "J.D." for 8 bit input support. 'os.pathsep' changed to 'os.sep' For example, on unix: os.pathsep = ":" - the character that seperaters search paths in the PATH environment variable os.sep = "/" - the charcter that seperates directories - use OS independent path seperator - NOTABELS is now the default * libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c: code (disabled) to use minimum value when going from partition bands to scalefactor bands (instead of average value) * libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, testcase.mp3: Noise calculation: had to switch calculation of tot_noise and over_noise back to being done in db units. Multiply (to save the 22 log10() function calls) was overflowing. updated testcases to reflect changes updated testcase.mp3 for NOTABLES code NOTABLES enabled by default. Psycho acoustics computed in *all* scalefactor bands. cvs tag before this change: before_notables cvs tag after this change: notables The last commit before NOTABLES becomes the default. tagged with "before.notables" * libmp3lame/encoder.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/util.h: More prep work for enabling NOTABLES. Will now compute masking for all scalefactor bands * libmp3lame/psymodel.c, libmp3lame/util.c, testcase.mp3: Finished proper normalization of spreading function. updated testcases more tweaking of s3 normalization spreading function moved into seperate routine, s3_func(). s3 normalized so that: +inf / | s3 [ bark ] d(bark) = 1 / -inf which resulted in dividing the result by 0.66. This is the first step in fixing the long outstanding bug mentioned by Takehiro: s3[i][j] is normalized improperly for values of i near the partition band boundaries. For these values, the computed 'norm' is much too small since a lot of the data is missing, resulting in artificially increasing the spreading function (and thus the masking) --nspsytune: s3_l function is used with a normalization of .5 (instead of computing the norm). So I changed this to a .5*.66 to compensate for the above change. Next step: 1. s3[i][j] will be multiplied by the width (in barks) of the j'th partition band (about .35). Once this is done, we will not need to compute and divide by 'norm' later. 2. Make NOTABLES the default 3. compute psymodel all the way up to 22khz. added prototypes to lame.c (but functions not yet written) finished last of the prototypes changed to: gfp->num_samples = data_length / (channels * ((bits_per_sample+7) / 8)); thanks J.D.! added: lame_encode_buffer_sample_t, which is called by the following functions in the API: lame_encode_buffer (original, short int interface) lame_encode_buffer_float lame_encode_buffer_long get_audio.c: fixed num_samples computation for case when bits_per_sample < 8. (althouth this case is already trapped for earlier) lametest.py: slight change to reference mp3 filename generation so lametest.py can be run from another directory. * Makefile.am, doc/html/Makefile.in, doc/man/Makefile.in, frontend/get_audio.c, libmp3lame/i386/Makefile.in, testcase.mp3: error message about non-PCM wave files from "J.D." Added "make testupdate" to Makefile.am, which updates the test file in the CVS repository lame.h typo lame.c fix for possibility of calling lame_init_parms twice remove KLEMM_42 * Makefile.in, configure, frontend/Makefile.in, misc/Makefile.in: regen remove EXTRA_PROGRAMS on make clean remove testcase.new.mp3 on error display version of gcc fix typo in comment include machine/floatingpoint.h on FreeBSD * libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/lame.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/util.h: VbrTag.c fixed gfp/gfc typo lame.c made data flow analysis happier: there was a possible path to use channels before definition. Even though it would be an error following this path, but the compiler doesn't know it util.hc message functions are not intended to change gfc?!? takehiro.c fixed a warning bitstream.c fixed a warning Implmented Frank's excellent idea about error messages: gfc->errorf, gfc->msgf and gfc->debugf are all FILE *. default is stderr. If you want to disable all internal library messages, set these to NULL with lame_set_errorf(), lame_set_msgf() etc... For a GUI, you can set these to regular files, and then read the files and display the messages in an pop up window. Maybe the default should be NULL? plugging away at a few more prototypes little change to Roel's --r3mix setting, on request by Roel non RH_SEEKTABLE code removed from VbrTag.c removed to //include lines * frontend/get_audio.c, frontend/lametime.c: incomprehensible gobbledygook replaced by call to standard 'stat' function for file size. more prototypes added to lame.h useTemporal turned on by default --notemp option added. added more of the lame_get/lame_set prototypes to lame.h also added this: // I give up. Klemm has worn me down on this one... typedef lame_global_flags lame_t; lame.vbs changes submitted by "Paul Reedy" removed a klemm_42 from vorbis_interface.c klemm_42 enabled by default. This code uses a different formula to choose the lowpass filter. It takes into account stereo vs. jstereo (jstereo gets 25% more bandwidth). This has the effect of stereo 128kbps using a 14khz lowpass filter, which some people may not like. made allow_diff_short the default if mode=stereo and allow_diff_short has not been set to 0 or 1 by the calling program. addes these notes to lame_init_params() : * * We first have some complex code to determine bitrate, * output samplerate and mode. It is complicated by the fact * that we allow the user to set some or all of these parameters, * and need to determine best possible values for the rest of them: * * set some CPU related flags * check if we are mono->mono, stereo->mono or stereo->stereo * compute bitrate and output samplerate: * user may have set compression ratio * user may have set a bitrate * user may have set a output samplerate * set some options which depend on output samplerate * compute the actual compression ratio * set mode based on compression ratio * * The remaining code is much simpler - it just sets options * based on the mode & compression ratio: * * set allow_diff_short based on mode * select lowpass filter based on compression ratio & mode * set the bitrate index, and min/max bitrates for VBR modes * disable VBR tag if it is not appropriate * initialize the bitstream * initialize scalefac_band data * set sideinfo_len (based on channels, CRC, out_samplerate) * write an id3v2 tag into the bitstream * write VBR tag into the bitstream * set mpeg1/2 flag * estimate the number of frames (based on a lot of data) * * now we set more flags: * nspsytune: * see code * VBR modes * see code * CBR/ABR * see code removed VBR warning edited a few comments in psymodel.c Started some re-originization of psymodel.c created: psymodel_init() function, called by both psymodel and psymodel_ns. I was carefull to make sure no binary changes were introduced with --nspsytune. Modified both psymodel and psymodel_ns to return the energy in each channel. I'm going to request that the ATH level adjust be based on the energy comptuted by the psymodel, rather than computing a magnitude in encoder.c removed mode_fixed variable. If calling program selects a mode (mono, stereo, jstereo) then that mode is used, otherwise lame picks best mode to use. started adding more prototypes into lame.h: int lame_set_variable_name(lame_global_flags *, int) int lame_get_variable_name(lame_global_flags *) _get will return the value (instead of an error code) as suggested. _set will return an error code. But right now, the way lame works there is no error checking until lame_init_params() is called. This is because, for example, bitrate=135 is not an error if free_format=1, but it is an error for CBR. So many errors cannot be detected until all options are set. commented out a uint_64_t field in util.h to get lame to compile. Do we really need these types of variables? removed some stuff from lame.h. Note that many decisions have already been made about the library interface, so if you are planning on changing this, you need to check with me (mark taylor) first. In particular, there is going to be no file I/O, and all data is in machine order. (no endian stuff in the library). get Makefile.unix working again (tested for Linux, not for OS/2 etc.) --vbr-mtrh related take sfb21 into consideration for median search index transformation in select_kth_int() do not print the passed/failed statistic in the makeref case default quality handling fix lame.h has to be included before version.h - Patch (#103821) from guy_hutchison: Fixes compilation problem on systems with ncurses dir - add ChangeLog to Makefile.in * libmp3lame/encoder.h, libmp3lame/version.h: *** empty log message *** * doc/html/Makefile.am, doc/html/Makefile.in: - more documentation, seems to be partially truncated (Frank) bolean values (Frank) - fixes + docu for ATHformula_Frank() (Frank) (now dshow didn't needs to include version.h to get the numerical version of lame (dshow not changed, I let pgubanov do this)) - introduce some KLEMM_44 protected code (Frank) - rework formatting and documentation to be more (IMO much more) readable (no lines longer than 80 chars, consistent formatting, looks alot cleaner) Remove KLEMM_04, there was a previous commit which handled it, see ChangeLog. KLEMM 5,6,7 made the default & removed simplified lame_encoder_buffer_interleaved: it now always calls lame_encoder_buffer() * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: fix for --scale problem? made a new routine: fill_buffer() This is the generic routine used to copy data from the input buffer into lame's internal buffer, 'mfbuf[]'. It also calls the resample code if necessary, and the user selected rescaling code if necessary. added comment to vbr warning message re-added the warning about VBR modes. It seems to have been deleted at some point. This is because this website: http://www.kuro5hin.org/?op=displaystory;sid=2001/1/25/164540/759 is comparing Vorbis with lame -V4. While many people like the high bitrate VBR modes, lame -V4 is *often* of lower quality than CBR. - remove "--silent", lametest.py now handles this Aproved by: robert - allow relative paths in a more portable manner - should be more OS independand now - more file checks (readable/executable) - internally adds new option "--quiet" to the options This works on my system, it also should work on systems where the previous version worked. It's not as portable as it could be, search for XXX in the source. new options --silent and --quiet to be really quiet new option --verbose (default) to turn -S/--silent off again --vbr-mtrh and --vbr-new use now ATH type 2 for VBR modes it is allowed to use different block types in stereo mode (not yet joint stereo) bumped version to 3.88 alpha 10 * dshow/Makefile.am, dshow/Makefile.in: Add recently added files to the makefile. gfp is sometimes zero in CEncoder::Encode() - why??? * libmp3lame/pcm.c, libmp3lame/pcm.h: New code from Frank, some needed parts in different files aren't commited yet, they produce huge differences with lametest.py even if KLEMM_44 isn't defined. -> KLEMM_44 (new API + resampling) isn't usable yet - use "/usr/bin/env python" instead of "/usr/bin/python" in shebang line (portability) - use "-l" instead of "--lines" for wc (portability, has to run on every IEEE 1003.2 ("POSIX.2") compliant system) - bugfix, check for lame2 instead for lame1 in the lame2 part (Note: the entire test didn't work for me if I use e.g. ./lametest.py XXX.op ../../testcases/XXX ../../build.org/frontend/lame ...) * dshow/aboutprp.cpp, dshow/aboutprp.h: Elecard copyrigth added (executives need it for some reason) * dshow/Mpegac.cpp, dshow/Property.rc, dshow/UIDS.H, dshow/dshow.dsp, dshow/dshow.dsw, dshow/elogo.ico, dshow/resource.h: Some stability improvements + Elecard copyrigth added (executives need it for some reason) added basic.html to cvs STDC_HEADERS defined in project settings mono handling in encode_buffer_interleaved caused access violation - fixed Now we have a ChangeLog, generated from the output of "cvs log" Header for the ChangeLog, not included at "make dist" remove Makefile.MSVC, robert seems to keep it up to date try to unbreak it, add configMS.h -> config.h (untested) add USE_FFT3DN * add some more info how to use some advanced features of our configure script * add some info for Cygwin users (use configure) * add some info about faster code with nasm added -V1 to Roel's --remix preset, I assume it was missing by accident * Dll/Makefile.in, Makefile.am.global, Makefile.in, aclocal.m4, configure, configure.in, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, use new automake 1.4d (bugfixes) * libmp3lame/encoder.c, libmp3lame/util.h: tuning of the auto ath adjustment for --vbr-mtrh mode patch by Roel: tweaking his ATH modification (--athtype 3) fixed typo in parse.c added a lot of documentation on the psycho acoustics to the top of psymodel.c * mpglib/common.c, mpglib/common.h, mpglib/interface.c: improved head_check() function: When resyncing data stream, only look for headers of the same layer of the previous frames. i.e. dont allow layer 2 and layer 3 frames in the same stream. * frontend/get_audio.c, frontend/parse.c: added the --r3mix option fixed bug with --decoder-mp3delay option added error message for non-8 and 16 bit input first of all: this patch shows no difference in the CBR/ABR test - made athtype 3 default for VBR modes, 1 still default for CBR/ABR modes - made athadjust default for VBR modes, CBR/ABR modes don't need it - removed --athadjust switch, was only temporally solution - collected all spreaded ATH settings into ATH_t struct * doc/html/contributors.html, doc/html/history.html, doc/html/index.html, doc/html/node6.html, doc/html/switchs.html: new html docs from Gabriel print total pass/fail message at end patch by Gaby: allow ATH adjust for the ATH only modes too update to the VBR python options file * libmp3lame/encoder.c, libmp3lame/vbrquantize.c: all patches --vbr-mtrh related encoder.c: - made a variant of Gaby's auto ATH adjust the default vbrquantize.c: - some small code moves - added some safety margin to the global gain * libmp3lame/psymodel.c, libmp3lame/vbrquantize.c: we should not try to hard to get high freqs thru' so I will let --vbr-mtrh as is. It seems to give reasonable file sizes again, even with Frank's ATH. re-check-in of Gaby's ATH auto adjustment code. You need to specify --athadjust to get this SUBSTANTIALLY QUALITY IMPROVEMENT quote: "Also, we already have gfc->ath_lower (specified in db). No reason to add another variable which does the same thing, and does not even use the same units." That is not true, there is actually no gfc->ath_lower in dB. We have a gfp->ATHlower in dB. But this is of a totally different meaning. Added warning about using VBR modes. This is because this website: http://www.kuro5hin.org/?op=displaystory;sid=2001/1/25/164540/759 is comparing Vorbis with lame -V4. While many people like the high bitrate VBR modes, lame -V4 is *often* of lower quality than CBR. Reverted part of last tweaks of nspsytune. updated HACKING with directions on how to run the lametest.py python script * test, test/CBRABR.op, test/VBR.op, test/lametest.py, test/nores.op: Adding a python script used for testing, along with some sample options files. reverted encoder.c and quantize_pvt.c back to 13:00 3 Feb 2001. These modifications broke my test cases. Any such changes need aproval first. Also, we already have gfc->ath_lower (specified in db). No reason to add another variable which does the same thing, and does not even use the same units. MPG_MD_LR_LR define was moved, set mode_ext to 0 instead (since we don't get that info anyway). parse.c: small change in default behaviour for --vbr-mtrh lame.c: it makes no sense for a sfb21 extra at sample frequencies below 44.1 kHz vbrquantize.c: oops, last commit was a merger from a wrong branch of mine Enabled auto-adjust ATH for nspsytune. Tweaked nspsytune. * libmp3lame/quantize_pvt.c, libmp3lame/version.h: bumped version to alpha 9 some clean-up * libmp3lame/encoder.c, libmp3lame/quantize_pvt.c, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: patch by Gabriel Bouvigne: auto adjust of ATH for low volume tracks a big improvement in quality! therefore on by default patch by Robert Hegemann: further improvement of --vbr-mtrh mode * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c: --vbr-mtrh tweaks bugfix fix a typo I introduced by my last commit * Dll/Makefile.in, Makefile.am.global, Makefile.in, acconfig.h, acinclude.m4, aclocal.m4, config.h.in, configMS.h, configure, configure.in, debian/Makefile.in, depcomp, doc/Makefile.in, - config*/Makefile*/ac*: * tests for *int*_t * test for 80 bit floats (for speed optimizations) * add pcm.* to the makefile * removed resample.[ch] from the makefile * depend upon automake 1.4b * fix in check for ccc (submitted by nold via the sourceforge patch page at the lame project page, patch id #103507) * something I may have forgotten - depcomp: fixed a design flaw in VBR_iteration_loop() I'm responsible for. affects quality! * libmp3lame/lame.c, libmp3lame/quantize_pvt.c, libmp3lame/vbrquantize.c: tuning of --vbr-mtrh mode patch by Gaby: changed --athlower to accept floats * libmp3lame/psymodel.c, libmp3lame/util.c: psymodel.c: fixing compile problem (was: M_LN10 undefined) util.c: Roel's modification to Gaby's ATH, new: --athtype 3 --vbr-mtrh and --vbr-new use now the faster and sloppier scalefactor-band noise calculation with quality settings -q 3...9 * libmp3lame/quantize.h, libmp3lame/util.h: oops, compile problem fix * libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/vbrquantize.c: magic number 4095 and 4096 is removed make temporal masking effect strong. debug message is removed :) experimental temporal masking support. "--temporal" option to use this. tuning of --vbr-mtrh VBR mode update by Frank: some further endings and audio formats found and fixed another BUG caused by the "bit optimization." patch * libmp3lame/pcm.c, libmp3lame/pcm.h: updates by Frank small config.h related tunings quick-fix for code that was broken by Takehiro's last "bit optimization." in function calc_xmin(), quantize_pvt.c bit optimization. Bugfix of nspsytune. VBR was always enabled, even when the client did not ask for it remove trailing garbage * libmp3lame/psymodel.c, libmp3lame/quantize.c: Tweaked nspsytune. * Dll/Makefile.in, Makefile.in, configure, debian/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/psymodel.c, fixed bug preventing -m a mode from working. ran autoconf which changed all the Makefile.in's * libmp3lame/pcm.c, libmp3lame/pcm.h, libmp3lame/vorbis_interface.c: patches by Frank: vorbis_interface: was/is broken since a long time pcm.[ch]: fixing some transfer errors (email) Fixed problems with writing the Xing MP3 header (gfc->internal_flags structure was already freed, while it was needed to write the Xing MP3 tag) * libmp3lame/pcm.c, libmp3lame/pcm.h: patches by Frank: scalar.nas - new SIMD assembler routines resample.[ch] - removed pcm.[ch] - new, containing resampling routines and more version.c - some clean up 2001-01-21 19:07 robert * libmp3lame/i386/scalar.nas, libmp3lame/resample.c, libmp3lame/resample.h, libmp3lame/version.c: patches by Frank: scalar.nas - new SIMD assembler routines resample.[ch] - removed pcm.[ch] - new, containing resampling routines and more version.c - some clean up it's always a good idea to include its own header file patch by Gaby: I changed a file from the 19/01 cvs (I added an ath balanced between the original one and Frank's one on the option --athtype 2) * libmp3lame/encoder.c, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c: Improved reservoir handling(nspsytune). allow "--athlower n" to modify the ATH for sfb21 add config.h to the clean target bugfix (please report if it's broken, I can't test the config.h target) additional fixes * libmp3lame/VbrTag.c, libmp3lame/util.c, libmp3lame/util.h: RH_SEEK_TABLE enables a different method of generating TOC entries in Xing VBR header. now enabled! PLEASE TEST TRY IT It should fix the problem poeple reported who encode radio shows or alike which last a few hours. Another advantage is, it will not steadily increase LAME's memory footprint while running. Reverted the final change. It degraded encoded quality of gspi*.wav. Tweaked nspsytune. try to fix the broken Makefile after latest configurification + replaced M_SQRT2 by SQRT2 which is defined in util.h + replaced "=-" by "= -" to avoid confusion with the turned some defines for system include files on fixed typo, sorry * Dll/Makefile.am, Dll/Makefile.in, Makefile.am, Makefile.am.global, Makefile.in, config.h.in, configMS.h, configure, configure.in, debian/Makefile.am, debian/Makefile.in, automake/autoconf cleanup and enhancement * libmp3lame/encoder.c, libmp3lame/psymodel.c, libmp3lame/util.h: More cleanups and bugfixes of --nspsytune. remove node[57].html Raised track limit from 99 to 255 per user requests. more RH_AMP clean up 2001-01-15 09:00 gramps * doc/html/id3.html, frontend/parse.c: Raised track limit from 99 to 255 per user requests. - Simplified prologue of all public functions, removing intermediate "spec" variable, and assuming (like the rest of LAME) that gfp is never null. - Fixed a stupid sizeof bug (mine) in "id3tag_init". - Raised track limit from 99 to 255 per user requests. - No longer write full text of genre in version 2 tag. Now write more cannonical "(num)" format where "num" is the text version of the genre number, more closely following the updated ID3v2.3 spec and usage in id3lib. - Now use id3lib-compatible bogus language descriptor "XXX" in version 2 - Changed order of frames written in version 2 tag to match version 1 tag. - Restored some of Frank's optimizations. - Fixed LAME URL. - Reworded some comments and fixed misspellings. - Moved "local_strcasecmp" back into its original position. - Some small reformatting to match original file. - Changed "highest" to "higher" to describe recommended quality setting in - Changed "CBR" to "VBR" to correct misspelling in variable bit rate Removed dependency on obsolete node5.html and node7.html. documentation of -q parameter in USAGE and lame --longhelp * doc/html/node5.html, doc/html/node7.html: removed as per Gaby * libmp3lame/lame.c, libmp3lame/quantize.c: created new routine lame_init_qval() which does all the gfp->quality related settings. Cleaned up some more RH_AMP code: The only way to enable scalefac_scale right now is with -Z or --nspsytune. updated test case (Takehiro fixed a bug which I introduced, which changes test cases). 2001-01-14 17:28 aleidinger * analyzer: obsolete * DEFINES, Dll/Makefile.am, Dll/Makefile.in, Makefile.in, aclocal.m4, config.guess, config.sub, configure, configure.in, debian/Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, frontend/depcomp, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/depcomp, libmp3lame/i386/Makefile.in, misc/Makefile.in, misc/depcomp, missing, mkinstalldirs, DEFINES: remove obsolete defines configure*: minor cleanup Makefile*: - minor cleanup - use automake 2.14b Added files: needed for new automake rest: updated automake files there are encoders with different delays on different channels (Frank) Enabled scalefac_scale if --nspsytune is specified. fixed new amp_scalefac_bands (it may use "trigger" variable without any initialization) minor bug fix. when subblock gain=1 and scalefactor is -1(means no need to calculate), LAME will try to check the quantization with meanless scalefactor combination. subblock_gain is 3-bit and its limit is 7, not 8. oops, conflicts are removed * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: to store the distortion into III_psy_xmin structure, not simple array. this may make array pointer calculation easier and bring some speed up. * libmp3lame/encoder.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h: Cleanup and small speed optimization of --nspsytune. one minor update to the API file * libmp3lame/lame.c, libmp3lame/quantize.c, testcase.mp3: made a new, simpler unified amp_scalefac_bands(): * distort[] = noise/masking * distort[] > 1 ==> noise is not masked * distort[] < 1 ==> noise is masked * max_dist = maximum value of distort[] * * Three algorithms: * noise_shaping_amp * 0 Amplify all bands with distort[]>1. * * 1 Amplify all bands with distort[] >= max_dist^(.5); * ( 50% in the db scale) * * 2 Amplify first band with distort[] >= max_dist; * * * For algorithms 0 and 1, if max_dist < 1, then amplify all bands * with distort[] >= .95*max_dist. This is to make sure we always * amplify at least one band. * noise_shaping_amp=0 -q3 .. -q9 noise_shaping_amp=1 -q2 noise_shaping_amp=2 -q1, -q0 --nspsytune was using what is now noise_shaping_amp=2, but the only way to get this now is to use --nspsytune -q1. Naoki: is this a problem? I also defaulted the clever RH_AMP stoping criterion in outer_loop. * libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: some tuning of VBR masking_lower because of new ATH function. Disabled VBR_q based lowering of ATH. Is this still needed? You can always achieve the same effect with --athlower option. * Dll/Makefile.in, Makefile.am, Makefile.in, configure, configure.in, debian/Makefile.am, debian/Makefile.in, "make dist" related: - add debian subdir - add missing files different builddir related: - change argument to -l option for nasm * frontend/Makefile.in.old, libmp3lame/Makefile.in.old: obsolete bit coding hack and cleanup * Dll/Makefile.in, Makefile.in, doc/Makefile.in, automake generated * libmp3lame/fft.c, libmp3lame/i386/Makefile.am, libmp3lame/i386/fft3dn.nas: now LAME supports 3dnow! fft Removed (char*) cast in lame_encode_buffer() call * debian/changelog, debian/control, debian/copyright, debian/lame-dev.docs, debian/lame-dev.files, debian/lame-extras.files, debian/lame.docs, debian/lame.files, debian/rules: added debian files from Ingo Saitz * debian/cron.d.ex, debian/dirs, debian/docs, debian/emacsen-install.ex, debian/emacsen-remove.ex, debian/emacsen-startup.ex, debian/ex.doc-base.package, debian/files, debian/init.d.ex, debian/manpage.1.ex, debian/manpage.sgml.ex, debian/menu.ex, debian/postinst.debhelper, debian/postinst.ex, debian/postrm.ex, debian/preinst.ex, debian/prerm.debhelper, debian/prerm.ex, debian/substvars, debian/watch.ex: New Debian package from Ingo Saitz removed README.Debian further improvements, e.g. reduced latency (Frank) updated mp3rtp.c and mp3x.c to use lame_global_flags *lame_init() (lame allocates storage for lame_global_flags) rather than lame_init_old(&gf) which required calling program to instantiate gf. Now we need to start writing one routine for every parameter: lame_set_bitrate lame_set_num_channels etc... work around for a bug in VC (Todd Richmond) bugfixes removed KLEMM_12, on by default Roberts VBR code: speed improvement for vbr-mtrh (ping pong patch, OKed by Mark) * frontend/portableio.c, frontend/timestatus.c: chage to KLEMM-36 from Frank undefined variable (last = 0, line 214) in timestatis.c commented out. fixed some dimensions in the funtion prototype of l3para_read Applied Frank's patch (from mp3encoder) to timestatus.c with -R. I hope I didn't undo this by mistake! added a brhist_jump_back() to timestatus_klemm(). sent to me by Magnus Holmgren. added the "-ma" option. Ultimate goal: 8 kbps Mono 16- 96 kbps Intensity Stereo (if available, otherwise Joint Stereo) 112-128 kbps Joint Stereo -mj 160-192 kbps something between -mj and -ms 224-320 kbps Independent Stereo -ms currently enables KLEMM_12. KLEMM_12 is gone. Don\'t change floatingpoint mask for FreeBSD on Alpha hardware, obtained from FreeBSD-Ports cleanup, no functional change fix *.dsw new version of abc.c (Frank) * frontend/mp3rtp.c, frontend/mp3x.c: global variables used by frontend code are now instantiated in parse.c. Before, the were defined external in main.h, and instantiated in the frontend, meaning they had to appear in mp3x.c, main.c and mp3rtp.c we need to get rid of these! more tweaks to the --decode-mp3delay option * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/util.h: added a variable, noise_shaping_amp. It does nothing right now. * frontend/main.c, frontend/main.h, frontend/parse.c: added a undocumented option --decode-mp3delay to allow someone to adjust the number of samples lame --decode will truncate. David Robinson requirested this since he didn't like that lame --decode would truncate 1106 samples (assuming a encoder delay of 576) since BladeEnc has an encoder delay of only 528.) main.c: uses lame_init() instead of lame_init_old(). util.c: added frank's changes: 32 point filter instead of 19. prep work for frank's new resampling/filtering code. updated test cases. * libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize_pvt.c, libmp3lame/util.c: ATHformula modifed to work in Hz instead of Khz. Minor change to a bunch of routines + regeneration of test cases. updated testcase Switched to the Blackman window for the FFT energy estimator. This is just to merge some nspsytune code into default Backed out some large changes done in November which introduced at least two bugs. Also fixed other older bug in id3tag_write_v2. more prep work to remove all psycho acoustic tables * libmp3lame/VbrTag.h, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/psymodel.c: added formulas to replace the last of the table data. some changes to reflect that Xing VBR header parsing code has been moved into mpglib * mpglib/interface.c, mpglib/mpglib.h: added XingVBR header parsing code * frontend/get_audio.c, frontend/gtkanal.c: fixed bug in frame analyzer when analyzing mp3 files. frame counter incremented too soon. This was introduced when someone (maybe me, but I dont remember!) replaced the use of gfp->frameNum with a global variable limited in scope to just gtkanal.c get_audio.c: removed VBR Xing header checking code. this has been moved into mpglib. obsolete misc/abx.c: (Frank Klemm) - level adjustment - clean up - A-B repeat ("chunks") Makefile.*: - nuke NOTERMCAP, it's HAVE_TERMCAP now (defined where neccessary, please report slipped in breakage) (frontend|mp3x|libmp3lame|mpglib).dsp: - copy configMS.h config.h (Todd Richmond) - unbreak (Todd Richmond) - nuke NOTERMCAP - change HAVE([A-Z]*) to HAVE_$1 *.c: - get rid of configMS.h, we finally have support in *.dsp Makefile.{unix,DJGPP}: Bugfixes (Includes) Makefile.am: follow the move of some scripts to misc *: add dmalloc support (configure --with-dmalloc) (it seems we have a memleak somewhere, I will have a closer look soon) * libmp3lame/encoder.c, libmp3lame/psymodel.c: Tweaking and bugfix of --nspsytune. typo in read_samples_pcm fixed minor edits to API and HACKING moved some more scripts into 'misc' directory * INSTALL, README.WINGTK, USAGE, auenc, frontend/README.Win32, misc/auenc, misc/mlame, mlame: moved scripts into misc directory moved README.Win32 (which described compiling mp3x under windows) back to its original name, README.WINGTK minor updates to INSTALL and USAGE - listen to the difference of both signals - highlighting of "errors" - DC canceling - support for monaural signals - cleanup - bugfixes - correct shell quoting Tweaked --nspsytune. now with cross correlation (Frank) - files to test have to have the same samplerate (Frank) - check for correct number of arguments (Alexander) Patches for KLEMM_43 protected code Ping pong #3, OKed by Mark. simplifed the LICENSE file describing how to use LAME in commercial software updated README files with new configure information. debuging statement added to interface.c, then removed. * frontend/brhist.c, frontend/get_audio.c: more size_t's removed * frontend/main.c, frontend/mp3rtp.c, frontend/parse.c, frontend/rtp.c, frontend/rtp.h: removed some size_t's. Added some windows code to rtp.c/mp3rtp.c: It is supposed to be much improved: LAME is really great project. However, RTP code for multicasting isn't very good. I've attached some modification, and tested it on Win NT4 and Win2K with FreeAmp on ordinary 10 and 100 Mbit Ethernet with encoding in neverending loop. It was running one week w/o any probs. I would like to please you to not include my name anywhere (there are several reason why, at the moment). However, code is very MSVC specific, so it is commented out with #if 0. Most of the code was added to the end of rtp.c. deleted stupid C++ typecasts. LAME is written in C. integer arguments to fwrite() do not need typecasts. * libmp3lame/lame.c, libmp3lame/psymodel.c: 1. Old ATH formula is now default for --nspsytune. 2. Tweaked a parameter of --nspsytune. 3. Minor code cleanup. * Dll/Makefile.in, Makefile.in, configure, doc/Makefile.in, regen force nasm to generate coff output when building under cygwin (Egor Duga) * Dll/Makefile.in, Makefile.in, config.h.in, configure, regen configure.in: - determine the size of various types at configure time - add --enable-debug=anoying configMS.h: - add SIZEOF_... defines, see configure.in Makefile.unix: - bugfix from Robert (shame on me) Makefile.DJGPP: - add cpu_feat.nas and scalar.nas to the build with NASM Submitted by Egor Duda (thank you, works great): * Makefile.am: add $(EXEEXT) to executables for cygwin build * Makefile.am: take source .wav file from srcdir * configure.in: require autoconf 2.13 * configure.in: check for executable files extension * frontend/Makefile.am: use builddir to get autogenerated headers and libraries from, in case we're doing build in separate directory; take normal headers from srcdir instead of current. * libmp3lame/Makefile.am: ditto * libmp3lame/i386/Makefile.am: ditto * mpglib/Makefile.am: ditto Minor bugfix. Minor bugfix of --nspsytune. (forgot to merge.) Added option --athtype which selects ATH formula. Some major changes to --nspsytune. 1. --nspsytune doesn't use pe. 2. MS psymodel is modified. Added new option --nssafejoint. 3. some more tunings of short block preecho control. * libmp3lame/lame.c, libmp3lame/util.c: Latest checkin from Alex include an rewritten 'Bitrate()' routine. This breaks the --abr code, since new routine considers a bitrate of 0 invalid. Now fixed. added mlame_corr.c to the EXTRA_DIST line of Makefile.am tries to include every change before the CVS rollback which didn't changes output redo gfc->stereo -> gfc->channels_out conversation updated info regarding the MAD decoder applied patch for cygwin FPE stuff * USAGE, configure, configure.in, frontend/get_audio.c, frontend/get_audio.h, include/lame.h, libmp3lame/mpglib_interface.c, misc/mlame_corr.c, mlame_corr.c: configure: removed all the debug warning flags. it was impossible to find real problems when compiling in debug mode. moved mlame_corr.c into 'misc' directory removed some 'size_t' and 'unsigned' from get_audio.c made mp3buffer 'unsigned char*' for the mpglib interface routines. more portability fixes from Fredrik Mellstrom use sh instead of bash portability patch from Fredrik Mellstrom update add scalar.nas * Dll/Makefile.in, configure, doc/Makefile.in, regen play ping-pong with some files (we're now at 2000-12-03 again), ok'ed by Mark restored DEFINES. Sorry Alexendar - I tried to only revert the *.c and *.h files to their Nov 21 values (because of test case problems) but I was unable to get this to work. I was lazy and reverted entire repository back to Nov 21. trying to restore DEFINES add scalar.nas to build * dshow/PropPage.cpp, dshow/PropPage.h: Target bitrate fix * dshow/Mpegac.cpp, dshow/Mpegac.def, dshow/Mpegac.h, dshow/PropPage_adv.cpp, dshow/PropPage_adv.h, dshow/Property.rc, dshow/README, dshow/REG.CPP, dshow/REG.H, dshow/UIDS.H, dshow/dshow.dsp, dshow/iaudioprops.h, dshow/resource.h: CR/LF fix * libmp3lame/util.c, testcase.mp3: KLEMM_01 defaulted. This enables the new ATH formula. * libmp3lame/tables.c, libmp3lame/tables.h: huffmantab: int changed back to short. * DEFINES, Dll/Makefile.in, Makefile.B32, Makefile.MSVC, Makefile.in, config.h.in, configMS.h, configure, configure.in, libmp3lame/fft.h, libmp3lame/i386/Makefile.am, libmp3lame/i386/Makefile.in, libmp3lame/i386/cpu_feat.nas, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/newmdct.h, libmp3lame/pcm.c, libmp3lame/pcm.h, libmp3lame/psymodel.c, libmp3lame/psymodel.h, mpglib/Makefile.am, mpglib/Makefile.in, mpglib/interface.c, mpglib/interface.h: Reverted back to Nov 21 version. Added HTML doc from GB regen fix in debugging options add KLEMM_36 Portability fix from Frank, you need to define KLEMM_36 to enable it (no functional change if you leave it disabled): ---snip--- It is a hoax to call this code portable-IO: - It doesn't work on machines with CHAR_BIT != 8 - it also don't test this error condition - otherwise it tries to handle CHAR_BIT != 8 by things like masking 'putc(i&0xff,fp)' - It doesn't handle EOF in any way - it only works with ints with 32 or more bits - It is a collection of initial buggy code with patching the known errors instead of CORRECTING them! For that see comments on the old Read16BitsHighLow() ---snip--- Improvements from Frank: - more input formats (detected by filename) Improvements by me: - sanity checks - works on FreeBSD * libmp3lame/psymodel.c, libmp3lame/tables.c, libmp3lame/tables.h: Patches from Frank: ---snip--- defined 4 new types for holding psydata information psydata is divided into 25 normal tables (the 24 tables + 1 master table) access via "normal" index instead of scanning through the data tables are now sparsable, i.e. it is possible to remove unneeded parts but this is not yet done to avoid to do to much things at once tables are now smaller ---snip--- Hi also did some tests to verify this didn't changes the output. I also verified it with "make test" and some regular encoding. add description of some compile time defines sync with recent changes in the other Makefiles: - HAVExxx -> HAVE_xxx - HAVE_CONFIG_MS_H * frontend/get_audio.c, frontend/get_audio.h: - remove check for CHAR_BITS, was a typo from Frank (confirmed by Frank) - add optimization for unknown SIZEOF_UNSIGNED_LONG (submitted by Frank) in optimized version of SwapBytesInWords() - make the optimized version of SwapBytesInWords() the default (OKed by Mark) - remove DetermineByteOrder(), we have compile time support for it 2000-11-30 10:16 aleidinger * Dll/Makefile.in, Makefile.in, configure, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, dshow/Makefile.in, frontend/Makefile.in, include/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, mpglib/Makefile.in: regen - some modifications from Frank - compile time check for sizeof(int) - more compiler warnings for debugging - compile time value for sizeof(int) * frontend/Makefile.am, libmp3lame/Makefile.am, mpglib/Makefile.am: - additional options for lclint - *.lst instead of specifying every file in "CLEANFILES" * libmp3lame/pcm.c, libmp3lame/pcm.h: submitted by Frank, first revision of a new lame API, not connected to the build yet * libmp3lame/i386/cpu_feat.nas, libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: Part2 of Frank's Patch His List of Changes (part 1 + 2): - changed the type of the MP3 byte stream from 'char' to 'unsigned char' - added to lame_internal_flags: gfp, frame_size, coding, frame_count - one code move inside lame.c (mode_ext), one remove (channels_out) 2000-11-26 10:50 robert Patch by Frank: changes from char to unsigned char bug fix for -X6, could result in clicking noises typo "powf()" lend to crashes under windows, fixed * libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/vbrquantize.c: small fix for vbr-mtrh mode * libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/util.h, libmp3lame/vbrquantize.c: removed superfluous memset in vbr_noise_shaping2() some veryminor speed up for cbr amp_scalefac cleanup Patches by Frank: - documentation - introduced gfc->channels_in - renamed gfc->stereo into gfc->channels_out (note by me: stereo would imply a boolean type stereo ? yes/no what's really annoying and confusing is that we didn't used it that way, but instead stereo=1 -> mono/1-channel, stereo=2 -> stereo/2-channels) - minor bug fixes for BitrateIndex search Patches by Frank: - documentation - introduced gfc->channels_in - renamed gfc->stereo into gfc->channels_out (note by me: stereo would imply a boolean type stereo ? yes/no what's really annoying and confusing is that we didn't used it that way, but instead stereo=1 -> mono/1-channel, stereo=2 -> stereo/2-channels) - minor bug fixes for BitrateIndex search some loops manually unrolled into "Duff's Device" speed improvement for --vbr-mtrh GCC compiled ca. 5 % overall speed improvement for --vbr-mtrh Intel 4.5 compiled ca. 1-2 % looks like the intel compiler does a better job on loops compared to GCC. compromise between size/speed/multi CPU, thanks to Dmitry readd support for other systems than linux (at least FreeBSD) added little howto into Makefile.MSVC think MS C compiler works now again cosmetics some patches by Frank - replace ath.c (has with Lame nothing to do) - lame.c: A line in my new code exchange (see ATHformula problems) - util.c: ATHformula changed over from kHz to cycles per second (last util formula with kHz been) - ATHformula below 20 cycles per second (instead of 10 cycles per second) limits (< 20 cycles per second are Infraschall, - quantize_pvt.c: Effects of ATHformula - tables.c: - SNR_s converted and to the obvious values - w1 and w2 with 576 multiply (error is < 0.91*10^-3, it seems in the tables both to have been rounded off as well as with minimum error have been rounded) - end to OF DATA marker to the integrity test inserted - a reading in of the table revises: psymodel.c - fewer error-prone code (fewer * p++) - meaningful error messages for problem localization - Peeeeeeps in the case of error - removing from loop (now j, is used only farther back; and adapted by k2) - ATHformula - util.c - some amusing " while" Konstrukte, which originate still from the ISO code, transformed into the appropriate " for" Konstrukte (with it first some amusing things are noticeable, so e.g. why starting from index 0 instead of 1 are looked up?) some reorganization in Makefile.MSVC it's now more commandline configurable * frontend/mp3x.c, frontend/parse.c: fix for mp3x.c: showed usage twice fix for parse.c: lame_version_print() overhauled Makefile.MSVC for easier configuration design bug in parse.c fixed (should not include files from engine) * Dll/BladeMP3EncDLL.c, Makefile.MSVC: it's now possible to compile lame_enc.dll with Makefile.MSVC tried the DLL with CD-ex, seems to work updated Compile Flags due to crashes added rule to generate config.h out of configMS.h first try to let the dll compile, still does not work Some bugs fixed introduced due to configure stuff and others bugfix for decoder define regen (unbreak build) bugfix after removing ieeefloat.* 2000-11-18 10:52 aleidinger include configMS.h on Windows * Makefile.DJGPP, Makefile.MSVC: define HAVE_CONFIG_MS_H for Windows regen (configMS.h) introduce configMS.h for Windows * README.Debian, debian, debian/changelog, debian/control, added debian stuff. Make one of the KLEMM's the default * Dll/Makefile.in, Makefile.B32, Makefile.DJGPP, Makefile.MSVC, Makefile.in, Makefile.unix, doc/Makefile.in, Makefiles: removed ieeefloat.* from makefiles. get_audio.c: replaced DetermineByteOrder with original routine. * frontend/Makefile.am, frontend/Makefile.in, frontend/get_audio.c, frontend/get_audio.h, frontend/ieeefloat.c, frontend/ieeefloat.h, frontend/portableio.c, frontend/portableio.h: Removed ieeefloat.* only allow fast SwapBytesInWords if SIZEOF_UNSIGNED_LONG is defined remove define of INLINE let configure handle little/big endianess * libmp3lame/bitstream.c, libmp3lame/fft.c, libmp3lame/newmdct.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/takehiro.c, libmp3lame/util.c: INLINE -> inline As discussed on the mailinglist: - correct when to define INLINE/inline - INLINE -> inline, configure already does something similar compile time resolvable assertions switched to compile time errors - compile time resolvable assertions switched to compile time errors - adjust version string - adjust version string - sort system includes - quiet 4 lclint "errors" - disable get_lame_about() - switched from run time generated version strings to compile time generated ones - implement void get_lame_version_numerical(lame_version_t *const) (#ifdef'ed out) - disable get_lame_about(), snprintf isn't available in Win32 regen (add dshow.dsw) add dshow.dsw shell math instead of awk math (no leading zeros needed) Explicit CDECL for API * dshow/Encoder.cpp, dshow/Encoder.h, dshow/dshow.dsp: Synchronized with current LAME code 2000-11-13 10:59 aleidinger * frontend/Makefile.in, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in: regen 2000-11-13 10:59 aleidinger * frontend/Makefile.am, libmp3lame/Makefile.am: - support for CONFIG_DEFS - possibility to exclude code to lint * libmp3lame/i386/Makefile.am: support for CONFIG_DEFS remove CVS log tag/information, we have "cvs log" for this - sort includes - compile time resolvable assertions switched to compile time errors - we didn't need to determine the size of "unsigned long" at runtime (KLEMM_10 case), we're able to do it at compile time (with the help of configure) - move define of TAKEHIRO_IEEE754_HACK into configure.in - commented out code -> ifdef'ed out code (I'm on a anti-warning rampage) move define of TAKEHIRO_IEEE754_HACK into configure.in * misc/abx.c, misc/ath.c: - include config.h - include correct soundcard.h (with support from configure) 2000-11-13 10:44 aleidinger * Makefile.in, config.h.in, configure: regen - handle TAKEHIRO_IEEE754_HACK - support for 'CONFIG_DEFS="-Dxxx" ./configure' - handle endianess - check for soundcard.h regen (add possibility to exclude code for linting) add possibility to exclude code for linting add start and stop date/time Initial release add id bugfix regen (add mugeco.sh) add mugeco.sh first version of the multi generation encoder script regen (readd dshow) readd dshow libmp3lame/i386/scalar.nas, libmp3lame/lame.c, libmp3lame/resample.c, libmp3lame/resample.h, misc/abx.c: A lot of very small changes. Most important is prparing of a more sofisticated method to determine the bandwidth and the MP3 sampling frequency. 2000-11-11 17:29 aleidinger * Makefile.in, configure: regen (add dshow) 2000-11-11 17:28 aleidinger * Makefile.am, configure.in: add dshow * dshow/Makefile.am, dshow/Makefile.in: initial version * libmp3lame/encoder.c, libmp3lame/machine.h, libmp3lame/util.c, testcase.mp3: updated testcases after changing some default settings make RH_VALIDATE_MS the default undid some of Frank's changes to the resample code. *** empty log message *** * dshow, dshow/Encoder.cpp, dshow/Encoder.h, dshow/Mpegac.cpp, dshow/Mpegac.def, dshow/Mpegac.h, dshow/PropPage.cpp, dshow/PropPage.h, dshow/PropPage_adv.cpp, dshow/PropPage_adv.h, dshow/Property.rc, dshow/README, dshow/REG.CPP, dshow/REG.H, dshow/UIDS.H, dshow/dshow.dsp, dshow/iaudioprops.h, dshow/resource.h: directshow filter for LAME from Peter Gubanov * frontend/get_audio.c, libmp3lame/i386/scalar.nas, libmp3lame/lame.c, libmp3lame/machine.h, libmp3lame/resample.c, libmp3lame/resample.h, libmp3lame/util.c, libmp3lame/util.h, misc/scalartest.c: Resample continued. The old code now uses a 31 Tap FIR for HQ coding and a 7 Tap FIR for MQ and LQ coding. * frontend, libmp3lame, mpglib: add lclint.txt regen (lclint target) regen (HAVE_EFENCE) regen (disalbe-shared/HAVE_EFENCE) - new default: no shared lib - define HAVE_EFENCE if apropriate add lclint target (564 code "errors" found so far) add lclint target (471 code "errors" found so far) add lclint target (1505 code "errors" found so far) fix RH_AMP (gfc = gfp->internal_flags) * include/lame.h, libmp3lame/bitstream.c, libmp3lame/i386/scalar.nas, libmp3lame/resample.c, libmp3lame/resample.h, misc/ath.c, misc/scalartest.c: Start of resampling. * libmp3lame/bitstream.c, libmp3lame/id3tag.c, libmp3lame/machine.h, libmp3lame/version.h, misc/ath.c, testcase.mp3: Small changes. include assert.h, seems to be forgotten in last commit (how could this compile?) Changed back to old report interface until we've discussed all possible versions and make a decision. Some bugfixes. Some remarks. regen after: - HAVE{MPGLIB,VORBIS,GTK} -> HAVE_$1 - --disable-analyzer-hooks - --enable-efence * config.h.in, frontend/get_audio.c, frontend/main.c, frontend/parse.c, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/vorbis_interface.c: HAVE{MPGLIB,VORBIS,GTK} -> HAVE_$1 - HAVE{MPGLIB,VORBIS,GTK} -> HAVE_$1 - --disable-analyzer-hooks - --enable-efence (use the ElectricFence malloc debugging library) regen after amiga_mpega.c move follow the move of amiga_mpega.c from libmp3lame to frontend minor changes. some options can be passed via "export LAMEOPT=..." Moved amiga_mpega.c to frontend where it belongs, and added it to Makefile.unix * libmp3lame/bitstream.c, libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: removed lame_global_flags pointer from lame_internal_flags. * libmp3lame/lame.c, libmp3lame/quantize_pvt.c, libmp3lame/util.c, libmp3lame/util.h: fixed resample bug when resampling by integer amounts. * API, frontend/gtkanal.c, frontend/parse.c, include/lame.h, Improved get_lame_xxx() API a little bit more * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c: fixed segmentation fault in Frank's noise calculation implemented Todd Richmond's idea to speed up the outer_loop() * libmp3lame/i386: add .lst files went back to frame counts in VBR display cleaned up mpeg header search code in get_audio.c modified mpglib so we can move VBR header code into mpglib and out of the frontend code. a little more work is still needed. * libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/id3tag.c, libmp3lame/util.o: Small changes for fuzzy ID3 tag compare. Modified get_lame_xxx() API so it's more re-entrance friendly (returning a const pointer from a static var that's changed every time the function is called is really dirty!). * frontend/parse.c, frontend/rtp.h, frontend/timestatus.c, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, testcase.mp3: Minor changes. Added -X8. Some little Bugs fixed. * Dll/Makefile.in, Makefile.in, configure, configure.in, libmp3lame/i386/Makefile.in, libmp3lame/newmdct.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, configure.in: typo fix newmdct.c: precision fix(?) regen (clean of generated .lst files) add generated .lst files to files to clean regen after adding scalartest.c add scalartest.c * libmp3lame/util.c~, libmp3lame/util.d, libmp3lame/util.o: remove generated/backup files, seems they are commited by accident * libmp3lame/tools.c, libmp3lame/tools.h: add file for generic tools. * libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/i386/scalar.nas, libmp3lame/lame.c, libmp3lame/lameerror.h, libmp3lame/psymodel.c, libmp3lame/util.o, libmp3lame/version.h, misc/scalartest.c, testcase.mp3: * Changed psy_data from double to float (this ssem not to change any bit in MP3, but saves 20 KB). bugfix. Sorry include/lame.h, libmp3lame/i386/Makefile.am, libmp3lame/i386/Makefile.in, libmp3lame/i386/scalar.nas, libmp3lame/resample.c, libmp3lame/resample.h, libmp3lame/tables.c, libmp3lame/version.c, misc/ath.c: small changes in brhist. some tests and modifications for streaming MP3. other unremarkable stuff Unimportant changes. more 'const'nes, also saves some bytes in the generated .o regen after change in Makefile.am remove trailing backslash in last line of EXTRA_DIST add myself to contributors * config.h.in, configure, configure.in, frontend/brhist.c: NOTERMCAP/TERMCAP_AVAILABLE -> HAVE_TERMCAP add missing include include/lame.h, libmp3lame/bitstream.c, libmp3lame/i386/scalar.nas, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/resample.h, libmp3lame/util.c, libmp3lame/version.c, libmp3lame/version.h: Minor changes. Biggest ist in bitstream.c, but triggered by KLEMM_14. libmp3lame/i386/scalar.nas, libmp3lame/resample.c, libmp3lame/resample.h, libmp3lame/version.c: These are minor changes to a version which fails on my computer. * mpglib/common.c, mpglib/common.h: bugfix for --disable-decoder-layer1 case updated LICENSE to remove comments about libsndfile, since libsndfile no longer included in library * libmp3lame/.indent.pro, libmp3lame/bitstream.c, libmp3lame/version.h: added indent.pro back to CVS some more context fixes * libmp3lame/newmdct.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/vbrquantize.c: removed more 'context'. lame now segfaults. * libmp3lame/.indent.pro, libmp3lame/VbrTag.c, libmp3lame/fft.c, libmp3lame/fft.h, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/newmdct.h, libmp3lame/psymodel.h, libmp3lame/quantize.h, libmp3lame/quantize_pvt.h: removing 'context' * libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/util.h: restored bitstream.c to original. drain_into_ancillary_data was written the way it is on purpose. dont change it without checking with me first *** empty log message *** removed 'context' why was lame_internal_flags renamed context? This is under the catagory of cosmetic. removed some cosmetic changes. * frontend/mp3rtp.c, frontend/rtp.c: mp3rtp was broken, does now compile again * libmp3lame/quantize.c, libmp3lame/quantize_pvt.h: only cosmetic changes, done by indent these files are used by the indent program to pretty format sources * frontend/brhist.c, frontend/brhist.h, frontend/main.c, frontend/timestatus.c: some more brhist pretty print regen after bugfix in Makefile.am fix build of mp3x fixes for bitrate histogram and MS compilation * frontend/lametime.c, frontend/parse.c, frontend/timestatus.c: quick fixes for Console_IO stuff Console_IO is declared in brhist.c, but when compiling without bitrate histogram capabilities the code would not compile anymore analyzer stuff was moved to frontend because of automake/configure Takehiro's IEEE754 hack for VBR modes new and mtrh we didn't need acconfig.h, so don't depend on it BUG fix for debug code for BUG fix for fill_buffer_resample() ;-( BUG fix for fill_buffer_resample() small fix for fill_buffer_resample() some buffers where too small allocated, but this will not really help, the routine has some ugly looking points left that need to be fixed. * libmp3lame/VbrTag.c, libmp3lame/bitstream.c, libmp3lame/bitstream.h, libmp3lame/encoder.c, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/reservoir.c, libmp3lame/reservoir.h, libmp3lame/util.c, libmp3lame/util.h, libmp3lame/vbrquantize.c: gfp gfc stuff FINISHED for now * libmp3lame/encoder.c, libmp3lame/fft.c, libmp3lame/fft.h, libmp3lame/newmdct.c, libmp3lame/newmdct.h, libmp3lame/psymodel.c, libmp3lame/psymodel.h, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c: a step further with this gfp gfc stuff * libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/util.h: some more gfc stuff * libmp3lame/encoder.c, libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: more on gfp gfc reorganization * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: gfp gfc reorganization * libmp3lame/fft.c, libmp3lame/lame.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/util.h: data encapsulating Naoki's psymode 2000-10-29 12:54 aleidinger * analyzer/Makefile.in, analyzer/Makefile.in.old, analyzer/README.Win32, analyzer/gpkplotting.c, analyzer/gpkplotting.h, analyzer/gtkanal.c, analyzer/gtkanal.h, analyzer/mp3x.c, analyzer/mp3x.dsp, analyzer/mp3x.dsw: they life now in frontend/... 2000-10-29 12:52 aleidinger * .: add some config.h related files now with support for config.h * Dll/Makefile.in, Makefile.in, doc/Makefile.in, regenerated after adding support for config.h * aclocal.m4, configure.in, frontend/Makefile.am, frontend/brhist.c, frontend/get_audio.c, frontend/gpkplotting.c, frontend/timestatus.c, libmp3lame/Makefile.am, libmp3lame/VbrTag.c, libmp3lame/amiga_mpega.c, libmp3lame/bitstream.c, libmp3lame/debugscalefac.c, libmp3lame/encoder.c, libmp3lame/fft.c, libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/mpglib_interface.c, libmp3lame/newmdct.c, libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/reservoir.c, libmp3lame/tables.c, libmp3lame/takehiro.c, libmp3lame/util.c, libmp3lame/vorbis_interface.c, mpglib/Makefile.am, mpglib/common.c, mpglib/dct64_i386.c, mpglib/decode_i386.c, mpglib/interface.c, mpglib/layer1.c, mpglib/layer2.c, mpglib/layer3.c, mpglib/tabinit.c: support for config.h 2000-10-29 12:47 aleidinger * config.h.in, stamp-h.in: config.h support CRC table based code removed Ease CRC header calculation Moved 2 functions from util.c to lametime.c Fixed a memory leak caused by an early return bitstream: Local crc moved to gfp->crcvalue, next step can be to remove a function parameter minor changes hunting some BUGs, but still not found encoding a mono VBR resampled to 11 kHz shows some strange behaviour don't use gtar instead of tar lame.spec gets now generated at configure time from lame.spec.in 2000-10-28 10:41 aleidinger - add lame.spec.in to distribution - remove lame.spec from distribution - show how long lame needs for the testcase 2000-10-28 10:36 aleidinger * configure, configure.in: - generate lame.spec from lame.spec.in - CPU specific optimizations (x86, gcc 2.7.3.x or better) template for configure to generate lame.spec short => sample_t in lame_encode_buffer and all the related stuff max_range tables KLEMM_04(old) removed, scalar routines introduced. LSF needs some different max_range tables I plugged some in and it seems to work they are designed after max_sfac_tab[6][4] you may look into scale_bitcount_lsf() * libmp3lame/quantize.c, libmp3lame/vbrquantize.c: LSF hack for vbr-mtrh VBR mode bit optimization BUG in frame analyzer fixed, there was some wild pointer used in layer3.c in preflag condition * libmp3lame/i386/choose_table.nas, libmp3lame/machine.h, libmp3lame/tables.c, libmp3lame/tables.h: 64bit int lookup table moved from C code to asm code. Make some modifications active. No Termcap terms are now handled in the same way like termcap terms. * libmp3lame/quantize.c, libmp3lame/quantize.h, libmp3lame/quantize_pvt.h, libmp3lame/vbrquantize.c: improved vbr_mtrh VBR mode prevent the CVS Id from being integrated into Makefile.in improved RH_AMP Better syncword recognization configure/configure.in machine.h loop integration. "make test" may find some difference caused by some rounding problem fix for -q7 mode typo * libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h: some simplifications improvements, need some compile time defines, look into Makefile.unix FLOAT is float, FLOAT8 is double again ;-) more make test update sorry, mistaken check in.... * Dll/Makefile.in, Makefile.am, Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, frontend/Makefile.in, include/Makefile.in, lame.spec, libmp3lame/Makefile.in, libmp3lame/i386/Makefile.in, libmp3lame/machine.h, misc/Makefile.in, mpglib/Makefile.in: "make test" update cosmetic change update after change to Makefile.am let test targetbuild frontend/lame if it isn't already build - didn't work with "make -j 4 test" - IMHO the previous version was a feature (requested by Takehiro-san) splittet test target into more subtargets corrected testg target added CVS_RSH=ssh to update/diff target fix for short block I introduced 2000-10-19 A lot of small changes, most of them must be switched on via compile time defines. vbr displays shows MS and LR frames different. vbr displays depends on the current display width. do "make test" with one step * ., Dll, doc, doc/html, doc/man, frontend, include, libmp3lame, libmp3lame/i386, misc, mpglib: igonore Makefile.am things (.libs, .deps, and so on) * libmp3lame, mpglib: added *.lo generated by automake/libtool 2000-10-22 12:03 aleidinger generated by automake now with automake/libtool support seems to get generated at configure time generated by aclocal - add asm support if nasm is found - added automake support - added libtool support (a Dll user should look into "AC_LIBTOOL_WIN32_DLL" of the libtool - --enable-{mp3x,mp3rtp} - only build analyzer if GTK is present - set CPUTYPE (to use asm routines where supported) - --enable-decoder* -> --disable-decoder* remove GTK entry, "aclocal" takes care of it in aclocal.m4 2000-10-22 11:55 aleidinger * Dll/Makefile.in, Makefile.in, doc/Makefile.in, doc/html/Makefile.in, doc/man/Makefile.in, include/Makefile.in, libmp3lame/i386/Makefile.in, misc/Makefile.in: generated by automake Initial automake support * frontend/README.Win32, frontend/gpkplotting.c, frontend/gpkplotting.h, frontend/gtkanal.c, frontend/gtkanal.h, frontend/mp3x.c, frontend/mp3x.dsp, frontend/mp3x.dsw: moved from analyzer/... because automake didn't allows sources for one program/library to be in more than one directory (at least without hacks) - initial automake support - delete testcase.new.mp3 on "clean" - added "update" target, does a cvs update - added "diff" target, does a cvs diff -u - initial automake support - conditionally build mp3x/mp3rtp * libmp3lame/Makefile.am, libmp3lame/i386/Makefile.am: Initial automake/libtool support: - if nasm is detected and we have asm for this @CPUTYPE@: * include asm support - didn't build without decoder: "undefined reference to `mpg123_pinfo'" Initial automake/libtool support: - mpglib gets linked to libmp3lame.{a,so} - isn't installed on it's own Initial automake support. * libmp3lame/l3side.h, libmp3lame/newmdct.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/takehiro.c, libmp3lame/vbrquantize.c: 1. changed sfb_smax to sfb_smin. it is really minimum number, and so confusing. 2. prepare for mixed block 3. prepare for asm quantize code 2000-10-22 09:43 takehiro * libmp3lame/fft.c, libmp3lame/util.h: no need to be in internal flag for constants * libmp3lame/fft.c: no need to be in internal flag for constants * libmp3lame/Makefile.in, libmp3lame/encoder.c, libmp3lame/newmdct.c, libmp3lame/newmdct.h, libmp3lame/util.h: 1 (util.h) deleted unused flag from internal flags 2 (newmdct) in place code of mdct_short 3 some cosmetic change code clean up deleted old remark about asm routine code cleanup * libmp3lame/i386/choose_table.nas, libmp3lame/quantize_pvt.c: reduce memory assumption little and bit faster choose_table add coment and remove unused code bit optimization and now thread safe, I think. brute force loop unrolling and some elimination of multiple. bit faster. * libmp3lame/encoder.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/quantize_pvt.h, libmp3lame/vbrquantize.c: frame analyzer info will now be set up in main encoding routine only, for the whole frame. problem with SCFSI fixed * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: Added lame alpha, beta version and if MMX is enabled to the version interface, should be backward compatible Fixed histgramming display for Win32, added fflush 2000-10-20 21:11 afaber * analyzer, analyzer/README.Win32, analyzer/README.Win32~: Small fixes to the Win32 installation instructions, Added Win32 type to the .cvsignore file 2000-10-20 20:50 afaber * frontend/brhist.c, frontend/brhist.h: Resolved const mistach beween BRHIST function declartions Added MPGLIB define * misc, misc/abx.c, misc/ath.c: initial checkin * libmp3lame/quantize.c, libmp3lame/vbrquantize.c: I think I fixed a BUG in subblock gain code fixed BUG in atQ table, removed --raise-smr stuff * analyzer/mp3x.c, libmp3lame/lame-analysis.h: no way to disable analysis for lame-lib 2000-10-18 17:04 robert * analyzer/gtkanal.h: first commit 2000-10-18 16:47 robert * analyzer/gtkanal.c, analyzer/mp3x.c, libmp3lame/lame-analysis.h, mpglib/layer3.c, mpglib/mpglib.h: fixed some ambiguities define NOANALYSIS as suggested in INSTALL if you don't want to collect some analysis data some tweaks Rewrote double to FLOAT8. Added short block pre-echo control to --nspsytune. This improves castanets.wav. libmp3lame/psymodel.c, libmp3lame/util.h: * small changes to prepare to add a lame float interface * other stuff removed some shorts. two version of version report some minor changes * frontend/brhist.c, frontend/main.c: cosmetics * Makefile.in, analyzer/Makefile.in, configure, configure.in, libmp3lame/Makefile.in, libmp3lame/lame.c, mpglib/Makefile.in: integrated Alexanders patch, minor bug fixes * libmp3lame/tables.c, libmp3lame/tables.h, libmp3lame/takehiro.c: takehiro.c now thread safer missing include files some convenience *** empty log message *** added some prototypes. no code yet added some lame_set_variable prototypes in lame.h fixed fft.h defines * API, Makefile.in, analyzer/mp3x.c, configure, configure.in: broken frame analyzer fixed - -DANALYSIS was missing from default library build * frontend/get_audio.c, frontend/main.c, frontend/mp3rtp.c: fixed broken fskip() * Dll/BladeMP3EncDLL.c, STYLEGUIDE: fixed Frank's broken fskip() * libmp3lame/Makefile.in, libmp3lame/mpglib_interface.c, libmp3lame/util.c, libmp3lame/util.h: made data for resampling dynamically allocated Most changes must be switched on via KLEMM_0[0-9]. Also some minor changes. Start of short documenation of the source code. _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ **************** *** #defines *** **************** KLEMM_01: Use my experimental data to calculate ATH But masking for >16 kHz seems to be buggy. KLEMM_02: lame_set_stream_binary_mode() and lame_get_file_size() as lib function, still searching a better place for that KLEMM_03: not more used KLEMM_04: faster FIR filter with less rounding errors KLEMM_05: sparse VBR bitrate display KLEMM_06: fskip() uses fseek() if possible KLEMM_07: use of timestatus_klemm.c which only uses timestatus.c functions, some code clarification and documentation * libmp3lame/util.c, libmp3lame/util.h: lowpass filtering data structurs made dynamic *** empty log message *** Fixed bug parsing Xing VBR header: lame will now compute correct number of frames when decoding playback bugfix msv6 dll project files updated * Dll/MP3EncDll.dsp, Dll/MP3EncDll.dsw: reverted back to MSVC5 project files. accidently changed them to my MSVC6 versions. Albert, when are you goint to upgrade!!!! * Dll/MP3EncDll.dsp, Dll/MP3EncDll.dsw: msv6 dll project files updated fixed typo updated USAGE * API, Dll/BladeMP3EncDLL.c, USAGE: edited API, USAGE BUG in 3DNow detection fixed, was my faulty porting to NASM * libmp3lame/takehiro.c, libmp3lame/util.h: takehiro.c now thread safe ? psymodel: FIR filter changed, trigger with KLEMM_04 brhist: display changed back to the old display, new display must be triggered by KLEMM_05 Changes are commented in brhist.c or must be enabled with KLEMM_xx. bitrate histogram is working again small fixes prepare for automake: new vars, system dependent checks to configure.in * Makefile.in, Makefile.in.old, analyzer/Makefile.in, analyzer/Makefile.in.old, configure, configure.in, prepare for automake: new vars, system dependent checks to configure.in Preparing for automake NASM specific fixes CPU feature code using NASM CPU feature detection code now using NASM * libmp3lame/psymodel.c, libmp3lame/quantize.c, libmp3lame/quantize_pvt.c, libmp3lame/util.h: Add two new features to --nspsytune. 1. New block type selecting algorithm. 2. Improved noise shaping at high bitrate CBR. Turned on by -q1 --nspsytune. it's getting better :-) BUG fix in case LAME compiled without GTK, then called with -g * libmp3lame/Makefile.in, libmp3lame/quantize_pvt.c, libmp3lame/util.c: fixes for Frank's ATH added alternative to lame_encode_finish: - lame_encode_flush, does the same as lame_encode_finish - lame_close, will free lame internal buffers So the following is equivalent to lame_encode_finish lame_encode_flush() lame_close() But this adds the possibility to get some more analyzing after all frames are encoded. Suggested to use with lame_bitrate_hist() lame_stereo_mode_hist() * libmp3lame/encoder.c, libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: simple statistics (histogram) added, problem: lame_encode_finish() also frees internal buffer solution: two new functions splitting lame_encode_finish() into lame_encode_flush() and lame_close() 2000-10-11 01:03 florian * analyzer: *** empty log message *** Additional ATH calculation (enabled by KLEMM_01). * libmp3lame/lame.c, libmp3lame/takehiro.c: use of MMX should be safe on non MMX CPUs now, but this will not work on Microsoft platforms. We will have to adapt the assembler routines for the MS assembler or for NASM. Makefile work cut'n'paste devil :( * libmp3lame/lame.c, libmp3lame/util.c, libmp3lame/util.h: Frank's CPU feature detection code added MSVC Win32 updates, added Alpha Beta version numbers to DLL version structure (should be backward compatible) notes about what needs to be done for configure * libmp3lame/encoder.h, libmp3lame/lame-analysis.h: *** empty log message *** * TODO, analyzer/Makefile.in, analyzer/gpkplotting.c, analyzer/gtkanal.c, analyzer/mp3x.c, frontend/timestatus.c, include/lame.h: generic cleanup frame analyzer now works with ./configure, at least for linux attept to fix Makefiles.B32, DJGPP, MSVC. * libmp3lame/lame-analysis.h, mp3x: *** empty log message *** 2000-10-09 16:24 markt * mp3x/Makefile.in, mp3x/README.Win32, mp3x/aclocal.m4, mp3x/config.status, mp3x/configure, mp3x/configure.in, mp3x/gpkplotting.c, mp3x/gpkplotting.h, mp3x/gtkanal.c, mp3x/mp3x.c, mp3x/mp3x.dsp, mp3x/mp3x.dsw: removing mp3x * Makefile.in, Makefile.unix, aclocal.m4, analyzer, analyzer/Makefile.in, analyzer/README.Win32, analyzer/README.Win32~, analyzer/gpkplotting.c, analyzer/gpkplotting.h, analyzer/gtkanal.c, analyzer/mp3x.c, analyzer/mp3x.dsp, analyzer/mp3x.dsw, configure, configure.in, moved mp3x -> analyzer (name was clashing with executable name) work on configure to get mp3x to compile (not yet done) added a comment about downsampling cleaned up VBR tag stuff libmp3lame/version.h, mp3x/gtkanal.c, mp3x/mp3x.c: lots of changes, just trying to get things to compile. Trying to add id3tag.h again. bug fixes by Alexander Stumpf * libmp3lame/id3tag.c, libmp3lame/util.h: missing id3tag.h include files for util.h, id3tag.c 2000-10-07 05:03 markt * mp3x/gtkanal.c: id3tag struct in id3tag.h * Dll/LameDLLInterface.htm, INSTALL, Makefile.unix, id3tag_spec made it back into lame.h. deleted. frameNum has to be in the library - the front end has no way of correctly counting frames unless it parses the mp3 output headers. totalframes should also probably be in the library. minor changes for install and uninstall * libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/util.h: quick fix, maybe work but not checked hard quick fix, I don't check this * libmp3lame/id3tag.c, libmp3lame/lame.c, libmp3lame/util.h: id3tag cleanup id3 stuff cleaned up. id3 related strucs made internal to the library * frontend/get_audio.c, frontend/get_audio.h: small correction *** empty log message *** more configure work. updated testcase added comment about Naoki's blocktype bug fix. also, for JSTEREO but with the '-d' option, L and R channels can have different block types, so we cant just look at the block type for channel 0 forgot to add Makefile.in needs Windows Script >= 5.1, donated by Ralf Kempkens 2000-10-04 22:04 afaber * mp3x/mp3x.dsp: MSVC project file update * Dll/MP3EncDll.dsp, libmp3lame/libmp3lame.dsp, mpglib/mpglib.dsp: MSVC project update(s) to new layout of the libmp3lame files 2000-10-04 17:13 afaber * Dll/Example.dsw, Dll/MP3EncDll.dsp: MSVC project update(s) to new layout of the libmp3lame files Bugfix of long block pre-echo control. * i386, libmp3lame/i386, libmp3lame/i386/choose_table.nas, libmp3lame/i386/fft.nas, libmp3lame/i386/fft3dn.nas, libmp3lame/i386/fftfpu.nas, libmp3lame/i386/fftsse.nas, libmp3lame/i386/ffttbl.nas, libmp3lame/i386/nasm.h: moved i386 directory *** empty log message *** make still does not work. some kind of infinite loop more configure work l3side.h, lame-analysis.h, lame.c, libmp3lame/Makefile.am, libmp3lame/Makefile.in, libmp3lame/VbrTag.c, libmp3lame/VbrTag.h, libmp3lame/vorbis_interface.c, machine.h, mpglib_interface.c, newmdct.c, newmdct.h, psymodel.c, psymodel.h, quantize.c, quantize.h, quantize_pvt.c, quantize_pvt.h, reservoir.c, reservoir.h, tables.c, tables.h, takehiro.c, util.c, util.h, vbrquantize.c, version.c, version.h, vorbis_interface.c: Moved everything to libmp3lame. worked on configure, but not quite working. 2000-10-04 03:02 markt removed more configure files in subdirectories. There should only be one ./configure, in the main directory more configure work more configure patches for frontend. new configure that doesn't run configure in all the subdirectories! 2000-10-03 22:22 afaber * mp3x/gtkanal.c: Fixes to MP3x app, seems like frame number was never increased, caused assert error and mp3done was not set when file/quit menu option was selected (caused assert error also) 2000-10-03 22:09 afaber * README.WINGTK, frontend/lame.dsp, frontend/lame.dsw, lamelib.dsp, libmp3lame/libmp3lame.dsp, mp3x, mp3x/README.Win32, mp3x/mp3x.c, mp3x/mp3x.dsp, mp3x/mp3x.dsw, mpglib/mpglib.dsp: Re-organized some of the MSVC project files, fixes to compile mp3x again on Win32 platform removed unused includes fft.c now thread safe !? removed redundancies updated testcase for LAME 3.88 alpha 1 Some configure options are for the library, some are for the front end. How do we pass front end options to frontend/configure? *** empty log message *** 2000-10-03 03:52 markt * mp3x/Makefile.in, mp3x/aclocal.m4, mp3x/configure, mp3x/configure.in: better gtk check for mp3x make -> $(MAKE) * mp3x/gtkanal.c, quantize_pvt.h: Fix for winamp bug. (commented out for now) frontend/configure.in, mp3x/config.log: configure updates * frontend/lame.dsp, lamelib.dsp, mpglib/mpglib.dsp: Adapted project file in order to compile it again with the MSVC compiler *** empty log message *** * INSTALL, Makefile.in, frontend/Makefile.in, frontend/configure, frontend/configure.in, frontend/main.c, frontend/parse.c, id3tag.c, include/lame-analysis.h, include/lame-id3tag.h, include/lame.h, lame-analysis.h, lame.c, mp3x/Makefile.in: trying to move decoding back into library Make it compile again with MSVC compiler * frontend/gpkplotting.c, frontend/gpkplotting.h, frontend/gtkanal.c, frontend/main.c, frontend/mp3x.c, mp3x, mp3x/Makefile.in, mp3x/aclocal.m4, mp3x/config.log, mp3x/config.status, mp3x/configure, mp3x/configure.in, mp3x/gpkplotting.c, mp3x/gpkplotting.h, mp3x/gtkanal.c, mp3x/mp3x.c: moved GTK frame analyzer stuff into mp3x 2000-10-01 15:30 takehiro frontend/Makefile.in, frontend/get_audio.c, frontend/main.c, mpglib/configure, mpglib/configure.in, mpglib/main.c, mpglib_interface.c, vorbis_interface.c: more modularization work. VORBIS and mpglib interface is now in the libmp3lame library. functions in these files are wrapper of mpglib/libvorbis. I think it is ok to include them in libmp3lame. merged VbrTag.h into lame.h * Dll/BladeMP3EncDLL.c, encoder.c, frontend/get_audio.c, include/lame.h, lame.c, util.h: merged VbrTag.h into lame.h * mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.c, mpglib/dct64_i386.h, mpglib/decode_i386.c, mpglib/decode_i386.h, mpglib/interface.c, mpglib/interface.h, mpglib/layer1.c, mpglib/layer1.h, mpglib/layer2.c, mpglib/layer2.h, mpglib/layer3.c, mpglib/layer3.h, mpglib/main.c, mpglib/mpg123.h, mpglib/mpglib.dsp, mpglib/mpglib.h: More MPGLIB cleanup, got rid of the global mpstr struct gmp (in order to make lib thread safe) * mpglib/common.c, mpglib/common.h, mpglib/decode_i386.c, mpglib/interface.c, mpglib/layer3.c, mpglib/mpg123.h: Cleanup of mpg123.h file (still need to get rid of the dirty extern gmp hack) * mpglib/layer1.c, mpglib/mpg123.h: Removed unused stuff in MPG123.h file, removed stuff that was commented out in Layer1.c * mpglib/mpg123.h, mpglib/tabinit.c: Removed some double/float warnings, removed disable warnings pragma for MSVC compiler * frontend/main.c, lame.c: moved main_crc_init from frontend to library * mpglib/common.c, mpglib/common.h, mpglib/dct64_i386.c, mpglib/decode_i386.c, mpglib/interface.c, mpglib/layer2.c, mpglib/layer3.h, mpglib/mpg123.h, mpglib/mpglib.dsp, mpglib/tabinit.c, mpglib/tabinit.h: Reorganized some of the function prototypes, removed non existing function prototypes from common.h * libmp3lame: initial check in for libmp3lame * libmp3lame, libmp3lame/Makefile.am: check in for the feauture... 2000-10-01 09:10 afaber Added void main_CRC_init (void) function prototype in bitstream.h * frontend/Makefile.in, frontend/mp3x.c: making frameanalyzer problem fixed added Frank's normalization of Blackman filter coefficients. This had no effect on any of my resample test cases. more notes on identation and int in STYLEGUIDE fixed signed/unsigned mismatch added stuff in HACKING on how to handle global data moved freegfc() into util.c number of pre-computed convolution windows determined dynamically. (storage still needs to malloc'd and free'd in lame_encode_finish). small fix * Dll/BladeMP3EncDLL.c, Dll/MP3EncDll.dsp: Changes in order to get it compile on a Win32 platform * VbrTag.h, frontend/brhist.c, frontend/get_audio.c, frontend/lame.dsp, frontend/lame.dsw, frontend/timestatus.c, lame.dsp, lame.dsw, lamelib.dsp, mpglib/mpglib.dsp: Changes in order to get it compile on a Win32 platform renamed some functions * doc/html/contributors.html, doc/html/examples.html, doc/html/history.html, doc/html/id3.html, doc/html/index.html, doc/html/lame.css, doc/html/modes.html, doc/html/node6.html, doc/html/switchs.html: new document for 3.87 from Gaby. * frontend/configure, frontend/configure.in: debug about gtk detection 2000-09-30 07:55 takehiro * frontend/get_audio.c, frontend/main.c, frontend/main.h, frontend/mp3rtp.c, frontend/parse.c, include/lame.h, lame.c: removed outpath from library. moved some code from util to bitstream * VbrTag.c, frontend/vorbis_interface.c, lame.c: re-enabled id3v2 tag and Xing vbr header * frontend/get_audio.c, frontend/main.c, frontend/main.h, frontend/parse.c, frontend/timestatus.c, include/lame.h, lame.c: "silent" and "brhist" is moved to frontend * frontend/main.c, frontend/main.h, frontend/parse.c, frontend/timestatus.c, include/lame.h, lame.c: "update_interval" is moved to frontend 2000-09-29 17:50 takehiro * encoder.c, frontend/main.c, frontend/mp3x.c, frontend/parse.c, include/lame-analysis.h, include/lame.h, lame.c, psymodel.c, quantize.c, vbrquantize.c: changed from "gtkflag" to "analysis", because it is not only for gtk. oops, timestatus not correctly displayed 2000-09-29 17:44 takehiro * frontend/gtkanal.c, frontend/main.c, frontend/mp3x.c, frontend/parse.c, id3tag.c, include/analysis.h, include/id3tag.h, include/lame-analysis.h, include/lame-id3tag.h, include/lame.h, lame.c, mpglib/layer3.c, mpglib/mpglib.h, quantize.c, quantize_pvt.c, util.h, vbrquantize.c: OK, Florian, I renamed include file avoid confusing. (it's so generic and not likely to be unique) * Makefile.in, encoder.c, frontend/Makefile.in, frontend/brhist.c, frontend/vorbis_interface.c, lame.c, parse.c, psymodel.c, util.c, util.h, vbrquantize.c: 1. timestatus things are moved to frontend(maybe complete ?) 2. input file handling is moved to frontend(so the file input API is removed) removed analysis.h from get_audio.c typo in brhist.c improved lame.bat for 4DOS users, donated by Alexander Stumpf 2000-09-28 16:37 takehiro configure.in, encoder.c, frontend, frontend/Makefile.in, frontend/aclocal.m4, frontend/brhist.c, frontend/brhist.h, frontend/configure, frontend/configure.in, frontend/get_audio.c, frontend/get_audio.h, frontend/gpkplotting.c, frontend/gpkplotting.h, frontend/gtkanal.c, frontend/ieeefloat.c, frontend/ieeefloat.h, frontend/lametime.c, frontend/lametime.h, frontend/main.c, frontend/mp3rtp.c, frontend/mp3x.c, frontend/parse.c, frontend/portableio.c, frontend/portableio.h, frontend/rtp.c, frontend/rtp.h, frontend/timestatus.c, frontend/timestatus.h, frontend/vorbis_interface.c, get_audio.c, get_audio.h, gpkplotting.c, gpkplotting.h, gtkanal.c, id3tag.h, ieeefloat.c, ieeefloat.h, include/id3tag.h, include/lame.h, mpglib/Makefile.in, mpglib/layer3.c, mpglib/mpglib.h, parse.c, portableio.c, portableio.h, psymodel.c, quantize.c, version.h, vorbis_interface.c: moved frontend staffs into frontend/ Need to debug vorbis/mpglib/analyzer/bitrate histgram. still long way to go... HAVEGTK is changed ANALYSIS(library side) and HAVEGTK(frontend side) BRHIST is deleted from library. all the bitrate histogram works are now in frontend(but not works properly, yet). timestatus things are also moved to frontend. parse.c is now out of library. 2000-09-27 12:06 takehiro * gtkanal.h, include/analysis.h: moved gtkanal.h to include/analysis.h fixed make install -> move of lame.h broke it. more clean up and debug "make clean" moved more staff out of libmp3lame removed brhist.o etc from library * include, include/lame.h: lame.h moved to include little clean up 1 moved lame.h into include/ 2 modularized work with mpglib Mark, you broke lame_decode_initfile(), what were you thinking? ;) .. anyways, fixed, and added new mp3data struct variables... * mpglib, mpglib/Makefile.in, mpglib/common.c, mpglib/configure, mpglib/configure.in, mpglib/dct64_i386.c, mpglib/decode_i386.c, mpglib/interface.c, mpglib/layer3.c, mpglib/main.c, mpglib/tabinit.c: configure support and more modularized work now this is generated by configure CVS is now 3.88 alpha 1 updated to 3.87 beta * get_audio.c, get_audio.h, gtkanal.c, mpglib/main.c, timestatus.c: removed all references to gfc-> from get_audio.c this was needed if we are going to move get_audio.c out of libmp3lame and into the front end code. *** empty log message *** Removed two files when input file was a mp3, it was trashing a bunch of variables (mode, bitrate, etc..) MMX choose table support, needs NASM (can be disabled) changed default installation prefix to /usr (/usr/local/lib doesn't seem to be in default linker path) fixed shared lib (runtime linker information) removed ?= from makefile A small bugfix of --nspsytune. * Makefile.in, configure, configure.in: cleaner version handling of libmp3lame.so, uninstall target in Makefile fixed genre bug in id3tag.c removed yet another unsigned loop counter enabled Takehiro's IEEE hack BUG fixed, which prevented using Layer1/2 decoding abilities code cleanup and very little speedup minor RH_AMP tweak, and once again, do not use tabulator within this file please do not use tabulators within this file (better in no files) minor BUG fix for MPEG-2(.5) sorry, scalefac_scale did not have a bug. that was my compiler bug... Fixed MP1/2 decoding problem, for files that were encoded with a CRC minor fix to mp3 header parsing removed unused variable bits fixed signed/unsigned mismatch, added bitstream.h include file id3v1 and id3v2 tags now get written directly into the bitstream instead of into the output file. The only file I/O left in libmp3lame will be the VBR tag. removed lame_decode_fromfile() calls from the API, moved them into get_audio.c some mpglib restructering. All mp3 routines which work with files now only make calls to lame_decode_* that are in the API. bug in Xing header for MPEG2.5 fixed workaround for subblock_gain and scalefac_scale artifact. I hope this will fix -q1 problems. *** empty log message *** *** empty log message *** bug fixed in decoding: if syncword found in Xing VBR header toc, it would confuse things. Also fixed overflow in vbrtag.c, and changed size of xing vbr header to 128kbs. This will make non-vbr aware players give a more reasonable playing time estimate. minor fix Minor bugfixes of --nspsytune. Frame analyzer works correctly with --nspsytune. Tweaks to --nspsytune. This improves CBR quality. Updated lame_enc.dll documentation file more configure updates. not compiling/linking BRHIST routine when it is disabled. * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h, Dll/Example.cpp: Added bNoRes option in LHV1 structure, updated example to have default settings as in testcase.wav test case Changed BRHST un-signed variables to signed variables High quality was not enabled Added TAKEHIRO_IEEE754_HACK define to project file Added TAKEHIRO_IEEE754_HACK define to project file VBR old quality tuning for --raise-smr update glibc inline math error detection oops, needless gabage removed newer configure script made by configure.in not compiling/linking mpglib code when it disabled. not compiling/linking gtk related code when it disabled. control LAYER1 and LAYER2 decoding function with --enable-decode-layer1 and --enable-decode-layer2 autodetect math inline bug of glibc < 2.1.3 modified --ATHlower to not touch sfb21 * .: ignore files related configure script and library itself got rid of a size_t in main.c removed unsigned int being used as a loop counter. updated filter settings Bug fixes in example file changed BPC to 160 on Frank's advice. This means pre-compute 160 filter-sinc-windows, instead of just 16. Should also fix the aliasing problem shown in mp3.com bulliten board Makefiles updated to reflect that all the ASM code has been removed and replaced with IEEE754_HACK. I'm glad to see it gone - but I didn't remove it! minor code cleanup. Fixed library problem in ReleaseGTK mode removed config.log from repository Fixes for Cygwin compiler more configure updates added configure stuff from Florian! original Makefile is now in Makefile.unix warning fixes & bumped alpha version added note about shared library --scale option added removed unecessary (int) casts some editing Enabled BRHIST in MSVC project file, and changed calls to brhist functions in encoder.c forgot to add encoder.c to cvs more 'unsigned's removed Moved BRHIST variables to lame_global_flags structure, so a library (like lame_enc.dll) can have access to the histogramming data resampling nolonger needs to quantize back to integers since internal representation of PCM samples is now floating point * Makefile, fft.c, gtkanal.c, lame.c, machine.h, mpglib/main.c, newmdct.c, newmdct.h, psymodel.c, psymodel.h, testcase.mp3, util.c, util.h: sample_t changes updated, sample_t = FLOAT * Dll/MP3EncDll.dsp, INSTALL, Makefile, Makefile.B32, Makefile.DJGPP, Makefile.MSVC, encoder.h, lame.c, lame.dsp, lametime.h, main.c, timestatus.h: added encoder.c which has the core encoding function. fixed sample_t stuff not everyone has access to Vorbis in Mark's home directory ;-) Changed return value from zero to -1 when EOF has been reached added #include trivial warning fix removed old assembler code quick hack for "sample_t is not defined" updated some libsndfile related stuff conformed all this-is-included-defines to match 'project_file_name' style Changed lame header/source to LGPL license where necessary, added LGPL header to files when applicable * Dll/MP3EncDll.dsp, encoder.h, fft.h, get_audio.c, get_audio.h, gpkplotting.c, gpkplotting.h, gtkanal.c, gtkanal.h, l3side.h, lametime.c, lametime.h, newmdct.h, parse.c, psymodel.h, quantize.c, quantize.h, quantize_pvt.c, quantize_pvt.h: Changed lame header/source to LGPL license where necessary, added LGPL header to files when applicable Removed the float/double compiler warnings * Dll/BladeMP3EncDLL.h, Dll/MP3EncDll.dsp: Small changes to the lame_enc project settings mpglib/layer2.c, mpglib/layer3.c, mpglib/main.c, psymodel.c, quantize.c, takehiro.c, timestatus.c, vbrquantize.c: Removed a bunch of signed/unsigned compiler warnings and removed const/no const assignements compiler warnings welcome to const hell Frank! shared lib support, IEEE stuff the default on i386 added mode & mode_ext support to mp3data struct, like mpglib/main.c Added lametime.c and lametime.h files to project style updates adding STYLEGUIDE machine.h, mpglib/common.h, mpglib/interface.h, mpglib/main.c, parse.c, quantize.c, quantize_pvt.c, quantize_pvt.h, tables.c, tables.h, takehiro.c, testcase.mp3, timestatus.c, util.h, vbrquantize.c, version.c: got rid of a bunch of unsigned variables. Removed the signed/unsigned mismatch compiler warnings Removed the signed/unsigned mismatch compiler warnings Switched include from mpg123.h to common.h to avoid compiler warnings warning fixes Tweaks to --nspsytune. oops, foolish bug ... TAKEHIRO_IEEE754_HACK now C99 aliasing rule compliant. it runs correctly with "-fstrict-aliasing" (GCC) fixed VBR display NORES_TEST turned back of Fixed bug in lame_enc.dll when using preset option, and return proper frame size when using MPEG-2 * mpglib/common.c, mpglib/common.h, mpglib/interface.c, mpglib/interface.h, mpglib/layer2.c, mpglib/layer3.c, mpglib/main.c, mpglib/mpg123.h, mpglib/mpglib.dsp, mpglib/mpglib.h: Added common.h and interface.h, and added the functions prototypes that should be in these files, instead of mpg123.h precompute for filter turned back on replaced upsampling filter with 19 point blackman filter typo in documentation fixed vorbis_interface.c so it would compile fixed some bugs introduced by frank. get_audio.c must count samples for .wav files. lame.c: disabling ATH is not the way to solve the problem Frank wants to solve quality adjustment for VBR old to better use --raise-smr mpglib/tabinit.c, psymodel.c, quantize.c, quantize_pvt.c, tables.c, tables.h, takehiro.c, util.c, util.h, vbrquantize.c, vorbis_interface.c: added const to all constant tables, so that they are placed in write protected RAM or in ROM (standalone DSP version). The SEGFAULT be with you (instead of debugging for hours). Also some remarks instead of changes instead of code changes. Remove them if they are fully useless. added --raise-smr <0..1> a new toy to control quality bitstream.c, get_audio.c, lame.c, lame.h, lametype.h, mpglib/main.c, parse.c, util.h, version.h, vorbis_interface.c: Some bug fixes Activated lametime.c Two types of display update now possible (old and new, depends on Makefile) brhist.c Changed display of percentages between 0.1 and 1 % lame.c: ??? version.h: include as less as possible lametype.h: First try to disentangle the #include jungle of lame (this style would be the immediate death for larger projects) al_table struct renamed al_table2 --nspsytune uses additive masking. disabled "additive masking" in subband calculation experimental mix of VBR new and old available with --vbr-mtrh added rule #1 LAME style guide modes.html was not in the repository made the test case a little longer (100k .wav file) * lame.h, mpglib/huffman.h, mpglib/l2tables.h, mpglib/layer2.h, parse.c: reverted mpglib routines back to original. please keep mpglib as close as possible to the mpg123/mpglib code that it is based on. Went back to display every 100 frames, which I prefer. went back to display every 100 frames. small adjustment correct includes for libsndfile prototypes lame.h, mpglib/huffman.h, version.h: some minor changes. Start to introduce sample_t. Changed VBR display. * fft.c, mpglib/l2tables.h, mpglib/layer2.h, parse.c, psymodel.c, version.h: fft.c: loop variables short => size_t/int layer2.h l2tables.h: formated, structure definition changed for (possible) speedup parse.c optimized sfb21 usage for presets struct al_table {} <=> typedef struct {} al_table conflict removed lame/gtkanal.c: typecast of functions ptr's mlame_corr.c, mpglib/layer1.c, mpglib/layer2.c, quantize_pvt.c, quantize_pvt.h, vbrquantize.c, version.c, version.h: Makefile: added option -pedantic USAGE: updated some remarks, added some remarks, kbs => kbps, HZ/hz => Hz, space between number and unit mlame: -mf => -mj uses mlame_corr mlame_corr: First try of a program which analyzes the total file and recommend flags quantize_pvt.*: made some arrays const asm => __asm__ version.* copied vom pfk1 tree mpglib/*.c added newline at the end of the file CodingStyle.c start of an CodingStyle Guide, pre-alpha lametime.* heavy system specific code should moved to this file, should not mixed with other code warning fix fixed debugging code sorry, back to old... BUG fix for possible endless loop in RH_AMP code bit faster mdct. there's some difference caused by rounding problem, but i think this is OK. bit faster putbits small fix of debugging code to combine VBR_rh with VBR_mt define RH_VBR_MTRH at compile time merging branches pfk1 with main set_pinfo calcs noise and masking of its own substitution of lame_global_flags with lame_internal_flags Bug fix for automatic file type recognition back into MAIN branch A minor bugfix of mask_add(). file to use with mlame to select different modes by pre analysing wav files. Cleanup project file a bit Small modification to the instruction, in order to compile/link with latest GTK/GDK libs Changed project file to work with latest GTK/GDK libs Fixed problem in VBR WriteTag function (it did not compile, MP3 file stream was not closed properly, wrong file name was used) Tweaks to --nspsytune. updated --nspsytune. main.c, mp3rtp.c, mpglib/common.c, mpglib/decode_i386.c, mpglib/huffman.h, mpglib/interface.c, mpglib/l2tables.h, mpglib/layer1.c, mpglib/layer2.c, mpglib/layer3.c, mpglib/main.c, mpglib/mpg123.h, newmdct.c, newmdct.h, parse.c, psymodel.c, vorbis_interface.c: LAME CVS reverted back to Aug 30 version. code before this can be checked out with: cvs update -r pfk1 mpglib/README, mpglib/huffman.h, mpglib/layer1.c, mpglib/layer2.c, parse.c, version.h: HACKING: add type proposals Makefile: layer 1 enabled mlame: flaw removed get_audio: C-Linkage problem solved layer1.c: bug fixed disabled decoding enabled, works for C/C++ huffman.c: read protect/scope protect tables using 'const'/'static' lame.h: Starting RPC support, 3 macros IN/OUT/INOUT defined Starting supported for szip compressed wave/aiff parse.c: detection of raw/wav/aiff input (proposal of RH) boolean bug fixed !=||!=||!= layer2.c: common layer1/layer2 buffer moved from layer2.c to layer1.c lame.c: bug fixed: -V9 switched to mono Auto switch to mono reported wrong compression ratio report of forced joint stereo usage *: Some spelling errors removed more modularization and clean-up, some few more to come Tweaks to --nspsytune(table optimization). * mpglib/common.c, mpglib/interface.c, mpglib/l2tables.h, mpglib/layer1.c, mpglib/layer2.c, mpglib/layer3.c, parse.c: quick fix to make mpglib compile, prolly still broken though. fixed mono bug in layer1.c? Tweaks to --nspsytune. more cleanup in VBR_rh more modularization work it is now possible to combine VBR_RH with VBR_MT small change updated remarks some bugfixes, move some functionality to two simple functions. Added support of 24 and 32 bit BE and LE AIFF and WAV files (simple support, only using upper 16 bit) marking 3 areas which seems to be buggy. code cleanup in quantize_pvt.c takehiro.c now free of lame_global_flags code clean up minor fixes get_audio: (simple) support of 24 bit PCM Replaced the different types of tabs by 3, 4 or 8 spaces Tweaks to --nspsytune. Tweaks to --nspsytune. Noise calculation using tonality is canceled. fix for i386/choose_table.nas, could not be linked removed *extremely* annoying debug. fixed related bug? should be checked if mono encoding still works! fixed conflicting prototype when LIBSNDFILE is defined small fix to previous check in set_pinfo does now the noise calculation for the frame analyzer code cleanup extended functionality and feature fix bug fix. Bug fix in final fwrite(). warning and error fixes It's important to remember the PARENT_IS_SLASH define when including files from previous dir. warning and error fixes * Makefile, get_audio.c, gtkanal.c, lame.c, lame.spec, mpglib/l2tables.h, mpglib/layer2.c, mpglib/mpg123.h, psymodel.h, version.h: Quick and Dirty: Now compilable with g++. Layer 1 and 2 decoding makes problems. structs and typedef structs with the same name. Must be patched. warning fixes * Makefile, lame.c, lame.h, mpglib/layer1.c, mpglib/layer2.c, util.c, util.h: Bugfix for 9 kbps error small typo in remark mpglib/layer2.c, mpglib/layer3.c, mpglib/main.c, mpglib/mpg123.h, newmdct.c, psymodel.c, quantize.c, quantize_pvt.c, reservoir.c, tables.c, tables.h, util.c, util.h, vbrquantize.c, version.h: * A lot of minor changes * Changed the name of structure element from 'stereo' to 'channels' if it has the meaning of 'channels'. This is so confusing, so that Rest read in 'Bad and worse programming styles' and 'job security' -- Frank Klemm small fix, lame -v x.wav did not work anymore some warning and error fixes libsndfile is now LGPL presets modified changed name of bitrate_table to index_to_bitrate added table bitrate_to_index, speedup of functions using it. gtkanal.c, lame.c, lame.h, main.c, mp3rtp.c, mpglib/decode_i386.c, mpglib/main.c, newmdct.c, newmdct.h, psymodel.c, psymodel.h, quantize_pvt.c, util.c, util.h, version.c, version.h, vorbis_interface.c: Introduction of the type sample_t for PCM samples. 'short' should not be used in the future. *** empty log message *** * debugscalefac.c, doc/html/switchs.html, get_audio.c, id3tag.c, lame.c, lame.h, parse.c, util.c, util.h, version.c, version.h: *** empty log message *** Tweakings to --nspsytune. Tonality table is optimized a little. Noise calculation now uses tonality. NSATHSCALE is decreased from 103 to 100. small tweak to RH_VALIDATE_MS small fixes Tweaks to the tonality table. vbrtest.wav is now encoded correctly with --nspsytune. parse.c: presets are taken from a table version.c: version incremented (should be done more often) * parse.c, psymodel.c, quantize_pvt.c: Changes to --nspsytune. tweak to validate MS switching criterion (to be enabled with RH_VALIDATE_MS) look for .mp3 or .MP3 when parsing input filename 2000-08-26 04:07 markt * Makefile: openBSD tweak added include sys/types to BlaceMP3EncDLL.h Borland compiler needs definitions for BOOL and DWORD. little tweak to VBR-old, side channel gets now a little lower bit skeleton sfb21 kludge, only VBR tries to get an undistorted sfb21 at lower sample frequencies it makes more trouble than we can gain from that, so now sfb21 will be ignored in VBR mode for MPEG-2 LSF. first tweak (not enabled) for M/S switching criterion messages about filters, vorbis modes moved last_time into lame_internal_flags struct byte swapping code now only used for 16 bit input files. minor gtkflag changes get_audio.c: Support of reporting all supported input file types. pe_MS was not initialized in case we don't use our psychoacoustic model LayerI+II LSF corrections * doc/html/contributors.html, doc/html/history.html, doc/html/id3.html, doc/html/index.html, doc/html/switchs.html: updated docs from Gabriel * USAGE, vorbis_interface.c: added support for the four new vorbis modes. (higher bitrates) use with the -b option. * Dll/BladeMP3EncDLL.c, main.c, mp3rtp.c: Fixed problem with writing VBR tag if user renames mp3 output file during the encoding. more prep work for vbr tag problem prep work to fix Vbrtag when user renames mp3 file during encodiing. fixes to main.c: it is supposed to be example code for how to use the LAME library - it should only include lame.h, all other .h files are supposed to be private to the encoding library. * Dll/MP3EncDll.dsp, INSTALL, Makefile, Makefile.B32, Makefile.DJGPP, Makefile.MSVC, README.B32, TODO, bitstream.c, gtkanal.c, lame.c, lame.dsp, quantize-pvt.c, quantize-pvt.h, quantize.c, quantize_pvt.c, quantize_pvt.h, takehiro.c, vbrquantize.c: changed quantize-pvt.c to quantize_pvt.c Added Boland stuff_ Amiga stuff for Makefile, updated version.h to 3.87alpha * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: enhanced lame_enc dll debugging fixed bug for LSF, ms_ratio will not be calculated for the second granule because at lower sample rates there is no second granule but the M/S switching criterion relies ms_ratio on it * lame.c, mpglib/main.c, parse.c: total frames of LayerI files was not correctly estimated for decoding * USAGE, get_audio.c, gtkanal.c, lame.c, lame.h, mpglib/main.c, parse.c: LayerI+II decoding patches bitstream.c: Table based CRC calculation code added (must be enabled to use) brhist.c: Enlighted design of the bit rate history output main.c: init of CRC Table in bitstream.c parse.c: Some parameters can be name in Hz/bps and in kHz/kbps timestatus.c: Enlighted design of the time counters lame.c: Changed screen update frequency from 50/100 frames to 2 seconds Layer1/2 related update added GTK support (frame analyzer) * mpglib/common.c, mpglib/interface.c, mpglib/l2tables.h, mpglib/layer2.h, mpglib/mpg123.h, mpglib/mpglib.dsp, parse.c: Added support for Layer 1 and Layer 2 decoding patch to prevent core dump in case big value = 576 in count_bits_long() * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h, Dll/Example.cpp, Dll/LameDLLInterface.htm: Added Lame presets to the DLL interface + added HTM document how to use the lame_enc.dll interface * Dll/Example.cpp, Dll/Example.dsp, Dll/Example.dsw, Dll/MP3EncDll.dsp: Added DLL Example major speed increase for vbr-old RH_AMP tweak, improves vbrtest.wav Add new RecordItem array, not completely finsihed yet, but it compiles code cleanup Dec Alpha makefile fix code cleanup code cleanup in count_bits_long() * doc/html/history.html, mpglib/interface.c, mpglib/layer3.c: bug fixed in mpglib error recovery from corrupt frames oops, one bug in 3.86beta. try and change this before anyone downloads source from the web site :-) * doc/html/history.html, get_audio.c, version.h: lame 3.86 beta release disabled scalefac_scale (except if -q1 is used) and make old vbr mode the default Reverted back to original definition of over_noise and tot_noise: tot_noise = is really the average over each sfb of: [noise(db) - allowed_noise(db)] and over_noise is the same average, only over only the bands with noise > allowed_noise. Album ID tag reading bug fixes * Dll/MP3export.pas, Dll/README, INSTALL, USAGE, lame.c, lame.h, parse.c, quantize-pvt.c, takehiro.c, timestatus.c, timestatus.h, util.h, vbrquantize.c: added the "--athlower n" option which lowers the ATH by n db. Added possible fix for region0_count and region1_count getting set to illegal negative values. don't worry Mark! my noise calculation wrapped by RH_NOISE_CALC define RH_NOISE_CALC at compile time to get my version of noise calculation special: -Y amp_scalefac_bands will amplify only the maximum distorted band added a few assert's Fixed amp_scalefac_bands (RH found this) * get_audio.c, mpglib/main.c, util.c, util.h: updated lame --decode to read Roel's AID stuff * INSTALL, Makefile.DJGPP, lame.spec: updated debug makefile open bsd updates to makefile Takehiro's best_huffman_divide turned back on for MPEG1 only many commits were made over the weekend. But: 1. MPEG2 encoding was broken 2. all my test cases failed. #11 is bad. #2 can be caused be general improvements, but coupled with #1 is a bad sign. I spent all of sunday tracking down the many changes, and trying to find what what the cause of what. I finally ran out of time and am going to revert some changes back to last working copy. Here is a summary: takehiro.c: newest version, except: count_bits_long uses old code (new code commented out). This code was breaking MPEG2 scfsi: uses old slen1_n, slen2_n. I will change this with the next commit. (in about 10min) best_huffman_divide: short block code breaks MPEG2. short block code is still there, but disabled. quantize-pvt.c: Newest version, except: all noice calculations reverted back to db. tot_noise, over_noise, ave_noise, etc. are given in db and will always be given in db. distort[], is left in units of energy, since this saves many log10() function calls. quantize.c : Reverted back to last working version, except have newest version of VBR_iteration_loop(). revert back to previous version, it creept in by accident minor tweaks long file names on in for, thanks to Ihárosi Wiktor minor change make the short block huffman coding more efficient oops MMX code couldn't compile... removed unused code restore old algorithm temporary... minor coding hack and prepare for GOGO's subband filtering code debug for region0/1 which kzmi reported * i386/nasm.h, machine.h, quantize-pvt.h, takehiro.c: i hope this fix make intel native asm code available on VC possible endless loop for different -X modes fixed, some modes do not minimize "over" and would never reach over == 0 in some rare cases small "fast encode" fix fixed typo fixed somehow messed up noise calculation small bug fix small fix Changed lame_decoder() to write native endian format when not writing WAV header (-x will byteswap). removed some print statements fixed rare bug with -X0 getting stuck in a loop when over>0 and over and over_noise didn't change from one iteration to the next. updated docs -t: disables Xing header for encoding, disables WAV header for decoding * vorbis_interface.c: vorbis interface fixes updated some DJGPP stuff added some comments about decoder/encoder delay, add mingw32 support. using windows.h. add non-UNIX environment support. (NOUNIXCMD) specifying UNAME,ARCH,PGM on command line is available. oops, fixed typo fixed problem with Roel's clips.wav file, "pseudo endless loop" problem now gone maybe the annoying spikes too? moved calc_xmin out of VBR_noise_shaping moved xr34 calculation out of VBR_noise_shaping changed analog silence detection from granule based to frame based hacked in a first digital silence treatment per granule (can be optimized) round about 8 percent faster on my Pentium 200 machine moved some stuff into lame_init() to make someone happy ;) Changes from Kimmo: split lame_init_params() into 3 smaller routines. This somehow fixes some crashes on PPC (which OS?). * USAGE, lame.c, machine.h, main.c, mpglib/common.c, mpglib/mpg123.h, quantize.c, util.c: Mac patches. (in an #ifdef macintosh) analog silence treatment like in old VBR minor tweaks OK found what was wrong, should work now * lame.c, quantize.c: Reverted back to older version of quantize.c becuase version 1.137 broke some of my CBR test cases. made scalefac_scale always on for all vbr modes Takehiro's scalefac_scale now default for old-VBR, no more -q1 necessary updated makefile for Dec Alpha Linux c++ name mangling fix, type in USAGE critical band width formula added tuning for vbr_mt to fix chirp from John Dalton better tuning for ABR mode * gtkanal.c, mpglib/main.c, quantize-pvt.c, quantize.c, vbrquantize.c: bug in frame analyzer (causes hangs near eof) fixed better resyncing during mp3 file initialization in mpglib tuned new VBR so Roel will be happy :-) timestatus overflow fix more updated for DJGPP I forgot to commit fft.h. (by Naoki Shibata) Added --nspsytune command line option. This should solve vbrtest problem. (By Naoki Shibata) additional help for ID3-style comments in Ogg Vorbis output from a patch by Ralph Giles don't add ID3 tags to Ogg Vorbis output partial support for ID3-style comments from a patch by Ralph Giles long time BUG in old VBR fixed, preventing LAME from using more than 2500 bits per channel 8bit .wav files supported. little VBR-old speed up (upto 10%) updated DJGPP stuff from Chris Wise more "old-VBR" tuning Should now work for GCC. DLL uses now the same VBR routine by default as the EXE minor changes code cleanup make id3tag.h dependent on lame.h instead of the other way around updated version to 3.86 alpha old VBR silence bug fixed oops, 1 bit forgotten old tot_noise and over_noise are obsolete. tot_avg_noise and over_avg_noise were renamed as tot_noise and over_noise. * USAGE, VbrTag.c, doc/html/id3.html, id3tag.c, id3tag.h, lame.c, lame.h, main.c, mp3rtp.c, parse.c: ID3 version 2 tag support keep CRC bit for additional Xing-VBR frame *** empty log message *** lame 3.85 beta release (old VBR mode back to being the default) * machine.h, psymodel.c: added note about FLOAT8 = float breaking certain features *** empty log message *** updated mid/side demasking thresholds with takehiro's formula more tweakes to ATH/PE calculation. psymodel.c uses additive masking so ATH needed a *= numlines. added ATH threshold to PE calculation. code so that ATH can be used for PE formula Makefile updated so float8 = double short block re-ording complete! all routines updated, but not cleaned up: it is now possible to merge most short block and long block loops code cleanup integer based padding routine code cleanup re-order short blocks data storage. in preperation for takehiro's asm routines old VBR no ATH bug fixed 2000-07-01 13:52 robert code cleanup made switch between default VBR modes easier, look into lame.h 3.85 alpha (CVS) version: new vbr mode is the default still bugs trying to make 3.84beta release i screwed up the 3.84 beta release, lets try again. making old vbr mode the defailt, temporarily * version.h: *** empty log message *** makefile: -DFLOAT8 is float ok, back to new vbr mode = default 2000-06-30 23:29 markt *** empty log message *** old vbr mode made the default. --vbr-old and --vbr-new options can specify which mode. This is just for the next 10min while I put out lame 3.84. CVS will then revert back to default = new vbr mode 8 bit input support (maybe works?) replaced fprintf/printf/exit() functions with macro replace printf/fprintf/exit() with macro. decode_progress() and decode_progress_finish() are added in timestatus.c. these functions are used in lame_decode(). * INSTALL, TODO: minor updates Sergey's bug fix for layer3.c MPEG2 tables Version 1.30 beta 1 put Roberts ABR -V n settings back in. fixed one bug in VBR handling of vbrquantize.c changed ABR mode: it should not be adjusting masking thresholds based on quality settings. It doesn't make sense to change the maskings if the number of bits is fixed. little improvements for experimentalX modes replace printf/fprintf and exit() in parse.c with macro abolished LAME_ASSERT(). LAME_ASSERT() macro was removed. It was replaced assert(). FLUSH_ERR() --> FLUSH_ERROR() new macros used instead of fprintf(), assert(), and exit(). Alternative printing function lame_errorf() was added. It will be called instead of fprintf() by using new macro "ERRORF" minor bugs Marks new VBR now the default, old still under there, use --vbr-old padding as in "MPEG-Layer3/Bitstream Syntax and Decoding" table correction, thanks to Sergey Sapelin Update project file (added FLOAT8_is_float define) added some return codes, removed some exits added brhist display for windows, from mremondini@racine.ra.it added default settings for FLOAT8 added code to compute numlines and bo,bu arrays instead of using table data prepare for architecture depending optimization more vorbis bugs fixed oops, if (gfc->filter_type=0) statement fixed mpglib: better resyncing code minor change Removed redundant return. more ogg updates * lame.c: ogg stuff Included get_audio.h for prototypes... Added version-check for libsndfile... * lame.c, version.c: ogg updates typo in parse.c was disabling -Xn settings something added code to compute numlines_[] mostly debugged, but not in use. only remaining psycho acoustic table data: minval (for long blocks) and SNR for short blocks. psymodel cleanup, bval[] table lookup replaced with formulas. Next step: replace numlines with formulas point added code re-arrangment in psymode.c. In preperation to replace bval[] from table lookup with formulas. bug fix for -Y VBR mode: needed to check for return code for count_bits for errors. * mpglib/interface.c, parse.c, vbrquantize.c, vorbis_interface.c: mpglib bug fix from Naoki scalefac_scale disabled for VBR modes. A new noise moded(-X 7) and a new structure to keep track of all the different noise measures, from Iwasa Kazmi new FindNearestBitrate routine, return codes for lame_init_params. font in frame analyzer, updates to USAGE updated vorbis support (mono, different samplerates) minor optimization and debug * i386/choose_table.nas, tables.c, takehiro.c: completely MMXed choose table routine. faster! added a different FFT->MDCT normalization, disabled. vorbis support Aaargh, and now it suddenly doesn't work anymore, just gives me tons and tons of bitreservoir errors. :P Ooops, fixed redefinition... TAKEHIRO_IEEE754_HACK works great now, let's put it as default. * quantize-pvt.c: Mat's ROUNDFAC fix. If #define TAKEHIRO_IEEE754_HACK is used, ROUNDFAC should be set to -0.0946 * README, USAGE, lame.c, parse.c, quantize.c: trivial changes average bitrate coding (--abr) usage added Safe VBR mode available as --abr x, targetting x kbits you can use -b and -B switches as usual with VBR minor changes 2000-06-09 01:00 markt * tables.c: fixed bug in tables.c * lame.c: fix for when compiling without #define HAVEVORBIS * Dll/MP3EncDll.dsp, INSTALL, Makefile: updated makefiles for VORBIS option .ogg encoding now works. more .ogg encoding stuff. still not working * get_audio.c, gtkanal.c, lame.c, lame.h, parse.c, --ogg option to produce .ogg files. not yet working updated API to include HAVEVORBIS info makefile for libvorbis support * USAGE, get_audio.c, lame.h, mpglib/main.c, parse.c, vorbis_interface.c: added .ogg file decoding. Re-encode all your Vorbis files to MP3 !!! (or, lame --decode input.ogg output.wav might be usefull) started to add .ogg decoding mpglib/decode_i386.c, mpglib/mpg123.h, portableio.c, reservoir.c: added support for FPA10 hardware (RISC OS only) changed RISC OS file typing code spec file for RPM. contributed by ramsy@linux.or.jp updated X windows font selection (thanks Iwasa) updated testcase more aggressive scfsi using and little bit memory optimization code cleanup code cleanup SAFE_VBR mode fixes SAFE_VBR mode added. not enabled yet code cleanup code cleanup *** empty log message *** * mpglib/interface.c, mpglib/layer3.c, mpglib/main.c, mpglib/mpg123.h: code cleanup -f "fast mode" is now a little slower. It now *will* compute psycho acoustics, used for total bits and pre-echo detection. But it will not spend any time trying to find optimal scalefactors. fixed scfsi bug in vbrquantize.c code cleanup code cleanup 2000-05-30 20:02 robert * Makefile, VbrTag.c, gtkanal.c, lame.c, newmdct.c, psymodel.c, util.h, vbrquantize.c: code cleanup code cleanup signed/unsigned fixes 2000-05-30 12:00 takehiro * i386/nasm.h: some difinition added updated Makefile comment about Sun OS psymodel.c: yet another loop check added vbrquantize.c: best_scalefac_store can change scalefac values. scalefactors must be saved and restored before each call. bitstream.c: added part2_length assert check Included portableio.h for prototypes. Skip bad frames. compiler warnings fixed Private bit was not retained in VBR header, changes masking bit from 0x0c to 0x0d * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h: Some minor fixes to the DLL inteface, added Write VBR tag prototype Added LGPL header to *.h file Set proper defines in the debug mode * mpglib/layer3.c, mpglib/main.c, mpglib/mpglib.h: parent_is_slash #define, for the Amiga * brhist.c, machine.h, mpglib/interface.c, psymodel.c: fixed loop problems with large --cwlimit makefile now -O3 (linux) by default * Makefile, USAGE, mpglib/interface.c, psymodel.c, quantize.c, reservoir.c, vbrquantize.c: code cleanup restored old GCC asm routine * Makefile, i386/choose_table.nas, i386/nasm.h, takehiro.c: initial MMX implementation attempt.. use MMX to huffman coding. more pseudo SIMD code testcase update for new scalefac_scale pseude SIMD countbit routine preparing for MMX oops, foolish typemiss... scalefac_scale debug and use it as default new subblock_gain algorithm (initial release, -Z to enable it, but not works fine) minor changing 2000-05-27 03:07 takehiro * quantize-pvt.c, quantize-pvt.h, quantize.c: scalefac_scale debug and use it as default new subblock_gain algorithm (initial release, -Z to enable it, but not works fine) vbrquantize.c work Fixed a bunch of errors that must have been committed whilst sleepwalking. ;) moved WAV writing routines and lame_decoder() into get_audio.c another bug in WriteWav tweaked .wav file output. Fixed small bug in short block bit allocation (thanks Iwasa!) mpglib/interface.c, mpglib/main.c, vbrquantize.c: updated frame analyzer to show difference between original/decoded updated --decode to return bitrate, samplerate, numchannels. if samplerate or numchannels changes in mp3 stream, --decode will quite with an error message * gtkanal.c, gtkanal.h, mpglib/layer3.c, quantize-pvt.c, vbrquantize.c: tweeks to frame analyzer: added preflag display Fixed silly bug preventing mp3input working together with libsndfile. fixed a bug in the frame analyzer: was rescaling axis between plotting energy, masking and noise Changed decwin to more precise one. make IEEE stuff the default on GNU i386 fwrite() returns number of objects actually written fixed bug for mono .wav headers for lame --decode GNU C ASM code is temporarily disabled. It looks like Takehiro's changes to 1.107 have broken this code. * mpglib/common.c, mpglib/interface.c: more robust frame resyncing more robust mpglib decoding (frame re-syncing) TAKEHIRO_IEEE754_HACK should not be default PRESET tunings: + after we dropped the ISO 7680 bit buffer limit + for MPEG2.5 allow more often short blocks - dropped all highpass filters, cos the - tuned some lowpass filters cos of the sfb21 comments and other code cleanup new scalefac_scale algorithm option changed -Y -> -Z new scalefac_scale algorithm new scalefac_scale algorithm. enables with -Y option. VBR bug related sfb22 fixed VBR bug related sfb22 fixed minor tweaks VBR hack totbit buffer overflow fix choose_table() argument is int *, not unsigned * * bitstream.c, main.c, mpglib/main.c, util.h: mpglib will not decode Xing VBR header. write_timing changed to unsigned long to allow encoding more than 4 hours at 128kbs. .wav output with --decode was putting wrong filesize in .wav header. updated version.h lame 3.84 alpha (CVS version) updated history for 3.83beta lame 3.83beta possible serious buffering problem fixed. LAME buffers input data until it has at least 1904 samples. It then starts processing them. The old MDCT routines processed 1728 samples and had a delay of 528. (introduced in 3.54) But the new MDCT routines, because the delay is so small (48 samples) actually need 2014 samples to be in the buffer! If you use the lame input routines, for MPEG1, this bug would not be found because the buffer always has well over 2014 samples in it. But it was possible to trigger it in MPEG2 encodings. It would also be possible to trigger this bug in programs that use lame_enc.dll and pass LAME data that is not in chunks of 1152 samples. tweaks to psymodel initialization more work on vbrquantize.c more work on vbrquantize.c updated decoder to remove initial delay lame --decode now outputs .wav files file length in header is set to 2^32-1, since we dont really know ahead of time how many samples are in the mp3 file. calc_noise1 will compute noise (and related info) for last scalefactor band frame analyzer displays more data in scalefactor band 22 modified frame analyzer to show last scalefactor band, energy and masking (from the ATH). distortion is not yet calculated in this band. Possible fix for recent VBR/sweep bug: min bitrate not strictly enforced with -F, and analog silence was only being computed up th 16khz. moved framenum, totalframes into lame.h (so programs which use libmp3lame can compute statis info.) more coding hack. Changed M_PI to PI Naoki's short block mdct and more my coding hack for mdct mdct_long coding hack * lame.c, newmdct.c, util.h: code cleanup * doc/html/history.html, newmdct.c: more work in mdct_long and window_filtering updated version to 3.83 alpha * API, README, doc/html/history.html, version.h: version 3.83 dirty hack for IEEE 754 FPU Fixed problem with build date string, temp string was not initialized properly (was missing a terminator character) Naoki's mdct_long with my coding hack. Added NOTERMCAP define and changed brhist.c accordingly. *** empty log message *** * doc/html/history.html, quantize-pvt.c: updated side channel 320kbs fix M/S reduce_side bug fixed, nonISO buffer mode should work now for 320 kbits MS streams too Bumped up version number of DLL version library, fixed some of the debugging code * doc/html/contributors.html, doc/html/examples.html, doc/html/id3.html, doc/html/index.html, doc/html/lame.css, doc/html/node5.html, doc/html/node6.html, doc/html/switchs.html: updated docs from Gaby 3.82 alpha(CVS) version * doc/html/history.html, version.h: 3.81beta release removed ISO buffer limitation, added --strictly-enforce-ISO option started work on vbrquantize.c -F option now working, updated Makefile for DOS new IDCT32 routine from Naoki and optimized by me. and more thread safe coding. updated testcases * Dll/MP3EncDll.dsp, l3bitstream-pvt.h, lame.dsp: updated project files (for removal of ISO code) removed all ISO code updated version to 3.81 alpha 1 (CVS version) updated makefile for beta release * doc/html/history.html, version.h: updated version for 3.80 beta release added -F option and compression ratio options --freeformat option added. Allows lame to write free format bitstreams * bitstream.c, gtkanal.c, lame.c, mpglib/interface.c, mpglib/main.c, parse.c, psymodel.c, quantize.c, util.h: fixed buffer overflow in bitstream.c, some improvements to mpglib mp3 playback Update workspaces free format mp3 decoding now supported, not fully tested new count bits routine, speed up by coding hack. updated comments minor change to long block pre-echo control minor improvement to long block pre-echo control one last tweak to interface.c worked on mpglib/interface.c to make it handle free format bitstreams. (not yet working) * Dll/BladeMP3EncDLL.c, Dll/MP3EncDll.dsp: Update lame version, bug fixes to play list file generation for CBR encoding, 320kbs, dont allow main_data_begin > 0 tweaked a bunch of bit allocation on PE settings, based on tunings of testsignal2.wav and castanets.wav * Dll/MP3EncDll.dsp, bitstream.c, brhist.c, brhist.h, lame.c, lame.dsp, lame.h, parse.c, quantize-pvt.c, reservoir.c, util.h: bunch of vbr histogram tweaks, and added --athshort option for internal testing only DOS batch file to put on Win9x Desktop you can drag and drop waves on it and lame will encode them to mp3 moved where main_data_begin was corrected when padding into ancillary data added the '--decode' option moved calls to open the output file until after all arguments and other conditions are checked. disabled acillary drain (pre-frame) because of bugs at 320kbs Could be player or encoder bug - have to investigate MPEG2.5 related bug fixed fixed bug allowing more than 4096 bits in a granule lame is now (*maybe*) thread safe! * Dll/BladeMP3EncDLL.c, VbrTag.c, VbrTag.h, bitstream.c, brhist.c, get_audio.c, get_audio.h, id3tag.c, id3tag.h, l3bitstream.c, lame.c, lame.h, parse.c, psymodel.c, quantize-pvt.c, quantize.c, reservoir.c, reservoir.h, testcase.mp3, util.c, util.h, vbrquantize.c: more thread-safe work, and id3/vbr tag bug discovered by Iwasa Kasmi tweaks to vbrquantize.c updated test cases * bitstream.c, l3bitstream.c, l3side.h, lame.c, mpglib/main.c, quantize-pvt.c, reservoir.c: fixed VBR stuffing bits problem. if VBR uses a large frame, then ResvMax may become small, and we have to make sure that main_data_begin doesn't create a buffer which violates this condition. The old code wouldn't check the above, but it would pad the current frame with 0's (wasting bits) to make sure the *next* frame didn't violate the ResvMax condition. But this results in wasted bits because in VBR there is a change the *next* frame will be at a lower bitrate and thus have a larger ResvMax. mp3x.c, mpglib/layer3.c, mpglib/main.c, mpglib/mpglib.h, parse.c, psymodel.c, quantize-pvt.c, quantize.c, reservoir.c, util.h, vbrquantize.c: Removed gtk specific code from libmp3lame.a: libmp3lame.a can now be compiled to support the mp3 frame analyzer but does not require gtk to be installed. (and thus, HAVEGTK does not occure in any of the library routines). To compile the frame analyzer (mp3x) you of course still need gtk installed. another attempt at fixing mpeg2.5 xing header VBR header for MPEG2.5 fixed. tweaks to vbrquantize.c vrbquantize bounds checking removed gfc->masking_lower Robert's VBR quality control mode now the default! removed static masking_lower removed reduce_sidechannel static removed convert_mdct static variable removed static variables ATH_l, ATH_s * doc/man/lame.1, lame.c, psymodel.c, quantize.c, vbrquantize.c: removed qthr_l, qthr_s from psymodel.c fixed man pages. enabled new VBR code with -Y disabled -Z option: it was broken since subblock gains were not scaled into xrpow gtk changes new vbr quantize code mostly done! removed all static variables from get_audio.c updated HACKING updated API work on vbrquattize.c bug fixed: mfbuf overflow, and check for overflow was being done, but after the overflow and in this case the overflow was causing the check to pass. precompute 16 windows for downsampling. much faster. * bitstream.c, mpglib/layer3.c, mpglib/main.c, quantize-pvt.c, quantize.c, reservoir.c, util.c: MPEG2.5 8khz sampling rate fixes tweaked bit reservoir growth, bits on pe allocation tweaks to on_pe, side channel bit allocation switched to encoder delay of 576 *** empty log message *** Takehiro's more efficient short block huffman coding. Use INLINE dammit! ;) fixed M_PI problem scalefac_band compile fix made scalefac_band non-local * bitstream.c, bitstream.h: *** empty log message *** * Dll/MP3EncDll.dsp, Makefile.MSVC, lame.dsp: MSVC project files updated 2000-04-06 17:29 markt * VbrTag.c, VbrTag.h, lame.c, util.c, util.h: takehiro bitstream.c now on by default! 2000-04-06 16:32 markt * mpglib/layer3.c, takehiro.c: takehiro bitstream.c now working for CBR, disabled by default 2000-04-05 08:54 markt * Makefile, l3bitstream.c, lame.c, quantize-pvt.c, quantize-pvt.h, tables.c, tables.h, takehiro.c, util.c, util.h: takehiro's bitstream.c package close to being interface into lame. 2000-04-05 01:38 markt * lame.c, util.c: mode_fixed bug 2000-04-04 21:36 robert * parse.c: *** empty log message *** upsampling uses old interpolation code downsampling uses good, FIR/blackman window code loopold removed from makefile.msvc * parse.c: cwlimit parsing fixed * lame.c: default mode will use jstereo more fixes more gfc changes more thread-safe work. (moving all static variables into gfc-> struct) more massive internal changes in the goal of making lame thread safe. gfp-> user controlled varialbes gfc-> all other internal parameters. eventually all global variables which very from encode to encode need to go in here. dll finally fixed! bug in lame_enc.dll finally fixed? tweaked output display * Dll/BladeMP3EncDLL.c, lame.c: new resample routine. very slow, but much higher quality. overhauled presets: + redesign of help page + phone uses now MPEG2.5 8kHz + sw new, for short wave radio @ 11.025 kHz 24kbits + am new, for am radio @ 16 kHz 32 kbits + fm changed, 22.05 kHz 64 kbits + radio new, the old fm at 112 kbits rest minor tunings * Dll/BladeMP3EncDLL.c: *** empty log message *** more DLL updates MPEG2.5 docs * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h, l3bitstream.c, lame.c, lame.h, psymodel.c, quantize-pvt.c, quantize-pvt.h, util.c, util.h: MPEG2.5 support + added --version and --license switch + changed --help to give only most important options + added --longhelp switch to get the full options list + changed -v and -Vx, now they switch quality to 2 + changed presets: * Dll/BladeMP3EncDLL.c, lame.c, vbrquantize.c: mono encoding bug in DLL fixed removed RH_ATH/RH_SIDE_CBR code minor frame analyzer fix for VBR, removed RH_ATH/RH_SIDE_CBR code added -q option for internal testing. sets value of gfp->quality updated test case for new CVS version wingtk doc * README: updated docs * Dll/MP3EncDll.dsp, README.WINGTK, lame.dsp: new directions for compiling mp3x under windows 2000-03-30 07:55 markt * README.WINGTK: updated project files * gtkanal.c, gtkanal.h, mpglib/layer3.c: added big_values display to mp3x fixed 2 bugs: l3bitstream.c: 1. The quadruples were encoded with the wrong sign: Any non-zero coefficient in the count1 block was marked as negative! takehiro.c: 2. short blocks were using a cod_info->big_values=288 (which should be 576, because big_values was multiplied by 2 in the new version of takehiro.c) * doc/html/contributors.html, doc/html/examples.html, doc/html/history.html, doc/html/id3.html, doc/html/index.html, doc/html/lame.css, doc/html/node6.html, doc/html/switchs.html: new docs from Gabriel * brhist.c, fft.c, get_audio.c, globalflags.h, gtkanal.c, gtkanal.h, l3bitstream.c, lame.c, newmdct.c, parse.c, psymodel.c, quantize-pvt.c, quantize.c, reservoir.c, takehiro.c, util.c, vbrquantize.c: removed globalflags.h * vbrquantize.c: removed "globalflags.h" missing free() calls in lame_encode_buffer_interleave oops, this may remove any seg.fault bug... Oops, I mistake count1 for big_values Fixed overflow problem with nsamp calculation. fixes to lame_encode_buffer_interleave() added assertion, cos here is a bug minor change with ms_ener_ratio_ave ms_ener_ratio_ave M/S override switch turned off changed version number. 3.80 is the next beta version, 3.70 is the stable version this is new the future version 3.81beta gfp->use_scfsi replaced by mode_gr==2 Ingo -f fast-math rounding problem fix debugged seg.fault when count1 is 576 opps, i screwed up quantize.c! fixed version * Makefile, gtkanal.c, gtkanal.h, lame.c, mpglib/layer3.c, quantize.c: disabled noise_shaping_stop=1, fixed jstereo default mode problem, updated frame analyzer Use INLINE define instead of inline. enable noise_shaping==1 when high quality mode even without -X debug seg.fault when big_values==0 best huffman divide now "more best" huffman coding. new faster lossless coding routine(especially with -h) added some code to best_scalefac_store: if ix=0 in a scalefactor band, set the scalefactor to 0 also, to save a few bits. _setmode stuff for windows * lame.h, mpglib/layer3.c, quantize-pvt.c: fixed MPEG2 tables in mpglib, added more accurate mp3buffer size bound in lame.h *** empty log message *** * Dll/MP3EncDll.dsp, lame.dsp, loopold.c: removed loopold.c Removed old M/S stereo mode which uses L/R masking functions. removed loopold.c and all that other "dual channel" stuff MPEG2 VBR tag should now work * Dll/BladeMP3EncDLL.c, VbrTag.c, VbrTag.h, lame.c: Xing MPEG2 headers work uncommented options in makefile * API, Makefile, lame.c, lame.h, mpglib/common.c, util.c: strange bug with -f fast-math option under gcc: it would compute the mp3 framesize wrong, due to incorrect integer truncation. Replaced implicit integer truncation with floor() to fix this. autoconvert moved into lame_encode_buffer lame_encode_buffer_interleaved added to API minor fixes * doc/html/history.html, version.h: lame 3.66 float/double version of ASM quantize routines l3bitstream.c, l3bitstream.h, lame.c, loopold.c, mpglib/layer3.c, newmdct.c, newmdct.h, psymodel.c, psymodel.h, quantize-pvt.c, takehiro.c, util.c, util.h, vbrquantize.c: replaced all "gf." by gfp-> fixed bug in lame_encode_finish: if user informs lame that mp3buffer has size 0, lame will not check to make sure the mp3buffer is big enough to store the encoded data * Dll/BladeMP3EncDLL.c, lame.c: Fixes to the lame DLL encoder: If last frame is too short, set number of output bits to 0 instead of -1 Don't disable the bWriteVBRTag flag if input file is null Byteswapping (-x) didn't work when using LIBSNDFILE Fixed typo in define. Erk, didn't spot the array/pointer relation, restored to previous version. b[] is a pointer, so supply addresses of pcm_l&r. VBR was displaying MPEG2 bitrates - fixed. added note to machine.h * doc/html/history.html, version.h: uncommented gcc ASM code uncommended the GCC ASM code for quantize_xrpow() updated history * amiga_mpega.c, get_audio.c, lame.h, mpglib/main.c, mpglib/mpglib.dsp, version.h: some tweaks to API for lame_decode_fromfile * Dll/BladeMP3EncDLL.c: project file tweaks updated project files MSVC5 * main.c: updated MSVC6 branch project files update to bladedll one last change to lame_decode()... more and these really should be the last changes to the API 'gf' is no substantiated by the calling program, and passed to all lame_routines(). This is so lame can eventually be made re-entrant by putting all static vars in the gf struct. strict ansi patches from Heiko.Eissfeld updated USAGE revert back to MSVC5 * main.c, mpglib/mpglib.dsp: MSVC changes to compile lame.exe fixed CPU/playing time display bug minor changes removed filters.c, filters.h * Dll/MP3EncDll.dsp, Dll/MP3EncDll.dsw: reverting back to MSVC5 * Dll/BladeMP3EncDLL.c, Dll/MP3EncDll.dsp, Dll/MP3EncDll.dsw, parse.c: updated bladeenc dll removed fr_ps struct removed "info" sturct. Removing fr_ps struct removed more info-> variables removing some of the info-> variables Had to make a dummy break-function to make atexit() work. segfault fixed in loopold.c when count[] was zero for one channel and non-zero for the other added lame_version to the API removed some unnecessary #includes added #define LAMEPARSE to Blade project files * Dll/BladeMP3EncDLL.c, Dll/MP3EncDll.dsp: Blade dll updated to handle new interface Albert: Sorry if I broke anything, the old version is still in CVS :-) BladeMP3 changes some changes to update BaldeMP3encdll quantize_xrpow_ISO also uses tablelookup, so it also needed the "xr too big" check *** empty log message *** Robert's presets restored. polyphase filters now except filterwidth arguments. polyphase filter now supports lowpasswidth and highpasswidth option Added AMIGA_MPEGA #define, and fixed a few minor spelling errors... ;) Made sure lame_decode_fromfile() won't return an empty frame (unless there's an error). minor tweeks to compile w/o decoding library fixed RISC OS FPE support API description *** empty log message *** * Dll/MP3EncDll.dsp, Makefile, Makefile.MSVC, get_audio.c, get_audio.h, id3tag.h, lame.c, lame.dsp, lame.h, mpglib/common.c, mpglib/dct64_i386.c, mpglib/decode_i386.c, mpglib/interface.c, mpglib/layer3.c, mpglib/main.c, mpglib/tabinit.c, parse.c: More library work. Sorry to all the non-unix developers out there, but this will break all project files. (but we are very close to the end of the modularization work). New code needs the following #defines set somewhere: #define HAVEMPGLIB to use mpglib's mp3 *decoding* capibility (or AMEGA_MPEGA on amiga systems, and dont define HAVEMPGLIB) #define BRHIST to allow the display of the VBR historgram #define LIBSNDFILE to use Erik de Castro Lopo's libsndfile #define LIBSNDLAME to use LAME's minimial internal sndfile I/O #define LAMEPARSE to use LAME's command line parsing/option setting routines #define HAVEGTK to compile in support for the GTK mp3 frame analyzer polyphase filters are now working! some tuning of polyphase fiters. removed MDCT filters, sfb21 cutoff. new polyphase filters Gabriel: L/R block matching fix * doc/html/id3.html, id3tag.c, id3tag.h, lame.c, lame.h, newmdct.c, parse.c: id3v1.1 tags from Don Melton resampling moved to fill_buffer_resample() in lame.c, which has linear and 3rd order resampling patch from kimmo to remove more c++ comments, fill_buffer_linear_resample code fill_buffer routines mp3rtp uses new, simplified lame_encode_buffer interface added lame_encode_buffer, the new, prefered encoding interface minor change, exit if wrong preset type was given minor speed up (at least for gcc) moved RISC OS floating point exception part into debugging area removed unused parameter code clean up, giving an overall speed up of 3-4% minor cleanup code cleanup, removed unused parameter Fixed up the cleanup function. switched back to original bin_search_stepsize routine RH bin_search_stepsize now the default Oh, nevermind, wasn't very efficient here, proper place would be in sndfile.lib Minor fixes. Make sure input-file is closed when CTRL-C is received. * Makefile, doc/html/history.html, get_audio.c, gtkanal.c, ieeefloat.c, l3bitstream.c, main.c, mpglib/main.c, util.c: some 64bit DEC Alpha patches speed up of bin_search_stepsize, the bin_search is about 20% faster, resulting in an average speed up of 2-3%, disabled by default as it breaks the testcase further RISC OS support added minor num_samples /eof fix, ABORTFP fix, stdout mode setting fix better error message removed warning about fill up with zeros again, it is common at the end of an input file code cleanup code cleanup fixed assertion failure while flushing bitstream at end of encoding applied patch from Jeremy Hall to fix stdin problem 2000-02-19 13:33 afaber ieeefloat.c, l3bitstream.c, machine.h, mpglib/mpg123.h, quantize-pvt.c, quantize.c, takehiro.c: Fixed many warning messages when compiling with MSVC Applied patch from Mathew Hendry to avoid divide by zero Mathew Hendry: line 813 should read "#define USE_MSC_ASM" and not "#define USE_MSC_AMS" Mathew Hendry: "stray space character following the \" patched Mathew Hendry's CYGWIN gcc FPU control patch changed sizeof frame analyzer so it fits on a 800x600 screen. make --nores also set info->padding = 0. Avoids problem with small changes in frac_SpF causing different padding patterns and mp3 file differences. code clean-up, it seems the SIGFPE exceptions are gone Fixed INLINE define for SAS/C. Include machine.h so that needed prototypes get added. new quantize xrpow for PowerPC patches for risc_os forgot to save plotting data for best quantization in VBR_iteration_loop VBR_iteration_loop speedup, removed extra quantizations *** empty log message *** some non-initilized memory patches bug in ms_convert fixed when source and target are the same Mathew Hendry's quantize-xrpow gcc asm patch missing line added Intialize float arrays to avoid floating point errors when ABORTFP is set Added floating point trapping code for MSVC compiler Intialize tot_ener to avoid floating point errors merged takehiro2 branch back into main branch. there is still a floating point exception which I cannot track down. * doc/html/contributors.html, doc/html/examples.html, doc/html/id3.html, doc/html/index.html, doc/html/switchs.html, psymodel.c, takehiro.c: updated html from Gabriel modified energy calculation, fast MS fft patch should work now fixed scalefac not-initialized problem. This would happen when xr = 0 and outer_loop() was skipped. m/s fft patch was not working. added help info for --preset option and shuffled help text to bring it more in line applied Takehiro Tominaga's fast MS fft patch updated history file from web page updated version added version info to help output fixed bug in s3_s spreading function calculation. undo some of takehiro's speedup improvements until we can track down floating point exceptions some bug fixes: psymodel partition band calculations done *before* the spreading function need to use npart_l_orig. After spreading function, use npart_s_orig. 3 cases of scalefac->l[i][sfb] which should be scalefac->l[sbf][i] VBR min & max bitrate index setting problem fixed Guarded disp_brhist with #ifdef BRHIST, in order to compile with MSVC 2000-02-06 10:58 takehiro * loopold.c, psymodel.c, quantize-pvt.c, quantize-pvt.h, quantize.c: new spread matrix calculation is now default(faster!) Iwasa's changes to gtkanal.c applied Ingo Saitz command line usage patch minor code cleanup added "--preset type" option to offer users some usefull presettings that should shorten the commandline for most cases Fixed WIN32 compiler errors added '--help' option to allow DOS users to scroll thru the usage page with "lame --help | more" speed up hack on the array index. and more faster calculation minor editing some assertion bug(?) has removed more faster calculation Added MPGLIB library faster spread function calculation minor code cleanup 2000-02-02 14:58 takehiro * i386/fft.nas: merging interface testcase update fixed some minor bugs in new scalefac data structure code code clean up. changed definition of structure to optimize array index calculation scalefactor's structure changed little VBR tweaks updated comments, added lame_close_infile() more modularizaton, fixes to mp3rtp spelling error Use INLINE define instead of inline. 2000-01-30 22:53 takehiro * i386, i386/fft.nas, i386/fft3dn.nas, i386/fftfpu.nas, i386/fftsse.nas, i386/ffttbl.nas: initial check in of asm code from GOGO not working :) renamed highq quality added Felix's email to mp3rtp.c code :-) minor editing cleaned up highq option. highq=0 (best quality)... 9(worst quality) values supported so far: highq=9 (turned on with -f) highq=5 (default) highq=2 (turned on with -h) fixed bug in overflow check in count_bits introduced new RH_ATH compile switch and splitted RH_masking into RH_SIDE_VBR, RH_SIDE_CBR and RH_QUALITY_CONTROL=n (n=1,2) RH_SIDE_CBR turns off side channel reduction for CBR RH_SIDE_VBR turns off side channel reduction for VBR RH_QUALITY_CONTROL=1 plus above switches equals RH_masking RH_QUALITY_CONTROL=2 is tuned to be used with RH_ATH RH_ATH changes the definition of distortion a bit: a)PSY: noise over the PSY model threshold as average quantization noise over PSY model threshold b)ATH: max quantization noise of a single freq line over the ATH threshold of that freq line the resulting distortion is the min of a) and b) parse_args and related code moved to parse.c vbr histogram code in seperate file * Dll/BladeMP3EncDLL.c, Dll/MP3EncDll.dsp, Makefile, TODO, get_audio.c, gtkanal.c, id3tag.c, id3tag.h, lame.c, lame.h, main.c, mp3rtp.c, mp3x.c, mpglib/main.c, util.c, util.h: more modularization work. Calling program is now responsible for mp3 file output #ifdef NOPOW removed, replaced by table lookup. You can still go back to pow() function or exp() by changing the POW20 and IPOW20 macros in machine.h use lookup table to calculate pow(2.0, xx).(when not defined NOPOW) faster FFT implementation Fixed -m bug when bitrate>=160 (gf.mode_fixed was not set). comments about varius quality options Fixed bug in scale_bitcount_lsf which was severely limiting the possible scalefacters used by MPEG2. (Lionel Bonnet) minor changes Takehiro's fft_short and fft_long now the defaults. more updates from Felix Added NOPOW define, will replace certain pow()s with optimized variant. Removed faulty undef of bitwidth. window[] and window_s[]'s buffer overrun is corrected more bugs in specifigy a lowpass filter fixed. --voice mode recast in terms of lowpass filter and other options removed two c++ commends (by request) moved frameNum=0 from lame_init to lame_init_params * Dll/BladeMP3EncDLL.c, Dll/MP3EncDll.dsp, HACKING, get_audio.c, get_audio.h, globalflags.h, gtkanal.c, lame.c, lame.h, main.c, mp3rtp.c, mp3x.c: more modularizatin work. LAME can now be used as a true library, without the need to construct simulated argument lists. See HACKING for some details, and mp3rtp.c for an example. major work down towards libmp3lame.a: split out parse_args and parameter setting routines. might have broken some things... bug fix from Felix sfb21 parameter messages added tweaked filter and other encoding parameter messages fixed gtk scfsi printout - mpglib/layer3.c seems correct now. scfsi fixes to mpglib from Iwasa Kazmi scalefactor for short block last sfb(12) was wrong. Made my bug fixes against version 1.9 instead of a previous version Guarded BF_FlushBitstream function call if PartHoldersInitialized equals zero. This to avoid GPF when III_Flushbitstream is called when no data is encoder cleaned up main.c added best_scalefac_store to non -h code also little bit optimization debug message is removed... 2000-01-14 12:57 takehiro * l3bitstream.c, loopold.c, psymodel.h, quantize-pvt.c, quantize.c, to make it use scfsi *** empty log message *** version 3.61 filters were incorrectly being used under VBR more on the -k option -k option will disable *all* filtering and frequency cutoffs more VBR (RH_masking) finetuning now -V3 should give the same result as -V6 before fixed noshort option, fixed l3psycho_anal.h moved info.stereo into gf.stereo got rid of old, no longer used preemph code mpglib/main.c, psymodel.c, quantize-pvt.c, quantize-pvt.h, quantize.c, takehiro.c, vbrquantize.c: moved the rest of the global variables into gf struct * ., VbrTag.c, lame.dsp: fixed a few casting warnings Updated .cvsignore to ignore output of testcase more simple & fast scalefac_scale use and mode_gr is moved into gf structure. Fixed timestatus bug (forgot nsamp variable). * gtkanal.c, lame.c: changed axis in gtk flag Removed AMIGA_ASYNCIO, custom modified libsndfile worked better. debug for scalefactor reading with scfsi. Disabled open/close of mp3 when AMIGA_MPEGA and LIBSNDFILE is enabled. MPGLIB replacement using mpega.library. (AmigaOS) Removed AMIGA_ASYNCIO stuff for mpglib now that we got AMIGA_MPEGA. Added mpega.library support for decoding mpeg audio, enable with AMIGA_MPEGA. (AmigaOS) fixed bug in loopold: scalesave loop was using SBMAX instead of SBPSY, and exceeding bounds. globalflags update moved more globalflags into the gf. struct * VbrTag.h, get_audio.c, machine.h, mpglib/main.c, util.c: Added usage of asyncio.library for improved I/O, enable with AMIGA_ASYNCIO. (AmigaOS) * doc/html/history.html, quantize.c, testcase.mp3: updated validation testcase. release 3.60beta new test case: testcase.wav and 'official' output testcase.mp3 'make test' will perform a comparison. see makefile for details new validation procedure * doc/html/history.html, doc/html/index.html, doc/html/switchs.html: updated web pages from Gabriel VbrTag.h wasn't included on Amiga Removed INLINE from fht (will get inlined as a local function anyway) All Huffman code search algorithm is implemented. (-h option to enable this) more slower, but better quality. AAC masking function now the default. This represents less masking then the old masking function. compute mid/side energy rations in addition to masking ratios. in the future we might use this for side channel bit allocation. it is not used at all right now. someone mistakenly uncommented the call to preemphasis(). this routine should *not* be used. preemph is now taken care of in scale_bitcount. define AAC_TMN_NMT at compile time to activate AAC tone masking noise and noise masking tone values tuned VBR code, inactive until you define RH_masking at compile time added suggested compiler options for gcc 2.95.2, uncomment them to activate them changed frequencies to Lames format updated HACKING notes Robert's cw_lower_limit, upper_limit code back in. Default is compute cw[] up to 8.9Khz. set with --cwlimit started putting global variables into global_flags struct. more rtp updates more rtp updates VBR: masking lower was not set correctly it was only set for sloppy mode, fixed now Fixed BOOL definition conflict for Win32 systems added mp3rtp code. uses lame library, but not part of normal lame encoder Check for Xing header in mp3 input files updated version norm_l, norm_s table data replaced by formulas. * INSTALL, Makefile, doc/html/contributors.html, doc/html/index.html, doc/html/lame.css, doc/html/node6.html, doc/html/node7.html, doc/html/switchs.html, encoder.h, gtkanal.c, lame.c, main.c: new html from Gabriel. Fixed but that was causing the first frame to always be zero. changed encoder delay to 800 to fix some other problems and remove the buffering of the first frame in lame_encode(). * doc/html/contributors.html, doc/html/history.html, doc/html/index.html, doc/html/node6.html, doc/html/node7.html, doc/html/switchs.html: updated html doc written by Gabriel Bouvigne. * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.h, Dll/MP3EncDll.dsp, lame.dsp, mpglib/mpglib.dsp: Some fixes to the Encoder DLL: use -h instead of -k flag for high qualtiy The voice option was set in HQ mode, which is obviously not correct some foolish bug is removed :) new option "--noath" to disable the ATH masking * .: ignore mp3x binary exe. guess wiser initial StepSize for bin_search_stepsize AAC NMT/TMN values (commented out) back to oringal (ave_noise < ATH) definition of analog silence for VBR mode. added AAC spreading function (disabled by default) Bug fix in Mid/Side masking thresholds Set home page link to Lame home page went back to ISO layer III recommended cw formulas patched GPSYCHO, enable with --psy-model 0 added the --nores option to disable the bitreservoir. only usefull in special circumstances changed analog silence switch to use max_ener rather than ave_ener. only affects VBR mode: when analog silence is detected, the min bitrate is allowed to drop to 32kbs even if set higher with -b Changed M_PI to PI. (Not everyone has M_PI, but PI is always defined in util.h) first sketch of what could become PRESETS for LAME added new experimentalX quant_compare -X6 mode Takehiro's fft's back in. fft_short2(), fft_long2() will call original fft's (with one minor change: 0 protection for ax[] and bx[] was not needed and has been removed). Takehiro's routines are fft_short() and fft_long(). They dont give bit-for-bit identical answers, and I still want to track this down before making them the defaults. . changed filter options updated version to 3.58 grrr, mist some filter comandline combinations :( fixed filter commandline parameter inconsistencies removed extra #define's related to PI Added new PI and LOG predefined variants, and stuck them in at respective places. added low/highpass filter switches added highpass filter similar to lowpass filter fixed lowpass filter to avoid endless loops fix for filenames containing spaces * .: added lame binary executable itself little bit good subblock_gain calculation. and nint2 is removed. little bit clean up. some variable restoring is removed. PRECALC_SIZE bug? PRECALC_SIZE should be 8191+15+1, since max value of xr/ix is 8191+15. cod_info-> should be cod_info[ch]-> Oops, stepsize history was not recorded. initial value of binary search is separeted by channels. maybe faster bin_search_stepsize Removed write_ancillary_data() prototype. (No longer used) Included the correct quantize header. (quantize-pvt.h instead of quantize.h) Adjusted PI/SQRT2 precision. (SQRT2 deviated from standard math.h value) Fixed M_PI/M_SQRT2 to work on all platforms. Removed unused INLINE. debug about scfsi treatment fixed display bug for VBR histogram under ncurses. Now termcap is replaced by the more modern ncurses. avoid bounds check on xr[] for non-hq mode, from Mat. spelling error in psymodel.c fixed :-) *** empty log message *** debugged possible buffer overrun. No GTK on Amiga. :( Removed redundant __buffsize (SAS/C (AmigaOS)) removed -.5 from quantize_xrpow backed out takehiro's fft changes for now added latest quantize_xrpow asm from Acy and Mat lookup table integration Fixed compiler errors maybe faster FFT coding foolish mistake has removed :) little bit cleanup correct adj43 overrun(maybe) * Dll, mpglib: Added .cvsignore files in sub projects * ., gtkanal.c, lame.dsp, mpglib/mpglib.dsp, util.c: Added Win32 specific output files to .cvsignore updated project files to set proper output directory and fixed alignment problem between mpglib project and lame project, now all modules have 8 byte alignment in all configurations * .: configure ignoring *.d file And more cleanup. needless variable store/restores are removed. little bit code cleanup(deleted needless call of scale_bitcount) sorry, it is not bugfix of "TOO LARGE quantizerStepSize" ;p removed unused VBRbits from non-VBR quant routines scalefactor preemph *correctly* turned back on scalefac pre-emph turned back on in loopold.c MS stereo switch slightly improved: old formula was based on the average of ms_ratio of both granules. New formula uses ms_ratio from both granules and the previous and next granule. This will help avoid toggleing MS stereo off for a single frame. Long runs of MS stereo or regular stereo will not be affected. also fixed a bug in frame analyzer - it was accessing l3_xmin in the last scalefactor (l3_xmin and maskings are not computed for last scalefactor) * Dll/MP3EncDll.dsp, lame.c, lame.dsp: More fixes in order to compile under Win32 Fixes to compile under Win32 * Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.def, Dll/BladeMP3EncDLL.h, Dll/MP3EncDll.dsp, Dll/MP3EncDll.dsw: Update of Blade DLL interface in order to support new lame features updated comments ASM routines (gcc & MSVC) for quantize_xrpow If analog silence is detected, allow VBR code to over ride the VBR_min_bitrate setting and encode at 32kbs. More accurate quantization from Segher Boessenkool fixed allowable bitrate displays 1999-11-24 08:45 markt * ., COPYING, Dll, Dll/BladeMP3EncDLL.c, Dll/BladeMP3EncDLL.def, Dll/BladeMP3EncDLL.h, Dll/MP3EncDll.dsp, Dll/MP3EncDll.dsw, HACKING, INSTALL, LICENSE, Makefile, Makefile.MSVC, README, README.WINGTK, TODO, USAGE, VbrTag.c, VbrTag.h, auenc, debugscalefac.c, doc, doc/html, doc/html/contributors.html, doc/html/history.html, doc/html/index.html, doc/html/lame.css, doc/html/node5.html, doc/html/node6.html, doc/html/node7.html, doc/html/switchs.html, doc/man, doc/man/lame.1, encoder.h, fft.c, fft.h, filters.c, filters.h, formatBitstream.c, formatBitstream.h, get_audio.c, get_audio.h, globalflags.h, gpkplotting.c, gpkplotting.h, gtkanal.c, gtkanal.h, id3tag.c, id3tag.h, ieeefloat.c, ieeefloat.h, l3bitstream-pvt.h, l3bitstream.c, l3bitstream.h, l3side.h, lame.c, lame.dsp, lame.dsw, lame.h, loopold.c, machine.h, main.c, mlame, mp3x.c, mpglib, mpglib/Makefile, mpglib/README, mpglib/TODO, mpglib/common.c, mpglib/dct64_i386.c, mpglib/decode_i386.c, mpglib/huffman.h, mpglib/interface.c, mpglib/layer3.c, mpglib/main.c, mpglib/mpg123.h, mpglib/mpglib.dsp, mpglib/mpglib.h, mpglib/tabinit.c, newmdct.c, newmdct.h, portableio.c, portableio.h, psymodel.c, psymodel.h, quantize-pvt.c, quantize-pvt.h, quantize.c, quantize.h, reservoir.c, reservoir.h, tables.c, tables.h, takehiro.c, timestatus.c, timestatus.h, util.c, util.h, vbrquantize.c, version.c, version.h: initial checkin of LAME Starting with LAME 3.57beta with some modifications