void Timeline:: appendPath(QString path) { QString url = QUrl::fromLocalFile(QDir(path).absolutePath()).toString(); GESTimelineFileSource *src; src = ges_timeline_filesource_new (url.toUtf8().data()); g_signal_connect(G_OBJECT(src), "notify::is-image", G_CALLBACK(timeline_object_notify_is_image_cb), this); ges_simple_timeline_layer_add_object (layer, GES_TIMELINE_OBJECT(src), -1); }
static GESTimelinePipeline * create_timeline (void) { GESTimelinePipeline *pipeline; GESTimelineLayer *layer; GESTrack *tracka, *trackv; GESTimeline *timeline; GESTimelineObject *src; timeline = ges_timeline_new (); tracka = ges_track_audio_raw_new (); trackv = ges_track_video_raw_new (); layer = (GESTimelineLayer *) ges_simple_timeline_layer_new (); /* Add the tracks and the layer to the timeline */ if (!ges_timeline_add_layer (timeline, layer) || !ges_timeline_add_track (timeline, tracka) || !ges_timeline_add_track (timeline, trackv)) return NULL; /* Add the main audio/video file */ src = GES_TIMELINE_OBJECT (ges_timeline_test_source_new ()); g_object_set (src, "vpattern", GES_VIDEO_TEST_PATTERN_SNOW, "duration", 10 * GST_SECOND, NULL); ges_simple_timeline_layer_add_object ((GESSimpleTimelineLayer *) layer, GES_TIMELINE_OBJECT (src), 0); pipeline = ges_timeline_pipeline_new (); if (!ges_timeline_pipeline_add_timeline (pipeline, timeline)) return NULL; return pipeline; }