Custom USB Audio Driver

I'm working with a USB Audio Device that has two analogue channels for input and output, and I want to add some virtual channels.

I've installed Blackhole and I can successfully create a virtual device with N virtual channels.

What I want to achieve is similar to what I would get creating an aggregate device. I want a single device that incorporates the virtual channels I get from Blackhole with my hardware analogue channels.

But the problems with aggregate devices are:
  1. They can't be private, so they can be viewed / modified / deleted by a user in Audio MIDI Setup.

  2. Both original devices that compose the aggregate device are still listed in the audio preferences (hardware and virtual).

  3. I don’t have volume control from the Aggregate Device, and have to control it from the original devices.

So the question is: would it be possible to create a custom driver which incorporates what BlackHole does (marshaling virtual channels) while providing the class-compliant hardware channels as a unified device in Audio MIDI Settings?
Custom USB Audio Driver
 
 
Q