gpt4 book ai didi

无法使用函数 gst_element_link_many 链接 GStreamer 库中的元素

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:18:43 26 4
gpt4 key购买 nike

我在主要的下一个元素中创建并尝试链接它们以播放视频,但 gst_element_link_many 的结果始终为 FALSE。

GstElement *pipeline, *videosrc, *videoenc, *muxer, *sink;
pipeline = gst_pipeline_new ("video-player");
videosrc = gst_element_factory_make ("filesrc", "videosrc");
muxer = gst_element_factory_make ("qtdemux", "mux");
videoenc = gst_element_factory_make ("avdec_mpeg4", "videoenc");
sink = gst_element_factory_make ("autovideosink", "sink");

g_object_set (G_OBJECT (videosrc), "location", argv[1], NULL);
gst_bin_add_many (GST_BIN (pipeline), videosrc, muxer, videoenc, sink, NULL);

/* link the elements together */
int resLinkMany = gst_element_link_many (videosrc, muxer, videoenc, sink, NULL);

printf(" resLinkMany = %d \n", resLinkMany); //I get 0

一般来说,我正在尝试启动视频,但由于链接不正确而无法运行。这是我的程序的完整代码:https://pastebin.com/BER1BZDU

最佳答案

这是一个常见的错误 - 正如您从 gst-inspect-1.0 qtdemux 中看到的那样,src-pads 是“有时”的 pads。您需要使用“pad-added”信号才能链接到它们。 gst-launch 透明地执行此操作。

关于无法使用函数 gst_element_link_many 链接 GStreamer 库中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47000669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com