mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-22 17:51:16 +00:00
Added clock test program
Original commit message from CVS: Added clock test program
This commit is contained in:
parent
91b824a34c
commit
f330cdb86c
4 changed files with 110 additions and 2 deletions
|
@ -1,7 +1,7 @@
|
|||
GST_PLUGIN_PATH=$(shell cd $(top_builddir) && pwd)
|
||||
TESTS_ENVIRONMENT = GST_PLUGIN_PATH=$(GST_PLUGIN_PATH) GST_REGISTRY=$(GST_PLUGIN_PATH)/testsuite/test-registry.xml
|
||||
|
||||
testprogs = clock1
|
||||
testprogs = clock1 clock2
|
||||
|
||||
TESTS = $(testprogs)
|
||||
|
||||
|
|
54
tests/old/testsuite/clock/clock2.c
Normal file
54
tests/old/testsuite/clock/clock2.c
Normal file
|
@ -0,0 +1,54 @@
|
|||
/*
|
||||
* testsuite program to test clock behaviour
|
||||
*
|
||||
* creates a fakesrc ! identity ! fakesink pipeline
|
||||
* registers a callback on fakesrc and one on fakesink
|
||||
* also register a normal GLib timeout which should not be reached
|
||||
*/
|
||||
|
||||
#include <gst/gst.h>
|
||||
void
|
||||
gst_clock_debug (GstClock *clock)
|
||||
{
|
||||
g_print ("Clock info: speed %f, active %s, time %d\n",
|
||||
gst_clock_get_speed (clock),
|
||||
gst_clock_is_active (clock) ? "yes" : "no",
|
||||
(gint) gst_clock_get_time (clock)
|
||||
);
|
||||
}
|
||||
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
GstClock *clock = NULL;
|
||||
GstClockID id;
|
||||
|
||||
gst_init (&argc, &argv);
|
||||
|
||||
clock = gst_system_clock_obtain ();
|
||||
g_assert (clock != NULL);
|
||||
|
||||
gst_clock_debug (clock);
|
||||
sleep (1);
|
||||
gst_clock_debug (clock);
|
||||
gst_clock_set_active (clock, TRUE);
|
||||
gst_clock_debug (clock);
|
||||
sleep (1);
|
||||
gst_clock_debug (clock);
|
||||
|
||||
id = gst_clock_new_single_shot_id (clock, GST_SECOND * 2);
|
||||
gst_clock_id_wait (id, NULL);
|
||||
gst_clock_debug (clock);
|
||||
|
||||
id = gst_clock_new_single_shot_id (clock, GST_SECOND * 2);
|
||||
gst_clock_id_wait (id, NULL);
|
||||
gst_clock_debug (clock);
|
||||
|
||||
gst_clock_set_active (clock, FALSE);
|
||||
gst_clock_debug (clock);
|
||||
sleep (1);
|
||||
gst_clock_debug (clock);
|
||||
|
||||
/* success */
|
||||
return 0;
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
GST_PLUGIN_PATH=$(shell cd $(top_builddir) && pwd)
|
||||
TESTS_ENVIRONMENT = GST_PLUGIN_PATH=$(GST_PLUGIN_PATH) GST_REGISTRY=$(GST_PLUGIN_PATH)/testsuite/test-registry.xml
|
||||
|
||||
testprogs = clock1
|
||||
testprogs = clock1 clock2
|
||||
|
||||
TESTS = $(testprogs)
|
||||
|
||||
|
|
54
testsuite/clock/clock2.c
Normal file
54
testsuite/clock/clock2.c
Normal file
|
@ -0,0 +1,54 @@
|
|||
/*
|
||||
* testsuite program to test clock behaviour
|
||||
*
|
||||
* creates a fakesrc ! identity ! fakesink pipeline
|
||||
* registers a callback on fakesrc and one on fakesink
|
||||
* also register a normal GLib timeout which should not be reached
|
||||
*/
|
||||
|
||||
#include <gst/gst.h>
|
||||
void
|
||||
gst_clock_debug (GstClock *clock)
|
||||
{
|
||||
g_print ("Clock info: speed %f, active %s, time %d\n",
|
||||
gst_clock_get_speed (clock),
|
||||
gst_clock_is_active (clock) ? "yes" : "no",
|
||||
(gint) gst_clock_get_time (clock)
|
||||
);
|
||||
}
|
||||
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
GstClock *clock = NULL;
|
||||
GstClockID id;
|
||||
|
||||
gst_init (&argc, &argv);
|
||||
|
||||
clock = gst_system_clock_obtain ();
|
||||
g_assert (clock != NULL);
|
||||
|
||||
gst_clock_debug (clock);
|
||||
sleep (1);
|
||||
gst_clock_debug (clock);
|
||||
gst_clock_set_active (clock, TRUE);
|
||||
gst_clock_debug (clock);
|
||||
sleep (1);
|
||||
gst_clock_debug (clock);
|
||||
|
||||
id = gst_clock_new_single_shot_id (clock, GST_SECOND * 2);
|
||||
gst_clock_id_wait (id, NULL);
|
||||
gst_clock_debug (clock);
|
||||
|
||||
id = gst_clock_new_single_shot_id (clock, GST_SECOND * 2);
|
||||
gst_clock_id_wait (id, NULL);
|
||||
gst_clock_debug (clock);
|
||||
|
||||
gst_clock_set_active (clock, FALSE);
|
||||
gst_clock_debug (clock);
|
||||
sleep (1);
|
||||
gst_clock_debug (clock);
|
||||
|
||||
/* success */
|
||||
return 0;
|
||||
}
|
Loading…
Reference in a new issue