From c5fc488c6891ef1bbdd47df0b3500929cf75a090 Mon Sep 17 00:00:00 2001 From: tinyzimmer <38474291+tinyzimmer@users.noreply.github.com> Date: Wed, 30 Sep 2020 19:55:44 +0300 Subject: [PATCH] add example files --- hack/clock_id_wait.go | 27 +++++++++++++++++++++++++++ hack/sleep.go | 15 +++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 hack/clock_id_wait.go create mode 100644 hack/sleep.go diff --git a/hack/clock_id_wait.go b/hack/clock_id_wait.go new file mode 100644 index 0000000..7abe131 --- /dev/null +++ b/hack/clock_id_wait.go @@ -0,0 +1,27 @@ +package main + +import ( + "fmt" + "time" + + "github.com/tinyzimmer/go-gst/gst" +) + +func main() { + gst.Init(nil) + pipeline, _ := gst.NewPipelineFromString("fakesrc ! fakesink") + defer pipeline.Unref() + + clock := pipeline.GetPipelineClock() + + id := clock.NewSingleShotID(gst.ClockTime(time.Minute.Nanoseconds())) + + go func() { + id.Wait(gst.ClockTimeDiff(time.Minute.NanoSeconds())) + fmt.Println("I returned") + }() + + pipeline.SetState(gst.StatePlaying) + fmt.Println("I am waiting") + gst.Wait(pipeline) +} diff --git a/hack/sleep.go b/hack/sleep.go new file mode 100644 index 0000000..432afff --- /dev/null +++ b/hack/sleep.go @@ -0,0 +1,15 @@ +package main + +// #include +import "C" +import ( + "fmt" +) + +func main() { + go func() { + C.sleep(1000000000) + fmt.Println("I slept") + }() + fmt.Println("Hello world") +}