asset menu size fixups, new picons+prefs, more timecode del, stretch scrollbars,...
[goodguy/history.git] / cinelerra-5.1 / cinelerra / vrender.C
index 4c3011622a01e0514c3ca20b05e11a77dbc2cded..dd738ac5ca92018e13aab7fb4041d0116f521673 100644 (file)
@@ -29,7 +29,6 @@
 #include "edl.h"
 #include "edlsession.h"
 #include "file.h"
-#include "interlacemodes.h"
 #include "localsession.h"
 #include "mainsession.h"
 #include "mwindow.h"
@@ -144,28 +143,13 @@ int VRender::process_buffer(int64_t input_position,
        use_vconsole = get_use_vconsole(&playable_edit, input_position, use_brender);
        if(debug) printf("VRender::process_buffer %d use_vconsole=%d\n", __LINE__, use_vconsole);
 
-       if( playable_edit ) { 
-// Asset and output device must have same resulting de-interlacing method
-               Indexable *source = playable_edit->get_source();
-               if( source->is_asset ) {
-                       Asset *asset = (Asset *)source;
-                       if( ilaceautofixmethod2(renderengine->edl->session->interlace_mode,
-                                       asset->interlace_autofixoption, asset->interlace_mode,
-                                       asset->interlace_fixmethod) != BC_ILACE_FIXMETHOD_NONE )
-                               return 1;
-               }
-       }
-
 // Negotiate color model
        colormodel = get_colormodel(playable_edit, use_vconsole, use_brender);
        if(debug) printf("VRender::process_buffer %d\n", __LINE__);
 
 
-
-
 // Get output buffer from device
-       if(renderengine->command->realtime &&
-               !renderengine->is_nested)
+       if(renderengine->command->realtime && !renderengine->is_nested)
        {
                renderengine->video->new_output_buffer(&video_out, colormodel);
        }
@@ -223,11 +207,6 @@ int VRender::process_buffer(int64_t input_position,
                                1,
                                use_cache,
                                use_asynchronous);
-/* Insert timecode */
-                       if(renderengine->show_tc)
-                               insert_timecode(playable_edit,
-                                       input_position,
-                                       video_out);
                        if(debug) printf("VRender::process_buffer %d\n", __LINE__);
                }
 
@@ -260,85 +239,11 @@ int VRender::get_use_vconsole(VEdit **playable_edit,
 
 // Descend into EDL nest
        return renderengine->get_edl()->get_use_vconsole(playable_edit,
-               position,
-               renderengine->command->get_direction(),
+               position, renderengine->command->get_direction(),
                vconsole->playable_tracks);
 }
 
 
-int VRender::insert_timecode(Edit* playable_edit,
-                       int64_t position,
-                       VFrame *output)
-{
-#if 0
-       EDLSession *session = renderengine->edl->session;
-       /* Create a vframe with TC and SRC timecode in white
-        * with a black border */
-       VFrame *input = new VFrame(0,
-               output->get_w(), MIN(output->get_h(), 50),
-               output->get_color_model(), output->get_bytes_per_line());
-       char etc[12];
-       char srctc[12];
-       int src_position = 0;
-
-TRACE("VRender::insert_timecode 10")
-
-       /* Edited TC */
-       Units::totext(etc,
-               (renderengine->vrender->current_position +
-                       session->get_frame_offset()) / session->frame_rate,
-               session->time_format,
-               session->sample_rate,
-               session->frame_rate,
-               session->frames_per_foot);
-
-TRACE("VRender::insert_timecode 20")
-
-       if(playable_edit)
-       {
-TRACE("VRender::insert_timecode 30")
-               src_position = renderengine->vrender->current_position -
-                       playable_edit->startproject +
-                       playable_edit->startsource +
-                       playable_edit->asset->tcstart;
-TRACE("VRender::insert_timecode 40")
-               Units::totext(srctc,
-                       src_position / playable_edit->asset->frame_rate,
-                       session->time_format,
-                       session->sample_rate,
-                       playable_edit->asset->frame_rate,
-                       session->frames_per_foot);
-       }
-       else
-       {
-TRACE("VRender::insert_timecode 50")
-               Units::totext(srctc,
-                       0.0,
-//                     (renderengine->vrender->current_position - position) / session->frame_rate,
-                       session->time_format,
-                       session->sample_rate,
-                       session->frame_rate,
-                       session->frames_per_foot);
-       }
-TRACE("VRender::insert_timecode 60")
-
-//printf("re position %i position %i\n",
-//     renderengine->vrender->current_position, position);
-//printf("SRC %s   TC %s\n", srctc, etc);
-
-       /* Insert the timecode data onto the input frame */
-
-       vrender->overlayer->overlay(output, input,
-               input->x, input->y, input->width, input->height,
-               output->x, output->y, output->width, output->height,
-               1, TRANSFER_REPLACE,
-               renderengine->edl->session->interpolation_type);
-       delete(input);
-UNTRACE
-#endif
-       return 0;
-}
-
 int VRender::get_colormodel(VEdit *playable_edit,
        int use_vconsole, int use_brender)
 {
@@ -362,8 +267,8 @@ int VRender::get_colormodel(VEdit *playable_edit,
                                current_position,
                                renderengine->command->get_direction());
                }
-
-               if(asset)
+// ffmpeg files are side effected by color_model, affects colorspace,color_range
+               if( asset && asset->format != FILE_FFMPEG )
                {
                        file = renderengine->get_vcache()->check_out(asset,
                                renderengine->get_edl());