[Documentation] [TitleIndex] [WordIndex

Package Summary

Node for using a video file as video topic source.

  • Maintainer status: developed
  • Maintainer: Martin Pecka <peckama2 AT fel.cvut DOT cz>
  • Author: Martin Pecka <peckama2 AT fel.cvut DOT cz>
  • License: BSD
  • Source: git https://github.com/peci1/movie_publisher.git (branch: indigo-devel)

Package Summary

Node for using a video file as video topic source.

  • Maintainer status: developed
  • Maintainer: Martin Pecka <peckama2 AT fel.cvut DOT cz>
  • Author: Martin Pecka <peckama2 AT fel.cvut DOT cz>
  • License: BSD
  • Source: git https://github.com/peci1/movie_publisher.git (branch: kinetic-devel)

Package Summary

Node for using a video file as video topic source.

  • Maintainer status: developed
  • Maintainer: Martin Pecka <peckama2 AT fel.cvut DOT cz>
  • Author: Martin Pecka <peckama2 AT fel.cvut DOT cz>
  • License: BSD
  • Source: git https://github.com/peci1/movie_publisher.git (branch: melodic-devel)

movie_publisher

This package contains several tools for using movie files in ROS (playback, conversion to bag files etc.).

It handles any file formats the system installation of ffmpeg can decode.

Important: This package is meant to work with moviepy. However, due to packaging issues, moviepy cannot be installed automatically as a dependency. There's a fallback using OpenCV, which is however worse. Please, install moviepy manually calling:

sudo pip install moviepy

or

rosdep install python-moviepy-pip

Main tools

Helper tools

movie_publisher_node

The node can run with either of two backends - moviepy and opencv. moviepy is strongly recommended, as it uses ffmpeg, which is quite versatile and efficient. Is you do not set the backend param, autodetection is run.

Published topics

Node-private parameters:

movie_publisher.launch

This launch file takes arguments with the same name as the node's parameters.

Additionally, it takes these arguments:

movie_to_bag

Convert a movie file to a bag file with video topic.

It is a Bash script with ROS node-like API - you pass it parameters via _param:=value on commandline or via ROS param server.

Node-private parameters:

Usage

Call this script from commandline setting the node-private parameters, and pass any other arg:=value arguments - these will be relayed to movie_publisher.launch as is. Do not pass arguments that would collide with the node-private parameters of this script (e.g. movie_file).

Example:

rosrun movie_publisher movie_to_bag _movie:=movie.mp4 _bag:=movie.bag _topic:="/movie" start:=5 fake_time_start:=1548323340.24

add_movie_to_bag

Add a movie file to an existing bagfile as a topic.

It is a Bash script with ROS node-like API - you pass it parameters via _param:=value on commandline or via ROS param server.

Node-private parameters:

Usage

Call this script from commandline setting the node-private parameters, and pass any other arg:=value arguments - these will be relayed to movie_publisher.launch as is. Do not pass arguments that would collide with the node-private parameters of this script (e.g. movie_file).

Example:

rosrun movie_publisher add_movie_to_bag _movie:=movie.mp4 _bag_in:=movie_in.bag _bag_out:=movie_out.bag _topic:="/movie" start:=5 movie_delay:=-1

fix_bag_timestamps

Goes through in_bag and for all messages with a header field sets their publication time to the time stored in their header.stamp plus delay. If topics are set, only works on messages on the listed topics. Reading timestamps from /tf is also supported.

It is a Python script with ROS node-like API - you pass it parameters via _param:=value on commandline.

Node-private parameters:


2019-07-13 12:53