gpt4 book ai didi

c++ - 使用 gst 管道播放多个音频文件

转载 作者:行者123 更新时间:2023-11-28 07:47:15 26 4
gpt4 key购买 nike

我正在使用 gst 库播放多个音频文件,但遇到问题:

Error: Internal data flow error

这是我的代码(没有其他分路器和接收器初始化):

GstElement *elm1, *elm2;

elm1 = gst_element_factory_make ("filesrc", "file1.ogg");
elm2 = gst_element_factory_make ("filesrc", "file2.ogg");

g_object_set (G_OBJECT (elm1), "location", "file1.ogg", NULL);
g_object_set (G_OBJECT (elm2), "location", "file2.ogg", NULL);

GstBus *bus;

bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));
bus_watch_id = gst_bus_add_watch (bus, bus_call, loop);
gst_object_unref (bus);

gst_bin_add_many (GST_BIN (pipeline), elm1, elm2, demuxer, sink, NULL);

gst_element_link_many (elm1, elm2, demuxer);

g_signal_connect (demuxer, "pad-added", G_CALLBACK (on_pad_added), sink);
gst_element_set_state (pipeline, GST_STATE_PLAYING);

我是不是做错了什么?

最佳答案

您需要监听 file-1 的 EOS,然后将 filesrc 更改为 file-2。

以下答案应该对您有所帮助 -

' GStreamer dynamically change the filesrc location of a pipeline- No sound '

关于c++ - 使用 gst 管道播放多个音频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14645341/

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