ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Compress Image topic with h264 streaming for low bandwidth connection?

asked 2021-06-05 06:17:59 -0500

Yehor gravatar image

updated 2021-11-06 12:19:08 -0500

lucasw gravatar image


I faced the problem that sending the video with big resolution (1920x1080) is very difficult even with image transport. The raw or compressed images are too bit for sending over the network (WiFi) and the theora also can't handle such resolution (fps is too low).

Maybe someone was working with sending big image and can help me where can I find or how can I implement for example h264 streaming. Or maybe there are additional plugins for image_transport?

Thank you!

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2021-06-05 07:08:36 -0500

gvdhoorn gravatar image

updated 2021-06-05 07:13:07 -0500

I haven't used it myself, but you could see whether daniilidis-group/ffmpeg_image_transport can help. It's an FFMPEG based image_transport plugin, which supports any format supported by FFMPEG (including h264 and h265). HW accelerated encoding/decoding is also supported (such as nvenc fi).

There are other image_transport plugins which purport to do a similar thing, but they all look rather old/stale:

edit flag offensive delete link more


Thank you for your help, I have tried ffmpeg_image_transport and it seems to work. However, the encoding isn't to much in the first look, it is probably needs some configuration adjustments. So I will try.

Thank you!!!

Yehor gravatar image Yehor  ( 2021-06-05 07:25:51 -0500 )edit

answered 2023-06-16 09:58:01 -0500

Bernd Pfrommer gravatar image

Here is a link to a ROS2 version of ffmpeg image transport. It has mostly been tested on h264/265 and nvenc.

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2021-06-05 06:17:59 -0500

Seen: 1,832 times

Last updated: Jun 16 '23