kMIDIPropertyNameConfiguration
kMIDIPropertyNameConfiguration
- Subject: kMIDIPropertyNameConfiguration
- From: "Cianflone, Chris" <email@hidden>
- Date: Wed, 14 May 2003 17:18:41 -0500
Hi all,
So how do I begin to work with kMIDIPropertyNameConfiguration? It has taken
forever just to get the appropriate support files so I could even begin to
try to do anything. I have been looking here, the MMA lists, waiting for my
personal copy of Digital Performer 4 to arrive (still a few weeks out
apparently), etc. and have finally gathered (I think) enough files to start
experimenting.
First of all, I have read all the appropriate information in MIDIServices.h:
/*!
@constant kMIDIPropertyNameConfiguration
@discussion device/entity/endpoint property, CFDictionary
This specifies the device's current
patch, note and control
name values using the MIDINameDocument XML
format. This
specification requires the use of
higher-level, OS-specific constructs
outside of the specification, to fully
define the current
names for a device.
The MIDINameConfiguration property is
implementated as a CFDictionary:
key "master" maps to a CFDataRef containing
an AliasHandle
referring to the device's master name
document.
key "banks" maps to a CFDictionaryRef. This
dictionary's keys
are CFStringRef names of patchBank elements
in the master document,
and its values are each a CFDictionaryRef:
key "file" maps to a CFDataRef
containing an AliasHandle to a document
containing patches
that override those in the master document,
and key "patchNameList"
maps to a CFStringRef which is the name of
the patchNameList
element in the overriding document.
key "currentModes" maps to a 16-element
CFArrayRef, each element
of which is a CFStringRef of the name of the
current mode for
each of the 16 MIDI channels.
Clients setting this property must take
particular care to preserve dictionary
values other than the ones they are
interested in changing, and
to properly structure the dictionary.
New for CoreMIDI 1.3.
*/
extern const CFStringRef kMIDIPropertyNameConfiguration;
I have looked at Default.mcfg files on a friend's system who does have DP4.
I have tried adding the appropriate "nameConfiguration" key (a CFDictionary)
to my Default.mcfg file with a key "master" that is a CFDataRef containing
an AliasHandle to a file named "QS6.1.midnam". I have tried getting this
kMIDIPropertyNameConfiguration property via just about every kind of
MIDIObjectRef I can think of, with no luck. Furthermore, the keys that I
add manually via Property List Editor seem to get wiped out (not always)
depending on if I open the "Audio MIDI Setup" application.
All I want to do is create a popup menu of patches just like I could with
FreeMIDI or OMS and the OMS Name Manager support. It really shouldn't be
this hard. And so far, the code part hasn't been that hard. Just getting
the right pieces in my possesion has been a nightmare.
Any help would be greatly appreciated. This is on 10.2.3.
Thanks,
Chris
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.