View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0007536 | ardour | bugs | public | 2018-01-05 15:52 | 2020-04-19 16:53 |
Reporter | unius | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | always |
Status | assigned | Resolution | open | ||
Platform | x86-64 | OS | Linux | OS Version | 4.14.11 |
Product Version | 5.12 | ||||
Summary | 0007536: Patch Selector not worked | ||||
Description | "Patch Selector" not adequately worked if (as I understand it) .midnam file uses PatchMIDICommands | ||||
Steps To Reproduce | try: Yamaha_PSR-S900.midnam | ||||
Additional Information | This important if we use patch classification (in .midnam) not by bank, but by patch group (for example) | ||||
Tags | No tags attached. | ||||
|
Is this still an issue with Ardour 6.0-pre1? |
|
Yes, in 6.0.pre1.347 (from git) this issue still exists. Steps To Reproduce: 1. create MIDI track 2. select "Yamaha/PSR-S9000" as "External MIDI Device" 3. open "Patch Selector" 4. it's empty 5. create MIDI region and "Insert Patch Change" into it 6. here we see the hierarchy of patches, but not in the form of Bank/Patch, but in the form of Category/Patch Unfortunately this problem has serious consequences. If we use this kind of midnam, it is not possible to use the "Patch Selector" and the only way to set patches is through a "Insert Patch Change". This does not allow you to use Templates with all the further difficulties ... |
|
I see the issue is with this specific MIDNAM. The Patches are grouped by Instrument, not by Bank. So individual patches can be listed, but a list by channel/bank comes up empty. Most other midnam files do not have this issue. e.g. Yamaha PSR 540. It seems that only the ones that were copied from FreeMIDI and adapted by Harrison have this issue. It's currently unclear if the midnam file should be updated, or if we can infer a channel/bank mapping from those files. |
|
Representing patches in the form of MIDI banks was good from a technical point of view, and in the good old synthesizers, when there were not so many patches. But modern hardware synthesizers have thousands of patches. And despite the fact that they are technically available via MIDI banks, it is almost impossible to use this mechanism to find the desired patch. In practice, an additional classification mechanism is introduced, which may have different names from different vendors (by instrument, category, ...). For example, the latest top synthesizer from Yamaha - MONTAGE. MONTAGE OS 3.00 contains 2707 patches (Yamaha calls them as Performances). They are stored in MIDI banks in a semi-random way that cannot be understood or remembered. (look at attached montage-patches.png). But for real use, Yamaha introduced a Category/Subcategory/Patch mechanism (montage-categories-hw.png). Together with additional restriction elements (Banks (not MIDI), Favorites, ...) it is very convenient to use. I have no idea how to make a midnam (which can be used in real life) for MONTAGE using only the MIDI Bank/Patch mechanism. The situation is similar with Roland, ... In Ardour is actually more midnam's that use the Category/Path mechanism. Not all use only it, some are a mix with the classic Bank/Patch. grep -l PatchMIDICommands *.midnam E_mu_Systems_ProteusFX.midnam Ensoniq_ZR.midnam Korg_N1_N5.midnam Korg_NS5R.midnam Kurzweil_K2000.midnam Kurzweil_K2000R.midnam Kurzweil_K2500X.midnam Kurzweil_PC2_PC2r_w_Orch.midnam Roland_Boss_DS_330.midnam Roland_FantomXR.midnam Roland_JV_30.midnam Roland_JV_35_50.midnam Roland_JV_90.midnam Roland_JX_305.midnam Roland_MC_303.midnam Roland_M_GS64.midnam Roland_PMA_5.midnam Roland_RD_700.midnam Roland_RS_5_9.midnam Roland_SC_50.midnam Roland_SC_55.midnam Roland_SC_55mkII.midnam Roland_SC_88.midnam Roland_SC_88_Pro.midnam Roland_XP_10.midnam Roland_XP_80.midnam Roland_XV_5050.midnam Yamaha_CS1X.midnam Yamaha_CS6R_x.midnam Yamaha_CVP_103_105.midnam Yamaha_CVP_107_109_700.midnam Yamaha_MU100R.midnam Yamaha_MU50.midnam Yamaha_MU80.midnam Yamaha_MU90R.midnam Yamaha_NP-V80.midnam Yamaha_PSR_275.midnam Yamaha_PSR_530_630_730.midnam Yamaha_PSR_8000.midnam Yamaha_PSR_9000.midnam Yamaha_PSR_DJX_II.midnam Yamaha_PSR_DJX.midnam Yamaha_PSR_S900.midnam Yamaha_QS300.midnam Yamaha_QY70.midnam Yamaha_S30_80.midnam Yamaha_So8.midnam Yamaha_TG100.midnam Yamaha_Tyros.midnam |
|
I made a midnam for OS 2.50 (Yamaha_MONTAGE.zip). It works great via "Patch Change", but not in "Patch Selector". |
|
OK some further investigation revealed. The PSR-9000 PatchBanks do not correspond to a single MIDI Bank. e.g. the "Piano Bank" has - "GrandPno" Bank: 112, ProgramChange: 1 - "Harpsichord" Bank: 112, ProgramChange: 3 - "Grand Harpsi" Bank: 113, ProgramChange: 7 So they cannot be collected on the same page, in the Patch-Selector. So far only the context-menu and the Patch-Editor show them, using dropdowns: |
|
Exposing this sparse distribution in the Patch Selector isn't great: |
|
There is another, I think even more important, problem here. Length of the patch name. It can be decent. Here's an example for the Roland INTEGRA-7: "ExSN3 SNA0001 Warm Cutting". I don't know how to shorten it (all elements are significant) |
|
HW vendors usually offer several methods for accessing patches. Maybe you should leave the existing "Patch Selector" mechanism (possibly modified), but add something similar in functionality to " Patch Change" ? |
|
IMHO, a good solution would be to add 3 selectors after the "External MIDI Device" selectors: "Channel, "Category" and "Patch" " with corresponding pop-up menus to the list of channels (1-16), categories for the selected MIDI device and channel, and to the list of patches for the selected category. The mouse scroll wheel should switch items from the list. After these selectors you can display the corresponding Bank (MSB/LSB) and patch numbers as text. |
|
Some changes are in 6.0-rc1-5-g045200ba35. The Patch selector now lists Programs of Performances/Montages. Other changes, if any, will have to wait until after 6.0. There may be some channel-selector in the track header, mainly useful to make it easier to select the channel used when drawing notes -- except for MPE. I'm unsure if there will be a per-channel patch/program selector there, though. These days this is commonly done in a synth's pluging GUI. I expect you use the Yamaha as master-keyboard, too. So using its patch-selector is also more convenient, and the main use-case in Ardour is to display the correct patch on the timeline and edit it there. |
|
Ufff ... now I can live ;) But:) I think if the patch names in the "Patch Selector" are aligned to the left, the readability will be higher. Since MONTAGE does not transmit the selected patch, and I also use IT to manage other external modules that do not have an external keyboard, the only way to save the selected patches in the Ardour Session is to use some Ardour mechanisms. Now there are 2 of them. 1. "Patch Change" works fine, but it can't be used with templates. It is also not very convenient for each track to perform a bunch of actions with switching to "Draw Mode", drawing an empty Region, switching to "Grab Mode", inserting "Patch Change", switching to "Edit Mode", and actually choosing a Patch. Of course, we would like to simplify this. 2. "Patch Selector" NOW it works, but it is not very convenient (in its current form) for Category/Path mode. All concerns only the case with external MIDI equipment. If "External MIDI Device" is not selected, then everything else can be omitted (Channel, Category, Patch selectors are not shown) |
Date Modified | Username | Field | Change |
---|---|---|---|
2018-01-05 15:52 | unius | New Issue | |
2020-04-15 02:03 | x42 | Assigned To | => x42 |
2020-04-15 02:03 | x42 | Status | new => feedback |
2020-04-15 02:03 | x42 | Note Added: 0021353 | |
2020-04-15 07:38 | unius | File Added: shot.png | |
2020-04-15 07:38 | unius | Note Added: 0021357 | |
2020-04-15 07:38 | unius | Status | feedback => assigned |
2020-04-19 03:24 | x42 | Note Added: 0021385 | |
2020-04-19 12:52 | unius | File Added: montage-patches.png | |
2020-04-19 12:52 | unius | File Added: montage-categories-hw.png | |
2020-04-19 12:52 | unius | Note Added: 0021389 | |
2020-04-19 12:52 | unius | File Added: Yamaha_MONTAGE.zip | |
2020-04-19 12:52 | unius | Note Added: 0021390 | |
2020-04-19 12:58 | x42 | File Added: pc_edit.png | |
2020-04-19 12:58 | x42 | Note Added: 0021391 | |
2020-04-19 13:00 | x42 | File Added: psel.png | |
2020-04-19 13:00 | x42 | Note Added: 0021392 | |
2020-04-19 13:21 | unius | Note Added: 0021394 | |
2020-04-19 13:30 | unius | Note Added: 0021395 | |
2020-04-19 14:13 | unius | Note Added: 0021399 | |
2020-04-19 15:00 | x42 | Note Added: 0021400 | |
2020-04-19 15:00 | x42 | Assigned To | x42 => |
2020-04-19 16:53 | unius | Note Added: 0021401 |