Import gst-integration-testsuites
[platform/upstream/gstreamer.git] / subprojects / gst-integration-testsuites / ges / scenarios / check_edit_nested_timeline.validatetest
1 meta, seek=true, handles-states=true, needs_preroll=true,
2     tool = "ges-launch-$(gst_api_version)",
3     args = {
4         --track-types, video,
5         --video-caps, "video/x-raw, format=(string)I420, width=(int)1080, height=(int)720, framerate=(fraction)1/1",
6         --videosink, "$(videosink) name=videosink",
7     },
8     configs = {
9         "$(validateflow), pad=videosink:sink, buffers-checksum=true, ignored-fields=\"stream-start={stream-id,group-id,stream}\"",
10     }
11
12 include, location="../../medias/defaults/matroska/timed_frames_video_only_1fps.mkv.frames_checksums.scenario"
13
14 set-vars,\
15     nested_timeline_uri="file://$(logsdir)/ges/scenarios/$(test_name)/nested_timeline.xges",\
16     nested_timeline_depth2_uri="file://$(logsdir)/ges/scenarios/$(test_name)/nested_timeline_depth2.xges", \
17     project_uri="file://$(logsdir)/ges/scenarios/$(test_name)/project.xges"
18
19 # Make sure the asset ID is the project_uri and serialize the empty timeline for each nested projects uris
20 serialize-project, uri="$(project_uri)"
21 serialize-project, uri="$(nested_timeline_uri)"
22 serialize-project, uri="$(nested_timeline_depth2_uri)"
23
24 add-clip, name=clip, project-uri="$(nested_timeline_uri)",
25     asset-id="file://$(test_dir)/../../medias/defaults/matroska/timed_frames_video_only_1fps.mkv",
26     layer-priority=0, type=GESUriClip, duration=4.0
27
28 add-clip, name=nested-clip1, project-uri="$(nested_timeline_depth2_uri)",
29     asset-id="$(nested_timeline_uri)",
30     layer-priority=0, type=GESUriClip
31
32 add-clip, name=nested-timeline1,
33     asset-id="$(nested_timeline_depth2_uri)",
34     layer-priority=0, type=GESUriClip, inpoint=0, duration=2.0
35
36 add-asset, id="$(nested_timeline_depth2_uri)", type="GESTimeline"
37 serialize-project, uri="$(project_uri)"
38
39 # We reload the project from nested projects
40 load-project, uri="$(project_uri)"
41 commit
42 pause
43 check-last-sample, sinkpad-caps="video/x-raw", checksum="$(timed_frames_video_only_1fps_mkv_0_00_00_000000000)"
44
45 checkpoint, text="Paused pipeline, now editing nested timeline and committing."
46 # Set inpoint to 1.0
47 edit-container, project-uri="$(nested_timeline_depth2_uri)", container-name="nested-clip1", position=1.0, edit-mode="edit_trim", edge="start"
48 edit-container, project-uri="$(nested_timeline_depth2_uri)", container-name="nested-clip1", position=0.0
49 commit
50 check-last-sample, sinkpad-caps="video/x-raw", checksum="$(timed_frames_video_only_1fps_mkv_0_00_01_000000000)"
51 stop;