X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fedl.C;h=e167e48ad4477a8006694d67d5cce620c12e444b;hb=21b49090a36821cfe97bdfc573c7fbacc80653d1;hp=d1d904aa795647605031cf3df393e4fbf5f7a181;hpb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/edl.C b/cinelerra-5.1/cinelerra/edl.C index d1d904aa..e167e48a 100644 --- a/cinelerra-5.1/cinelerra/edl.C +++ b/cinelerra-5.1/cinelerra/edl.C @@ -35,6 +35,7 @@ #include "filexml.h" #include "guicast.h" #include "indexstate.h" +#include "interlacemodes.h" #include "labels.h" #include "localsession.h" #include "mutex.h" @@ -1448,20 +1449,23 @@ if(debug) printf("EDL::get_use_vconsole %d\n", __LINE__); if(debug) printf("EDL::get_use_vconsole %d\n", __LINE__); // Edit is not a nested EDL + Asset *asset = (*playable_edit)->asset; // Edit is silence - if(!(*playable_edit)->asset) return 1; + if(!asset) return 1; if(debug) printf("EDL::get_use_vconsole %d\n", __LINE__); - // Asset and output device must have the same dimensions - if((*playable_edit)->asset->width != session->output_w || - (*playable_edit)->asset->height != session->output_h) + if( asset->width != session->output_w || + asset->height != session->output_h ) return 1; if(debug) printf("EDL::get_use_vconsole %d\n", __LINE__); - - +// Asset and output device must have same resulting de-interlacing method + if( ilaceautofixmethod2(session->interlace_mode, + asset->interlace_autofixoption, asset->interlace_mode, + asset->interlace_fixmethod) != BC_ILACE_FIXMETHOD_NONE ) + return 1; // If we get here the frame is going to be directly copied. Whether it is // decompressed in hardware depends on the colormodel.