我正在使用appsrc作为我的gstreamer管道的源代码。我已将“seek-data”信号连接到回调函数,并完成了以下示例代码中提到的所有操作: http://cgit.freedesktop.org/gstreamer/gst-plugins-base/tree/tests/examples/app/appsrc-seekable.c
但是,我不知道如何通过我的代码发出信号。 g_signal_emit_by_name似乎是这样做的方式,但它不适合我。
如果有人知道如何让它发挥作用,请告诉我。
答案 0 :(得分:2)
当appsrc的类型为GST_APP_STREAM_TYPE_SEEKABLE
且appsrc上的emit-signals属性为true
时,搜索事件信号将在正常搜索事件到达appsrc时发送。连接回调函数(您提供的链接中的seek_data)后,您可以通过调用正常的gst_element_seek(pipeline,...)函数进行搜索。
请参阅
http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/section-eventsseek.html(寻求)
和
http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-appsrc.html(appsrc)