Linux
Seattle Based netcat Loadable Kernel Module Album
by admin on May.01, 2014, under Linux, Music
Okay, all my computer+music friends this is kind of cool.
In addition to other formats (like high-bias cassette tape – lol) the Seattle based group netcat has released their latest album as a loadable kernel module. Yeah.
Compile and load the module which creates /dev/netcat which can be piped it to an audio app. Track info displayed in dmesg.
https://github.com/usrbinnc/netcat-cpi-kernel-module
The midishark repo is pretty cool too:
“Transforms wireshark network output into MIDI output. Allows for custom parsers and transformers.”
I had no difficulty compiling on a box with 12G, but it did crap out on a 4GB system – as mentioned on the git page it does seem to need a lot of memory to compile.
Interestingly, Greg Kroah-Hartman contributed several pull requests to help clean up for adhearence to kernel module coding standards. Whoa – that’s pretty awesome:
https://github.com/usrbinnc/netcat-cpi-kernel-module/pull/11
https://github.com/usrbinnc/netcat-cpi-kernel-module/pull/13
“The second component is a generative Markov model of phoneme sequences derived from Wikipedia and a collection of scientific papers*. We use the model to generate novel, incoherent speech sounds. The third component is a sentiment-aware model of statements of preference derived from peoples’ actual statements of preference on the internet*. We use the model to generate positive/negative sentiment couplets, recited in synthesized speech.”
Ditto X2 Track Import Failure
by admin on Mar.23, 2014, under Linux, Music
TC Electronic recently released the Ditto X2 guitar looping pedal. Building on the success of the previous version, the X2 allows you to import backing tracks and export / import your own loops. However, getting this feature to actually work is another matter. There are a few show stopping pitfalls to be aware of which I’ll try to clarify here in the hopes other users might benefit.
First, some good news: Linux support. Though not officially supported the import / export functions work fine under Linux. When connected via USB the pedal is recognized as a USB storage device. Simply open it using your file manager and drag and drop into the Track folder. I have found no Linux specific issues with it. The issue below affect all operating systems I have tested: Windows, OS X and Linux.
The following summarizes the issues I have experienced:
Track Source | Issue | Solution |
Own Ditto Exported Loops | Re-importing TRACK.WAV fails – despite being 44.1K | Convert tracks |
StarJam Downloads | Importing fails as some are in 48K format. | Convert tracks |
JamTrack Central Fee Tracks | Provided mp3’s import fine | N/A |
Details for each issue and solution are below.
Exporting / Re-importing Own Tracks
I encountered this rather show stopping issue: I could export my own loop and it would appear in the Track folder when connected via USB. I could copy off the exported TRACK.WAV and TRACK.AIF file just fine. However, I could not get any .wav loop I created to import, though .mp3 files would import and convert fine. It was so weird:
Linux CPU Microcode Updates
by admin on Mar.08, 2014, under Linux
Ever notice boot messages like:
perf_event_intel: PEBS disabled due to CPU errata, please upgrade microcode
Linux supports applying CPU microcode updates at runtime.
Should you do so? Have microcode updates already been applied? How do you apply them?
Intel does not issue release notes with microcode, thus they are a black box. Despite not knowing precisely what fixes they contain, it seems to me applying the manufacturers intended update is likely to do more good than harm. Fortunately this is quite easy to do, especially with a 3.4 or newer kernel.
Granted, a microcode update is not going to magically grow new circuitry and upgrade your i7 to support AVX, but I’ve been interested in how all this worked for a while and so decided to dive in.
Microcode is distributed in ACSII encoded cryptographically signed binary files which are available for Download from Intel. A variety of tools exist to extract and apply updates from this file.
The following article on my wiki contains information on Intel and AMD microcode updates applicable to any Linux distribution.
http://www.timelordz.com/wiki/Microcode
Happy patching.
Guitar Scratch Remover
by admin on Mar.08, 2014, under Music, My Life
A couple weeks back my guitar received a healthy buckle rash during a jam session. It happens.
The back had about an 8″ diameter area that was scratched pretty badly. While none of the scratches were deep enough to go all the way through the finish they were cringingly bad.
The sad state of affairs was remedied completely by a miracle product to which I give a resoundingly awesome, five star review: Guitar Scratch Remover
Before and after pictures were very challenging given the high gloss, dark color of my guitar, available lighting and a cheesy camera. The pictures did neither justice to the agony of the scratches nor the brilliance of the result. Suffice it to say it was like this:
Before: Oh man. Cringe. That sucks. Buddhistic thoughts of the transient nature of life, impermanence and perils of attachment. I should just accept them with pride as battle scars on the axe – which might be easier had I been the one to scratch it. I wonder if there is any scratch remover that would work (huge doubt). Walk away.
After: OMFG! This stuff is magic, alien reverse engineered, nanotechnology marvel of materials science. The scratches are GONE. Not better. You can’ tell – at all. Hell, I can’t tell. Holy cow.
Of course Google and Amazon reviews lead me instantly to Guitar Scratch Remover, but my skeptical nature did not leave much room for hope. Sure, it looked good. Silicon free. Great reviews. Still, every “scratch remover” I’ve used has been little more that a polish and hardly removed anything. And given the finish and depth of these clearly there was no hope. But hey – why not risk $20? Everyone seems to rave about this stuff.
And rightly so. I started right off with the blue compound and applied some pretty serious elbow grease. After the first application there were immediate and excellent results, I’d say an 80% improvement. If that had been it, I would have considered it a success. I could not expect more. Three more applications and the scratches were utterly gone. Amazing. I then used one application of the red compound which restored the high gloss shine and blended everything out. You could not have asked for a better end result.
This stuff really works. Read and apply the directions exactly and put some force into buffing it. Also note that while safe for nearly all high gloss finishes there are some guitars (Rickenbacker, etc.) you should contact them about first to be sure. The $20 players kit contains plenty of both compounds, you will have lots left for future scratch maintenance.
Screencast: Using gdb to view asm code and CPU registers
by admin on Feb.23, 2014, under College Stuff, Linux
My first (kind of cheesy) screencast using asciinema to show how easy it is to use gdb to view the asm code for a trivial C program and view the status of CPU registers, etc. I think it helps to learn gdb earlier rather than later, and thought it might be fun to use it to show some of what we are now covering in the class lectures and book (data path, registers, memory fetch / store, basic asm commands, etc.)
The embedded player cuts off a bit as my terminal was extra huge, but you can use the above link if you want to see the comments in full.
It also shows a few basics of navigating and controlling gdb’s text user interface, which is a feature well worth knowing about.
Provided you compile C code with -g (gcc) or asm code with -gstabs (as) you can use gdb on the resulting binary.