Drum maps are now available and should detect the instrument relevant to the selected MIDI channel. If the drum map does not show you can go to the Scales menu option and select the lowest value (below Chromatic).
Scales can be applied to filter notes to just those within each octave relevant to the selected scale. The scale is selected from the menu Scales option. I have added:
Chromatic
Major (Ionian mode)
Minor (Aeolian mode)
Blues
Blues pentonic (Japanese pentonic)
The tonic (root or base note of the scale) may be adjusted with the menu Tonic option. For chromatic scale this just moves the octave marker.
The scale is saved with the pattern including if you selected (or it defaulted to) a drum map.
This update requires extra files to be placed in the /zynthian/zynthian-my-data/sequences folder: maps.zip (4.1 KB)
@jofemodo I am aware this isnât necessarily the best location for these configurations. Maybe you want to suggest a better location? I can updated the code accordingly.
@MrBroccoli We can have a play next week or give me a shout if you want to discuss what is going wrong. Knowing you it is probably smoke bellowing from a screen⌠.
In feature/stepseq, how do I navigate to the pattern editor view of the step sequencer? I can not find it in the menu (layer button). I can only navigate to Song Editor, Pad Editor, ZynPad.
In master, Step Sequencer (alpha) brings up Step Sequencer, and in the menu (layer button) there is an entry âPattern Editorâ which is actually the same as Step Sequencer⌠I find the names confusing. Shouldnât the Pattern Editor view be titled âPattern Editorâ? The Menu entry âPattern Editorâ is then redundant.
Access to pattern editor has changed since the version in master. I hope soon to see master updated with the most recent changes because it is significantly different and it would be good to avoid users becoming familiar with the old design.
To access the pattern editor in the latest version:
Open Song editor
Select the song you wish to edit
Add patterns to the song
Highlight the pattern you want to edit
Bold press SELECT or click and hold on the pattern with a mouse / touchscreen a second
The Pattern editor should display, loaded with the selected pattern from the song and configured with the same MIDI channel as configured in the songâs track.
I will update the WIKI when @jofemodo performs the next merge of feature/stepseq to master.
Your question about master behaviour is redundant in the newer version so I wonât get into that!
@jofemodo has linked the MIDI player to the JACK MIDI master clock. This means when we stop playing a MIDI track, the step sequencer also stops including ZynPads. (There is a side-effect that when the clock stops, ZynPad stops playing but does not mark its pads as stopped so when clock resumes the pads will continue to play - maybe it should mark pads as stopped!) Question: Should we link MIDI player to master clock and if so, should it start (probably yes) and stop (maybe not) the master clock?
I guess the wider question is, what should be allowed to start and stop the master clock. This has been puzzling me for some time as different modules use the clock in different ways and we should have some coordinated approach.
The master MIDI clock acts as the time master. This means it has the concept of tempo. If an external clock is used instead of the internal JACK MIDI Clock then the concept of tempo lies entirely within that external device and Zynthian has no influence over this. Step sequencer has the ability to flag tempo changes but I am struggling to figure out what to do with these. I think I may only be able to control the internal MIDI clockâs tempo so the step sequencerâs tempo is only relevant if using internal clock. I guess that makes sense. (There is a technical challenge to get this to work due to the internal clock being a separate entity that does not have an API that allows dynamic tempo change without stopping the clock - grrrr! We may need to hack it or submit a feature request upstream. We may have some traction because I think its author may be a member of this community.)
I hope I got the problem right.
I assume that it is not necessary to run the midi player and stepseq at the same time. After all, we work with a raspi and a maximum of 16 midi channels âŚ
My suggestion would be that the two players exclude each other, and what was started first is then the midi-clock master.
Of course, the midi player should be integrated into the song editor at some point.
When it comes to the function that the audio recorder should start a player when recording, I would suggest the following points in the recorder menu:
Record - mainly intended for midi-in and audio-in - midi player or stepseq must be started manually.
and additional:
Record + Midi Player: like record -but the midi player starts automatically
Record + Stepseq: like record - you guessed it âŚ
It is {insert prefix}day so here is another update:
Fixed songs playing when switching between editors (I have to stop the transport which is suboptimal but there is a quirk of jack_transport - I may patch later)
Can now change tempo (was broken for a while) but only at start of song or during pattern editing. There remains an issue changing tempo during song (despite there being a working master track which can have tempo changes) due to some functionality in jack_transport missing (I may patch later)
Moving selection highlight in song editor now skips any space it cannot populate with the selected pattern. Note: This behaviour differs to pattern editor which does allow overlapping notes and will remove any existing notes that overlap. I feel there should be consistent behaviour between these two editors but want to live with each and garner opinion on which is more desirable. The song editor behaviour is designed to reduce the accidental removal of a pattern, particularly when using a touchscreen. This may be resolved by recent change to pattern editor where you can drag your input around before releasing. Thoughts?
Fixed copy song feature
@le51 I canât reproduce the partially obscured last menu item now. Maybe I fixed it! Will you please retest?
There are many things on my list yet to do and I may add some to the next sprint but I am painfully aware that the interface is slow (particularly song editor full screen refresh or pattern editor with lots of steps in pattern) so I should really look at that. What I should do and what I want to do may of course differâŚ
Enjoy
@spurkopf I donât think we do want to exclude modules. It may be the case that someone has a MIDI backing track which they want to use in conjunction with the step sequencer, either for simultaneous performance or during preparation or transfer of ideas to the step sequencer. Indeed I believe this was an idea that led @jofemodo to sync these together. We also need to consider engines that will benefit from MIDI timecode, e.g. sooperlooper (but probably a future full engine version rather than LV2 which does not support this - reference Zynth Club discussion). I reckon we may want to leave the transport running, issuing MIDI clock and just control the start / stop and position of modules. This is currently not possible with jack_transport, hence the comments above about needing to patch (or replace) it but I think we may want a master clock that is always available (like the LFO in an old analogue synth) so that it may be used to sync anything that needs it then have a separate concept of play / pause / recue that sits on top of this and does not control the MIDI clock.
I see you want to leave all doors open.
If you can synchronize, start and stop everything, so much the better!
Then I actually misunderstood the problem with the midi clock. Thank you for the new update, saving the song tempo works. The patterns now seem to run synchronously.
I will take a look later. I have some improvements to code optimization which speed up the interface that need a little more testing (and I am still building my kitchen). I hope to get another update out by end of weekend.
I have a problem. Bold clicking on a pattern in the song editor tries to take me to the pattern editor, but fails to render the actual editor. Iâll get some UI logs up here soon when I figure out why my password changedâŚ
(Uh oh, it might be time to reflash⌠)
Can anyone else confirm the pattern-editor problem?
@Jtunes have you copied the scale / map files as described above? @le51 thanks, I found and fixed the bug but not yet published⌠hopefully later today. @wyleu the kitchen is a building site. Maybe pictures when it is complete. (I donât want potential home buyers seeing what lies beneath!!!)
Optimisation improvements should give more responsive interface.
Some parameters now donât change until asserted, e.g. zoom.
Donât offer transpose menu for drums.
âSong / Padâ menu now says âEdit songâ or âEdit padsâ.
Improved label scaling.
Clicking on grid now closes parameter editor.
Attempt to transpose pattern whilst showing a scale will change to Chromatic scale view.
Fixed partially visible last menu item (menus are now always shorter than display height).
Remember you need to put the files described above in /zynthian/zynthian-my-data/sequences folder.
@jofemodo please advise how best to handle these configuration files. They shouldnât really be in my-data. There is a feature to allow user custom scales but that is not yet exposed and may not be required and may be removed if we can simply populate the scales configuration with all the scales anyone might want .
Now, after switching to stepseq and moving cursor a bit in the song editor, Iâve got UI freeze
relevant UI log below:
Jun 14 13:24:06 zynthian startx[8408]: INFO:zynthian_gui: Bold Switch 1
Jun 14 13:24:06 zynthian startx[8408]: DEBUG:zynthian_gui_controller: ZCTRL âMainâ: 0 (0 -> 10), None, None
Jun 14 13:24:10 zynthian startx[8408]: INFO:zynthian_gui: Short Switch 3
Jun 14 13:24:10 zynthian startx[8408]: INFO:zynthian_gui_main: Step Sequencer
Jun 14 13:24:32 zynthian startx[8408]: ERROR:zynthian_gui: name âFaâ is not defined
Jun 14 13:24:32 zynthian startx[8408]: Traceback (most recent call last):
Jun 14 13:24:32 zynthian startx[8408]: File â./zynthian_gui.pyâ, line 1149, in zyncoder_read
Jun 14 13:24:32 zynthian startx[8408]: self.screens[self.modal_screen].zyncoder_read()
Jun 14 13:24:32 zynthian startx[8408]: File â/home/pi/zynthian-ui/zyngui/zynthian_gui_stepsequencer.pyâ, line 610, in zyncoder_read
Jun 14 13:24:32 zynthian startx[8408]: self.zyncoderOwner[encoder].onZyncoder(encoder, value - 64)
Jun 14 13:24:32 zynthian startx[8408]: File â/home/pi/zynthian-ui/zyngui/zynthian_gui_songeditor.pyâ, line 893, in onZyncoder
Jun 14 13:24:32 zynthian startx[8408]: self.selectCell(self.selectedCell[0], track)
Jun 14 13:24:32 zynthian startx[8408]: File â/home/pi/zynthian-ui/zyngui/zynthian_gui_songeditor.pyâ, line 715, in selectCell
Jun 14 13:24:32 zynthian startx[8408]: self.drawGrid(Fa)
Jun 14 13:24:32 zynthian startx[8408]: NameError: name âFaâ is not defined