其他分享
首页 > 其他分享> > Unity连接外部摄像头

Unity连接外部摄像头

作者:互联网

这段时间在搞unity中添加大华摄像头进行视频播放,总所周知,unity平台对视频播放不是很友好,而大华的SDK只有c#版本的并没有专门为unity做出来SDK,最开始尝试过使用SDK里面的方式获取YUV格式的视频流,再讲YUV格式的视频流转换为unity可以播放的格式,但是这个格式转换经常出现问题,而且很卡顿,所以呢我就用了ump插件进行rtsp视频流播放,还算是比较流畅的。虽然网上很多unity调用大华视频的教程,但还是再手写一下增加一点印象

1.首先下载UMP插件:

链接:https://pan.baidu.com/s/1mf7EmxQ9OKUVnDWLNUK1tw
提取码:hddg

2.安装导入

把UMP插件导入unity3d中,随便建一个材质球(当然UI上面也可以使用),然后将预制体UniversalMediaPlayer拖入到场景中 在pathtoVideoFile选项中设置rtsp协议(即配置路径),ip 账号 密码 端口号 所属主还是子码流类型等。

 

 

 新建一个RawImage拖到RenderingGameObjects中

运行即可看到摄像头的画面

如果运行报错的话,错误是找不到libvlc.dll文件,那就是你电脑上没有vlc库,下载安装一个,安装完成之后,错误立马消失

库下载地址:http://get.videolan.org/vlc/3.0.6/win64/vlc-3.0.6-win64.exe

复制跳转会自动弹出下载界面,下载安装即可(默认地址就好)

如果打包出来还是没有画面的话(我的是自己电脑上有画面,别人电脑无画面)

 解决办法是找到插件里面的Resources/UMPSettings/Use installed VLC  勾选上

 

 

 

再次打包别人电脑上就有画面了(如果还是没有那就是没有装库了,安装就好了)

因为之前用UMP是1.7版本的,打包之后无画面(可能也是因为没勾选VLC),最后用的这个2.0.3版本的,打包运行完美,在其他电脑测试也完美出现画面

使用ump打包webGL发布到网页上遇到视频不能播放的问题(视频地址网上随便找的)解决方法如下:

 

 

 

针对主流厂商rtsp地址格式整理

一、大华

1.实时码流格式

rtsp://username:password@ip:port/cam/realmonitor?channel=1&subtype=0

格式说明

username : 用户名。例如admin

password : 密码。例如admin。

ip : 为设备IP。例如 10.7.8.122

port : 端口号。默认为554,若为默认可不填写

channel : 通道号,起始为1。例如通道2,则为channel=2

subtype : 码流类型,主码流为0(即subtype=0),辅码流为1(即subtype=1)

使用示例:rtsp://admin:admin@10.12.4.84:554/cam/realmonitor?channel=2&subtype=1

2.回放码流格式

rtsp://username:password@ip:port/cam/playback?channel=1&subtype=0&starttime=2018_03_08_02_54_46&endtime=2018_03_08_03_54_46

二、海康:

1.1.实时码流格式

rtsp://username:password@ip:port/Streaming/channels/[?parm1=value1&parm2=vlaue2]

格式说明:

username:用户名 默认Admin

password:密码  默认admin

ip:设备ip

port:端口号,默认554

id编号 101:通道1主码流 、102通道1子码流、201通道2主码流

示例:rtsp://admin:12345@222.161.231.2:554/Streaming/channels/101?transportmode=unicast

2.回放码流格式

rtsp://username:password@ip:port/Streaming/tracks/101?starttime=20180308T025446Z&endtime=20180308T035446Z&name=02000000382000000&s 

标签:外部,ip,rtsp,subtype,Unity,格式,password,port,摄像头
来源: https://www.cnblogs.com/AranNice/p/16351618.html