I was almost ready to post a build but bumped to a Microsoft caused issue a few days ago. The latest build on Windows has been done with Visual Studio 2015 which has added an annoying problem of how the software built with it it supposed to be deployed to other computers. It would basically be going back to how things were with Visual Studio 2008 and how I had to tell people to install the Visual Studio runtimes before trying to run HourGlass. Isn’t it great how progress progresses from 2008 to 2015? Oh wait…
I am going to see a for a while if Microsoft will again make it possible to distribute the Visual Studio runtime DLLs directly in the application’s own directory. If they won’t make that possible, I will have to revert back to Visual Studio 2013.
Oh and as a sidenote to Windows XP users…Sorry, that age is now over. HourGlass 1.5.0 won’t run on Windows XP, no matter if it is built with Visual Studio 2013 or 2015. Microsoft says it’s still possible to build for Windows XP with the newer Visual Studios, but I’ve never got that actually to work and I am not really interested anymore in spending time and effort on that. I certainly don’t love Microsoft and everything new they do (as evidenced by the above displeasure with VS2015 and I doubt I’ll be getting Windows 10 either), but sticking with Windows XP just doesn’t seem reasonable to me anymore.
OK, time flies by so fast…I haven’t extensively worked on the next HourGlass release lately, but it will appear at some point. I’ve been distracted remixing an old composition of mine from 1998 into quad. And there’s been no need to use HourGlass or its new multichannel capabilities for that.
I suppose I could put out an alpha release in the coming days. I know there are still bugs that are related to the multichannel stuff, but the alpha would at least give a taste of the new HourGlass version. And maybe some bugs that are not already obvious to me could be discovered by other people than me. Also I could consider some feature suggestions.
Finally did some tests with per-fragment panning!
At the moment I am not entirely sure how effective this is sound-wise. The panning movements within the individual fragments can get easily lost when many voices are playing at once or when the fragments are short etc…My initial hunch that the static pan positions per fragment are enough for HourGlass might be right.
The additional CPU load might not be too much though and the per-fragment panning can also be turned off. For now this is just doing a simple linear interpolation (straight line) between 2 pan coordinates. Allowing more complicated paths might be more interesting sonically, or not…
Making a suitable GUI for this may be quite involved. The solution which seems obvious at first, just letting the user draw a pan path is not really enough. Each fragment should be able to have its own panning path. But the user can’t really be expected to draw hundreds of paths etc…Now, there are solutions to this like the user drawing a few paths which are then assigned to the voices in a round robin fashion or randomly etc. But I need to think this further before making anything too complicated since it’s not entirely clear if the per-fragment panning paths even sound that interesting at the moment.
Oops, a few weeks already slipped by without any news.
I am still working on the surround/multichannel stuff in HourGlass. Still not quite ready for release. Lots of details to worry about and there probably still are plain buggy behaviors in some parts because they assume mono or stereo processing.
Still working on it! Hopefully a public release isn’t too far off.
I’ve added routing matrices to multiple places in the signal path, so monitoring and processing with various audio interface and effect/plugin configurations should now be possible.
-The audio file preview has separate routing matrices for files of 1 to 8 channels.
-Each mixer channel has a routing matrix at the output
-Each effect/plugin in the mixer has a routing matrix for both the input and output
Still working on the multichannel stuff in HourGlass.
Plugins/effects in the mixer now work to the extent that things won’t crash or sound corrupted when more than 2 channels are in use. This however was implemented rather crudely at this point, the effects are simply made to process the first 2 channels and pass the rest of the channels unprocessed. I can probably make most of the HourGlass built-in effects support multichannel processing but 3rd party VST plugins are trickier. (Many of them don’t support processing more than 2 channels.) A system would need to be implemented that instantiates several copies of the plugins and gangs the parameters etc…That will be somewhat involved to do and probably won’t make it into the initial HourGlass 1.5 release.
Some things still need to be added. Previewing the loaded sounds probably doesn’t at the moment work for multichannel files or outputs. A channel routing system should be added to the master channel. A multichannel panner DSP effect/module would be nice to have too…
HourGlass can now import and play back up to 4 channel sound files, with output panning of each of the input channels. Adding support for up to some sane number of input file channels isn’t too hard…4 was just a convenient amount to test with, that is different from 2 and isn’t something odd like 3. (The colors of the dots in the Spatialization window indicate which input channel is panned to what location in the output.)