Classes | |
| struct | AVFrameClose |
| struct | AVPacketClose |
| class | ExifBaseMetadataExtractor |
| Common base for all metadata extractors that utilize EXIF data. More... | |
| struct | ExifData |
| class | FileMetadataExtractor |
| Extractor of metadata from filesystem properties of the movie file. More... | |
| struct | FileMetadataExtractorPlugin |
| Loader plugin for FileMetadataExtractor. More... | |
| class | FilenameMetadataExtractor |
| Extractor of metadata from filename. More... | |
| struct | FilenameMetadataExtractorPlugin |
| Loader plugin for FilenameMetadataExtractor. More... | |
| struct | LatestMetadataCache |
| Latest metadata of each type. More... | |
| class | LibavStreamMetadataExtractor |
| Extractor of metadata from an open LibAV stream. More... | |
| struct | LibavStreamMetadataExtractorPlugin |
| Loader plugin for LibabStreamMetadataExtractor. More... | |
| struct | MetadataCache |
| Metadata cache. More... | |
| class | MetadataExtractor |
| Extractor of metadata about a movie or image. More... | |
| struct | MetadataExtractorParams |
| Parameters passed to the extractor plugins when initializing them. More... | |
| struct | MetadataExtractorPlugin |
| Helper structure that handles instantiation of an extractor. More... | |
| class | MetadataManager |
| Manager of multiple image metadata providers which can cooperate in parsing. More... | |
| class | Movie |
| An open movie that can be read, seeked and closed. More... | |
| struct | MovieInfo |
| Basic information about an open movie. More... | |
| class | MovieMetadataListener |
| class | MovieMetadataProcessor |
| Base for consumers of movie metadata. More... | |
| struct | MovieOpenConfig |
| Configuration specifying what movie file to open and how. More... | |
| struct | MoviePlaybackState |
| State of movie playback. More... | |
| struct | MoviePrivate |
| PIMPL structure for Movie. More... | |
| class | MovieReader |
| Helper class for opening movie files. More... | |
| class | MovieReaderRos |
| MovieReader preconfigured from ROS parameters. More... | |
| class | MovieToBag |
| Convert movie files and their metadata to ROS bag file. More... | |
| class | MovieToBagMetadataProcessor |
| struct | PriorityComparator |
| struct | RationalNumber |
| A simple representation of rational numbers of the form numerator/denominator. More... | |
| class | StackGuard |
| RAII guard saving a function call to stack. Can be used to protect against infinite recursion. More... | |
| class | StreamDuration |
| Duration type denoting movie stream duration. More... | |
| class | StreamTime |
| Time type denoting movie stream time. More... | |
| struct | TimedMetadata |
| Timestamping wrapper for any kind of metadata. More... | |
| struct | TimedMetadataCache |
| Metadata cache. More... | |
| class | TimedMetadataExtractor |
| Extractor of timed metadata. More... | |
| struct | TimedMetadataListener |
| Listener of decoded timed metadata. More... | |
Typedefs | |
| using | AVFramePtr = std::unique_ptr< AVFrame, AVFrameClose > |
| using | AVPacketPtr = std::unique_ptr< AVPacket, AVPacketClose > |
| using | Distortion = sensor_msgs::CameraInfo::_D_type |
| using | DistortionData = std::pair< DistortionType, Distortion > |
| using | DistortionType = sensor_msgs::CameraInfo::_distortion_model_type |
| typedef std::string | ExifAscii |
| typedef uint8_t | ExifByte |
| typedef uint32_t | ExifLong |
| typedef double | ExifRational |
| typedef uint16_t | ExifShort |
| typedef int32_t | ExifSLong |
| typedef double | ExifSRational |
| typedef int16_t | ExifSShort |
| typedef std::vector< uint8_t > | ExifUnknown |
| using | GNSSFixAndDetail = std::pair< cras::optional< sensor_msgs::NavSatFix >, cras::optional< gps_common::GPSFix > > |
| using | IntrinsicMatrix = sensor_msgs::CameraInfo::_K_type |
| using | MovieConstPtr = std::shared_ptr< const Movie > |
| using | MoviePtr = std::shared_ptr< Movie > |
| using | RollPitch = std::pair< double, double > |
| using | SensorSize = std::pair< double, double > |
Functions | |
| cras::expected< std::string, std::string > | avPixFmtToRosEncoding (const AVPixelFormat &libavPixelFormat) |
| Map Libav pixel formats to ROS image encodings. More... | |
| template<typename M > | |
| static bool | CompareStamp (const TimedMetadata< M > &a, const StreamTime &b) |
| Compare TimedMetadata according to their stamps (in decreasing order). More... | |
| template<typename M > | |
| auto | findLastUpToStamp (const std::vector< TimedMetadata< M >> &data, const StreamTime &stamp) |
Find index of the latest data from data that have their timestamp less than or equal to stamp. More... | |
| template<typename M > | |
| cras::optional< TimedMetadata< M > > | findLastUpToStamp (const std::vector< TimedMetadata< M >> &data, const StreamTime &stamp, const cras::optional< M > &defaultVal) |
Find the latest data from data that have their timestamp less than or equal to stamp. More... | |
| template<typename T > | |
| T | parseTimeParam (const XmlRpc::XmlRpcValue ¶m) |
| Parse time or duration in several formats. More... | |
| bool | parseTimestampOffset (const std::unordered_map< std::string, double > &extraVars, const XmlRpc::XmlRpcValue ¶m, double &value, bool skipNonConvertible, std::list< std::string > *errors) |
| Parse the given timestamp offset. More... | |
| TimestampSource | parseTimestampSource (const std::string ¶m) |
| Parse TimestampSource from text. More... | |
| cras::expected< AVPixelFormat, std::string > | rosEncodingToAvPixFmt (const std::string &rosEncoding) |
| Map ROS image encodings to Libav pixel formats. More... | |
| std::string | timestampSourceToStr (const TimestampSource &source) |
| Convert the given TimestampSource to text. More... | |
| template<typename M > | |
| M | updateHeader (const M &msg, const ros::Time &stamp, const std::string &frameId) |
| using movie_publisher::AVFramePtr = typedef std::unique_ptr<AVFrame, AVFrameClose> |
Definition at line 64 of file movie_private.h.
| using movie_publisher::AVPacketPtr = typedef std::unique_ptr<AVPacket, AVPacketClose> |
Definition at line 58 of file movie_private.h.
| using movie_publisher::Distortion = typedef sensor_msgs::CameraInfo::_D_type |
Definition at line 59 of file metadata_type.h.
| using movie_publisher::DistortionData = typedef std::pair<DistortionType, Distortion> |
Definition at line 60 of file metadata_type.h.
| using movie_publisher::DistortionType = typedef sensor_msgs::CameraInfo::_distortion_model_type |
Definition at line 58 of file metadata_type.h.
| typedef std::string movie_publisher::ExifAscii |
Definition at line 30 of file ExifBaseMetadataExtractor.h.
| typedef uint8_t movie_publisher::ExifByte |
Definition at line 31 of file ExifBaseMetadataExtractor.h.
| typedef uint32_t movie_publisher::ExifLong |
Definition at line 34 of file ExifBaseMetadataExtractor.h.
| typedef double movie_publisher::ExifRational |
Definition at line 36 of file ExifBaseMetadataExtractor.h.
| typedef uint16_t movie_publisher::ExifShort |
Definition at line 32 of file ExifBaseMetadataExtractor.h.
| typedef int32_t movie_publisher::ExifSLong |
Definition at line 35 of file ExifBaseMetadataExtractor.h.
| typedef double movie_publisher::ExifSRational |
Definition at line 37 of file ExifBaseMetadataExtractor.h.
| typedef int16_t movie_publisher::ExifSShort |
Definition at line 33 of file ExifBaseMetadataExtractor.h.
| typedef std::vector<uint8_t> movie_publisher::ExifUnknown |
Definition at line 38 of file ExifBaseMetadataExtractor.h.
| using movie_publisher::GNSSFixAndDetail = typedef std::pair<cras::optional<sensor_msgs::NavSatFix>, cras::optional<gps_common::GPSFix> > |
Definition at line 61 of file metadata_type.h.
| using movie_publisher::IntrinsicMatrix = typedef sensor_msgs::CameraInfo::_K_type |
Definition at line 57 of file metadata_type.h.
| using movie_publisher::MovieConstPtr = typedef std::shared_ptr<const Movie> |
| using movie_publisher::MoviePtr = typedef std::shared_ptr<Movie> |
| using movie_publisher::RollPitch = typedef std::pair<double, double> |
Definition at line 63 of file metadata_type.h.
| using movie_publisher::SensorSize = typedef std::pair<double, double> |
Definition at line 62 of file metadata_type.h.
|
strong |
Enum for supported metadata.
Definition at line 26 of file metadata_type.h.
|
strong |
How to compute ROS timestamps from movie frame presentation timestamp (PTS).
| cras::expected<std::string, std::string> movie_publisher::avPixFmtToRosEncoding | ( | const AVPixelFormat & | libavPixelFormat | ) |
Map Libav pixel formats to ROS image encodings.
| [in] | libavPixelFormat | Libav pixel format. |
|
static |
Compare TimedMetadata according to their stamps (in decreasing order).
| M | Type of the metadata. |
| [in] | a | The timed metadata to compare. |
| [in] | b | The timestamp to compare with. |
Definition at line 214 of file metadata_cache.h.
| auto movie_publisher::findLastUpToStamp | ( | const std::vector< TimedMetadata< M >> & | data, |
| const StreamTime & | stamp | ||
| ) |
Find index of the latest data from data that have their timestamp less than or equal to stamp.
| M | Metadata type. |
| [in] | data | A stamp-ordered list of metadata. |
| [in] | stamp | The maximum timestamp. |
Definition at line 227 of file metadata_cache.h.
| cras::optional<TimedMetadata<M> > movie_publisher::findLastUpToStamp | ( | const std::vector< TimedMetadata< M >> & | data, |
| const StreamTime & | stamp, | ||
| const cras::optional< M > & | defaultVal | ||
| ) |
Find the latest data from data that have their timestamp less than or equal to stamp.
| M | Metadata type. |
| [in] | data | A stamp-ordered list of metadata. |
| [in] | stamp | The maximum timestamp. |
| [in] | defaultVal | The default value to return in case no value was found in data. |
Definition at line 241 of file metadata_cache.h.
| T movie_publisher::parseTimeParam | ( | const XmlRpc::XmlRpcValue & | param | ) |
Parse time or duration in several formats.
| T | ros::Time or ros::Duration |
| [in] | param | The parameter to parse. Can be float seconds (15.35), tuple (min, sec), tuple (hour, min, sec) or as a string:‘'01:03:05.35’`. |
| bool movie_publisher::parseTimestampOffset | ( | const std::unordered_map< std::string, double > & | extraVars, |
| const XmlRpc::XmlRpcValue & | param, | ||
| double & | value, | ||
| bool | skipNonConvertible, | ||
| std::list< std::string > * | errors | ||
| ) |
Parse the given timestamp offset.
| [in] | extraVars | Extra variables that should be resolved by the expression parser. |
| [in] | param | The ROS parameter. Can be either int, double or string. If string, it can contain a mathematical expression with several predefined values: ros_time (current ROS time), wall_time (current wall time) and other variables defined in extraVars. |
| [out] | value | The output value. |
| [in] | skipNonConvertible | No effect. |
| [in] | errors | List of encountered errors. Can be nullptr. |
value succeeded. | TimestampSource movie_publisher::parseTimestampSource | ( | const std::string & | param | ) |
Parse TimestampSource from text.
| [in] | param | The text to parse. |
| cras::expected<AVPixelFormat, std::string> movie_publisher::rosEncodingToAvPixFmt | ( | const std::string & | rosEncoding | ) |
Map ROS image encodings to Libav pixel formats.
| [in] | rosEncoding | ROS image encoding. |
| std::string movie_publisher::timestampSourceToStr | ( | const TimestampSource & | source | ) |
Convert the given TimestampSource to text.
| [in] | source | The timestamp source. |
| M movie_publisher::updateHeader | ( | const M & | msg, |
| const ros::Time & | stamp, | ||
| const std::string & | frameId | ||
| ) |
Definition at line 67 of file movie_private.h.