小编g0h*_*l1n的帖子

如何在覆盖弱函数时设置编译器警告(GNU GCC)

库函数默认设置了弱属性(参见[1]),并且可能被具有相同签名的函数"覆盖".例如printf内部调用fputc,我可以很容易地声明我的一个函数int fputc(int, FILE *).如果发生这种情况,我希望收到编译器警告.

有没有办法告诉编译器在覆盖弱函数的情况下警告我?

[1] https://gcc.gnu.org/onlinedocs/gcc-3.2/gcc/Function-Attributes.html

c gcc compiler-warnings

6
推荐指数
1
解决办法
508
查看次数

从GstElement管道启动GstRTSPServer

我在C中做了一个Gstreamer 1.0应用程序.管道是在运行时根据用户配置和系统"状态"构建的.因此我使用多个GstElements,后来添加并链接到"GstElement管道".这是一个更好理解的最小例子:

GstElement *pipeline = gst_pipeline_new("mypipeline");
...
GstElement *src = gst_element_factory_make("videotestsrc", NULL);
...
gst_bin_add_many(GST_BIN(pipeline), src, enc, pay, NULL);
gst_element_link_many(src, enc, pay, NULL);
...
Run Code Online (Sandbox Code Playgroud)

然后,该管道应由GstRTSPMediaFactory启动.我在这里gst_rtsp_media_factory_set_launch遇到的问题是该函数只接受const gchar *管道.

因此,我的问题是,如果你们中的任何人都知道任何一个函数

  • 转换GstElement *pipelineconst gchar*表示(有点反向gst_parse)
  • 或从a启动GstRTSPMediaFactory GstElement *pipeline(参见下面的编辑#1)

任何帮助深表感谢!谢谢.


编辑#1:

gst-rtsp-server文档:

GstRTSPMediaFactory的默认实现允许您使用gst-launch语法轻松创建GStreamer管道.可以创建一个GstRTSPMediaFactory子类,它使用不同的方法来构造管道.

因此,从GstElement启动GstRTSPMediaFactory在技术上是可行的.此方法的其他问题:是否有人知道这样的GstRTSPMediaFactory子类实现?

c rtsp gstreamer gstreamer-1.0

6
推荐指数
1
解决办法
357
查看次数

标签 统计

c ×2

compiler-warnings ×1

gcc ×1

gstreamer ×1

gstreamer-1.0 ×1

rtsp ×1