Esempio n. 1
0
static Suite *
mpg123audiodec_suite (void)
{
  GstRegistry *registry;
  Suite *s = suite_create ("mpg123audiodec");
  TCase *tc_chain = tcase_create ("general");

  registry = gst_registry_get ();

  suite_add_tcase (s, tc_chain);
  if (gst_registry_check_feature_version (registry, "filesrc",
          GST_VERSION_MAJOR, GST_VERSION_MINOR, 0) &&
      gst_registry_check_feature_version (registry, "mpegaudioparse",
          GST_VERSION_MAJOR, GST_VERSION_MINOR, 0) &&
      gst_registry_check_feature_version (registry, "appsrc",
          GST_VERSION_MAJOR, GST_VERSION_MINOR, 0)) {
    if (is_test_file_available (MP2_STREAM_FILENAME))
      tcase_add_test (tc_chain, test_decode_mpeg1layer2);
    if (is_test_file_available (MP3_CBR_STREAM_FILENAME))
      tcase_add_test (tc_chain, test_decode_mpeg1layer3_cbr);
    if (is_test_file_available (MP3_VBR_STREAM_FILENAME))
      tcase_add_test (tc_chain, test_decode_mpeg1layer3_vbr);
  }
  tcase_add_test (tc_chain, test_decode_garbage_mpeg1layer2);
  tcase_add_test (tc_chain, test_decode_garbage_mpeg1layer3);

  return s;
}
/*
 * Creates the test suite.
 *
 * Returns: pointer to the test suite.
 */
static Suite *
rtp_payloading_suite (void)
{
  GstRegistry *registry = gst_registry_get ();
  Suite *s = suite_create ("rtp_data_test");

  TCase *tc_chain = tcase_create ("linear");

  /* Set timeout to 60 seconds. */
  tcase_set_timeout (tc_chain, 60);

  suite_add_tcase (s, tc_chain);
  tcase_add_test (tc_chain, rtp_ilbc);
  tcase_add_test (tc_chain, rtp_gsm);
  tcase_add_test (tc_chain, rtp_amr);
  tcase_add_test (tc_chain, rtp_pcma);
  tcase_add_test (tc_chain, rtp_pcmu);
  tcase_add_test (tc_chain, rtp_mpa);
  tcase_add_test (tc_chain, rtp_h261);
  tcase_add_test (tc_chain, rtp_h263);
  tcase_add_test (tc_chain, rtp_h263p);
  tcase_add_test (tc_chain, rtp_h264);
  tcase_add_test (tc_chain, rtp_h264_list_lt_mtu);
  tcase_add_test (tc_chain, rtp_h264_list_lt_mtu_avc);
  tcase_add_test (tc_chain, rtp_h264_list_gt_mtu);
  tcase_add_test (tc_chain, rtp_h264_list_gt_mtu_avc);
  tcase_add_test (tc_chain, rtp_klv);
  tcase_add_test (tc_chain, rtp_klv_fragmented);
  tcase_add_test (tc_chain, rtp_L16);
  tcase_add_test (tc_chain, rtp_L24);
  tcase_add_test (tc_chain, rtp_mp2t);
  tcase_add_test (tc_chain, rtp_mp4v);
  tcase_add_test (tc_chain, rtp_mp4v_list);
  tcase_add_test (tc_chain, rtp_mp4g);
  tcase_add_test (tc_chain, rtp_theora);
  tcase_add_test (tc_chain, rtp_vorbis);
  tcase_add_test (tc_chain, rtp_jpeg);
  tcase_add_test (tc_chain, rtp_jpeg_width_greater_than_2040);
  tcase_add_test (tc_chain, rtp_jpeg_height_greater_than_2040);
  tcase_add_test (tc_chain, rtp_jpeg_width_and_height_greater_than_2040);
  tcase_add_test (tc_chain, rtp_jpeg_list);
  tcase_add_test (tc_chain, rtp_jpeg_list_width_greater_than_2040);
  tcase_add_test (tc_chain, rtp_jpeg_list_height_greater_than_2040);
  tcase_add_test (tc_chain, rtp_jpeg_list_width_and_height_greater_than_2040);
  if (gst_registry_check_feature_version (registry, "jpegenc", 1, 0, 0)
      && gst_registry_check_feature_version (registry, "videotestsrc", 1, 0, 0))
    tcase_add_loop_test (tc_chain, rtp_jpeg_packet_loss, 0, 7);
  tcase_add_test (tc_chain, rtp_g729);
  tcase_add_test (tc_chain, rtp_gst_custom_event);
  return s;
}
Esempio n. 3
0
static Suite *
gnonlin_suite (void)
{
  Suite *s = suite_create ("nlecomposition");
  TCase *tc_chain = tcase_create ("nlecomposition");

  if (atexit (ges_deinit) != 0) {
    GST_ERROR ("failed to set ges_deinit as exit function");
  }

  ges_init ();
  suite_add_tcase (s, tc_chain);

  tcase_add_test (tc_chain, test_change_object_start_stop_in_current_stack);
  tcase_add_test (tc_chain, test_remove_invalid_object);
  tcase_add_test (tc_chain, test_remove_last_object);

  tcase_add_test (tc_chain, test_dispose_on_commit);

  if (gst_registry_check_feature_version (gst_registry_get (), "audiomixer", 1,
          0, 0)) {
    tcase_add_test (tc_chain, test_simple_audiomixer);
  } else {
    GST_WARNING ("audiomixer element not available, skipping 1 test");
  }

  return s;
}
Esempio n. 4
0
static Suite *
simple_launch_lines_suite (void)
{
  gint timeout = 0;

  Suite *s = suite_create ("Pipelines");
  TCase *tc_chain = tcase_create ("linear");

  if (g_getenv ("CK_DEFAULT_TIMEOUT"))
    timeout = atoi (g_getenv ("CK_DEFAULT_TIMEOUT"));

  if (timeout == 0)
    timeout = 3;

  /* set multiple of default timeout (random magic value) */
  tcase_set_timeout (tc_chain, timeout * 12);

  suite_add_tcase (s, tc_chain);

#ifndef GST_DISABLE_PARSE
  /* only run this if we haven't been configured with --disable-encoders */
  if (gst_registry_check_feature_version (gst_registry_get (), "avenc_mpeg4",
          GST_VERSION_MAJOR, GST_VERSION_MINOR, 0)) {
    tcase_add_test (tc_chain, test_libavcodec_locks);
  } else {
    g_print ("******* Skipping libavcodec_locks test, no encoder available\n");
  }
#endif

  return s;
}
Esempio n. 5
0
static Suite *
playbin_suite (void)
{
  Suite *s = suite_create ("playbin");
  TCase *tc_chain = tcase_create ("general");

  suite_add_tcase (s, tc_chain);

#ifndef GST_DISABLE_REGISTRY
  tcase_add_test (tc_chain, test_uri);
  tcase_add_test (tc_chain, test_sink_usage_video_only_stream);
  tcase_add_test (tc_chain, test_suburi_error_wrongproto);
  tcase_add_test (tc_chain, test_suburi_error_invalidfile);
  tcase_add_test (tc_chain, test_suburi_error_unknowntype);
  tcase_add_test (tc_chain, test_missing_urisource_handler);
  tcase_add_test (tc_chain, test_missing_suburisource_handler);
  tcase_add_test (tc_chain, test_missing_primary_decoder);
  tcase_add_test (tc_chain, test_refcount);
  tcase_add_test (tc_chain, test_source_setup);
  tcase_add_test (tc_chain, test_element_setup);

#if 0
  {
    GstRegistry *reg = gst_registry_get ();

    if (gst_registry_check_feature_version (reg, "oggdemux", 1, 0, 0) &&
        gst_registry_check_feature_version (reg, "theoradec", 1, 0, 0) &&
        gst_registry_check_feature_version (reg, "vorbisdec", 1, 0, 0)) {
      tcase_add_test (tc_chain, test_appsink_twice);
    }
  }
#endif

  /* one day we might also want to have the following checks:
   * tcase_add_test (tc_chain, test_missing_secondary_decoder_one_fatal);
   * tcase_add_test (tc_chain, test_missing_secondary_decoder_two_fatal);
   * tcase_add_test (tc_chain, test_missing_secondary_decoder_two_with_preroll);
   */
#endif

  return s;
}
Esempio n. 6
0
File: ges.c Progetto: matasbbb/GES
static gboolean
ges_check_gnonlin_availability (void)
{
  gboolean ret = TRUE;
  if (!gst_registry_check_feature_version (gst_registry_get (),
          "gnlcomposition", GES_GNONLIN_VERSION_NEEDED_MAJOR,
          GES_GNONLIN_VERSION_NEEDED_MINOR, GES_GNONLIN_VERSION_NEEDED_MICRO)) {
    GST_ERROR ("GNonLin plugins not found, or not at least version %u.%u.%u",
        GES_GNONLIN_VERSION_NEEDED_MAJOR, GES_GNONLIN_VERSION_NEEDED_MINOR,
        GES_GNONLIN_VERSION_NEEDED_MICRO);
    ret = FALSE;
  }
  return ret;
}
Esempio n. 7
0
static Suite *
mxfdemux_suite (void)
{
  Suite *s = suite_create ("mxfdemux");
  TCase *tc_chain = tcase_create ("general");

  /* FIXME: remove again once ported */
  if (!gst_registry_check_feature_version (gst_registry_get (), "mxfdemux", 1,
          0, 0))
    return s;

  suite_add_tcase (s, tc_chain);
  tcase_set_timeout (tc_chain, 180);
  tcase_add_test (tc_chain, test_pull);
  tcase_add_test (tc_chain, test_push);

  return s;
}
Esempio n. 8
0
static Suite *
deinterlace_suite (void)
{
  Suite *s = suite_create ("deinterlace");
  TCase *tc_chain = tcase_create ("general");

  suite_add_tcase (s, tc_chain);
  tcase_set_timeout (tc_chain, 180);

  if (!gst_registry_check_feature_version (gst_registry_get (), "deinterlace",
          GST_VERSION_MAJOR, GST_VERSION_MINOR, GST_VERSION_MICRO)) {
    GST_ERROR ("FIXME: port deinterlace element");
    return s;
  }

  tcase_add_test (tc_chain, test_create_and_unref);
  tcase_add_test (tc_chain, test_mode_auto_accept_caps);
  tcase_add_test (tc_chain, test_mode_forced_accept_caps);
  tcase_add_test (tc_chain, test_mode_disabled_accept_caps);
  tcase_add_test (tc_chain, test_mode_disabled_passthrough);
  tcase_add_test (tc_chain, test_mode_auto_deinterlaced_passthrough);

  return s;
}