ffmpeg_encoder_decoder
- Software
- Perception
- Library
A ROS 2 package that encodes and decodes ROS images with FFmpeg (libav), including hardware-accelerated codecs such as H.264 and HEVC, meant to be used by image transport plugins.
Made by ros-misc-utilities.
Source on GitHub: github.com/ros-misc-utilities/ffmpeg_encoder_decoder (opens in a new tab). Facts read at commit da09f5d (opens in a new tab).
Licenses
- Code
- Apache-2.0 (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit da09f5d (opens in a new tab), on 16 Oct 2026.
- Commercial use
- Yes
What it does
- Encodes ROS images to codecs like H.264 and H.265/HEVC using FFmpeg, using hardware acceleration when available.
- Decodes the encoded packets back into ROS images, reproducing the original encoding where possible.
- Provides Encoder and Decoder classes with configurable pixel formats, encoder choice and AV options.
- Includes a hack for single-channel images such as mono8 and Bayer, adding and removing an empty colour channel.
- Is intended to back the ffmpeg image transport and foxglove compressed video transport packages.
- Can be built against a custom FFmpeg install, and documents enabling NVMPI-based encoding on NVIDIA Jetson.
Written by Robotheca from the project's README (opens in a new tab) at commit da09f5d.
Getting started
- Difficulty
- Advanced
- How to start
- The project's README (opens in a new tab)
Maintenance
- Status
- Active: a commit in the last 90 days
- Newest commit
- 20 Jul 2026 on master
- Latest release
- None published on GitHub
Checked on GitHub on 16 Oct 2026.
Links
Robots that can run it
No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.