rest of Termux related mods from Andrew
[goodguy/cinelerra.git] / cinelerra-5.1 / plugins / livevideo / livevideo.C
index f08a7371cc812ccd23abbcd8a16ae250afdfa233..d928b7e8ac2868e32e70b4b0f5bdb84cf6ae95fc 100644 (file)
@@ -31,7 +31,9 @@
 #include "filexml.h"
 #include "guicast.h"
 #include "language.h"
+#ifdef HAVE_LIBDV
 #include "libdv.h"
+#endif
 #include "libmjpeg.h"
 #include "mwindow.h"
 #include "picture.h"
@@ -150,7 +152,9 @@ public:
        int prev_channel;
        int w, h;
 // Decompressors for different video drivers
+#ifdef HAVE_LIBDV
        dv_t *dv;
+#endif
        mjpeg_t *mjpeg;
 };
 
@@ -197,8 +201,8 @@ LiveVideoWindow::LiveVideoWindow(LiveVideo *plugin)
  : PluginClientWindow(plugin,
        plugin->w,
        plugin->h,
-       100,
-       100,
+       xS(100),
+       yS(100),
        1)
 {
        this->plugin = plugin;
@@ -211,7 +215,9 @@ LiveVideoWindow::~LiveVideoWindow()
 
 void LiveVideoWindow::create_objects()
 {
-       int x = 10, y = 10;
+       int xs10 = xS(10);
+       int ys5 = yS(5), ys10 = yS(10);
+       int x = xs10, y = ys10;
 
        EDLSession *session = plugin->get_edl()->session;
        if(session)
@@ -225,14 +231,14 @@ void LiveVideoWindow::create_objects()
        }
 
        add_subwindow(title = new BC_Title(x, y, _("Channels:")));
-       y += title->get_h() + 5;
+       y += title->get_h() + ys5;
        add_subwindow(list = new LiveChannelList(plugin,
                this,
                x,
                y,
-               get_w() - x - 10,
-               get_h() - y - BC_OKButton::calculate_h() - 10 - 10));
-       y += list->get_h() + 10;
+               get_w() - x - xs10,
+               get_h() - y - BC_OKButton::calculate_h() - ys10 - ys10));
+       y += list->get_h() + ys10;
        add_subwindow(select = new LiveChannelSelect(plugin,
                this,
                x,
@@ -345,10 +351,12 @@ LiveVideo::LiveVideo(PluginServer *server)
        vdevice = 0;
        temp = 0;
        channeldb = new ChannelDB;
-       w = 320;
-       h = 640;
+       w = xS(320);
+       h = yS(640);
        prev_channel = 0;
+#ifdef HAVE_LIBDV
        dv = 0;
+#endif
        mjpeg = 0;
        picture = 0;
        this->server = server;
@@ -368,7 +376,9 @@ LiveVideo::~LiveVideo()
 
        delete channeldb;
        delete temp;
+#ifdef HAVE_LIBDV
        if(dv) dv_delete(dv);
+#endif
        if(mjpeg) mjpeg_delete(mjpeg);
        delete picture;
 }
@@ -497,6 +507,7 @@ int LiveVideo::process_buffer(VFrame *frame,
                        {
                                switch(session->vconfig_in->driver)
                                {
+#ifdef HAVE_LIBDV
                                        case CAPTURE_FIREWIRE:
                                        case CAPTURE_IEC61883:
 // Decompress a DV frame from the driver
@@ -509,7 +520,7 @@ int LiveVideo::process_buffer(VFrame *frame,
                                                        frame->get_color_model());
                                                frame->set_opengl_state(VFrame::RAM);
                                                break;
-
+#endif
                                        case VIDEO4LINUX2JPEG:
                                                if(!mjpeg)
                                                        mjpeg = mjpeg_new(frame->get_w(),
@@ -637,8 +648,3 @@ void LiveVideo::update_gui()
                }
        }
 }
-
-
-
-
-