olaf neophyte and de.po updates, valgrind tweaks, delete green lady, inkscape dpi=96
[goodguy/history.git] / cinelerra-5.1 / cinelerra / videodevice.C
index d38eaa677152a5da450d51a7239b0657514cdfb3..78214adacacf00fc6b8cf1aedd793861bfd3fe41 100644 (file)
@@ -29,7 +29,9 @@
 #include "edl.h"
 #include "edlsession.h"
 #include "file.inc"
+#ifdef HAVE_DV
 #include "libdv.h"
+#endif
 #include "libmjpeg.h"
 #include "mainmenu.h"
 #include "mutex.h"
@@ -190,6 +192,8 @@ int VideoDevice::initialize()
        single_frame = 0;
        channel_changed = 0;
        picture_changed = 0;
+       odd_field_first = 0;
+       do_cursor = 0;
        return 0;
 }
 
@@ -347,11 +351,12 @@ void VideoDevice::fix_asset(Asset *asset, int driver)
 // Fix asset using legacy routine
        const char *vcodec = 0;
        switch(driver) {
+#ifdef HAVE_DV
        case CAPTURE_IEC61883:
        case CAPTURE_FIREWIRE:
                vcodec = CODEC_TAG_DVSD;
                break;
-
+#endif
        case VIDEO4LINUX2JPEG:
                vcodec = CODEC_TAG_MJPEG;
                break;
@@ -492,6 +497,21 @@ int VideoDevice::set_field_order(int odd_field_first)
        return 0;
 }
 
+void VideoDevice::set_do_cursor(int do_cursor, int do_big_cursor)
+{
+       int cursor_scale = 0;
+       if(do_cursor)
+       {
+               cursor_scale = 1;
+               if(do_big_cursor)
+               {
+                       cursor_scale = 2;
+               }
+       }
+
+       this->do_cursor = cursor_scale;
+}
+
 int VideoDevice::set_channel(Channel *channel)
 {
        int result = 0;
@@ -697,10 +717,10 @@ void VideoDevice::goose_input()
        if(input_base) input_base->goose_input();
 }
 
-void VideoDevice::new_output_buffer(VFrame **output, int colormodel)
+void VideoDevice::new_output_buffer(VFrame **output, int colormodel, EDL *edl)
 {
        if(!output_base) return;
-       output_base->new_output_buffer(output, colormodel);
+       output_base->new_output_buffer(output, colormodel, edl);
 }
 
 
@@ -730,7 +750,7 @@ int VideoDevice::set_cloexec_flag(int desc, int value)
 {
        int oldflags = fcntl(desc, F_GETFD, 0);
        if( oldflags < 0 ) return oldflags;
-       if( value != 0 ) 
+       if( value != 0 )
                oldflags |= FD_CLOEXEC;
        else
                oldflags &= ~FD_CLOEXEC;