X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Frenderengine.C;h=aa16aafaca6a4347c93cee82d0f0e35de91a906d;hp=faba961583a5ce347196f77099a9d006f9a6960e;hb=4710b00debcb86b8ff626c4af3473afe338408ae;hpb=0495d0555cc8e2526b7e3677fb7ef4d802f5ebe2 diff --git a/cinelerra-5.1/cinelerra/renderengine.C b/cinelerra-5.1/cinelerra/renderengine.C index faba9615..aa16aafa 100644 --- a/cinelerra-5.1/cinelerra/renderengine.C +++ b/cinelerra-5.1/cinelerra/renderengine.C @@ -467,12 +467,12 @@ void RenderEngine::run() close_output(); - if( playback_engine && playback_engine->is_playing_back ) { - double position = interrupted ? - playback_engine->get_tracking_position() : - command->get_direction() == PLAY_FORWARD ? - command->end_position : - command->start_position; + if( playback_engine ) { + double position = command->single_frame() ? command->playbackstart : + playback_engine->is_playing_back && !interrupted ? + ( command->get_direction() == PLAY_FORWARD ? + command->end_position : command->start_position ) : + playback_engine->get_tracking_position() ; if( command->displacement ) { position -= 1./command->get_edl()->session->frame_rate; if( position < 0 ) position = 0;