Art - Music - Computer |
||
Table of Contents
1. Setup -
1.1. Jan 2009
I've built all these software packages from source on other machines, but in this case I installed mostly from the normal installer tools.
1.2. Jan 2010
All installed via synaptic. This was VASTLY easier to install and configure than my previous FC system. For one thing all the software is a year more mature, and they are giving more attention on interoperability. For another, Ubuntu Studio seems more carefully debugged than 64Studio.
1.3. HardwareGiven a basic x86-style computer, the next step is to get a sound card. I chose Delta_1010LT. I don't use all the features yet, but I did want good quality chip, midi in/out, and room to grow. It took months to learn that the chip needs Envy24. Until I got that package, my whole setup was deaf and mute. Next add the jack patch connector and its GUI qjackctl. I fussed with all the settings, and eventually learned:
1.4. Achieving audio outAt this point theoretically we can connect a mic and listen to it on headphones. But when debugging, it is easier to have something generate sounds you can get to the headphones. I saw recommendations to install hydrogen drum machine and use one of its demos. That was great advice and I second it.
So...
Some signal should be coming out of the Delta 1010LT RCA output sockets. Plug headphones into one of them and play that drum demo. Keep trying until you find sockets sending out the left and right channels. Make labels for the sockets for 1 and 2 (they are already known to be output). Actually, in 2008 I had a detour here. My headphones have a 1/4" male stereo plug. I bought a Y adaptor (female 1/4" to 2 male RCA). When I used it, only left would play, no matter which way I hooked up the RCA's. Naturally, I assumed I had misunderstood jack's hookup process, not that an adaptor was faulty. After a lot of confusion, I checked the adaptor with my DMM. Sure enough, only the left channel was coming out. I bought another adaptor (same brand, different store). Same results. So I went to Radio Shack, bought components, and soldered up my own Y adaptor. This worked like a charm.
1.5. Using audio outYou can listen to hydrogen. If you want to do much else, you need a source of audio signals. Typically that is a midi synth. These come in many forms.
1.5.1. qsynthI picked fluidsynth and its GUI qsynth.Settings:
If jack is running, then qsynth will autoconnect when it starts. Audio: qsynth to system:playback 1/2. ALSA: (no connection) 130 FLUID Synth. The 130 is the midi id that others can use (may be a different number on your system) to send to qsynth. It is up to you to decide who gets connected. Often you want to connect 14:MIDI-through to qsynth's MIDI input. That way if a client tries to output to system:midi-output, midi-through will mirror it and pass it to qsynth to make it into audio.
1.5.2. jack-keyboardTo see if your qsynth is working, try a virtual keyboard. I used jack-keyboard Start it and check jack: ALSA...jack-keyboard:midi_out to system:midi_playback-1. Notice that midi_playback will also drive midi_through, and thus qsynth will pick it up, turn it into audio, and you can hear it. You should be able to play the keyboard.
1.5.3. solfegeGNU solfege provides ear training and thus needs to output midi files of the questions. In solfege...File...Preferences... Soundsetup: Use external midi. In solfege...File...Preferences...External programs: MIDI file player=
/usr/bin/pmidi -p 130:0 %s The 130:0 means connect to Fluidsynth (id 130), on its port 0. Notice that this is a non-jack way to get to qsynth. CHeck Jack connections to see current id.
1.6. Achieving audio inBecause I wanted to do trumpet recording, I got a Shure_PG57 mic. Microphones provide very small signals, and need to be amplified before going into the main system. Also some mics need XLR with phantom power. While the Delta 1010LT has builtin preamps available on its XLR inputs, they don't do phantom power. I therefore needed an external preamp. I set the 1010LT to bypass its preamps, and got an ART_tube_preamp. Next, we need a way to capture and use the incoming signal. I installed ardour. If jack is running when ardour comes up, it will autoconnect. Ardour can control patch connections itself, but can also let jack do it. With a simple session, we find ardour's AUDIO connections are:
So...
1.7. Using Audio in
1.7.1. Ardour audio recordingGiven jack and ardour, the record process is as noted above for testing the mic preamp. Turn on jack, ardour, enable track for record, enable ardour for record, start record, stop when done.
1.7.2. Ardour MIDI recordingAt this point it is all about jack connections. E.g., start qsynth and jack-keyboard. As usual, jack-keyboard connects to system:playback_1; midi_through connects to qsynth: port 0; and qsynth output connects to ardour's audio-1 input. Start recording, and play the keyboard.
1.8. MIDI InSetup CASIO CT-460 keyboard with all volume sliders set to off. Set chord mode to MIDI. Use MIDI cable to connect CT-460 MIDI out to 1010LT MIDI in (tan line). In qjackctl:
I set qsynth to use an acoustic piano SF2, and then control volume using ENVY24.
2. Trumpet tone improvements.See trumpet According to several texts and Shure's manual, the mic should be either directly in front of the bell, or just off to the side of it. Ardour generates .wav files (in the interface subdir). These can be analyzed directly with various tools. They can be converted to ogg with oggconvert. Audacity can be used to read the .wav, and analyze it (e.g., spectrum analysis). Audacity 1.3.x (dev series) is jack-aware. Build it with portaudio v19. It uses jack output, but doesn't actually appear in the jack connects.
3. Samples and SoundfontsI'm using fluidsynth, which uses soundfont2 (sf2) files. I've been trying to find a Linux-base, OSS sf2 editor, so I can make my own soundfonts. I'll look into Swami.
4. Free-as-in-speech MusicFor a unifying project see Gutenberg-Music (http://www.gutenberg.org/wiki/Gutenberg:The_Sheet_Music_Project) For data entry and fancy printing, see LilyPond (http://lilypond.org/web/).
|
||
Creator: Harry George Updated/Created: 2012-05-12 |