This ports all properties of the MidiSynth to C++ (except for object properties SNet/PNet).
I had to fix a bug in BsePcmOutput (first commit), because setting the volume on the output object had no effect, but I wanted to test my code. To have 1:1 the same ranges, I introduced constants for BSE_MIN|MAX_VOLUME_dB, but maybe this should just be hardcoded to -96 / 24. For the new max midi channel constant I think a constant should be used (maybe moved up to the other constants). I noticed that some property idl constants don't combine properly. If you write Range (... GUI STORAGE ...), this expands to "r:w:G" "r:w:S" - so instead of getting a "G" hint, you get a "Gr" hint. Here I used STANDARD as ported property type, to work around the issue,which has both "G" and "S" hints. Not sure what is intended here, but adding ":" at the beginning and end of each property constant would allow using both versions for a GUI & STORAGE property. You can view, comment on, or merge this pull request online at: https://github.com/tim-janik/beast/pull/112 -- Commit Summary -- * BSE: PcmOutput: properly update volume for engine module * BSE: MidiSynth::midi_channel: port property to C++ * BSE: MidiSynth::n_voices: port property to C++ * BSE: MidiSynth::volume_f: port property to C++ * BSE: MidiSynth::volume_dB: port property to C++ * BSE: MidiSynth::volume_perc: port property to C++ * BSE: MidiSynth: store volume_factor in impl class -- File Changes -- M bse/bseapi.idl (17) M bse/bsemidisynth.cc (200) M bse/bsemidisynth.hh (19) M bse/bsepcmoutput.cc (34) -- Patch Links -- https://github.com/tim-janik/beast/pull/112.patch https://github.com/tim-janik/beast/pull/112.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/tim-janik/beast/pull/112
_______________________________________________ beast mailing list beast@gnome.org https://mail.gnome.org/mailman/listinfo/beast