上篇文章讲了streamer的rtsp推流的基本用法
下面讲搭建动态多路流的rtsp server。有两种方式能达到效果,一种采用main_loop_run运行在线程里,另一种则是创建factory等操作可在有需要的时候动态创建。代码基于gst自带的示例test-readme.c改造,编译同gst示例
一、方法一代码
#include <gst/gst.h>
#include <gst/rtsp-server/rtsp-server.h>
#include <pthread.h>
void* testFun(void *args)
{
GMainLoop *loop = (GMainLoop *) args;
g_main_loop_run (loop);
}
int
main (int argc, char *argv[])
{
GMainLoop *loop;
GstRTSPServer *server;
GstRTSPMountPoints *mounts;
GstRTSPMediaFactory *factory;
gst_init (&argc, &argv);
loop = g_main_loop_new (NULL, FALSE);
pthread_t tTest;
pthread_create(&tTest, NULL, testFun, loop);
/* create a server instance */
server = gst_rtsp_server_new ();
gst_rtsp_server_set_service (server, "8555");
/* get the mount points for this server, every server has a default object
* that be used to map uri mount points to media factories */
mounts =

博客承接上文,介绍搭建动态多路流的rtsp server的两种方式,一种是将main_loop_run运行在线程里,另一种是创建factory等操作以动态创建。代码基于gst自带示例改造,编译方式同gst示例,还给出了代码下载链接。
最低0.47元/天 解锁文章
2786





