It is currently Thu Mar 28, 2024 2:12 am


Hauptwerk on Linux

Buying or building computers for Hauptwerk, recommendations, troubleshooting computer hardware issues.
  • Author
  • Message
Offline

cyberdemon

Member

  • Posts: 2
  • Joined: Sun Dec 01, 2013 9:27 am

Hauptwerk on Linux

PostTue Feb 07, 2017 6:23 am

Yes, I know there was a long thread about this before, but it was locked. Martin's response at the time was:
mdyde wrote:Hello notdefined and sonar11,

Sorry -- at this point in time we don't have plans for porting Hauptwerk to Linux.

We do of course appreciate that there are a few people who prefer to use Linux, and who do have the level of technical expertise to be able to set up and use it for audio/MIDI, but please understand that porting to any new platform, and then subsequently maintaining and supporting it, are very, very major undertakings (it most certainly isn't a trivial task of 'flipping a switch'!) -- it costs a lot of time/work/money, and we have finite resources available to us. We have to prioritise what can do within those resources.

Thanks for your understanding.


Martin, I'd put it to you that the business case is more than healthy for a Linux version. It comes down to reliability and flexibility, especially in a professional context e.g. churches.

When the nasty little electronic organ at one of my local churches broke down, my dad, who was standing in for the organist, got chatting with the organ technician who was called round to repair it. My dad suggested replacing it with a Hauptwerk organ, as it already has a MIDI console and speaker system, and of course because my Dad is used to practicing on Hauptwerk at home with the machine I set up for him.. (We've been Hauptwerk users and customers since before it was Crumhorn Labs.. Must be almost 10 years now I think)

The technician's response was full of vitriol about Hauptwerk - It was something along the lines of:
Hauptwerk??? Don't even get me started on Hauptwerk! Those things break all the time - completely unreliable. You might not know, but they use a PC inside - a Windows PC. When I'm called out to those it's always the PC that's broken down.. etc etc

So basically, it seems as if Hauptwerk has a bad reputation, at least amongst those of us who have to repair the organs but do not have the joy of playing them.
This is because both Windows and MacOS - the only currently-supported platforms for Hauptwerk - are NOT designed to run on embedded systems (which is what a dedicated organ console is). Users can play their games, browse the web, and pick up a plethora of viruses and malware, because underneath is a powerful general-purpose computer, designed for desktop use.
Then the second problem is that you have Windows Updates (and the same for Mac) which can completely break an embedded system where you have removed the mouse and keyboard in an attempt to address the first problem.

If Hauptwerk were on Linux, then you could disconnect the network (and it wouldn't eventually complain that it can't contact Microsoft/Apple to validate its license), script everything to your liking to integrate your hardware buttons with the OS, and even set the disk read-only (with writes cached in RAM) so that nothing bar a hardware failure can ever cause the organ to break down.

And as for Flexibility, you might be interested in my setup.
I am running Haputwerk (full) on Linux (sort of). The intention was to move the console away from the big, sometimes noisy server that does all of the processing.
I have a watercooled beast of a machine, with 128GB RAM, an overclocked 8-core i7-6900K running at 4.5GHz, 8x 500Gb/s SSDs in RAID6 and a GTX 1080 which I use for games. It's running Linux (Debian Sid). (yes there are games on Linux - have a look at Steam if you don't believe me. Plenty of other people have made the business case for Linux)
Partly because it doesn't make sense to have a second high-performance PC in the house, and also because such a machine would be noisy and take up space, I have embarked on a project to try and run Hauptwerk from my Linux machine.

This is rather convoluted, because as you know, Hauptwerk doesn't actually have a Linux version.
So I am running Hauptwerk in a Virtual Machine (cheat!! I hear you shout), and I am using two raspberry Pi computers for the two touch screens.
To transfer the screens and touch events, the raspberry Pis are running rdesktop to connect directly to my virtual machine, using the domain argument to specify which virtual screen to connect to (this is a feature of VirtualBox's built-in RDP server)
To transfer the USB for the MIDI console and HASP dongle, I am using a USB-over-IP program called VirtualHere which I highly recommend - it runs on most windows and Linux architectures, and is entirely self-contained. It "just works". All USB devices on the Pi can be accessed over the network from Windows (only one client at a time of course).
So all that remains is to send the audio out from the VM. This I am doing via a USB to TOSLink adapter which I have attached to the VM using VirtualBox's USB passthrough, and the ASIO4All interface layer on the Windows side.

Unfortunately this last part is the weakest link in the chain. While ASIO4All seems to make the sound less crackly, or less likely to be crackly, it is sometimes still crackly. I'm not sure what sets it off, but it's not polyphony. Sometimes I can play full organ on Salisbury Willis Volume 3, and sometimes just one pipe will crackle and pop like Rice Krispies.
I've narrowed this down to a bug somewhere between VirtualBox and Windows 10, and limiting the VM to one CPU core helps a lot, but once it has started crackling only a reboot of the VM will fix it.

IF Hauptwerk had a Linux version, then half of this nonsense could be avoided and I could use native PulseAudio, and X11 forwarding instead of rdesktop and the whole thing would be much more reliable. It also wouldn't eat gigs of my memory even when Hauptwerk isn't in use or is running a light organ.
But what I hope would be interesting to Martin Dyde and co, is that this kind of set up would be perfect for a big-ticket professional installation of Hauptwerk, e.g. in a big church or concert hall. (Perhaps without the raspberry Pi's of course. You could perhaps use this multii-monitor thin client instead.)

Personally, I'd be more than happy to pay extra, perhaps double for a Linux version of Hauptwerk. (the base software, not the sample sets). Or else, if you're worried about having another system to support, then you could offer it to all paying customers as a "beta test" trial, with no official support or guarantees.

There's always a way forward, despite your fears about development cost. And given that your software already works well on both Mac OS (which is UNIX-based, like Linux) and on Wine (with the exception of the HASP USB Dongle for the paid versions) I expect the process of porting your software to Linux should be a smooth one.

By the way: You mentioned the need for technical expertise to use Linux for audio/MIDI. Actually Linux has come a LONG way since you last used it. MIDI is standards-based and works out-of-the box with USB interfaces, even Wine supports it (which is why the free version of Hauptwerk works) and audio is a piece of cake with all distributions moving to PulseAudio, which is a lot like the new audio framework Microsoft introduced with Windows 7. And if porting to Linux was as much time/work/money as you say it is, then how on earth could all of those games developers that you see on the above Steam store page, ever justify building for Linux? The answer is Because it is nowhere near as hard as it used to be.
Offline
User avatar

mdyde

Moderator

  • Posts: 15441
  • Joined: Fri Mar 14, 2003 1:19 pm
  • Location: UK

Re: Hauptwerk on Linux

PostTue Feb 07, 2017 7:53 am

Hello cyberdemon,

Thanks for the thoughts.

Yes -- we do appreciate that Linux could offer benefits in some situations (especially embedded installations), and there are no fundamental technical problems with porting to it. I know well what would be involved in performing such a port, and maintaining and supporting it subsequently. However, my previous reply still applies in that at this point in time, we simply don't have the manpower to do undertake it, or to support a third platform, regardless of what it was. We inhabit a small, very niche market. We also have vast quantities of other major enhancements that lots of people would very much like, and which would be very important for Hauptwerk for the future. We can only do so much.

Since decisions regarding resources (manpower, resources, funding, etc.) don't actually rest with me, it's really Brett that you would need to discuss it with anyway. If you wanted to do that then private email is probably a better way than posting in public.
Best regards, Martin.
Hauptwerk software designer/developer, Milan Digital Audio.
Offline

cyberdemon

Member

  • Posts: 2
  • Joined: Sun Dec 01, 2013 9:27 am

Re: Hauptwerk on Linux

PostTue Feb 07, 2017 8:55 am

Hi Martin

Thanks for your response! :)

So If I understand you correctly, there is no technical obstacle that you foresee making a port to Linux difficult..
May I ask, when was the last time you attempted such a port?
I agree it's not a case of flicking a switch, but there's a good chance it might be an awful lot easier than you or Brett anticipate, don't you think? And the benefits are undeniable.

Plus the support doesn't have to be as costly as you anticipate either. As I said earlier, you could easily offer it with minimal support.
Determined enthusiast users like myself really only care that it can be made to work, not that it is officially supported and they have someone to moan at when it doesn't work.
I expect that professional systems integrators and electronic organ builders are much the same - they would happily take the pain of "making it work" off your hands, because they are paid by the hour for it! As long as they can be confident that it is possible, your customers will invest the time and manpower to do it. I certainly have, with my VirtualBox-powered remote console..

So all you really need is a proof-of-concept. Getting it to compile on a new platform might take less time than it took us both to write these forum posts! Then you just need to release the minimum amount to allow someone to make it work, (along with a disclaimer that says you are not responsible for any damage they might suffer if it doesn't), and they will!

Given how much money there potentially is in professional embedded consoles, especially with real pipe-organs becoming so expensive to maintain, I think Brett would be absolutely foolish not to invest a little time and money into a Linux port.

If you post or PM me Brett's email address then I'd be happy to discuss in private. Perhaps I might even be able to help you do the port..
Offline
User avatar

mdyde

Moderator

  • Posts: 15441
  • Joined: Fri Mar 14, 2003 1:19 pm
  • Location: UK

Re: Hauptwerk on Linux

PostTue Feb 07, 2017 11:32 am

Hello cyberdemon,

Getting it to run in a basic but reliable way (excluding documentation, etc.) would not be a vast undertaking, but it would still be several man-months of work. I don't really want to get into discussing internal implementation details, but broadly Hauptwerk uses the Qt multi-platform (specifically so that it can be ported to multiple platforms now and in the future), but some of the critical parts (audio and MIDI driver interaction, memory handling, thread synchronisation and locking, etc.) are hand-coded for each platform, which is necessary to achieve the level of performance and reliability that we need.

If you want to discuss it further with Brett then you can email us via our main email address ( info [at] milandigitalaudio.com ).
Best regards, Martin.
Hauptwerk software designer/developer, Milan Digital Audio.
Offline

WWillmott

Member

  • Posts: 39
  • Joined: Sun Aug 18, 2013 8:41 pm
  • Location: Oshawa, Ontario CANADA (eh?)

Re: Hauptwerk on Linux

PostWed Feb 08, 2017 6:20 pm

Hi, cyberdemon,

I read with great interest your brief explanation of how you set up Hauptwerk to run on Linux; very impressive!

Being a huge fan and user of Linux myself (primarily due to its open source nature) I would very much like to try to duplicate what you've accomplished on my own Linux setup.

Would you be in a position to post or otherwise provide a slightly more detailed explanation of the three components that allow you to do as you have done? No doubt a bit of research on my part will be helpful along the way (and I'm very willing to do this!) but I'd be willing to bet that you've worked out some kinks on the road to your success and I'd be grateful not to have to re-invent the wheel (too much!).

Understanding that we're all busy and have varying amounts of time to spend on what is for most of us (I would guess?) an extremely enjoyable hobby, I'd be happy for any additional information you might be in a position to provide!

Thanks and all the best,
Walter
Offline

Marco

Member

  • Posts: 420
  • Joined: Thu Jul 03, 2003 5:29 pm

Re: Hauptwerk on Linux

PostWed Feb 08, 2017 6:41 pm

unfortunately realtime audio and virtualbox do not mix very well (if at all), I also have a very powerful linux main PC that I use for work and development, but there is no way to run HW or a DAW in general in a reliable and trouble free way inside a virtual machine, even with an external USB soundcard (even assuming that one finds the right one that doesn't simply hang in virtualbox, as the USB passthrough is not really passing through correctly enough in some cases which makes things hang, just curious, what USB soundcard are you using?).

I personally just have an older iMac dedicated to HW and other virtual instruments I play, it is much less of a hassle and at least for the sample set I use 8GB of ram is more than enough, and it is fast enough to not have issues with polyphony or with using pianoteq.

As much as I would also have loved to be able to have a single computer to do everything on, the reality right now seems to be that for real-time audio virtualbox is just not up to the task and a dedicated machine is needed.

In terms of linux and audio itself, despite being a long time linux user and developer (about 25 years now), after all the hassles I hit on a regular basis with pulseaudio I really don't know about wanting to port a commercial product to it. It's not hard to get something working 95% of the way, but the other 5% usually takes another 95% of the time (or more) and for something like HW you really really want it to be as bulletproof as possible.

To be honest, having been a software developer for many years in fields where high availability is paramount having a realtime program working on two platforms is already a huge undertaking!
Offline

Frank-Evans

Member

  • Posts: 96
  • Joined: Wed Aug 31, 2011 3:03 am

Re: Hauptwerk on Linux

PostWed Feb 08, 2017 8:39 pm

“The technician's response was full of vitriol about Hauptwerk - It was something along the lines of:
Hauptwerk??? Don't even get me started on Hauptwerk! Those things break all the time - completely unreliable. You might not know, but they use a PC inside - a Windows PC. When I'm called out to those it's always the PC that's broken down.. etc etc

So basically, it seems as if Hauptwerk has a bad reputation, at least amongst those of us who have to repair the organs but do not have the joy of playing them.
This is because both Windows and MacOS - the only currently-supported platforms for Hauptwerk - are NOT designed to run on embedded systems (which is what a dedicated organ console is). Users can play their games, browse the web, and pick up a plethora of viruses and malware, because underneath is a powerful general-purpose computer, designed for desktop use.
Then the second problem is that you have Windows Updates (and the same for Mac) which can completely break an embedded system where you have removed the mouse and keyboard in an attempt to address the first problem.”
Not to berate a point but…. If the organ with the dedicated Windows computer actually fits the above description then the person that built it is a hack… pure and simple…
A turnkey system using a Windows computer (I assume Mac also but I am not a Mac person) should not be connected to the internet, have games on it, have the ability for the user to install games, be subject to upgrades by the user, etc. etc. etc….
My current system I7/32Gb ram, etc. etc has been running Win 7 Pro for 2 years. It has only been on the internet once for about 3 minutes to activate. All internet connections are disabled in the bios, as well as the on board soundcard.. No software is installed other than Hauptwerk, samples sets and a few utility items that I have chosen to use if I change configurations….One switch (on/0ff type) turns on the organ and after the bootup and load of the sample set (Paramount 4/50) everything is ready to play. Same switch turns off everything.
Over the course of 2 years I have had possibly 3 mis-boots. Simply turn off the switch, unplug for 30 seconds, plug back in and turn on….
If it is more than a hobby then the computer should be dedicated to the organ and not used for other tasks. If it works when it is initially set up and works correctly, what need is there to upgrade either Hauptwerk or Windows…. If the audio system works.. you don’t need to upgrade the drivers unless there is a real reason other than messing with the system. If it’s not on the web there is no need for security patches, antivirus protection and all the rest of the stuff used on the home machine. Uninstall ALL un-needed software items and Windows runs fine until somebody messes with it.
This is currently my third Hauptwerk set of hardware…. All three have performed about the same, each being faster with more memory….
Kindest regards
Frank Evans
Offline

sonar11

Member

  • Posts: 740
  • Joined: Thu May 14, 2009 3:03 pm

Re: Hauptwerk on Linux

PostWed Feb 08, 2017 8:43 pm

pulseaudio is not what I would target, in this case I would use alsa directly. pulseaudio is another layer/mixer on top of alsa which is not necessary for HW since it would want exclusive access to the output anyway. There are many high quality, cross platform sound applications which work on linux, so that is not an issue of itself. I think Martin's comments about the custom threading code per platform is more telling; not a permanent road block, but of course not a 10 second fix either.

When I last tried this a few years ago (HW on linux) I used wine, but the problem there was that the usb hasp was not recognized so advanced version is out, along with pretty much every sample that is decently large.

I also ran into the driver issue, very few multi-channel sound cards are supported on linux it seems. I think focusrite with firewire has pretty good support. motu is absolutely hostile to linux so forget them. Most 2 channel USB sound cards are supported, just plug them in, the kernel has support for them on all the popular linux distros.
Offline
User avatar

162_Ranks

Member

  • Posts: 205
  • Joined: Thu Jan 08, 2015 12:47 pm

Re: Hauptwerk on Linux

PostWed Feb 08, 2017 10:57 pm

As an engineer I have two perspectives on this:

1) An isolated Linux system is FAR more reliable than either Windows or Mac. I have seen high-quality server hardware with a stable OS version installed go 5+ *YEARS* without reboot.

2) On the other hand, it is a software based solution. We are fooling ourselves if we think it will ever approach the reliability of pipes or even analog electronics. Maybe it is best kept for the home practice market and solutions for technologically sophisticated professional venues.

Brad
Offline
User avatar

organtechnology

Member

  • Posts: 1886
  • Joined: Sun Aug 02, 2009 4:58 pm
  • Location: DFW, TX USA

Re: Hauptwerk on Linux

PostWed Feb 08, 2017 11:32 pm

sonar11 wrote:pulseaudio is not what I would target, in this case I would use alsa directly. pulseaudio is another layer/mixer on top of alsa which is not necessary for HW since it would want exclusive access to the output anyway. There are many high quality, cross platform sound applications which work on linux, so that is not an issue of itself. I think Martin's comments about the custom threading code per platform is more telling; not a permanent road block, but of course not a 10 second fix either.

When I last tried this a few years ago (HW on linux) I used wine, but the problem there was that the usb hasp was not recognized so advanced version is out, along with pretty much every sample that is decently large.

I also ran into the driver issue, very few multi-channel sound cards are supported on linux it seems. I think focusrite with firewire has pretty good support. motu is absolutely hostile to linux so forget them. Most 2 channel USB sound cards are supported, just plug them in, the kernel has support for them on all the popular linux distros.


As for the audio interface solution, perhaps Dante will shortly be available on Linux networks. Audinate is resisting but I have seen PCIe Ethernet cards which claim to be able to operate Dante on Linux. The key will probably be the ASIO software audio module that can run on a Linux machine. Dante used as a stand-alone-audio-network over Cat5e or Cat6 can provide 64 channels of high quality audio. Windows, OS-X and soon Linux.

The problem as I see it is that both Windows and Apple OS-X spend an inordinate amount of resources servicing the GUI and the User. Much of what makes Hauptwerk such a fascinating piece of software is the interaction between the player and the organ data (sample set). These are wonderful features for a hobbyist and a worrisome set of possibilities for someone building an organ to be used in a church environment.

Every successful Hauptwerk church installation I have encountered has an organist or patron who likes the Hauptwerk sound enough to work around the computer issues. Those where the organist was either hostile or lacked the understanding of computer operation were/are having difficulty. Making the computer invisible to the user like a headless, secure Linux version would be very helpful. If that is not going to happen, as appears to be the case, the next thing would be the ability to limit access to certain functions of Hauptwerk. But as Fred points out. Window or OS-X based Hauptwerk organs do work well when left unmolested.

My2¢, ymmv

Thomas
Complete Hauptwerk™ systems using real wood consoles, PC Sound Engines, Dante Audio for Home or Church. info (at) organtechnology.com http://www.organtechnology.com
Authorized Hauptwerk; Milan Digital Audio and Lavender Audio reseller.
USA and Canada shipments only.
Offline
User avatar

mdyde

Moderator

  • Posts: 15441
  • Joined: Fri Mar 14, 2003 1:19 pm
  • Location: UK

Re: Hauptwerk on Linux

PostThu Feb 09, 2017 4:34 am

[Topic moved here.]
Best regards, Martin.
Hauptwerk software designer/developer, Milan Digital Audio.
Offline
User avatar

jbittner

Member

  • Posts: 111
  • Joined: Fri Aug 27, 2010 1:34 pm
  • Location: Chandler, Arizona

Re: Hauptwerk on Linux

PostThu Feb 09, 2017 9:45 am

cyberdemon wrote:The technician's response was full of vitriol about Hauptwerk - It was something along the lines of:
Hauptwerk??? Don't even get me started on Hauptwerk! Those things break all the time - completely unreliable. You might not know, but they use a PC inside - a Windows PC. When I'm called out to those it's always the PC that's broken down.. etc etc



I dare say when the tech goes out on any service call something is always "broken down". :mrgreen:
John B.
Allen 965 MOS 2
Zuma Group MOS-2 Midi Keyboard Encoder
Zuma Group DM Midi Stop Controller
Hauptwerk 4.2
Major I ACO
Paramount 320
Father Willis Standard 80
Offline
User avatar

polikimre

Member

  • Posts: 676
  • Joined: Tue Sep 12, 2006 7:39 pm
  • Location: USA, NC, Cary

Re: Hauptwerk on Linux

PostThu Feb 09, 2017 11:33 am

The question is: is it the hardware or the software that is broken? If hardware, then Linux won't help. I think the problem is more like taking an off-the-shelf pc with standard components, installing a medium-sized organ on it, plugging it into the MIDI output of the existing console and calling it a day.
Offline

jkinkennon

Member

  • Posts: 1208
  • Joined: Thu May 07, 2009 9:43 am
  • Location: Vancouver, WA

Re: Hauptwerk on Linux

PostThu Feb 09, 2017 11:57 am

I shudder at the thought of supporting users of a linux port of HW. I have a decent unix support and programming background, I run a linux server, and every year or two I download the latest ubuntu desktop version and give it a whirl. Invariably within an hour or so I am at the linux command line trying to accomplish simple configurations or installs that should be easy but are not. I will be using a Raspberry pi for a console menu system (and more) in the near future, so I do appreciate linux a lot though not on my desktop computer.

It's the nature of Hauptwerk that we users load new sample sets, configure and reconfigure audio, add SSDs to speed sample set loads from cache, and do a host of other modifications to suit our particular needs. If we are having difficulty with setting up headless consoles for non-technical organists then it is partly because we resist building complete consoles with fully functional stop tabs or drawknobs and instead put touch screens and a keyboard within reach. Meanwhile, supporting users who should have a working knowledge of the PC is already quite a challenge. I've been on more "stupid" service calls (EDIT: in the financial arena) than I want to count and cannot fathom the difficulty of offering linux support to a user base whose talents are more musical than technical.

While an embedded linux machine would be ideal for a few of the professional installers it would not suit the average user's desire for a flexible system and would further complicate support requirements for Martin and any support staff they might bring on in the future. A linux machine is only "embedded" to the extent that the user is prevented from working with it. We could name it "Rodgers" or "Allen". That would help a lot with the support nightmare that I've experienced from time to time with fellow users, something that Martin gets to deal with daily.

I can see two possibilities somewhere down the road. One would be a linux version of HW that was not a port but rather a more locked-down version that would appeal to professionals but would be more like the OEM version of windows -- pay for the support if you need it. The second idea would be a more focused effort to document PCs or Macs which are trimmed down to not phone home without supervision, to power on with the rest of the console, to run HW in a more "embedded mode". No, it's not as simple as doing one more port.
Offline

sonar11

Member

  • Posts: 740
  • Joined: Thu May 14, 2009 3:03 pm

Re: Hauptwerk on Linux

PostThu Feb 09, 2017 12:14 pm

jkinkennon, I think you're over thinking this :)

We're not asking HW to support linux, just to port it. Those of us who know linux would really benfit from this port. Those that shudder at the thought of a command line, well they're not going to be using linux in the first place and there is a mac option for them.

This is definitely more of an option for pro's (embedded system in a church), or for those people who are setting up a "fire and forget" system for someone else; or even for companies like Content (digital organ maker in the Netherlands) who is very friendly to HW and might want to put HW in their organs right from the factory.
Next

Return to Computer hardware / specs

Who is online

Users browsing this forum: No registered users and 1 guest