web_video_server功能包的主要功能是,在ROS系统中,比如某些话题发布了图像、视频的话题,通过这个功能包可以订阅这些话题,然后对图像压缩,通过网络传输出去,这样我们就可以通过网络的方式获取到这些图像和话题。
安装
直接使用 sudo apt-get install ros-indigo-web-video-server
使用
web-video-server 只有一个节点 node名称为web-video-server
而且有很多参数,所以我们可以写一个launch文件
roscd web_video_server
mkdir launch
vim web_video.launch
<launch>
<node pkg="web_video_server" type="web_video_server" name="web_video_server_1" output="screen">
<param name="port" type="int" value="8080" />
<param name="address" type="string" value="127.0.0.1" />
<param name="server_threads" type="int" value="1" />
<param name="ros_threads" type="string" value="2" />
<param name="width" type="int" value="1280" />
<param name="height" type="int" value="1080" />
<param name="quality" type="int" value="90" />
<param name="height" type="int" value="1080" />
</node>
</launch>
~
测试
首先要有一个视频流
这里使用 uvc_camera软件包
启动 roslaunch uvc_camera my_camera.launch
然后启动web_video_server 来订阅视频流话题,然后压缩后发出
roslaunch web_video_server web_video.launch
最后在浏览器中查看
http://127.0.0.1:8080/stream_viewer?topic=/image_raw
这里有在launch文件指定的IP 端口
/image_raw是uvc_camera发布的图像话题
参考文档: