Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I want to record the 8 separate Line IN Channels from my M-Audio Delta 1010 Card. The card is recogniced nicely and a can record a single channel via arecord -d 10 -f cd -t wav -D channel1 out2.wav. I've set up the different channels in ~/.asoundrc.

Now if I want to record a second channel in parallel (arecord -d 10 -f cd -t wav -D channel2 out2.wav) I get the error

arecord: main:564: audio open error: Device or resource busy

As I understand the delta 1010 is a single Access Card, so only one application can access it at a time. Is this correct?

The next step was to configure a dual channel input in .asoundrc

# envy24 channel 1+2 only
pcm.test {
       type plug
       ttable.0.0 1
       ttable.0.1 1
       slave.pcm ice1712
}

Which works ok when I do a

arecord -d 10 -f cd -t wav -D test -c 2 out.wav

(BTW can anyone point me to a tool to split a multi channel wav into a file per channel?)

But when I want to record the channels separately with (-I option)

arecord -d 10 -f cd -t wav -D test -c 2 -I channel1.wav channel2.wav

I get no recordings.

Did I miss something with the configuration or what are my options to record all 8 channels via arecord.

I've no experience with jackd. Is it an option to install jackd and record the line ins via jackd?

share|improve this question
add comment

3 Answers

I am not familiar to command line recording but in your case a GUI may help.

I think Ardour can help you with this tasks but yes, you will be in the need to use JACK in order to tell Ardour where exactly to gather audio inputs. Ardour will be able to handle per input track generation the same as other features.

I am personally not using Ardour, I use Audacity which is also an audio multi-track editor/recorder and may be you can use it to extract your multi-track wav into single wav files.

My suggestion would be you to give a chance to Ubuntu Studio, which is a distribution that features the majority of the tools needed to do multi-media tasks and is using JACK as the main audio engine.

You can reach Ubuntu Studio and download an iso in order to burn a CD/DVD from the next link.

http://ubuntustudio.org/

After burnt, simply perform a Live Session in order to check if Ardour, Audacity and JACK fits what you need. This way you won't harm your current OS installation.

I would appreciate a lot if you inform about your results and I am sorry because of I can't help you further at this time because of I am using a version of Ubuntu other than Studio.

Good Luck!

Screenshots of Ardour in action are placed here for your convenience:

Here is Ardour's Session Control (seen at startup)

enter image description here

Here is Ardour GUI

enter image description here

share|improve this answer
    
Thanks for your input! But I needed to record the command line with arecord. See my answer for the solution. –  Peter Hoffmann Feb 22 '11 at 13:17
add comment
up vote 0 down vote accepted

OK I finally got it working. The problem was that I mixed dsnoop for mulitiple access and the plug for channel assignment.

So here is my working setup to recort 8 channels in parallel:

hw:0,0 ---> capt ---> c1
                 ---> c2
                 ....

and here is my .asoundrc

pcm.capt {
       type dsnoop
       ipc_key 223456
       slave {
               pcm "hw:0,0"
               rate 8000
               period_time 0
               period_size 320
               channels 12
               format S32_LE
       }
}

pcm.c1 {
    type plug
    ttable.0.0 1
    slave.pcm capt
}

pcm.c2 {
    type plug
    ttable.0.1 1
    slave.pcm capt
}

pcm.c3 {
    type plug
    ttable.0.2 1
    slave.pcm capt
}

pcm.c4 {
    type plug
    ttable.0.3 1
    slave.pcm capt
}

pcm.c5 {
    type plug
    ttable.0.4 1
    slave.pcm capt
}

pcm.c6 {
    type plug
    ttable.0.5 1
    slave.pcm capt
}

pcm.c7 {
    type plug
    ttable.0.6 1
    slave.pcm capt
}

pcm.c8 {
    type plug
    ttable.0.7 1
    slave.pcm capt
}
share|improve this answer
add comment

I tried the solution above, and when I try to record, I see this:

 ➜  ~  arecord -D plug:c1 -f S32_LE -r 8000 -c 1 -d 5 ch1.wav    
Recording WAVE 'ch1.wav' : Signed 32 bit Little Endian, Rate 8000 Hz, Mono
*** glibc detected *** arecord: free(): invalid pointer: 0x000000000163d350 ***
*** glibc detected *** arecord: malloc(): memory corruption: 0x0000000001639c90 ***

And then arecord freezes :/ -- I'm able to record from plug:capt (the full 8 channels) but not each individual channel.

Any ideas?

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.