Linux Audio, Music Games and the Quest to Make Fee[dB]ack Actually Make a Noise. (In Italiano a breve -spero- portate pazienza)

Inspired to write for all the wrong reasons

I guess it is time for my traditional “once every few years” blog post.

So, naturally, rather than returning with something sensible and manageable, I have decided to discuss Linux audio, neurological learning pathways, music games, PipeWire, neural amp modelling, disappearing Chromium ports, several USB interfaces and one elderly Behringer device that attempted to cremate itself on my desk.

Completely on brand, then.

If you just want to get Fee[dB]ack working go here

Welcome to Linux, Glenn! 😂

This particular rabbit hole started when I watched https://youtu.be/OqqPP7SwGcU?si=QxnyGvTe9cYG0nSu.

Welcome to Linux, Glenn!

Yes, Linux audio has historically been a royal clusterfuck.

To be fair, however, Glenn has invested years getting his Windows systems, software and hardware working exactly the way he wants. Moving to another operating system and expecting an entire professional studio built around proprietary hardware to behave identically was always going to be optimistic.

The interesting thing is that, while I was furiously typing a comment explaining that Linux was not really the problem, he arrived at roughly the same conclusion himself:

The problem is not that Linux does not support the hardware. The problem is that hardware manufacturers do not support Linux.

That distinction matters.

When I started doing audio stuff on Linux, free software was one of the few alternatives to piracy for someone with no money. It was an unbelievable pain in the arse, but I was not a professional, so I could afford to spend three days configuring something that would have taken twenty minutes on Windows.

Today, you do not need Linux to make music cheaply. There are excellent free and inexpensive applications everywhere.

Linux still offers something important, though: ownership, transparency and the possibility of keeping a functioning system alive after a manufacturer has decided that your perfectly good hardware is obsolete.

Freedom is the escape hatch.

Unfortunately, freedom is not nearly as comfortable as the brochure makes it look.

A brief history of Linux audio, or why we drink

The old Linux audio stack made a horrible sort of sense.

ALSA handled drivers and low-level access to the hardware.

PulseAudio handled ordinary desktop sound, frequently in an unholy latency-plagued mess.

JACK was the professional audio pony. It could take control of your interface, connect applications together and provide genuinely useful low-latency performance.

The slight drawback was that nothing talked nicely to anything else.

Starting JACK could make your desktop audio disappear. Changing interface might require rewriting configuration files. If an application grabbed the wrong device, the solution frequently involved killing several services and restarting them in a specific order while muttering ancient incantations.

If you wanted particularly low latency, you installed or compiled a suitably configured kernel, set real-time permissions and hoped you had not accidentally created a machine capable of locking itself solid at the exact moment you pressed Record.

It worked.

I produced things with it.

I cannot honestly say I always understood why.

Then PipeWire appeared.

PipeWire effectively gives desktop and professional audio a shared graph, while providing compatibility with the worlds that previously expected PulseAudio, JACK or ALSA. In principle, that is the solution we spent years asking for.

In practice, if you learnt Linux audio the old way, PipeWire behaves just differently enough to make you think you have suffered a minor brain injury.

PipeWire can operate the graph at a common rate and quantum, resampling streams when necessary. Its runtime settings include clock.force-rate and clock.force-quantum, which temporarily force the graph to a particular sample rate and processing quantum. Setting either back to zero releases the override.

This is sensible engineering.

Unfortunately, sensible engineering does not feel sensible when you change a setting inside an application and PipeWire quietly decides that no, we are not doing that today.

Audio hardware support, except not really

Most class-compliant USB audio hardware works on Linux.

That is why a cheap interface can sometimes behave beautifully while a far more expensive device becomes an illuminated paperweight.

The basic audio streams may work, but proprietary routing software, internal mixers, firmware tools and DSP control panels often do not. When a manufacturer provides only Windows and macOS software and refuses to document its protocol, Linux developers are left reverse-engineering the thing in their spare time.

That is not Linux failing to recognise audio.

That is the manufacturer deciding who is allowed to use the hardware they purchased.

Even on Windows, low-latency audio requires knowledge of ASIO drivers, buffer sizes, sample rates and device routing. The big difference is that manufacturers normally provide those drivers.

So, if we want serious Linux audio support, we need to stop shouting exclusively at Linux developers and start shouting at the companies selling us hardware.

Preferably before the hardware is discontinued.

Meanwhile, I still suck at guitar

I love music.

I have played guitar badly for years.

I have studied enough theory to understand fascinating things for approximately eleven minutes before they fall out of my head again.

This makes me the ideal target for music games.

I have played Rock Band 3, Rocksmith, BandFuse and now Fee[dB]ack because all of them offer the same seductive promise:

What if practising did not feel like practising?

The answer varies considerably depending on the game.

Rock Band 3 and the almost-real guitar

Rock Band 3 remains one of the greatest party games ever made. Its Pro instruments were also spectacularly ambitious.

The problem with Pro Guitar was not simply that MIDI guitar was niche.

The deeper problem was that it still was not the same as playing a real guitar.

The controller had strings and frets, and some of the coordination transferred, but the system was detecting the instrument as a controller rather than listening to a normal guitar signal. String vibration and noise could confuse detection, so I ended up dampening the strings in ways that had more to do with persuading the electronics than playing the instrument normally.

It occupied a peculiar halfway house.

It was infinitely closer to guitar than five coloured plastic buttons, but it was still a controller pretending to be an instrument.

Ambitious, clever and enormous fun.

Not quite guitar.

Rocksmith and the motorway through my brain

Rocksmith solved the obvious problem.

Plug in a real guitar.

Play real songs.

Fantastic.

The issue, at least for my particular collection of misfiring neurons, is the note highway.

It is brilliant at telling me exactly what to do now.

It is considerably less successful at making me remember what I just did.

I can follow a Rocksmith arrangement and experience the convincing sensation that I am playing it. Turn off the screen, however, and the entire thing can vanish as if somebody pulled the cartridge out of my brain.

This became more obvious when I compared it with Rock Band drums.

After playing Rock Band drums for several hours, I can strike the correct pad when the correct coloured rectangle reaches the bottom of the display. Take the screen away and ask me to maintain a basic four-on-the-floor groove autonomously, never mind a train beat, and everything becomes much less impressive.

The game has not necessarily taught me a piece of music.

It has trained me to respond to its stream of instructions.

Which leads to my completely unscientific theory:

Some music games do not teach you to play music. They play you.

The screen produces a stimulus.

I produce the requested movement.

Correct input. Correct output. Dopamine dispensed.

I am the peripheral.

When the display disappears, so does the external system that was supplying timing, sequence, anticipation and memory.

This is particularly significant for someone with AuDHD and working-memory issues. The highway becomes an external nervous system. It holds the next event for me, points to the correct action and continuously replaces information before I have to retain very much of it.

That is great for accessibility and immediate fun.

It may be less useful for transfer.

I am deliberately saying may because I have not found research directly proving that one commercial guitar game produces better learning than another. My experience is anecdotal, my brain is my brain, and a coloured motorway is not automatically bad pedagogy.

There is, however, interesting research around music reading.

Reading notation requires a musician to extract visual information while preparing future actions. A recent theoretical model describes this as “bi-temporal” processing: acting in the present while predicting what must be performed next. The research also connects notation reading with auditory-motor integration, memory, sensorimotor coupling and the gradual development of automatic execution.

That is more complicated than “Rocksmith uses fewer neural pathways”, which is the sort of phrase that sounds wonderfully scientific until an actual neuroscientist throws something at you.

A better description of what I think is happening is this:

Some interfaces emphasise immediate stimulus-response performance. Others encourage translation, prediction, chunking, recall and transfer.

Why BandFuse worked better for me

BandFuse was not perfect and did not survive commercially, but its animated tablature made more sense to my brain.

Instead of merely intercepting approaching objects, I had to interpret a representation of the music and convert it into a movement.

That additional step was harder.

It was also useful.

BandFuse’s practice tools could make you play a passage faster than the original. Once you returned to normal speed, the song suddenly seemed almost civilised.

Rock Band 3 Pro Guitar and BandFuse both felt closer to animated notation than a reaction highway. I had to look ahead, recognise shapes and relate what I saw to positions on the instrument.

Some of it remained after the screen went dark.

This does not mean animated tablature is universally superior. Standard notation, tablature, piano rolls and highways all represent different compromises. Research into sight-reading shows that visual patterns can become associated with motor actions, and even incidental exposure can produce learning of note-position-to-key-response relationships.

The interesting question is not which display is objectively best.

It is:

What does each display ask the brain to do, and does that activity survive once the display is removed?

Why I am madly in love with Fee[dB]ack

This is why Fee[dB]ack interests me.

Not because it has already solved the problem.

Because it might be allowed to explore it.

Commercial games eventually have to optimise for accessibility, retention, licensing and selling subscriptions. An open and community-led project can experiment with things that do not necessarily fit neatly into a product manager’s quarterly objectives.

Could Fee[dB]ack provide a friendly highway initially, then gradually remove prompts?

Could it alternate between the highway and animated tab?

Could it blank the display and test whether the player can recover the phrase from memory?

Could practice move between reading, hearing, imitation and recall?

Could it identify that someone repeatedly succeeds while the notes are visible but fails as soon as the visual prompt disappears?

Could it teach the structure of the music rather than simply delivering the next instruction?

For neurologically non-standard, distractible and working-memory-impaired idiots like me, that could be genuinely transformative.

And fun.

Fun is important.

People regularly design educational software that is theoretically excellent but feels like filling out a tax return while somebody plays a metronome at you.

Fee[dB]ack has the possibility of being both a game and a laboratory for different ways of learning music.

Provided, naturally, that you can get the bastard to make a noise.

So I tried Fee[dB]ack on Linux

This was where the adventure escalated.

I tested:

  • Behringer UMC204HD
  • NUX Mighty Air
  • NUX MG-30
  • Zoom G3X
  • Valeton GP-5
  • Rocksmith cable
  • BandFuse cable
  • one formerly living Behringer UCG-102

The encouraging result is that nearly everything worked on Linux.

The less encouraging result is that nearly everything worked differently.

USB input was generally possible. Note detection was generally possible. Audio output was generally possible.

Achieving all three simultaneously through the device I actually wanted was considerably more entertaining.

Fee[dB]ack is two audio systems in a trench coat

This is the critical thing I initially failed to understand.

Fee[dB]ack is obviously optimised around the simplest use case:

  1. Plug in one guitar cable.
  2. Select it.
  3. Play.

Anything more complicated requires planning because Fee[dB]ack does not really have one audio route.

It has two separate audio paths.

The user interface and backing-track playback live on the Chromium/Electron side of the application.

The guitar input, detection, monitoring and effects chain live in the native JUCE audio engine. The published desktop architecture describes an Electron application with a Chromium renderer and a separate C++/JUCE engine for low-latency audio I/O, VST hosting and real-time DSP. The project also advertises VST hosting, NAM amp modelling and low-latency audio I/O.

In simplified form:

BACKING TRACKChromium/Electron
↓PipeWire playback       
↓Audio output

Meanwhile:

GUITAR Interface capture      
↓JUCE       
↓Note detection       
↓VST / NAM / cabinet IR       
↓JUCE playback       
↓Audio output

These paths can use the same device.

They do not have to.

That is the source of much of the apparent insanity.

Move the Chromium output and you move the song, but not necessarily the guitar.

Change the JUCE device and you may move guitar detection and processing without moving the song.

Route the interface input correctly and note detection may work perfectly, while the processed guitar is being sent somewhere else or is muted inside the monitoring chain.

The result is the classic Fee[dB]ack experience:

  • the song is playing;
  • the game detects notes;
  • every setting looks plausible;
  • the guitar is completely silent;
  • the sound is inexplicably coming from the default sound card.

Nothing is necessarily broken.

You have successfully configured two independent audio systems to disagree with one another.

Progress!

The interface gauntlet

Behringer UMC204HD

The UMC204HD is class compliant, so capture appeared and worked.

Direct monitoring worked.

Fee[dB]ack detected the guitar.

The game audio, however, remained devoted to the integrated sound card until I manually rerouted the Chromium playback ports.

Once I understood the split architecture, this finally made sense. Chromium had selected the normal desktop default, while JUCE was dealing with the guitar independently.

NUX Mighty Air

The Mighty Air was useful because I could provide a dry guitar signal for clean detection.

Depending on the configuration, I could get USB guitar input or game playback behaving correctly, but persuading both paths to share the intended device exposed sample-rate disagreements and routing assumptions.

Zoom G3X

The Zoom worked, but with wonderfully inconsistent behaviour.

Configure the audio page.

Load a song.

No detection.

Restart Fee[dB]ack.

Detection suddenly works.

Why?

Because computers can smell fear.

NUX MG-30

The MG-30 also worked as an input.

Again, routing the Chromium output to the NUX did not automatically move the processed guitar signal. Changing settings could also leave the Fee[dB]ack audio page unresponsive or produce a song that loaded but refused to begin.

The most consistently successful arrangement remained:

USB device for guitar input
Integrated card for game output

Which worked, but was not what I wanted.

Valeton GP-5

The GP-5 operates at 44.1 kHz in my setup, so it required the PipeWire graph to be treated accordingly.

I eventually got guitar travel in and out through the Valeton while the game audio went elsewhere.

Also, I spent half an hour convinced that the GP-5 was broken before discovering that I had used a USB-C cable which carried power but not data.

I hate USB-C cables.

Not the connector.

The mystery.

Every USB-C cable looks like every other USB-C cable, yet one carries video, high-speed data and enough power to run a small village, while another is apparently two wires and a lie.

Rocksmith and BandFuse cables

Both cables appeared under Linux and could be used for capture.

They were not ideal low-latency interfaces in my tests, but they did function, which is encouraging for anyone wanting the cheapest possible route into the game.

A Viking funeral for the UCG-102

Sadly, one veteran did not survive testing.

My ancient Behringer UCG-102.

I plugged it in.

Nothing appeared in lsusb.

Nothing appeared in arecord -l.

Then it became warm.

Then it became considerably warmer.

Then came the unmistakable smell which means an electrical component has decided to become an incense burner.

I unplugged it before it could complete the Viking funeral it had apparently planned for itself.

Farewell, cheap and cheerful old friend.

You nearly went to Valhalla.

You also nearly set fire to my desk.

Making the bloody thing work: UMC204HD edition

This is the recipe that finally gave me a stable and understandable setup.

Node names may differ slightly depending on your distribution, PipeWire configuration and application build.

1. Start qpwgraph

Launch the patchbay first so you can watch the devices and application ports appear:

qpwgraph &

Do this before Fee[dB]ack because watching the graph change is considerably more informative than repeatedly reopening an audio-settings page and swearing at it.

2. Force the PipeWire quantum and sample rate

For the UMC204HD:

pw-metadata -n settings 0 clock.force-quantum 128
pw-metadata -n settings 0 clock.force-rate 48000

PipeWire documents clock.force-rate and clock.force-quantum as temporary runtime overrides for the graph.

At 48 kHz, a 128-sample buffer represents approximately 2.67 milliseconds per period.

That is not the total latency.

Input buffering, output buffering, converters, game processing, note detection, DSP and any additional internal queues all contribute to the total trip through the system.

For the Valeton GP-5, I instead used:

pw-metadata -n settings 0 clock.force-rate 44100``

Match the graph to the hardware before JUCE initialises. Otherwise, troubleshooting becomes an exciting mixture of resampling, silent ports and uncertainty about which subsystem ignored you.

3. Launch Fee[dB]ack through PipeWire’s JACK layer

From the directory containing the executable:

pw-jack ./feedback-desktop``

This allows the JUCE side to appear through PipeWire’s JACK compatibility environment rather than attempting to obtain the hardware through a conflicting raw path.

4. Route the guitar into JUCE

In qpwgraph, connect:

UMC204HD Capture 1    → slopsmith:in_1

This is the dry guitar input used by the native audio side for detection and processing.

5. Route the processed guitar back to the UMC204HD

Connect:

slopsmith:out_1    → UMC204HD Playback 1slopsmith:out_1    → UMC204HD Playback 2

This is the portion people easily miss.

Getting guitar into Fee[dB]ack does not guarantee that the monitored, processed guitar is returning to the interface you are listening to.

Detection and monitoring are related, but they are not the same thing.

6. Route the backing track separately

Start a song and look for the Chromium output ports.

Connect:

Chromium:out_FL    → UMC204HD Playback 1Chromium:out_FR    → UMC204HD Playback 2

Chromium is carrying the backing track and other browser-side playback.

JUCE is carrying the guitar.

Both must reach the UMC204HD.

7. Catch the disappearing Chromium bastard

There is one additional joy.

The Chromium playback ports may disappear when nothing is playing.

This means you can open qpwgraph, carefully examine the graph and conclude that the ports do not exist.

Start a song.

The ports appear.

Quickly connect them before they retreat into the undergrowth.

Then save the arrangement as a qpwgraph patchbay and activate it. qpwgraph’s patchbay can store connections and restore them when loaded; pinned connections are made persistent within the active patchbay configuration.

In qpwgraph:

  1. Start a song so the Chromium ports exist.
  2. Make the Chromium-to-UMC connections.
  3. Open the Patchbay menu.
  4. Save the patchbay.
  5. Activate it.
  6. Pin the required connections, or use Auto Pin while constructing the patchbay.

Now, when Chromium recreates its playback stream, qpwgraph has a fighting chance of reconnecting it to the correct outputs.

8. Check the physical UMC204HD controls

Before blaming PipeWire, check the interface itself:

  • MONITOR A/B: out, for playback channels 1 and 2.
  • MIX: fully clockwise toward PB.
  • Confirm that the output and headphone levels are actually raised.

The MIX control matters because direct input monitoring can make you hear the dry analogue guitar even when the software return is completely broken.

That can create the opposite illusion:

“Great, the guitar is working!”

No.

The interface is allowing the guitar to bypass the computer while Fee[dB]ack silently screams into the void.

Turning toward PB lets you verify that you are hearing the processed software return rather than the direct analogue input.

9. Reset PipeWire afterward

When you finish:

pw-metadata -n settings 0 clock.force-quantum 0
pw-metadata -n settings 0 clock.force-rate 0

This releases the forced settings. PipeWire’s documentation explicitly identifies zero as the value that allows the graph rate and quantum to vary again.

Do this now.

Otherwise, three weeks later, a completely unrelated application will behave strangely and you will have forgotten that Past You nailed the entire audio graph to 48 kHz and 128 samples.

Past You hates you and wants to see you suffer.

So where does this leave Linux audio?

Oddly optimistic.

PipeWire has not made Linux audio trivial. It has made something previously fragmented into a coherent graph, but coherent does not necessarily mean obvious.

The modern system is enormously capable.

It can connect desktop applications, professional audio software, USB devices and effects chains in ways that other operating systems often hide behind proprietary control panels.

It also lets you create an audio graph in which:

  • the guitar reaches the detector;
  • the detector confirms the notes;
  • the effects chain processes the guitar;
  • Chromium plays the backing track;
  • every connection is technically functional;
  • and absolutely none of it comes out of the headphones.

That is the Linux experience distilled into its purest form.

Fee[dB]ack itself is exciting precisely because it is not finished.

Its split architecture is currently awkward for more complex routing, but the same architecture gives it a proper native processing engine, plugin hosting, NAM support and the potential to develop beyond the limitations of earlier music games.

Most importantly, it could explore something those games only partially addressed:

How do we turn successful screen-following into music that remains in the hands, ears and brain after the screen goes dark?

I do not want only to become better at Fee[dB]ack.

I want Fee[dB]ack to help me become better without Fee[dB]ack.

If it can do that for people with distractibility, unusual learning patterns and working-memory limitations, while remaining a game rather than becoming fluorescent homework, it could become something genuinely special.

Until then, I will continue testing interfaces, chasing disappearing Chromium ports and wondering why the guitar is muted even though the game clearly knows I played the correct note.

At least I no longer need to sacrifice a goat to JACK.

Although I am keeping one nearby.

Just in case.

This post was created making extensive use of artificially stupid text generation, I apologise if the stupid doesn’t quite match that of the naturally challenged author. But I have no time, a life and still like bringing useful niche information to whoever may need it.

Linux Audio, Music Games and the Quest to Make Fee[dB]ack Actually Make a Noise. (In Italiano a breve -spero- portate pazienza)

7 string diatonic 7ths

I guess it’s time for my quadriennial blog post, so without further adoo I give you my first guitar excercise/lesson/experiment whatever.

I’ve been playing guitar badly for over 25 years now, I’ve studied theory  more times than I can remember and even understood most of it, but it never stuck. I have recently acquired a 7 string guitar and decided to pick up music theory for the umpteenth time. One of the most useful resources for 7 string guitar is Rob Silver’s blog it’s a veritable treasure trove of useful resources. For me looking at 3 notes per string major scale patterns on a seven string guitar finally opened a mnemonic I failed to ever notice on 6 string guitar. All the patterns are made from 3 2 tone strings and 4 1 and a 1/2 tone strings, check it out for yourselves. The pattern always repeats in the same order, and every position in the schematic corresponds to a diatonic modal pattern if you look at position 5 you see it the clearest 3 strings with tone-tone patterns, 2 strings with semitone-tone patterns and 2 strings with tone-semitone patterns. This order never changes, so all you need is to know where you’re starting. For example the ionian mode, or the major scale starts on the second 2 tone pattern and follows from there. I guess I’m dumb for never noticing before, but the missing string on regular six string guitars hid the pattern from me … Doh! Anyway this alone is reason enough to own a 7 string guitar!

One of the few exercises/lessons that really did something for me came about recently and it’s Rob Chapman’s “Enter the Diatonic Sweping Dragon”. This excercise combines sweeping with triad harmonization of the major scale and really opened up a whole new set of skills for me. Long story short, I wanted to construct something similar for the 7 string guitar. Also I wanted this to make good and proper use of the extra string, so out with triads and in with 7th chords and only in voicings that use all 7 strings. The end result is nothing like Rob’s beautifully simple exercise. He uses an open 6th string as the key and tonic for the whole exercise and plays the arpeggios over it on the other 5 strings. This exercise requires the use of a looper to record the harmony part first and then play the melody over it. Both parts have value, the rhythm part is a series of slow changing, but relatively hard to finger chords, particularly if you’re new to 7 string guitars, but they are rewarding there’s no point in having a seven string guitar if you don’t play 7 string chords, seriously, it makes all the difference. The melody part is just the 3 notes per string major pattern to start with, and then develops into a series of sweep arpeggios along the chord tones of the seventh harmonisation of the scale. The sequence of 8 sweeps is repeated twice, the first all the sweeps are played over the Imaj7th chord, the second round they are played over the corresponding 7th chord.

Here’s the score:

7_string_diatonic_7ths-Score_and_Parts

 

 

 

 

NUX Mighty Air

I got a new early Xmass toy for guitar, and since many of the questions I had about it while I was sniffing it out were, and are still unanswered I thought I’d put out a brief review of it here.

pic

I have been after a modelling desktop practice amp for years, ever since the first yamaha thr came out, I had a few desiderata that needed to be on the list:

  • Support for guitar and bass
  • Bluetooth control via phone app
  • USB audio interface
  • wireless
  • Stereo bluetooth speaker

The NUX does all this AND runs off its own internal lithium battery (so unplugged) for hours.

Specks are all fine and well, but does it sound good? You’re not going to throw your kemper or dumble out the window, but come on, it’s a portable (look at that picture it’s barely bigger than my phone for chrissakes!!!) practice amp, and I can’t compare it to the thrs, katanas and blackstar beams of this world because I don’t own any of them. However I got some usable sounds out of it without even really trying, and the android controller App should win prizes for its simplicity! Judge for yourself, my playing is embarasing, but other than that for a usb direct recording into audacity with nothing more than volume normalization applyed it’s pretty darn sweet! check the tunes out on soundcloud:

Rando_matt · NUX Mighty AIR soundbites

Sorry no bass clips yet, haven’t gotten round to record them yet, but whap I’ve heard so far is good. Did I mention the PC also recognises it as a usb speaker? Yes does that too!

So verdict so far? If you’re after a stupidly portable practice amp that will let you record both guitar and bass on pc with amp sims and effects and don’t need to gig with it (well doh!), buy this thing! It’s a no brainer! It’s dirt cheap compared to the competition, ticks all the right boxes and sounds great to boot.
Anything wrong with it? Of course:

  • The speakers are underpowered for the amp, it goes into speaker distortion pretty easily, particularly on bass heavy parts (but not when playing bass?!?!?), it’s easy to solve by turning the volume down, but annoying on seven string or extended range guitars because it happens way too often.
  • No tuner, not even in the app, you flipping stooges this is idiotic, update your software and do it right!

Ok I’m off to pick my guitar up and start playing without even having to think about connecting a cable, HURRAY!

Rockband Drumkit midi driver for linux with cymbal support. Driver midi per batteria rockband con supporto per i piatti.

Aggiornamento: il progetto si è spostato su questa pagina di github.

Update: the project moved to this github page.

Versione Italiana segue quella inglese.

English:   

So you’re a rockband fanatic and own one of those nice new rockband pro-drumkits with the added bonus of three cymbal pads. Suppose you’re also a free software user, like tinkering and are wondering whether you can use your new toy as an e-drumkit for midi recording purposes. Well guess what you can!

Now when I started my endeavor to get this working I came across a few solutions, the easiest was rerouting  joystick input to keyboard and using those in hydrogen, but that was not midi and didn’t have velocity. I eventually found a program here, this worked very well, but unfortunately did not support cymbals for the newer pro-drumkits and had a note mapping that was useless with Hydrogen. So I figured that seeing as I talked the talk of free-software it was high time to walk the walk! I pulled out my trusty C manual and started cursing and banging my head against the wall. Eventually, more due to the original author leaving his testing code in the source than to my hacking expertise (ok so I hadn’t written a line of C in over 10 years), I cracked it.

You can find the products of my labor on this sourceforge page. You’ll find both a standard tar.gz source package and a .deb. Instructions for compilation are in the readme file.
Continue reading →

Music production on linux: Guitar and Behringer UCG102. Produzione Musicale con il pinguino:registrazione della chitarra elettrica. Part 1:

Italiano: (English version at bottom of page)

Tanto per cominciare “SI PUO’ FARE!!!”. Io al momento ho solo un interesse molto limitato alla cosa, voglio solo applicare effetti in tempo reale alla chitarra registrare quello che suono e magari mixarci sopra qualcosa più avanti (quando ho capito come si fa). Tenete presente che Io Non Sono Un Guru (INSUG) e questa non si sogna di essere una guida (se vedete qualche vaccata siete pregati di segnalarmelo), ma solo la trascrizione di quelle che sono le mie esperienze da profano nella registrazione, il mixaggio e la produzione musicale usando software libero (o quasi se riesco provo a usare anche i pluggin vst).

Il primo problema da superare è quello della cattura del segnale della chitarra. Le schede audio da riproduzione integrate e non, sono fatte per produrre suoni più o meno fedelmente per film, musica o tutt’al più videogiochi, la parte adibita alla registrazione di segnali esterni è a malapena sufficiente per recuperare l’audio da un vecchio vinile o per fare un karaocchio un po’ scadente!

Il secondo problema è che il segnale che esce dalla chitarra è ad alta impedenza, mentre i minijack delle schede audio sia per il line in che per il microfono sono a media/bassa impedenza. Questa differenza provoca una perdita delle tonalità medie e alte dello strumento risultando in un suono piatto e smorto, per una breve spiegazione ed esempi con tanto di file audio andate qui. Per risolvere questo problema bisogna utilizzare un pre-amplificatore (come una pedaliera multi-effetto con uscita cuffia o addirittura presa usb) o una periferica apposita come il Behringer guitar link UCG102, il Line6 toneport gx o l’ M-audio fasttrack.

Continue reading →

Lacie Ethernet Disk Mini (Linux, Ubuntu): EDmini_LogOn

English

If you have one of these toys and have difficulty accessing it via USB since an operating system update (ubuntu dapper to edgy did it for me and feisty did not fix it), this is how I got it to work again.

First off it won’t even start if you don’t follow the instructions I found on this French page of which I have copy/pasted the basic instructions:

Continue reading →

Ubuntu, stability and house-keeping. Instabilità e bug-tracking: il pessimo stato di ubuntu.

Italiano

Non capisco cosa impedisca ai maintainers di ubuntu dapper drake di propagare patch di bachi ben noti e già risolti dai tempi di edgy eft a quella che dovrebbe essere la loro distribuzione con supporto tecnico a lunga scadenza, ma che razza di supporto è? Per fare un esempio c’è un baco in F-spot che non visualizza le foto rotate in portrait all’ acquisizione, che è stata ampliamente risolta, perché non renderla disponibile? Neanche un backport … non capisco … Da canto suo la feisty ha i suoi bei problemi, uno per tutti il nuovo, leggero ed apprezzabile sistema di indicizzazione di meta-dati tracker fa a pugni con l’ancora più apprezzabile barra multifunzionale deskbar-applet, Evolution da strani segni di squilibrio (continua a chedere le password di account di posta che conosce finche non gli dai annulla, invia e ricevi e poi va come se niente fosse).

Mi chiedo che fine ha fatto l’attenzione con cui si pacchettizzano i programmi e le librerie e soprattutto poi come le si mantengono. Che fine ha fatto il “tanti occhi=pochi bug” dov’è finita la leggendaria stabilità e sicurezza … Forse che con l’introduzione di eccessiva complessità nei sistemi non ci siano più le risorse umane per stargli dietro? Non lo so ma non mi piace.

P.s. se qualcuno e riuscito a far funzionare il sofware di collegamento usb del Lacie ethernet disk mini sotto fiesty sono tutto orecchi così upgrado la dapper sul portatile.

English

I’m an ubuntu user and before that I was a debian sid user and before that … ok you get it. I moved from sid to ubuntu when I started writing a program in python using wxpython libraries as a gui toolkit and sid threw in an API change like a spanner in my machinery and everything went pair shaped. I was not pleased matter of fact I was fuming, but I only had myself to blame as I was using an unstable branch to begin with. I moved on to Ubuntu because it froze APIs for predictable time-frames, had some nice sane presets for desktop use and it saved considerable time in customization for desktop use, plus it was debian, with a few bells and whistles. All was well breezy, was everything I expected from a desktop enhanced debian distro, sure it had it’s issues (cups for one), but there were very few distros that got it right at the time anyway.

Continue reading →

Terrorismo, leggi ad personam e consequenze … Who needs terrorism when you’ve got politicians …

Italian

Sono stati dichiarati colpevoli e prosciolti per prescrizione dei terroristi, ma quello che è più grave è che mi sento circondato da un boato di silenzio attorno alla notizia. E possibile che non ci sia alcun organo d’informazione con medio seguito che gridi allo scandalo, punti il dito e s’indigni? Neanche Beppe Grillo?

Beh almeno il silenzio e bipartisan, come l’uso della ex cirielli che li dichiara non più perseguibili anche se colpevoli …

Giuro che se sento parlare di assoluzioni m’incazzo come una iena!

Sono depresso forse ce li meritiamo i terroristi …

English

Proven terrorists were allowed to walk free today. They used a law written by our ex premier to keep him and his cronies out of jail as well as a significant amount of other members of the rich and powerful club.

Well the good news is that this being a democracy everyone is held to the same laws, the bad is well … we let terrorists roam our country unpunished …

On the main stream news the silence is deafening! 

Simon Says: Consoles, Terminals and Command Prompts. La riga di comando: Mai uscire senza!

English

I was reading yet another Linux distribution review where a well meaning self elected computer usability expert blurted something along the lines of the trite “As long as there is need for a command prompt, it will remain relegated to the experts” and all that jazz…

Then it suddenly hit me: what would happen if they suddenly removed all trace of the command prompt from Linux (obviously giving gui substitutes)?

To any techies and other *nix users: stop hyperventilating it’s all ok it was just a gedanken experiment, please start breathing again. Now to anyone used to Macs and Microsoft Osses (just how does one spell that?) the idea of using one is just laughable (I still maintain you havn’t lived in geekland until you’ve run start run cmd and raught spectacular havoc on a windows PC). But to any sysadmin, used to managing multiple servers text based, or even an advanced/expert *nix workstation desktop user, being deprived of the command prompt is akin to being dragged kicking and screaming out of the drivers seat of sports car plonked in the passenger seat gagged, with your hands bound firmly behind your back and given only a driver speaking a foreign language and smiling dumbly at you to drive the car.

I have to admit that not diving head first into an epic cavalcade on the power, beauty and glory of what can be achieved in textland is an heroic display of restraint on my part. Don’t get me wrong I’m in no way a super dooper shell script whizzbang leet man, but I fend for myself pretty well in prompt land and occasionally write my own little scripts when I find I’m victim to some new tedious daily IT housekeeping routine. Now if I were stuck without it, I’d be using half a gazillion graphical tools simultaneously to get my normal routine done while they eat all my memory and slow me down forcing me to jump from one to the other like a rabbit in a polygamous mating frenzy on speed. Kind of like the physical sensation of having my upper arms tied to my body when working with only one desktop instead of many, only worse.

So ok, sure I would never expect my mother to jump into a command prompt and edit a configuration file with vim. But then I wouldn’t even expect her to set up her internet connection, mail client or whatever else in windows or on a Mac. All I would expect her to do is use the darn things once I (or whatever other paid expertise for those with no astrogeeks in the bloodline) have configured it for her.

What I’m trying so misguidedly to convey here is that the command line is no mideval torture instrument to be unleashed on new and unsuspecting users, but rather, it is a blessing in plain clothes for all those people who have to do real technical tasks or deal with setting up these machines for those who can’t. So instead of treating it like some kind of necessary evil it would be appreciated if all those wet behind the ears, unlicensed review wielders and self professed usability experts and possibly even the more seasoned folks that actually do know what they’re talking about would please loose the command prompt-present=only for supergeeks argumentation, it just doesn’t stand.

Italiano

L’altro giorno leggevo un altro di quelle inutili recensioni su una qualche distro GNU/Linux dove se ne pontificavano i nuovi passi in avanti per quanto riguarda interfacce, installazione, usabilità … insomma le solite per poi finire ancora una volta sul ancor più trito cliché che recita più o meno nelle sue innumerevoli declinazioni :”Linux non è ancora pronto per mia nonna con il parkinson e la demenza senile perché richiede ancora l’uso della riga di comando per alcune operazioni.”

Continue reading →

Backup!

English

Ok, so I’ve just about finished setting up a high availability fileserving cluster with automatic backups, I’ve finished menacing my lusers with a LART to make sure they make regular backups… I go sit at my desk start taking a look at my research, pick up the pieces where I left them before having to find someones lost password or miss-deleted files (no, sysadmins cannot pull destroyed and overwritten data out of thin air, even if some claim the contrary for bragging purposes) to make a long story short: Bang, fizzle, pffft! Yes, that was indeed my hard-drive … And yes I hear you, of course I have a backup … well … er sort of … I mean, come on october is pretty recent init?

AAAAAAAAAAAAAAAAAaaaaaaaaaaaaaaaaaaaaaarrrrrrrgh!

Fortunately I’m a lucky bastard and the screwed sectors were few and far between, I managed to regain most of my data … But boy have I learned a lesson through sheer terror …

On the bright side it gave a fantastic excuse to install ubuntu GNU/Linux fiesty fawn on the machine and I shall be telling you all about it and my new strategy for automated backups shortly on this space.

Italiano

Dunque, come dire ho appena finito di “tirare a lucido” una bella coppia di serverini ridondati in alta affidabilità con sistemi di backup a prova di armageddon, ho svolto il quotidiano dovere di strigliamento dei miei utonti con particolare attenzione posta sull’utilità, no anzi sul dovere improrogabile che ciascuno ha di fare backup periodici numerosi e completi. Continue reading →