name_ = new Audio_text (Audio_text::TRACK_NAME, context ()->id_string ()
+ ":" + voice);
audio_staff->add_audio_item (name_);
+ announce_element (Audio_element_info (name_, 0));
}
announce_element (Audio_element_info (audio_staff, 0));
- announce_element (Audio_element_info (name_, 0));
staff_map_[voice] = audio_staff;
+ if (!instrument_string_.empty ())
+ set_instrument (channel_, voice);
return audio_staff;
}
Staff_performer::get_audio_staff (string voice)
{
SCM channel_mapping = get_property ("midiChannelMapping");
- if (channel_mapping != ly_symbol2scm ("voice")
+ if (channel_mapping != ly_symbol2scm ("instrument")
&& staff_map_.size ())
return staff_map_.begin ()->second;
}
Audio_staff* audio_staff = get_audio_staff (voice);
ai->channel_ = channel_;
+ // Output volume as velocity and disable Midi_dynamic output
if (Audio_dynamic *d = dynamic_cast<Audio_dynamic *> (inf.elem_))
- dynamic_map_[voice] = d->volume_;
+ {
+ dynamic_map_[voice] = d->volume_;
+ d->volume_ = -1;
+ }
if (Real d = get_dynamic (voice))
if (Audio_note *n = dynamic_cast<Audio_note *> (inf.elem_))
n->volume_ = d;