💾 Archived View for nanako.mooo.com › gemlog › 2024-05-16-a.gmi captured on 2024-05-26 at 14:54:06. Gemini links have been rewritten to link to archived content
-=-=-=-=-=-=-
Whew, progress on Benben v0.5.0 is going a lot faster than I expected 😅 But that's a good thing! The trunk currently has all of the new formats implemented except for MIDI as far as playback goes (rendering Vorbis/Opus/MPEG-1/MIDI isn't done yet), and has had high quality resampling added. The high quality rendering is especially cool to me personally since I basically hand-ported libsamplerate v0.2.2 from C to Crystal to implement it. This actually improved performance slightly since some of the things that happen in libsamplerate could be elided by moving to an OOP model. So Benben can now resample anything, and it's going to be high quality throughout.
A few more minor improvements are also finished, including tag information that scrolls (instead of just cutting off), tag fields that adjusts themselves according to the format, and files are now checked in parallel for faster startup times.
A lot of internal changes and refactoring have happened as well, including the planned changes to how the loaded configuration is handled. Because of how much has already changed internally since v0.4.1, I've decided to take a week or so off from heavy development and just heavily use/dogfood Benben as a normal user to see how it works. Though to be honest, that's basically what I do anyway XD One reason Benben was started, after all, was because I wanted a player to behave in a way that I wanted, not how others wanted. But yeah, about 55-60% of the milestone checkboxes are filled in, so now seems like a good time for a short "let's see how this is working so far" period.
Video showing Benben playing "Crystal Dreams" (crystal.s3m) by NEMO
The hard parts are finished, so it's actually probably closer to 70% done than 55-60%. Here's what's left for v0.5.0 as far as actual milestones go:
And also a few to-dos that I have written down:
You can follow the milestone progress on the associated wiki page:
And the status of the trunk code here:
--------- Page served by Aya https://nanako.mooo.com/fossil/aya/ Aya is under the GNU Affero GPLv3 license