+ if( !old_speed && !new_speed ) continue;
+ result = 1;
+ if( edit_speed ) {
+ Autos *old_autos = old_track->automation->autos[AUTOMATION_SPEED];
+ Autos *new_autos = new_track->automation->autos[AUTOMATION_SPEED];
+ Auto *old_auto = old_autos ? old_autos->first : 0;
+ for( ; old_auto; old_auto=old_auto->next ) {
+ Auto *new_auto = new_autos->get_auto(old_auto->orig_id);
+ if( !new_auto ) continue;
+ int64_t auto_pos = old_auto->position;
+ double orig_pos = old_speeds->automation_integral(0, auto_pos, PLAY_FORWARD);
+ auto_pos = new_track->frame_align(new_speeds->speed_position(orig_pos), 1);
+ new_auto->position = auto_pos;
+ }
+ }