I’ve been busy! In the last couple of weeks, I’ve updated many of my projects with new versions of things. Here’s a quick rundown of what’s been happening.
BPMinus has been getting steadily better since I released the first beta a little while ago. I believe I’ve had three intermediate releases that fix a whole bunch of bugs and crashes. The current version is 0.1.7 and it includes all sorts of things that make setting Loop Start/Stop points feel much more natural. Right now, the big beast I’m battling is in the realm of optimizations. I’m trying to address a couple of performance issues, but they’re a bit challenging. Look for more on that front soon.
WPF Sound Visualization Library
Along with BPMinus changes, I’ve made some fixes and improvements in the WPFSVL. These were mostly made to address issues in BPMinus. There were a lot of changes to the TimeEditor in particular. The validation code for time inputs was a little bit wonky, but hopefully that has been improved. There was also a problem with the binding in the TimeEditor theme templates that caused some issues during theme changes. That should be fixed now!
XAML Regions has been updated – for the first time in about a year! There’s not a whole lot new here, as the update was mainly to add Visual Studio 11 compatibility. However, I did add support for XAML Regions to work in XML files – including your app.config file! I suppose I could call it XML Regions now. I know that will benefit a few of you.
That’s it for now! The upcoming weeks will bring more BPMinus updates. Enjoy!
Today, I am very happy to release BPMinus to the public. BPMinus was a tool I thought of creating a number of years back, being very dissatisfied with the the current time-stretching tools on the market. A while passed, and I was still sorely disappointed with the tool offerings out there. I decided to get to work. Very quickly I realized that this was a bigger project than meets the eye. There was a lot to understand about audio processing and even more to understand about how to create a nice user experience in such an application. BPMinus is still not a final product. I’m releasing it to the world as a beta so that I may obtain feedback, fix bugs, and implement new features with the helpful guidance of the community.
So, what does BPMinus do? BPMinus will slow your music down without changing the pitch. This is a fantastic way to practice, transcribe, and understand fast-paced and hard-to-learn songs. That’s not all it does, but it’s what I (and most people) will use it for. It also does pitch correction, analyzes BPM, and more.
The journey has been an interesting one. I started out creating the different controls I thought I would need in my application. That spawned into a fun open source project called the “WPF Sound Visualization Library.” I’m happy that a number of people out there are getting some great use out of my controls.
At some point after I had plastered my sparkly new controls on a Window, I had to start thinking about how BPMinus would become an actual usable program. This is where I must give a heartfelt and sincere thanks to my drum instructor, Dave, who was instrumental in helping me figure out what sort of features would be useful in a music classroom setting. I still have a number of his ideas in a big list to implement, but he has helped me turn BPMinus into something I hope music teachers and students will come to really appreciate.
It’s been a long time since I’ve contributed anything to the code world, but this drought is coming to an end. Soon I will be launching a little application for musicians that I’ve been working on casually over the last year or so. As part of that effort (of which you will hear more soon), I’ve updated WPF SVL with a few new controls! As always, the controls are open source and free to use in your own projects (professional or personal)!
The first new control is the equalizer. The equalizer is really just a fancy collection of vertical sliders with a few other niceties that are illustrated in the various theme files. The control’s value is an array of floating point numbers (with an element for each equalizer band) that allows you to simultaneously get and set all equalizer values.
The Digital Clock
Next up we have an LED-style digital clock display control. A lot of audio applications feature a running clock, so I thought I would introduce my own version of a fast-rendering digital clock to WPF.
The Time Editor
Finally, we have the TimeEditor control. One of the most obvious holes in WPF’s default control library is a numeric spinner control. This is a play on that control with fields for hours, minutes, and seconds (up t o 1/100th of a second). I’ve taken a stab at masking input and validating time logic (e.g., no more than 60-seconds per hour).
Grab the new controls on the WPF SVL CodePlex Site!
Hello, everyone. It’s been a while since I’ve posted anything. I have some great new stuff to reveal soon, including some nice updates to WPFSVL! However, for the time being, I’d like to redirect your attention to the blog of Phillip Givens. He’s started out with a nice article on XAML. Not XAML in the context of WPF, Silverlight, or any particular language – but XAML as a standalone language. Of course, most of us use XAML in the context of some sort of presentation framework, but it is a powerful markup language that should be evaluated for its own merits. Check it out!