|
||||||
Title: how to temporarily disable Yoke NT drivers Post by markwa on Sep 15th, 2004, 3:14pm I have attempted to temporarily disable the Yoke NT drivers using Windows XP / Control Panel / System / Hardware / Device Manager / Sound, video and game controllers / MIDI Yoke NT Driver / Disable Device. But my application still sees the Yoke NT 1 through 8 devices. Is there another effective way to temporarily disable the drivers. Note, if I can get MidiYoke and MidiOx to work in my development environment without this kind of conflect, I'll certainly purchase the commercial license. Cheers -- Mark |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by markwa on Sep 15th, 2004, 5:50pm I'll just uninstall the MIDI Yoke NT Driver for now. But this is awkward to have to install it every time I need it, and uninstall it every time I don't. Surely there is a better way. -- Mark |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by markwa on Sep 15th, 2004, 10:57pm Although it would be very handle to be able to entirely disable the Yoke NT driver, it would be almost as handy to be able to designate a particular MIDI Yoke port as either In or Out but not both. I just can't seem to get around the MIDI feedback loop problem. Being able to make a MIDI Yoke port either In or Out might solve this problem. Is there a way to do that? Cheers -- Mark |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by Peter L Jones on Sep 16th, 2004, 2:08pm That doesn't really make any sense. The only reason for writing to one end of a MIDI Yoke virtual MIDI cable is so that the events you write can travel down to the other end of the cable to be read. If you choose to open the input port in the same application that's writing to the output port, that's up to you. But you need to be able to open it somewhere, otherwise there was no point using it. |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by markwa on Sep 16th, 2004, 2:30pm Hello Peter, >That doesn't really make any sense. Duh, you're right. Never mind the last of my three postings. But, I still wish that Windows XP / Control Panel / System / Hardware / Device Manager / Sound, video and game controllers / MIDI Yoke NT Driver / Disable Device would really make the driver unavailable to my app. |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by Jamie OConnell on Sep 16th, 2004, 4:12pm Never open both the Input and Output ports of a particular MIDI Yoke port within a single application. Windows does not seem to be able to temporarilly disable the MIDI Yoke ports: probably because the driver is a User mode DLL instead of a Kernel Mode component. Even after a reboot. You might be able to prevent driver loading by tweaking a reg key. The key to tweak will be one of the MIDIn values in: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32 For instance, if MIDI2 is set to myokent.dll, rename it to myokent.dlx. Then close RegEdit. I was able to make the driver disappear and reappear by modifying this key without rebooting. |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by markwa on Sep 16th, 2004, 4:39pm Jamie, Thanks for your reply and tip. It's good to meet you. I wish I had been using MidiOx years ago as a tool for my MIDI/notation softare development. (I just purchased it earlier today.) Perhaps you can give me some advice on some very basic MIDI application behavior. Upon startup, my application opens ALL of the MIDI input and output ports. Obviously, this caused a feedback loop with the MIDI Yoke port. I worked around this problem with a hard-coded "if input port is MIDI Yoke then don't open it". (I'm just testing output from the app right now.) Aside from the fact that my app's behavior of pre-opening all MIDI input and output ports makes it incompatible with MidiOx, are there other reasons that this is a bad idea? Is my app a "bad MIDI citizen"? Cheers -- Mark |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by Peter L Jones on Sep 16th, 2004, 7:00pm Say someone plugged a real MIDI cable from a MIDI out to a controller, from that controller to a sequencer, from the sequncer to a sound module and from there back to a MIDI in. Your app will get feedback. You need to cater for it. The above is valid - the controller might need SysEx dumps but the user wants to capture the sequencer output (triggered from the controller). |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by markwa on Sep 16th, 2004, 7:34pm Peter, Thanks for your reply. Perhas the appropriate solution for this in my MIDI/notation app as simple as this: Just ask the user which MIDI In and Out ports he wants to use. Only open those MIDI ports. The next time the user runs the app, open the same ports. This seems to be what Cakewalk Sonar does. Is that all you'd need in order to work with, for example, the SysEx scenario you illustrated? Cheers -- Mark |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by Peter L Jones on Sep 17th, 2004, 1:54pm Just to expand a little on the problem as posed. It's not the SysEx that's the issue. It's what happens if a Note On (or any) message is sent from the PC to the controller. If the controller has "MIDI Thru" enabled, it'll pass that Note On to the sequencer. The sequencer must pass it on to the sound module. The sound module will play the note and pass it on to the PC, because that's how we've set it up. If the PC passes to MIDI Out everything it gets from MIDI In, what happens? The Note On is sent from the PC to the controller... er, we just did that. This is termed MIDI Feedback and MIDI Yoke will detect it and shut down. To stop this, either the controller should not do MIDI Thru (in which case the PC can't play the sound module). Or the PC must not pass to MIDI Out data it's read from MIDI In. Of course, the latter also may not be what's wanted. Say the Sound Module was plugged into the PC's MIDI Out? The user would want "thru" connections on the PC. What you need to do it also allow the user to select whether or not a particular "Out" is a "Thru" (i.e. gets a copy of any "In" data). That should do it. Of course, to be user friendly, always let the user choose which ports to open. They might actually want to run another application that uses MIDI... |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by markwa on Sep 17th, 2004, 2:46pm Hello Peter, Thanks for your reply. > Of course, to be user friendly, always let the user choose which ports to open. They might actually want to run another application that uses MIDI... I do intend to do that now. I'll probably do it a little differently from the way I've seen it done in other MIDI apps. In other MIDI apps, the user explicitly selects which In and Out ports he wants to use. I'll offer the converse: The user will select which In and Out ports he _doesn't_ want to use, thus freeing them for other apps. That makes it easier on the less sophisticated user who won't be using multiple MIDI apps at the same time, and this will probably make it no more difficult for the more sophisticated user. Opinion? > What you need to do it also allow the user to select whether or not a particular "Out" is a "Thru" (i.e. gets a copy of any "In" data). My app has an Echo On/Off option for an Input port. But you're recommending something different here. If the user tells my app he wants an Out port to be Thru only, what is it that my app should do? As long the user doesn't assign tracks to that Out port, then my app won't be sending anything to it. I probably misunderstand your recommendation. Cheers -- Mark |
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by Peter L Jones on Sep 17th, 2004, 6:07pm on 09/17/04 at 14:46:36, markwa wrote:
on 09/17/04 at 14:46:36, markwa wrote:
on 09/15/04 at 22:57:34, markwa wrote:
|
||||||
Title: Re: how to temporarily disable Yoke NT drivers Post by RunBeerRun on Jun 23rd, 2006, 1:13pm The registry fix worked, yoke is no longer found. |
||||||
MIDI-OX User Forum » Powered by YaBB 1 Gold - SP 1.3.1! YaBB © 2000-2003. All Rights Reserved. |