Esempio n. 1
0
int
main (int argc, char *argv[])
{
  GtkWidget *window;
  GstCameraCapturer *gvc;
  GError *error = NULL;


  gtk_init (&argc, &argv);

  /*Create GstVideoCapturer */
  gst_camera_capturer_init_backend (&argc, &argv);
  gvc = gst_camera_capturer_new ("test", &error);

  gst_camera_capturer_set_source (gvc, CAPTURE_SOURCE_TYPE_SYSTEM);
  gst_camera_capturer_set_video_encoder (gvc, VIDEO_ENCODER_H264);
  gst_camera_capturer_set_audio_encoder (gvc, AUDIO_ENCODER_AAC);
  gst_camera_capturer_set_video_muxer (gvc, VIDEO_MUXER_MP4);
  g_object_set (gvc, "output_file", "libcesarplayer-example.avi", NULL);

  window = create_window (gvc);

  gtk_container_add (GTK_CONTAINER (window), GTK_WIDGET (gvc));
  gtk_widget_show (GTK_WIDGET (gvc));
  gtk_widget_show (window);

  gst_camera_capturer_run(gvc);
  gtk_main ();

  return 0;
}
Esempio n. 2
0
static void
on_realized_cb (GtkWidget * video)
{
  GstCameraCapturer *gvc;
  guintptr window;
  GError *error = NULL;

  window = lgm_get_window_handle (gtk_widget_get_window (video));

  gvc = gst_camera_capturer_new (&error);
  gst_camera_capturer_configure (gvc, sargv[1],
      (CaptureSourceType) atoi(sargv[4]), sargv[2], sargv[3],
      0, 0, 0, 0,
      VIDEO_ENCODER_H264, AUDIO_ENCODER_AAC,
      VIDEO_MUXER_MP4, 1000, 100, TRUE, 640, 480, window);
  gst_camera_capturer_run (gvc);
  g_signal_connect (G_OBJECT (recbutton), "clicked",
      G_CALLBACK (rec_clicked_cb), gvc);
  g_signal_connect (G_OBJECT (stopbutton), "clicked",
      G_CALLBACK (stop_clicked), gvc);
}