Re: [Jack-Devel] Jack2 alsarawmidi slave: Pluggable device registration problem?
On September 28, 2014 09:18:38 AM you wrote:
> The reason is that this is probably no "dynamic plug/unplug" handing code in
> the JackALSARawMidiDriver backend.
>
> Stéphane
Hi thanks. Yes, poking around the code I noticed a peculiar absence of
some registration code, compared to the other drivers.
Is this code waiting to be done? Should I wait?
Thanks.
Tim.
>
> Le 28 sept. 2014 à 04:43, Tim E. Real <[hidden]> a écrit :
> > On September 27, 2014 07:47:01 PM Tim E. Real wrote:
> >> Hi!
> >>
> >> When I plug in my USB midi device after starting Jack2 with alsarawmidi,
> >> it does not register at all, as jack_lsp shows.
> >>
> >> But if I instead start Jack2 after the device is plugged in, ports are
> >> there.
> >>
> >> But then if I unplug the device, strangely the ports do not unregister
> >> and
> >> I can even make connections to them in qjctl.
> >>
> >> Having seen the second problem first, I thought it might be a new
> >> 'feature'
> >> - Persistent Ports!
> >>
> >> But now having seen the first problem I guess not...
> >>
> >> What could be wrong?
> >> Thanks. Tim.
> >
> > Here we go, some output:
> >
> >
> > Start Jack, USB device is already plugged in:
> >
> > ...
> > Not shown: Early startup stuff, we pick it up at last USB midi port...
> > ...
> >
> > JackALSARawMidiDriver::Attach - output port registered
> > (name='system:midi_playback_2', alias='system:2-1 MidiSport 2x2 2 out').
> > Jack: JackEngine::PortRegister ref = 2 name = system:midi_playback_3 type
> > = 8 bit raw midi flags = 21 buffer_size = 256
> > Jack: JackGraphManager::AllocatePortAux port_index = 28 name =
> > system:midi_playback_3 type = 8 bit raw midi
> > Jack: JackConnectionManager::AddInputPort ref = 2 port = 28
> > Jack: JackEngine::ClientNotify: no callback for notification = 9
> > Jack: JackEngine::ClientNotify: no callback for notification = 9
> > Jack: JackEngine::ClientNotify: no callback for notification = 9
> > JackALSARawMidiDriver::Attach - output port registered
> > (name='system:midi_playback_3', alias='system:3-1 M Audio Delta 1010LT
> > MIDI 1 out').
> > Jack: JackServer::Start
> > Jack: JackThreadedDriver::Start
> > JackALSARawMidiDriver::Start - Starting 'alsarawmidi' driver.
> > JackALSARawMidiDriver::Start - starting ALSA thread ...
> > Jack: JackPosixThread::StartImp : create non RT thread
> > Jack: JackPosixThread::ThreadHandler : start
> > Jack: JackPosixThread::AcquireRealTimeImp priority = 31
> > JackALSARawMidiDriver::Start - started ALSA thread.
> > Jack: JackPosixThread::StartImp : create non RT thread
> > Jack: JackPosixThread::ThreadHandler : start
> > Jack: JackThreadedDriver::Init real-time
> > Jack: JackPosixThread::AcquireRealTimeImp priority = 30
> > Jack: JackPosixThread::StartImp : create non RT thread
> > Jack: JackPosixThread::ThreadHandler : start
> > Jack: JackSocketServerChannel::ClientCreate socket
> > Jack: JackSocketServerChannel::BuildPoolTable size = 2
> > Jack: JackSocketServerChannel::BuildPoolTable fSocketTable i = 1 fd = 29
> > Jack: JackSocketServerChannel::Execute : fPollTable i = 1 fd = 29
> > Jack: JackRequest::Notification
> > Jack: JackDriver::ClientNotify ref = 1 driver = freewheel name = freewheel
> > notify = 18
> > Jack: JackDriver::ClientNotify ref = 1 driver = freewheel name = freewheel
> > notify = 18
> > Jack: JackDriver::ClientNotify ref = 1 driver = freewheel name = freewheel
> > notify = 18
> > Jack: JackDriver::ClientNotify ref = 1 driver = freewheel name = freewheel
> > notify = 18
> > Jack: JackEngine::ClientNotify: no callback for notification = 4
> > Jack: JackEngine::ClientNotify: no callback for notification = 4
> > Jack: JackEngine::ClientNotify: no callback for notification = 4
> >
> > ...
> > Idle
> > ...
> >
> >
> > Now unplug USB device:
> >
> > JackALSARawMidiPort::GetIOPollEvents - the file descriptor is invalid.
> > JackALSARawMidiDriver::Execute - a fatal error occurred while processing
> > ALSA output events.
> > JackALSARawMidiDriver::Execute - ALSA thread exiting.
> > Jack: JackPosixThread::ThreadHandler : exit
> > Jack: JackSocketServerChannel::Execute : fPollTable i = 1 fd = 29
> >
> > ...
> > Idle
> > ...
> >
> > Jack: JackSocketServerChannel::Execute : fPollTable i = 1 fd = 29
> > Jack: JackSocketServerChannel::Execute : fPollTable i = 1 fd = 29
> >
> > ...
> >
> > Now re-plug USB device:
> >
> > No output, nothing changes.
> >
> > ...
> >
> >
> > Thanks. Tim.
> >
> > Jack-Devel mailing list
> > [hidden]
> > http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
1411918451.25609_0.ltw:2, <4456138.n0OrbklDEI at col-desktop>