X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fdvdcreate.C;h=6ecb270b381be0102a77e08381b2f0d03b660774;hp=527228414c9a18adc43b6eed254c36e30ce91161;hb=HEAD;hpb=6ec5ee267320df640586b6c93814562d0d250194 diff --git a/cinelerra-5.1/cinelerra/dvdcreate.C b/cinelerra-5.1/cinelerra/dvdcreate.C index 52722841..390d2cbc 100644 --- a/cinelerra-5.1/cinelerra/dvdcreate.C +++ b/cinelerra-5.1/cinelerra/dvdcreate.C @@ -28,6 +28,7 @@ #include "edlsession.h" #include "file.h" #include "filexml.h" +#include "interlacemodes.h" #include "keyframe.h" #include "labels.h" #include "mainerror.h" @@ -349,6 +350,10 @@ int CreateDVD_Thread::create_dvd_jobs(ArrayList *jobs, const ch double old_samplerate = session->sample_rate; double old_framerate = session->frame_rate; + if(use_deinterlace) { + session->interlace_mode = ILACE_MODE_NOTINTERLACED; + } + session->video_channels = DVD_STREAMS; session->video_tracks = DVD_STREAMS; session->frame_rate = dvd_framerate; @@ -466,12 +471,17 @@ int CreateDVD_Thread::create_dvd_jobs(ArrayList *jobs, const ch asset->vmpeg_bitrate = vid_bitrate; asset->vmpeg_quantization = 15; asset->vmpeg_iframe_distance = 15; - asset->vmpeg_progressive = 0; + if(session->interlace_mode == ILACE_MODE_NOTINTERLACED || use_deinterlace) + { asset->vmpeg_progressive = 1; } else { + asset->vmpeg_progressive = 0; } asset->vmpeg_denoise = 0; asset->vmpeg_seq_codes = 0; asset->vmpeg_derivative = 2; asset->vmpeg_preset = 8; asset->vmpeg_field_order = 0; + if(session->interlace_mode == ILACE_MODE_BOTTOM_FIRST && !use_deinterlace) + { asset->vmpeg_field_order = 1; } else { + asset->vmpeg_field_order = 0; } asset->vmpeg_pframe_distance = 0; use_farmed = job->farmed; job = new BatchRenderJob(mwindow->preferences, 0, 0);