[ardour-users] Ardour not showing as MIDI client?

Stephan Neuhaus sten at artdecode.de
Fri Sep 16 14:56:22 PDT 2005


> From: Joe Hartley <jh at brainiac.com>
> Subject: Re: [ardour-users] Ardour not showing as MIDI client?
> 
> On Thu, 15 Sep 2005 22:01:20 +0200
> Stephan Neuhaus <sten at artdecode.de> wrote:
> 
> 
>>Now, my problem.  I have an Edirol PCR midi keyboard that also has
>>controllers.  So I wanted to use these controllers with ardour and used
>>the "How to connect a BCF 2000" guide as a base.  Unfortunately, I got
>>stuck at the beginning, where it says to connect the BCF to ardour,
>>because ardour doesn't appear as a MIDI client, neither in Qjackctl, nor
>>in the basic alsa tools.  I can see my Delta 1010, and I can see the
>>PCR, but ardour does not appear.
> 
> 
> Go to the Options Editor window and click on the MIDI tab, and make sure 
> you have Online, MTC, MMC and MIDI Parameter Control for the seq port
> selected, and all four options in the lower part of the window selected.

Thanks for the tip, but unfortunately it didn't work.  At the moment, I 
have ardour and qjackctl (and jackd) running, and I have created a test 
session with a mixer strip.  (I don't have the PCR connected at the 
moment, since I assume that it doesn't matter; ardour should show up as 
a MIDI client regardless.) I went to the MIDI options tab and set 
everything I could lay my hands on.  The Delta 1010 is marked "online", 
and MTC, MMC, MIDI Parameter Control, MMC Control, MIDI Parameter 
Control (another one), Send MMC, and Send MIDI Parameter Feedback are 
all turned on. Still, ardour does not appear as a MIDI client.

Here is the output of aconnect -o:

client 62: 'Midi Through' [type=kernel]
     0 'Midi Through Port-0'
client 64: 'M Audio Delta 1010 MIDI' [type=kernel]
     0 'M Audio Delta 1010 MIDI'

Here is /proc/asound/cards:

0 [M1010          ]: ICE1712 - M Audio Delta 1010
                      M Audio Delta 1010 at 0xe000, irq 18
1 [SI7012         ]: ICH - SiS SI7012
                      SiS SI7012 with ALC650E at 0xd400, irq 18

This is what ardour says when it starts:

Ardour/GTK 0.9beta29
    (built using 0.589.2 with libardour 0.887.1)
Copyright (C) 1999-2005 Paul Davis
Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel 
Baker
Ardour comes with ABSOLUTELY NO WARRANTY
not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This is free software, and you are welcome to redistribute it
under certain conditions; see the source for copying conditions.
Loading UI configuration file /etc/ardour/ardour_ui.rc
Loading system configuration file /etc/ardour/ardour_system.rc
Loading user configuration file /home/neuhaus/.ardour/ardour.rc
ardour: [ERROR]: MIDI: no such port device
ardour: [WARNING]: Your system generates "Mod2" when the NumLock key is 
pressed. This can cause problems when editing so Ardour will use Mod3 to 
mean Meta rather than Mod2
ardour: [ERROR]: KeyboardTarget: unknown action 
"edit-cursor-to-selection-start"ardour: [ERROR]: KeyboardTarget: unknown 
action "edit-cursor-to-selection-end"
ardour: [ERROR]: KeyboardTarget: unknown action "set-mouse-mode-scrub"
ardour: [ERROR]: KeyboardTarget: unknown action "start-selection"
ardour: [ERROR]: KeyboardTarget: unknown action "finish-selection"
ardour: [ERROR]: KeyboardTarget: unknown action 
"extend-selection-to-end-of-region"
ardour: [ERROR]: KeyboardTarget: unknown action 
"extend-selection-to-start-of-region"
ardour: [ERROR]: KeyboardTarget: unknown action "duplicate-selection"
ardour: [ERROR]: KeyboardTarget: unknown action "split-region"
Loading session /home/neuhaus/Test using snapshot Test

The "MIDI: no such port device" looks suspicious, but it's just ardour's 
failure to open the OCR's USB device /dev/snd/midiC2D0 (see ardour.rc 
below).  Strace confirms that /dev/snd/midiC0D0 is opened and written to 
successfully.  I have also removed the <MIDI-port> tag, with no effect. 
The error message goes away, but ardour still doesn't appear as a MIDI 
client in qjackctl or aconnect -o.

Here is the relevant portion of my ardour.rc:

<?xml version="1.0"?>
<Ardour>
   <MIDI-port tag="Delta 1010" device="/dev/snd/midiC0D0" 
type="alsa/raw" mode="duplex"/>
   <MIDI-port tag="PCR" device="/dev/snd/midiC2D0" type="alsa/raw" 
mode="duplex"/>
   <Config>
     <Option name="minimum-disk-io-bytes" value="262144"/>
     <Option name="track-buffer-seconds" value="5.000000"/>
     <Option name="mute-affects-pre-fader" value="yes"/>
     <Option name="mute-affects-post-fader" value="yes"/>
     <Option name="mute-affects-control-outs" value="yes"/>
     <Option name="mute-affects-main-outs" value="yes"/>
     <Option name="solo-latch" value="yes"/>
     <Option name="mtc-port" value="Delta 1010"/>
     <Option name="mmc-port" value="Delta 1010"/>
     <Option name="midi-port" value="Delta 1010"/>
     <Option name="jack-time-master" value="yes"/>
     <Option name="trace-midi-input" value="no"/>
     <Option name="trace-midi-output" value="no"/>
     <Option name="plugins-stop-with-transport" value="no"/>
     <Option name="no-sw-monitoring" value="yes"/>
     <Option name="stop-recording-on-xrun" value="no"/>
     <Option name="stop-at-session-end" value="yes"/>
     <Option name="no-new-session-dialog" value="yes"/>
     <Option name="use-vst" value="yes"/>
   </Config>

When I run strace, I can see ardour opening /dev/snd/midiC0D0 and 
sending some bytes to it:

[pid  5555] open("/dev/snd/midiC0D0", O_RDWR|O_NONBLOCK) = 8
/* Snip */
[pid  5555] write(8, "\360\177\177\6D\6\1\0\0\0\0\0\367", 13) = 13

That's it.  It doesn't read from the device, it doesn't close the 
device.  (A child process does lots of fcntl64's on file descriptor 8 
too, but I didn't check whether his fd 8 was ardour's fd 8.)

I can use MIDI just fine with other applications.

Any more ideas?

Thanks and have fun,

Stephan



More information about the Ardour-Users mailing list