查看: 2507|回复: 5

OSG使用ffmpeg播放rtsp流媒体不成功

[复制链接]

该用户从未签到

发表于 2014-10-22 17:00:59 | 显示全部楼层 |阅读模式
我编译了一个版本,使用ffmpeg可以正确播放本地视频文件
osgDB::Registry::instance()->addFileExtensionAlias("avi", "ffmpeg");
osg::ref_ptr<osg::Image> image = osgDB::readImageFile("Video/shiyan.avi");

但如果用于播放rtsp流媒体却不成功,从代码上看,系统是支持流媒体RTSP协议的:
RTSP地址(H264编码,可以在vlc上正确播放):rtsp://192.168.1.166:5505/&c ... em;&pass=system
我通过如下方式调用接口(为了让osg使用ffmpeg的库,我在链接的最后加上“&format.ffmpeg”,调试上看,是可以正确进入到ffmpeg的dll)
image = osgDB::readImageFile("rtsp://192.168.1.166:5505/&channel=0;&stream=1;&user=system;&pass=system;&format.ffmpeg");

但最终结果,是没有视频显示,也没有错误提示。
有没有人尝试过在osg中使用ffmpeg打开rtsp?大概是什么问题导致流媒体播放不成功呢?

先谢谢各位了~





该用户从未签到

 楼主| 发表于 2014-10-22 18:10:29 | 显示全部楼层
如果不在rtsp://192.168.1.166:5505/&c ... em;&pass=system 链接的末尾加上ffmpeg,如何让osgDB::readImageFile指定通过某个plugin进行读取(不是通过后缀名,比如在RTSP中就没有后缀名),比如ffmpeg的plugin。

osgDB::readImageFile("rtsp://192.168.1.166:5505/&channel=0;&stream=1;&user=system;&pass=system;&format.ffmpeg");

该用户从未签到

 楼主| 发表于 2014-11-22 21:50:34 | 显示全部楼层
自己来回答:
osg::ref_ptr<osgDB::ReaderWriter> rwter = osgDB::Registry::instance()->getReaderWriterForExtension("ffmpeg");
        osgDB::ReaderWriter::ReadResult rr = rwter->readImage("rtsp://127.0.0.1:8554/shiyan?format.avi");

该用户从未签到

发表于 2016-2-26 09:14:24 | 显示全部楼层
楼主可以帮忙发一下,ffmpeg的插件库吗?编译好的也可以发一下,谢谢楼主了stonels0@163.com

该用户从未签到

发表于 2016-11-7 14:11:00 | 显示全部楼层
stonels 发表于 2016-2-26 09:14
楼主可以帮忙发一下,ffmpeg的插件库吗?编译好的也可以发一下,谢谢楼主了()

请问你有没有编译好的ffmpeg的插件库呢,可以发我一下么,381605456@qq.com,我也在摸索osg场景中播放视频,资料都好少呀

该用户从未签到

发表于 2017-1-12 10:33:18 | 显示全部楼层
楼主牛逼,自己问题自己解决,并给出答案,造福大众,赞一个
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表