#include "recordscopes.h"
#include "recordtransport.h"
#include "recordmonitor.h"
+#include "signalstatus.h"
#include "theme.h"
#include "videodevice.inc"
#include "vframe.h"
RecordMonitorGUI::~RecordMonitorGUI()
{
lock_window("RecordMonitorGUI::~RecordMonitorGUI");
+#ifdef HAVE_DVB
delete signal_status;
+#endif
delete canvas;
if( bitmap ) delete bitmap;
if( channel_picker ) delete channel_picker;
- if( avc1394transport_thread )
#ifdef HAVE_FIREWIRE
+ if( avc1394transport_thread )
delete avc1394transport_thread;
if( avc ) {
delete avc;
// y offset for video canvas if we have the transport controls
lock_window("RecordMonitorGUI::create_objects");
int driver = mwindow->edl->session->vconfig_in->driver;
- int do_channel = (driver == VIDEO4LINUX ||
- driver == CAPTURE_BUZ ||
- driver == CAPTURE_DVB ||
+ int do_channel = (driver == CAPTURE_DVB ||
driver == VIDEO4LINUX2 ||
driver == VIDEO4LINUX2JPEG ||
driver == VIDEO4LINUX2MPEG ||
driver == CAPTURE_JPEG_WEBCAM ||
driver == CAPTURE_YUYV_WEBCAM);
int do_scopes = do_channel || driver == SCREENCAPTURE;
- int do_interlace = (driver == CAPTURE_BUZ ||
- driver == VIDEO4LINUX2JPEG);
+ int do_interlace = (driver == VIDEO4LINUX2JPEG);
int background_done = 0;
int do_audio = record->default_asset->audio_data;
int do_video = record->default_asset->video_data;
add_subwindow(avc1394transport_timecode =
new BC_Title(avc1394_transport->x_end,
mwindow->theme->rmonitor_tx_y + 10,
- _("00:00:00:00"),
+ "00:00:00:00",
MEDIUM_7SEGMENT,
BLACK));
canvas->create_objects(0);
canvas->use_rwindow();
+#ifdef HAVE_DVB
if( driver == CAPTURE_DVB ) {
int ssw = SignalStatus::calculate_w(this);
signal_status = new SignalStatus(this, get_w()-ssw-3, 0);
add_subwindow(signal_status);
signal_status->create_objects();
}
+#endif
int x = mwindow->theme->widget_border;
int y = mwindow->theme->widget_border;
channel_picker->create_objects();
x += channel_picker->get_w() + mwindow->theme->widget_border;
}
- if( driver == CAPTURE_BUZ ||
- driver == VIDEO4LINUX2JPEG ) {
+ if( driver == VIDEO4LINUX2JPEG ) {
add_subwindow(reverse_interlace = new ReverseInterlace(record,
mwindow->theme->rmonitor_interlace_x,
mwindow->theme->rmonitor_interlace_y));
default:
if(canvas) result = canvas->keypress_event(this);
+#ifdef HAVE_FIREWIRE
if(!result && avc1394_transport)
result = avc1394_transport->keypress_event(get_keypress());
+#endif
break;
}
int RecordMonitorGUI::resize_event(int w, int h)
{
int driver = mwindow->edl->session->vconfig_in->driver;
- int do_channel = (driver == VIDEO4LINUX ||
- driver == CAPTURE_BUZ ||
- driver == CAPTURE_DVB ||
+ int do_channel = (driver == CAPTURE_DVB ||
driver == VIDEO4LINUX2 ||
driver == VIDEO4LINUX2JPEG ||
driver == VIDEO4LINUX2MPEG ||
driver == CAPTURE_JPEG_WEBCAM ||
driver == CAPTURE_YUYV_WEBCAM);
int do_scopes = do_channel || driver == SCREENCAPTURE;
- int do_interlace = (driver == CAPTURE_BUZ ||
- driver == VIDEO4LINUX2JPEG);
+ int do_interlace = (driver == VIDEO4LINUX2JPEG);
int do_avc = 0;
#ifdef HAVE_FIREWIRE
do_avc = avc1394_transport ? 1 : 0;
void RecordMonitorGUI::enable_signal_status(int enable)
{
+#ifdef HAVE_DVB
if( !signal_status ) return;
signal_status->lock_window("RecordMonitorGUI::enable_signal_status");
if( !enable )
DeviceDVBInput *dvb_input = record->dvb_device();
if( dvb_input )
dvb_input->set_signal_status(!enable ? 0 : signal_status);
+#endif
}
void RecordMonitorGUI::
output_colormodel = record->vdevice->get_best_colormodel(record->default_asset);
break;
- case CAPTURE_BUZ:
case VIDEO4LINUX2JPEG:
jpeg_engine = new RecVideoMJPGThread(record, this,
mwindow->edl->session->vconfig_in->v4l2jpeg_in_fields);
case CAPTURE_DVB:
- case VIDEO4LINUX:
case VIDEO4LINUX2:
case VIDEO4LINUX2MPEG:
output_colormodel = record->vdevice->get_best_colormodel(record->default_asset);
//printf("RecordMonitorThread::stop_playback 1\n");
switch(mwindow->edl->session->vconfig_in->driver) {
- case CAPTURE_BUZ:
case VIDEO4LINUX2JPEG:
if( jpeg_engine ) {
jpeg_engine->stop_rendering();
void RecordMonitorThread::render_uncompressed()
{
- output_frame->copy_from(input_frame);
+ output_frame->transfer_from(input_frame);
}
void RecordMonitorThread::show_output_frame()
int RecordMonitorThread::render_frame()
{
switch(mwindow->edl->session->vconfig_in->driver) {
- case CAPTURE_BUZ:
case VIDEO4LINUX2JPEG:
case CAPTURE_JPEG_WEBCAM:
render_jpeg();
int RecVideoDVThread::start_rendering()
{
+#ifdef HAVE_DV
dv = dv_new();
+#endif
return 0;
}
int RecVideoDVThread::stop_rendering()
{
+#ifdef HAVE_DV
if( dv ) { dv_delete(((dv_t*)dv)); dv = 0; }
+#endif
return 0;
}
int RecVideoDVThread::render_frame(VFrame *frame, long size)
{
+#ifdef HAVE_DV
unsigned char *yuv_planes[3];
yuv_planes[0] = thread->output_frame->get_y();
yuv_planes[1] = thread->output_frame->get_u();
frame->get_data(),
frame->get_compressed_size(),
thread->output_frame->get_color_model());
-
+#endif
return 0;
}