Benben v0.7.0 is now released!
- Benben AppImage for x86-64 Linux: download
- SHA256: f680836554155ae58cd876a7184cb797dd57fb369660d186e25054bff66607de
- GPG Signature
- remote-benben v0.3.0 AppImage for x86-64 Linux: download
- SHA256: 8c7496fddbe44a10feb4e0cbab7b733e008dbdf998adda3092437587ecfb8366
- GPG Signature
- Updated manual: HTML and PDF
- For source code, clone this Fossil repository and checkout v0.7.0
fossil clone https://chiselapp.com/user/MistressRemilia/repository/benben/ && cd benben && fossil checkout v0.7.0
- Want to build from source? Check out the Building page for instructions.
Changes and Features
- Rewritten in Common Lisp. Read this post and this post for insight as to why this was done.
- Breaking change: The TCP driver format names have changed.
- Breaking change: Format-specific command line arguments are now prepended with their name (e.g., --vgm-* for all VGM-related arguments).
- Breaking change: The reverb preset names have changed. See the manual for the new names.
- Breaking change: The resampler names have changed slightly. For example,
sync_fastest is now sync-fastest. See the manual for the new names.
- Breaking change: "schroeder" is no longer selectable as a reverb type for midi playback.
- Breaking change: The PulseAudio and PortAudio drivers have been removed. You can use the libao or out123 drivers as a substitute for these.
- Breaking change: Benben can no longer render to QOA or WavPack. Use XQATool (for QOA/XQAF) or the wavpack command to convert WAV/Au to these formats instead. Removed to better fit within a Unix-style philosophy.
- New: Added the ALSA driver.
- New: Added the out123 driver.
- New: Added the --basedir argument.
- New: A DC offset filter is now available. This can be enabled with the
--dc-filter option, or in the config with the dc-filter key. It is enabled by default. The --no-dc-filter option has also been added.
- New: The
--ui argument has been added.
- New: The
--fadeout-seconds argument has been added.
- New: The
--midi-soundfont argument has been added.
- New: The
--midi-reverb-type argument has been added.
- New: An alternative UI, the "Minimal UI", has been added. This is bare bones: it just prints information as the tracks change, and you have to control Benben with the remote-benben program. This UI also works perfectly in Emacs with Slime ^_^ The Original UI still exists, of course, and is still the default.
- New: ListenBrainz support added.
- New: Added the
--no-listenbrainz command line options.
- New: Added the
--vgm-strict-gd3-loading command line option.
- New: Support for the Extended QOA Format (XQAF/XQA, .xqa) has been added.
- New: You can now set the banner animation in your config file.
- New: Added the
max-file-size config option to the vgm configuration section of the config file.
- New: Added the
post-track-seconds config option to the modules config section.
- New: Added the
--no-song-configs command line option.
- New: Added the
--start-paused command line option.
- New: Added the
display-loop-times-separate key to the ui section of the config to display the time-per-loop in the song queue area as well as the total time.
- New: Pressing the upper-case
U key now toggles "pause after current" in the Original UI.
- New: Added the
recurse-directories config option, and associated --recurse and --no-recurse CLI options, for recursively adding files in subdirectories.
- New: Added the
--vgm-dmg-boost-wave-chan, --vgm-no-dmg-boost-wave-chan, --vgm-ym2612-pseudo-stereo, and --vgm-no-ym2612-pseudo-stereo arguments.
- New: Added the
--sid-mono and --sid-def-length arguments.
- Enhancement: SoundFont paths are now checked earlier at startup, and regardless of if MIDI files are being played.
- Enhancement: The remote control socket is now removed properly when ctrl-c is used.
- Enhancement: VGMs with GD3 tag size mismatches are now more thoroughly handled.
- Enhancement: ReplayGain, when present in the metadata, is now applied to WavPack, MPEG-1, Vorbis, XQA, Opus, and FLAC.
- Enhancement: The progress bar will now print 'fading' when the song is being faded out.
- Enhancement: On platforms that support it, SIMD processing is now performed to speed up a few sections of code.
- Enhancement: Initial file checking is now done in parallel and is sometimes much faster.
- Enhancement: Much faster response times to remote-benben requests.
- Enhancement: The internal design has been streamlined, and a lot of duplicated code has been removed.
- Enhancement: When the driver is
any, and the default fails, then Benben will continue to try other drivers.
- Enhancement: A running total of the total elapsed time is now shown at the bottom of the screen.
- Enhancement: The state of Repeat List/Stop After Current/Pause After Current is now shown at the bottom of the screen next to the CPU usage.
- Enhancement: VGMs now support seeking.
- Changed: The default resampling mode is now
linear.
- Changed: When the driver is set to "any", it now defaults to out123 first, then ALSA, then AO.