Clean up console output
This commit is contained in:
parent
0b3c9f78d6
commit
23b1051794
70
main.c
70
main.c
|
@ -109,7 +109,7 @@ GtkWidget *main_stack;
|
|||
GtkWidget *thumb_last;
|
||||
GtkWidget *control_box;
|
||||
GtkWidget *control_name;
|
||||
GtkWidget *control_slider;
|
||||
GtkAdjustment *control_slider;
|
||||
GtkWidget *control_auto;
|
||||
|
||||
static int
|
||||
|
@ -344,6 +344,9 @@ draw_controls()
|
|||
cairo_surface_destroy(status_surface);
|
||||
|
||||
// Make a service to show status of controls, 32px high
|
||||
if (gtk_widget_get_window(preview) == NULL) {
|
||||
return;
|
||||
}
|
||||
status_surface = gdk_window_create_similar_surface(gtk_widget_get_window(preview),
|
||||
CAIRO_CONTENT_COLOR_ALPHA,
|
||||
preview_width, 32);
|
||||
|
@ -404,7 +407,7 @@ init_sensor(char *fn, int width, int height, int mbus, int rate)
|
|||
struct v4l2_subdev_format fmt = {};
|
||||
fd = open(fn, O_RDWR);
|
||||
|
||||
g_printerr("Setting sensor rate to %d\n", rate);
|
||||
g_print("Setting sensor rate to %d\n", rate);
|
||||
interval.pad = 0;
|
||||
interval.interval.numerator = 1;
|
||||
interval.interval.denominator = rate;
|
||||
|
@ -413,10 +416,11 @@ init_sensor(char *fn, int width, int height, int mbus, int rate)
|
|||
errno_exit("VIDIOC_SUBDEV_S_FRAME_INTERVAL");
|
||||
}
|
||||
|
||||
g_printerr("Driver returned %d/%d frameinterval\n",
|
||||
interval.interval.numerator, interval.interval.denominator);
|
||||
if (interval.interval.numerator != 1 || interval.interval.denominator != rate)
|
||||
g_printerr("Driver chose %d/%d instead\n",
|
||||
interval.interval.numerator, interval.interval.denominator);
|
||||
|
||||
g_printerr("Setting sensor to %dx%d fmt %d\n",
|
||||
g_print("Setting sensor to %dx%d fmt %d\n",
|
||||
width, height, mbus);
|
||||
fmt.pad = 0;
|
||||
fmt.which = V4L2_SUBDEV_FORMAT_ACTIVE;
|
||||
|
@ -428,10 +432,10 @@ init_sensor(char *fn, int width, int height, int mbus, int rate)
|
|||
if (xioctl(fd, VIDIOC_SUBDEV_S_FMT, &fmt) == -1) {
|
||||
errno_exit("VIDIOC_SUBDEV_S_FMT");
|
||||
}
|
||||
|
||||
g_printerr("Driver returned %dx%d fmt %d\n",
|
||||
fmt.format.width, fmt.format.height,
|
||||
fmt.format.code);
|
||||
if (fmt.format.width != width || fmt.format.height != height || fmt.format.code != mbus)
|
||||
g_printerr("Driver chose %dx%d fmt %d instead\n",
|
||||
fmt.format.width, fmt.format.height,
|
||||
fmt.format.code);
|
||||
|
||||
// Trigger continuous auto focus if the sensor supports it
|
||||
if (v4l2_has_control(fd, V4L2_CID_FOCUS_AUTO)) {
|
||||
|
@ -515,7 +519,7 @@ init_device(int fd)
|
|||
.type = V4L2_BUF_TYPE_VIDEO_CAPTURE,
|
||||
};
|
||||
if (current.width > 0) {
|
||||
g_printerr("Setting camera to %dx%d fmt %d\n",
|
||||
g_print("Setting camera to %dx%d fmt %d\n",
|
||||
current.width, current.height, current.fmt);
|
||||
fmt.fmt.pix.width = current.width;
|
||||
fmt.fmt.pix.height = current.height;
|
||||
|
@ -527,20 +531,20 @@ init_device(int fd)
|
|||
show_error("Could not set camera mode");
|
||||
return -1;
|
||||
}
|
||||
|
||||
g_printerr("Driver returned %dx%d fmt %d\n",
|
||||
fmt.fmt.pix.width, fmt.fmt.pix.height,
|
||||
fmt.fmt.pix.pixelformat);
|
||||
if (fmt.fmt.pix.width != current.width ||
|
||||
fmt.fmt.pix.height != current.height ||
|
||||
fmt.fmt.pix.pixelformat != current.fmt)
|
||||
g_printerr("Driver returned %dx%d fmt %d\n",
|
||||
fmt.fmt.pix.width, fmt.fmt.pix.height,
|
||||
fmt.fmt.pix.pixelformat);
|
||||
|
||||
|
||||
/* Note VIDIOC_S_FMT may change width and height. */
|
||||
} else {
|
||||
g_printerr("Querying camera format\n");
|
||||
/* Preserve original settings as set by v4l2-ctl for example */
|
||||
if (xioctl(fd, VIDIOC_G_FMT, &fmt) == -1) {
|
||||
errno_exit("VIDIOC_G_FMT");
|
||||
}
|
||||
g_printerr("Driver returned %dx%d fmt %d\n",
|
||||
g_print("Got %dx%d fmt %d from the driver\n",
|
||||
fmt.fmt.pix.width, fmt.fmt.pix.height,
|
||||
fmt.fmt.pix.pixelformat);
|
||||
current.width = fmt.fmt.pix.width;
|
||||
|
@ -784,7 +788,7 @@ process_image(const int *p, int size)
|
|||
g_object_unref(pixbuf);
|
||||
|
||||
// Start post-processing the captured burst
|
||||
g_printerr("Post process %s to %s.ext\n", burst_dir, fname_target);
|
||||
g_print("Post process %s to %s.ext\n", burst_dir, fname_target);
|
||||
sprintf(command, "%s %s %s &", processing_script, burst_dir, fname_target);
|
||||
system(command);
|
||||
|
||||
|
@ -1109,7 +1113,6 @@ find_cameras()
|
|||
if (ret < 0) {
|
||||
break;
|
||||
}
|
||||
printf("At node %s, (0x%x)\n", entity.name, entity.type);
|
||||
if (strncmp(entity.name, front_cam.dev_name, strlen(front_cam.dev_name)) == 0) {
|
||||
front_cam.entity_id = entity.id;
|
||||
find_dev_node(entity.dev.major, entity.dev.minor, front_cam.dev);
|
||||
|
@ -1147,17 +1150,17 @@ find_media_fd()
|
|||
while ((dir = readdir(d)) != NULL) {
|
||||
if (strncmp(dir->d_name, "media", 5) == 0) {
|
||||
sprintf(fnbuf, "/dev/%s", dir->d_name);
|
||||
printf("Checking %s\n", fnbuf);
|
||||
fd = open(fnbuf, O_RDWR);
|
||||
xioctl(fd, MEDIA_IOC_DEVICE_INFO, &mdi);
|
||||
printf("Found media device: %s\n", mdi.driver);
|
||||
if (strcmp(mdi.driver, media_drv_name) == 0) {
|
||||
printf("Found media device: %s (%s)\n", fnbuf, mdi.driver);
|
||||
media_fd = fd;
|
||||
return 0;
|
||||
}
|
||||
close(fd);
|
||||
}
|
||||
}
|
||||
g_printerr("Could not find /dev/media* node matching '%s'\n", media_drv_name);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -1228,18 +1231,18 @@ on_preview_tap(GtkWidget *widget, GdkEventButton *event, gpointer user_data)
|
|||
current_control = USER_CONTROL_ISO;
|
||||
gtk_label_set_text(GTK_LABEL(control_name), "ISO");
|
||||
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(control_auto), auto_gain);
|
||||
gtk_adjustment_set_lower(GTK_ADJUSTMENT(control_slider), 0.0);
|
||||
gtk_adjustment_set_upper(GTK_ADJUSTMENT(control_slider), (float)current.gain_max);
|
||||
gtk_adjustment_set_value(GTK_ADJUSTMENT(control_slider), (double)gain);
|
||||
gtk_adjustment_set_lower(control_slider, 0.0);
|
||||
gtk_adjustment_set_upper(control_slider, (float)current.gain_max);
|
||||
gtk_adjustment_set_value(control_slider, (double)gain);
|
||||
|
||||
} else if (event->x > 60 && event->x < 120) {
|
||||
// Shutter angle
|
||||
current_control = USER_CONTROL_SHUTTER;
|
||||
gtk_label_set_text(GTK_LABEL(control_name), "Shutter");
|
||||
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(control_auto), auto_exposure);
|
||||
gtk_adjustment_set_lower(GTK_ADJUSTMENT(control_slider), 1.0);
|
||||
gtk_adjustment_set_upper(GTK_ADJUSTMENT(control_slider), 360.0);
|
||||
gtk_adjustment_set_value(GTK_ADJUSTMENT(control_slider), (double)exposure);
|
||||
gtk_adjustment_set_lower(control_slider, 1.0);
|
||||
gtk_adjustment_set_upper(control_slider, 360.0);
|
||||
gtk_adjustment_set_value(control_slider, (double)exposure);
|
||||
}
|
||||
|
||||
return;
|
||||
|
@ -1304,7 +1307,7 @@ on_control_auto_toggled(GtkToggleButton *widget, gpointer user_data)
|
|||
} else {
|
||||
v4l2_ctrl_set(fd, V4L2_CID_AUTOGAIN, 0);
|
||||
gain = v4l2_ctrl_get(fd, V4L2_CID_GAIN);
|
||||
gtk_adjustment_set_value(GTK_ADJUSTMENT(control_slider), (double)gain);
|
||||
gtk_adjustment_set_value(control_slider, (double)gain);
|
||||
}
|
||||
break;
|
||||
case USER_CONTROL_SHUTTER:
|
||||
|
@ -1314,7 +1317,7 @@ on_control_auto_toggled(GtkToggleButton *widget, gpointer user_data)
|
|||
} else {
|
||||
v4l2_ctrl_set(fd, V4L2_CID_EXPOSURE_AUTO, V4L2_EXPOSURE_MANUAL);
|
||||
exposure = v4l2_ctrl_get(fd, V4L2_CID_EXPOSURE);
|
||||
gtk_adjustment_set_value(GTK_ADJUSTMENT(control_slider), (double)exposure);
|
||||
gtk_adjustment_set_value(control_slider, (double)exposure);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -1476,7 +1479,6 @@ main(int argc, char *argv[])
|
|||
GtkBuilder *builder = gtk_builder_new_from_resource("/org/postmarketos/Megapixels/camera.glade");
|
||||
|
||||
GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder, "window"));
|
||||
GtkWidget *preview_box = GTK_WIDGET(gtk_builder_get_object(builder, "preview_box"));
|
||||
GtkWidget *shutter = GTK_WIDGET(gtk_builder_get_object(builder, "shutter"));
|
||||
GtkWidget *switch_btn = GTK_WIDGET(gtk_builder_get_object(builder, "switch_camera"));
|
||||
GtkWidget *settings_btn = GTK_WIDGET(gtk_builder_get_object(builder, "settings"));
|
||||
|
@ -1491,7 +1493,7 @@ main(int argc, char *argv[])
|
|||
thumb_last = GTK_WIDGET(gtk_builder_get_object(builder, "thumb_last"));
|
||||
control_box = GTK_WIDGET(gtk_builder_get_object(builder, "control_box"));
|
||||
control_name = GTK_WIDGET(gtk_builder_get_object(builder, "control_name"));
|
||||
control_slider = GTK_WIDGET(gtk_builder_get_object(builder, "control_adj"));
|
||||
control_slider = GTK_ADJUSTMENT(gtk_builder_get_object(builder, "control_adj"));
|
||||
control_auto = GTK_WIDGET(gtk_builder_get_object(builder, "control_auto"));
|
||||
g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);
|
||||
g_signal_connect(shutter, "clicked", G_CALLBACK(on_shutter_clicked), NULL);
|
||||
|
@ -1515,11 +1517,7 @@ main(int argc, char *argv[])
|
|||
} else {
|
||||
gtk_css_provider_load_from_resource(provider, "/org/postmarketos/Megapixels/camera.css");
|
||||
}
|
||||
GtkStyleContext *context = gtk_widget_get_style_context(preview_box);
|
||||
gtk_style_context_add_provider(context,
|
||||
GTK_STYLE_PROVIDER(provider),
|
||||
GTK_STYLE_PROVIDER_PRIORITY_USER);
|
||||
context = gtk_widget_get_style_context(error_box);
|
||||
GtkStyleContext *context = gtk_widget_get_style_context(error_box);
|
||||
gtk_style_context_add_provider(context,
|
||||
GTK_STYLE_PROVIDER(provider),
|
||||
GTK_STYLE_PROVIDER_PRIORITY_USER);
|
||||
|
|
Loading…
Reference in New Issue