X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Frender.C;h=a7456717556bc3e58e194578bf297de7ab7576c2;hb=b104b77f5296719bd5e6de8472eb71542ddaedec;hp=17f8f0a02fd48158e035613bc56da97d054d320f;hpb=bfd8c9032015896999473fba40d5f2948c81894f;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/render.C b/cinelerra-5.1/cinelerra/render.C index 17f8f0a0..a7456717 100644 --- a/cinelerra-5.1/cinelerra/render.C +++ b/cinelerra-5.1/cinelerra/render.C @@ -446,15 +446,16 @@ int Render::check_asset(EDL *edl, Asset &asset) return 0; } -int Render::get_strategy(int use_renderfarm, int use_labels) +int Render::get_strategy(int use_renderfarm, int use_labels, int range_type) { - return use_renderfarm ? - (use_labels ? FILE_PER_LABEL_FARM : SINGLE_PASS_FARM) : - (use_labels ? FILE_PER_LABEL : SINGLE_PASS ) ; + return range_type == RANGE_1FRAME ? SINGLE_PASS : + use_renderfarm ? + (use_labels ? FILE_PER_LABEL_FARM : SINGLE_PASS_FARM) : + (use_labels ? FILE_PER_LABEL : SINGLE_PASS ) ; } int Render::get_strategy() { - return get_strategy(preferences->use_renderfarm, use_labels); + return get_strategy(preferences->use_renderfarm, use_labels, range_type); } void Render::start_progress() @@ -733,8 +734,8 @@ void RenderThread::render_single(int test_overwrite, Asset *asset, EDL *edl, render->result = 1; } } - - render_frames = render->default_asset->frame_rate * total_length; +// prevent single frame truncation to zero frames + render_frames = render->default_asset->frame_rate * total_length + 1e-4; // Generate packages if( !render->result ) { @@ -882,8 +883,8 @@ printf("Render::render_single: Session finished.\n"); mwindow->restart_brender(); if( farm_server ) delete farm_server; delete command; - delete audio_cache; - delete video_cache; + audio_cache->remove_user(); + video_cache->remove_user(); // Must delete packages after server delete render->packages; @@ -989,6 +990,8 @@ RenderWindow::RenderWindow(MWindow *mwindow, rangeselection = 0; rangeinout = 0; range1frame = 0; +// *** CONTEXT_HELP *** + context_help_set_keyword("Single File Rendering"); } RenderWindow::~RenderWindow()