我想使用 udpsrc 元素运行音频管道。我要设置 udpsrc 的上限(能力)例如 gst-launch-0.10 -vvv udpsrc multicast-iface=eth0 uri=udp://239.255.255.6:25012 caps="application/x-rtp, media=(string)audio, payload=(int) 96,时钟速率=(int)16000,编码名称=(字符串)MPEG4-GENERIC,streamtype=(字符串)5,profile-level-id=(字符串)15,模式=(字符串)AAC-hbr,配置=(string)1408,sizelength=(string)13, indexlength=(string)3,indexdeltalength=(string)3" 在我使用的程序中设置这个上限
g_object_set(G_OBJECT(Source),"caps",gst_caps_new_simple ("application/x-rtp",
"media", G_TYPE_STRING, "audio",
"payload",G_TYPE_INT,96,
"clock-rate", G_TYPE_INT, 16000,
"encoding-name", G_TYPE_STRING,"MPEG4-GENERIC",
"streamtype",G_TYPE_STRING,"5",
"profile-level-id", G_TYPE_STRING,"15",
"mode",G_TYPE_STRING,"AAC-hbr",
"config",G_TYPE_STRING,"1408",
"sizelength",G_TYPE_STRING,"13",
"indexlength",G_TYPE_STRING,"3"
"indexdeltalength",G_TYPE_STRING,"3",
NULL),NULL);
但是它显示了段错误所以请尽快告诉我该怎么做?......
代码看起来没问题(尽管你泄露了大写字母)。要修复泄漏,请执行以下操作:
GstCaps *caps = gst_caps_new_simple( ....);
g_object_set(source, "caps", caps, NULL);
gst_caps_unref(caps);
要弄清楚为什么会出现段错误,请在 gdb 下运行应用程序:
G_DEBUG="fatal_warnings" gdb --args ./my-app <args>
在 gdb 中“运行”并在它崩溃时键入“bt”以显示回溯。
我是一名优秀的程序员,十分优秀!