社区
多媒体/流媒体开发
帖子详情
熟悉livemedia的高手请进
luoqintao
2006-06-12 02:20:47
最近研究livemedia库,自带的一个rtspserver的例子,该例子中只能访问预先设定好的文件,比如说,rtsp://ip:port/XXX,后面的xxx是预先ServerMediaSession创建时指定好的,这样就显得不够灵活。
现在的问题是想做这样一个rtsp server,根据XXX的值(可以是一个文件名或其他值),可以自动定位到要传输的内容。
请教高手如何用livemedia库来实现!
...全文
952
8
打赏
收藏
熟悉livemedia的高手请进
最近研究livemedia库,自带的一个rtspserver的例子,该例子中只能访问预先设定好的文件,比如说,rtsp://ip:port/XXX,后面的xxx是预先ServerMediaSession创建时指定好的,这样就显得不够灵活。 现在的问题是想做这样一个rtsp server,根据XXX的值(可以是一个文件名或其他值),可以自动定位到要传输的内容。 请教高手如何用livemedia库来实现!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
SmallBigCat
2006-11-21
打赏
举报
回复
楼上的兄弟是linux下开发的么
SmallBigCat
2006-11-21
打赏
举报
回复
学习,接分
luoqintao
2006-06-16
打赏
举报
回复
没有人帮忙么?
xrye000
2006-06-15
打赏
举报
回复
ServerMediaSession* RunTimeRTSPServer::lookupServerMediaSession(char const* streamName) {
ServerMediaSession* RequestSession;
RequestSession = (ServerMediaSession*)(fServerMediaSessions->Lookup(streamName));
if (RequestSession == NULL)
{
//创建rtspclient
char* url = new char[255];
memset(url,0,255);
sprintf(url,"rtsp://%s",streamName);
#ifdef _DEBUG
envir() <<"Open Url:"<< url << "\n";
#endif
RunTimeRTSPClient* rtspclient = RunTimeRTSPClient::createNew(envir(),url);
delete[] url;
ServerMediaSession* sms
= ServerMediaSession::createNew(envir(), streamName);
//加入ServerMediumSubSession
//rtspclient->getSource();
//sms->addSubsession();
this->addServerMediaSession(sms);
rtspclient->startPlayingStreams();
}
RequestSession = (ServerMediaSession*)(fServerMediaSessions->Lookup(streamName));
return RequestSession;
}
xrye000
2006-06-15
打赏
举报
回复
那就把示例中的openRTSP封装成一个RunTimeRTSPClient类
当客户端需要打开某个视频源时,在RTSPServer中动态创建一个RunTimeRTSPClient对象,再动态创建一个ServerMediaSession ,两个关联起来就OK了
luoqintao
2006-06-15
打赏
举报
回复
xrye0395(Terry),真是多谢啊,我原来准备做一个客户端线程专门接收数据然后缓存,让rstpserver线程与之共享内存的,这样看了还是你的方法好,不过有几个问题:
1,这个RunTimeRTSPClient的rtspclient->getSource()和createNew(envir(),url);是如何封装的。
2,我看了http://lists.live555.com/pipermail/live-devel/2005-October/003326.html,好像也是你这种做法,说是 getNextFrame()的问题具体见:http://lists.live555.com/pipermail/live-devel/2005-October/003326.html
不知道这些问题你解决没有?
最好能给我你的RunTimeRTSPClient和自定义的source的封装的代码,小弟感激涕零啊!
另,加我msn吧,这样沟通方便些,luoqintao@hotmail.com,谢谢啦!
luoqintao
2006-06-13
打赏
举报
回复
to xrye0395(Terry),我看过你的一片帖子,知道你做的东西跟我这个差不多,望加我msn一起讨论下:luoqintao@hotmail.com
这个我也想到了,但是好像离我的需求还有点距离。
我的需求如下:
我现在想做一个实时流转发服务器,该服务器的流数据是通过一些网络摄像机(支持rtsp)获取,也就是该转发服务器一个rtsp的client和server的结合体,目前的做法是摄像机主动将数据发送到该服务其上,服务器再根据实际客户请求传输数据。你说的这个也应该可以满足。
但是我想做到不是摄像机主动先把数据发给转发服务器,而是服务器在需要某个摄像机的数据时自己作为rtsp client向摄像机去要。
请赐教!
xrye000
2006-06-12
打赏
举报
回复
在RTSPServer类中,有个lookupServerMediaSession函数
如果没有找到相应的ServerMediaSession ,那就动态创建一个ServerMediaSession
live
555
Live
Media
live
555,
Live
Media
,截止到2015年3月份的最新版本
live
Media
lib库
live
555
live
Media
32位静态库
windows下编译
live
Media
555 ,包含工程代码
windows下编译媒体开源工程
LIVE
555 ,包含工程代码;已经将该工程在vc2008下编译通过,下载后只需要编译各个库,即可
live
media
流程详解
关于
live
库的详细介绍,详述服务器端和客户端之间的交互,已经各种命令的形成,解析,整个流程等等......
live
media
555 源代码
live
media
555库源代码。包括BasicUsageEnvironment,groupsock,
live
Media
,UsageEnvironment基本库,testProgs,
media
Server库。
多媒体/流媒体开发
2,542
社区成员
20,281
社区内容
发帖
与我相关
我的任务
多媒体/流媒体开发
专题开发/技术/项目 多媒体/流媒体开发
复制链接
扫一扫
分享
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章