更新::
我想通过 Gstreamer 中的 RTSP 流式传输视频数据 (H264)。
gst_rtsp_media_factory_set_launch (factory, "videotestsrc ! x264enc ! rtph264pay name=pay0 pt=96 ");
Run Code Online (Sandbox Code Playgroud)
我想要“videotestsrc !x264enc !rtph264pay name=pay0 pt=96”这个管道也将在 C 编程中代替直接命令。
实际上我有自定义管道,我想将此管道传递给 GstRTSPMediaFactory。
启动时,我无法通过我的管道。
source = gst_element_factory_make("videotestsrc", "test-source");
parse = gst_element_factory_make("x264enc", "parse");
sink = gst_element_factory_make("rtph264pay", "sink");
gst_bin_add_many(GST_BIN(pipeline), source, parse, sink, NULL);
gst_element_link_many(source, parse, sink, NULL);
Run Code Online (Sandbox Code Playgroud)
现在,我想使用 RTSP 流式传输此管道。我可以使用 gst_rtsp_media_factory_set_launch 进行流式传输,
但我只想传递管道变量,并且必须流式传输视频。
有可能吗,如果有的话如何?
我修改了 rtsp-media-factory.c 如下,
Added GstElement *pipeline in struct _GstRTSPMediaFactoryPrivate.
Run Code Online (Sandbox Code Playgroud)
并添加了另外两个函数 get_pipeline & set pipeline
void
gst_rtsp_media_factory_set_launch_pipeline (GstRTSPMediaFactory * factory, GstElement *pipeline)
{
g_print("PRASANTH :: SET …Run Code Online (Sandbox Code Playgroud) 我想将网络摄像头视频流转换为http网页.我知道如何从网络摄像头读取并将其存档到文件.
但是如何通过网络流式传输.这是什么管道?
我想知道如何检查 gstreamer 中元素的接收垫是否正在获取数据。
每当它没有获取数据时,我想重置或重新启动管道。
谁能告诉我如何重置或重新启动管道?重新启动管道时会发生什么?以及如何知道 pad 的传入数据?