static void hlsdemux_test_check_no_data_received (GstAdaptiveDemuxTestEngine * engine, GstAdaptiveDemuxTestOutputStream * stream, gpointer user_data) { assert_equals_uint64 (stream->total_received_size, 0); g_main_loop_quit (engine->loop); }
static void deep_check (GESTimelineElement * element, GstClockTime start, GstClockTime inpoint, GstClockTime duration) { GList *track_elements, *tmp; GstClockTime rstart, rinpoint, rduration; rstart = ges_timeline_element_get_start (GES_TIMELINE_ELEMENT (element)); rinpoint = ges_timeline_element_get_inpoint (GES_TIMELINE_ELEMENT (element)); rduration = ges_timeline_element_get_duration (GES_TIMELINE_ELEMENT (element)); assert_equals_uint64 (rstart, start); assert_equals_uint64 (rinpoint, inpoint); assert_equals_uint64 (rduration, duration); track_elements = GES_CONTAINER_CHILDREN (element); for (tmp = track_elements; tmp; tmp = tmp->next) { rstart = ges_timeline_element_get_start (GES_TIMELINE_ELEMENT (tmp->data)); rinpoint = ges_timeline_element_get_inpoint (GES_TIMELINE_ELEMENT (tmp->data)); rduration = ges_timeline_element_get_duration (GES_TIMELINE_ELEMENT (tmp->data)); assert_equals_uint64 (rstart, start); assert_equals_uint64 (rinpoint, inpoint); assert_equals_uint64 (rduration, duration); } }
static void do_test_seek (GstM3U8Client * client, guint seek_pos, gint pos) { GstClockTime cur_pos; gboolean ret; ret = gst_m3u8_client_seek (client, seek_pos * GST_SECOND); if (pos == -1) { assert_equals_int (ret, FALSE); return; } assert_equals_int (ret, TRUE); gst_m3u8_client_get_current_position (client, &cur_pos, NULL); assert_equals_uint64 (cur_pos, pos * GST_SECOND); }
static void asset_created_cb (GObject * source, GAsyncResult * res, gpointer udata) { GList *tracks, *tmp; GESAsset *asset; GESLayer *layer; GESUriClip *tlfs; GError *error = NULL; asset = ges_asset_request_finish (res, &error); ASSERT_OBJECT_REFCOUNT (asset, "1 for us + for the cache + 1 taken " "by g_simple_async_result_complete_in_idle", 3); fail_unless (error == NULL); fail_if (asset == NULL); fail_if (g_strcmp0 (ges_asset_get_id (asset), av_uri)); layer = GES_LAYER (g_async_result_get_user_data (res)); tlfs = GES_URI_CLIP (ges_layer_add_asset (layer, asset, 0, 0, GST_CLOCK_TIME_NONE, GES_TRACK_TYPE_UNKNOWN)); fail_unless (GES_IS_URI_CLIP (tlfs)); fail_if (g_strcmp0 (ges_uri_clip_get_uri (tlfs), av_uri)); assert_equals_uint64 (_DURATION (tlfs), GST_SECOND); fail_unless (ges_clip_get_supported_formats (GES_CLIP (tlfs)) & GES_TRACK_TYPE_VIDEO); fail_unless (ges_clip_get_supported_formats (GES_CLIP (tlfs)) & GES_TRACK_TYPE_AUDIO); tracks = ges_timeline_get_tracks (ges_layer_get_timeline (layer)); for (tmp = tracks; tmp; tmp = tmp->next) { GList *trackelements = ges_track_get_elements (GES_TRACK (tmp->data)); assert_equals_int (g_list_length (trackelements), 1); fail_unless (GES_IS_VIDEO_URI_SOURCE (trackelements->data) || GES_IS_AUDIO_URI_SOURCE (trackelements->data)); g_list_free_full (trackelements, gst_object_unref); } g_list_free_full (tracks, gst_object_unref); gst_object_unref (asset); g_main_loop_quit (mainloop); }