MantisBT

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0004207ardourbugspublic2011-07-19 14:572015-03-14 14:35
Reporterx42 
Assigned To 
PrioritynormalSeverityminorReproducibilityN/A
StatusacknowledgedResolutionopen 
PlatformOSOS Version
Product Version 
Target Version3.XFixed in Version 
Summary0004207: midi "patch changes" are inaccesible
DescriptionMidi Patch Changes (program/bank)

 - can not be removed by pressing "del" - but shift+right-click works.

 - don't show up in the MIDI-list-editor.

 - may graphically overlap with a track below (switch track-height to "small").

 - they disappear completely (rather than being grayed-out) when the channel is hidden using the midi-channel-dial below the track-name)

 - Right-Clicking on them shows an empty context-menu.

 - The MIDI-channel of the patch-change-event can not be set when creating a new event when using the main-menu, or midi-track-context-menu. But when editing the event (ctrl+right-click) a channel-entry appears.

 - the midi-channel-chooser (pressing 'c') does not work on them (they can't be selected as midi-notes can)


All in all: these are really minor issues, but the overall user-experience is somewhat annoying and unintuitive.
TagsNo tags attached.
Attached Filesdiff file icon a3_r9939_midi_patch_display.diff [^] (4,835 bytes) 2011-07-28 01:58 [Show Content]

- Relationships

-  Notes
(0011169)
x42 (administrator)
2011-07-19 15:00

Oh and I forgot to mention: the numbering is always 1 off.

Bank "0" is displayed as "1" in ardour. same for Program.
instead of program range 0-127; ardour has 1-128
(0011229)
x42 (administrator)
2011-07-28 01:58

attached patch
 - introduces an option to choose if bank/program display starts at zero or one
 - adds channel number to verbose-cursor info
 - solves the graphical overlap on small track heights by displaying bank and program on the same line.
(0011230)
x42 (administrator)
2011-07-28 02:06

Note: the config option is in Edit->Preferences->Midi Control

Semantically it may better fit into "Editor" or "Misc" - But "MIDI [Control]" is the place that catches the eye when one would be looking for that option..
(0011231)
x42 (administrator)
2011-07-28 04:59

Dave requested to include octal numbering for old synths: e.g.
http://www.pallium.com/bryan/dw8000.php#TapeDumps [^]

Paul's gut feeling suggests to eventually use MIDNAM for this.

more info on ardour-dev -- July 28 2011
"Re: [Ardour-Dev] Fwd: [Ardour-Cvs] r9939 - ardour2/branches/3.0/gtk2_ardour"
(0011242)
cth103 (administrator)
2011-08-03 04:15

Patch applied to SVN 9948. Thanks!
(0013415)
cth103 (administrator)
2012-06-08 05:18

Patch changes are greyed out rather than disappeared in SVN 12600.
(0013416)
cth103 (administrator)
2012-06-08 05:28

I can't reproduce the graphical overlap any more; the empty context menu on right-click is because there is no MIDNAM file selected for the track, and now seems to be fixed; creating a new patch change now has a channel option.

The remanining problems are due to the fact that the patch changes can't be selected like notes, which needs deeper fixes which are unlikely to happen before 3.0, so I'll bump this to 3.X to fix:

selection of patch changes like notes
addition of patch changes to the MIDI list editor (perhaps optionally)
(0013466)
paul (administrator)
2012-06-11 05:38

more work is ongoing on this stuff right now, to integrate MIDNAM files with plugin instrument program names (which are, frankly, going to be more common than external h/w).
(0013492)
paul (administrator)
2012-06-13 04:14

current 3.0 SVN should be massively improved in all areas relating to program changes.

after some research, it turns out that the idea of mapping plugin presets to program changes is actually very, very hard, and often impossible. there are many plugins that do not respond to MIDI program changes, or do not respond by changing presets; there is confusion over the concepts of "preset" vs. "program" (or "patch"). i've done a bit to provide some support for a token mapping. at present, all plugin types are hard coded as supporting General MIDI, which will change very soon. i have no idea how any code could ever determine that a plugin instrument supports GM, or even whether sending it a PC message changes its current program/state.

still to do: Provide a General MIDI midnam file.
(0013551)
paul (administrator)
2012-06-15 20:11

there is now a general MIDI file (device name "Generic", mode = "General MIDI")

i consider this bug fixed, but would appreciate feedback.
(0013552)
paul (administrator)
2012-06-16 05:31

actually, now that i read through again, i see that many of these issues are still issues ...
(0013553)
paul (administrator)
2012-06-16 05:35

ok, so sub-issue by sub-issue:

 - can not be removed by pressing "del" - but shift+right-click works.

OPEN

 - don't show up in the MIDI-list-editor.

OPEN

 - may graphically overlap with a track below (switch track-height to "small").

FIXED

 - they disappear completely (rather than being grayed-out) when the channel is hidden using the midi-channel-dial below the track-name)

FIXED

 - Right-Clicking on them shows an empty context-menu.

FIXED

 - The MIDI-channel of the patch-change-event can not be set when creating a new event when using the main-menu, or midi-track-context-menu. But when editing the event (ctrl+right-click) a channel-entry appears.

"FIXED" ... just as when adding notes, the first active channel for the track will be used.

 - the midi-channel-chooser (pressing 'c') does not work on them (they can't be selected as midi-notes can)

There are no operations that can be used on notes and patch changes at the same time. The MIDI "selection" consists only of notes. This is a post-3.0 issue.
(0013568)
x42 (administrator)
2012-06-18 10:09

Wooha. Lots of activity here. Well done.

The first issue (removed by pressing "del") is now invalid, as you said: they can't be selected in the first place.

Having them show up in the MIDI-list editor is still a wishlist item.

Related to that: right-click->[RegionName]->Properties currently does nothing and right-click->[RegionName]->MIDI->List Editor does nothing either! No windows pop up. (svn rev. 12739)

Other things:
  * Quantize does not have any effect the CCs (maybe that's intentional).
  * the "display first midi program as 0" option affects only the mouse-over-info-text and not the value written inside the blue-box on the timeline (which always starts a zero).
(0013585)
paul (administrator)
2012-06-18 18:26

the delete key now works, while the mouse is inside a patch change.

appearing in the MIDI list editor is a post-3.0 item.

quantizing non-note data is an interesting issue. will have to investigate the feasibility and semantics for 3.0 or beyond.
(0013586)
x42 (administrator)
2012-06-18 18:35

re quantization: CC's probably don't need to be quantized, but the order must be preserved.

During some tests here, notes that were originally after a program-change were moved to before the that program-change...
(0016299)
BenLoftis (developer)
2015-01-28 18:28

"Delete" key inside a patch change does not work for me.

Patch changes need to be selectable ( and get a red border like other selected things ), so they can be deleted using existing conventions.

More importantly: they need to ignore mouse scrolling unless they are selected (just like midi notes do). Because otherwise you can be scrolling in the canvas, and the scrolling stops if you scroll into a patch change (and you start changing the patch!)
(0016300)
BenLoftis (developer)
2015-01-28 18:31

When starting playback, the most-recent patch-change should be applied. I realize this might be a contentious issue but without this feature, starting playback at an arbitrary position means that you often don't hear the correct sound. You have to search for the previous patch change and "roll through" it, then return to where you were working.

This is probably a pain since patch changes are embedded in regions.
(0016301)
paul (administrator)
2015-01-28 18:57

las: Ben_at_home: re: your last comment in patch changes ...
[9:55pm] las: Ben_at_home: not just contentious, but part of a much larger and complex task, and should not be done in isolation
[9:55pm] las: Ben_at_home: "correct MIDI state" at a given point in time is far more than the current patch change
[9:55pm] las: Ben_at_home: and really requires a complete pseudo-replay of all MIDI data since session start/zero
(0016439)
drobilla (developer)
2015-03-14 14:35

There is another request for the same feature for CCs. In these two cases, I don't think it actually needs a replay: we can quickly look up the relevant PC (the previous one), or current CC value (as with any other automation line). Within regions/sources I think that's pretty easy.

NRPN and such makes it harder, but since we don't support that properly anyway, well...

Considering multiple overlapping regions, though, seems a lot harder. We'd need (?) to inject current state when transitioning to a new region, even when not changing transport position/speed, to get this effect consistently.

Also, different programs in transparent overlapping MIDI regions seems like a fundamentally nonsensical situation.

- Issue History
Date Modified Username Field Change
2011-07-19 14:57 x42 New Issue
2011-07-19 15:00 x42 Note Added: 0011169
2011-07-19 15:56 cth103 cost => 0.00
2011-07-19 15:56 cth103 Target Version => 3.0-beta1
2011-07-28 01:58 x42 Note Added: 0011229
2011-07-28 01:58 x42 File Added: a3_r9939_midi_patch_display.diff
2011-07-28 02:06 x42 Note Added: 0011230
2011-07-28 04:59 x42 Note Added: 0011231
2011-08-03 04:15 cth103 Note Added: 0011242
2011-11-15 07:15 cth103 Target Version 3.0-beta1 => 3.0
2012-06-08 05:18 cth103 Note Added: 0013415
2012-06-08 05:28 cth103 Note Added: 0013416
2012-06-08 05:28 cth103 Target Version 3.0 => 3.X
2012-06-11 05:38 paul Note Added: 0013466
2012-06-13 04:14 paul Note Added: 0013492
2012-06-13 04:14 paul Status new => feedback
2012-06-13 08:35 cth103 Status feedback => acknowledged
2012-06-15 20:11 paul Note Added: 0013551
2012-06-16 05:31 paul Note Added: 0013552
2012-06-16 05:35 paul Note Added: 0013553
2012-06-18 10:09 x42 Note Added: 0013568
2012-06-18 18:26 paul Note Added: 0013585
2012-06-18 18:35 x42 Note Added: 0013586
2015-01-28 18:28 BenLoftis Note Added: 0016299
2015-01-28 18:31 BenLoftis Note Added: 0016300
2015-01-28 18:57 paul Note Added: 0016301
2015-03-14 14:35 drobilla Note Added: 0016439


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker