+ }
+ return volume;
+}
+
+
+void
+Dynamic_performer::process_music ()
+{
+ if (span_events_[STOP] || script_event_)
+ {
+ finished_span_dynamic_ = span_dynamic_;
+ span_dynamic_ = 0;
+ }
+
+ if (span_events_[START])
+ {
+ span_dynamic_ = new Audio_span_dynamic ();
+ announce_element (Audio_element_info (span_dynamic_, span_events_[START]));
+
+ span_dynamic_->grow_dir_ = grow_dir_[START];
+ }
+
+ if (script_event_
+ || span_dynamic_
+ || finished_span_dynamic_)
+ {
+ absolute_ = new Audio_dynamic ();
+
+ if (script_event_)