GPMFMetadataExtractor.h
Go to the documentation of this file.
1 // SPDX-License-Identifier: MIT
2 // SPDX-FileCopyrightText: Czech Technical University in Prague
3 
10 #pragma once
11 
12 #include <memory>
13 #include <string>
14 #include <utility>
15 
19 
20 namespace movie_publisher
21 {
22 
23 struct GPMFMetadataPrivate;
24 
31 {
32 public:
42  explicit GPMFMetadataExtractor(
43  const cras::LogHelperPtr& log, const std::weak_ptr<MetadataManager>& manager, const MovieInfo::ConstPtr& info,
44  const MovieOpenConfig& config, const AVFormatContext* avFormatContext, int priority);
45  ~GPMFMetadataExtractor() override;
46 
47  std::string getName() const override;
48  int getPriority() const override;
49 
50  cras::optional<std::string> getCameraMake() override;
51  cras::optional<std::string> getCameraModel() override;
52  cras::optional<std::string> getCameraSerialNumber() override;
53  cras::optional<std::string> getLensMake() override;
54  cras::optional<std::string> getLensModel() override;
55  cras::optional<ros::Time> getCreationTime() override;
56 
57  cras::optional<double> getCropFactor() override;
58  cras::optional<std::pair<double, double>> getSensorSizeMM() override;
59  cras::optional<std::pair<DistortionType, Distortion>> getDistortion() override;
60  cras::optional<int> getRotation() override;
61  cras::optional<double> getFocalLengthMM() override;
62  cras::optional<double> getFocalLength35MM() override;
63  cras::optional<double> getFocalLengthPx() override;
64  cras::optional<IntrinsicMatrix> getIntrinsicMatrix() override;
65  cras::optional<compass_msgs::Azimuth> getAzimuth() override;
66  cras::optional<std::pair<double, double>> getRollPitch() override;
68  cras::optional<geometry_msgs::Vector3> getAcceleration() override;
69  cras::optional<sensor_msgs::MagneticField> getMagneticField() override;
70  cras::optional<geometry_msgs::Vector3> getAngularVelocity() override;
71  cras::optional<vision_msgs::Detection2DArray> getFaces() override;
72 
73  size_t processTimedMetadata(MetadataType type, const StreamTime& maxTime, bool requireOptional) override;
74  void seekTimedMetadata(const StreamTime& seekTime) override;
75  bool hasTimedMetadata() const override;
76  std::unordered_set<MetadataType> supportedTimedMetadata(
77  const std::unordered_set<MetadataType>& availableMetadata) const override;
78  void prepareTimedMetadata(const std::unordered_set<MetadataType>& types) override;
79  void processPacket(const AVPacket* packet) override;
80 
81 private:
82  std::unique_ptr<GPMFMetadataPrivate> data;
83 };
84 
89 {
91 };
92 
93 }
movie_publisher::GPMFMetadataExtractor::getPriority
int getPriority() const override
movie_publisher::GNSSFixAndDetail
std::pair< cras::optional< sensor_msgs::NavSatFix >, cras::optional< gps_common::GPSFix > > GNSSFixAndDetail
movie_publisher::GPMFMetadataExtractor
Metadata extractor from GPMF streams.
Definition: GPMFMetadataExtractor.h:30
optional.hpp
movie_publisher::GPMFMetadataExtractor::getGNSSPosition
GNSSFixAndDetail getGNSSPosition() override
movie_publisher::GPMFMetadataExtractor::getFocalLengthPx
cras::optional< double > getFocalLengthPx() override
movie_publisher::MovieOpenConfig
movie_publisher::GPMFMetadataExtractor::getCameraSerialNumber
cras::optional< std::string > getCameraSerialNumber() override
movie_publisher::GPMFMetadataExtractor::getIntrinsicMatrix
cras::optional< IntrinsicMatrix > getIntrinsicMatrix() override
movie_publisher::GPMFMetadataExtractor::getCropFactor
cras::optional< double > getCropFactor() override
movie_publisher::GPMFMetadataExtractor::GPMFMetadataExtractor
GPMFMetadataExtractor(const cras::LogHelperPtr &log, const std::weak_ptr< MetadataManager > &manager, const MovieInfo::ConstPtr &info, const MovieOpenConfig &config, const AVFormatContext *avFormatContext, int priority)
Constructor.
movie_publisher::GPMFMetadataExtractor::getName
std::string getName() const override
movie_publisher::GPMFMetadataExtractor::processPacket
void processPacket(const AVPacket *packet) override
movie_publisher::GPMFMetadataExtractorPlugin
Plugin for instantiating GPMFMetadataExtractor.
Definition: GPMFMetadataExtractor.h:88
movie_publisher::GPMFMetadataExtractor::getSensorSizeMM
cras::optional< std::pair< double, double > > getSensorSizeMM() override
movie_publisher::GPMFMetadataExtractor::~GPMFMetadataExtractor
~GPMFMetadataExtractor() override
movie_publisher::GPMFMetadataExtractor::getCreationTime
cras::optional< ros::Time > getCreationTime() override
movie_publisher::GPMFMetadataExtractor::prepareTimedMetadata
void prepareTimedMetadata(const std::unordered_set< MetadataType > &types) override
movie_publisher::GPMFMetadataExtractor::seekTimedMetadata
void seekTimedMetadata(const StreamTime &seekTime) override
movie_publisher::StreamTime
movie_publisher::GPMFMetadataExtractor::getAcceleration
cras::optional< geometry_msgs::Vector3 > getAcceleration() override
movie_publisher::GPMFMetadataExtractor::getFocalLength35MM
cras::optional< double > getFocalLength35MM() override
metadata_extractor.h
movie_publisher::GPMFMetadataExtractor::getCameraMake
cras::optional< std::string > getCameraMake() override
movie_publisher::GPMFMetadataExtractor::data
std::unique_ptr< GPMFMetadataPrivate > data
PIMPL.
Definition: GPMFMetadataExtractor.h:82
movie_publisher::GPMFMetadataExtractor::getDistortion
cras::optional< std::pair< DistortionType, Distortion > > getDistortion() override
movie_publisher::GPMFMetadataExtractorPlugin::getExtractor
MetadataExtractor::Ptr getExtractor(const MetadataExtractorParams &params) override
movie_publisher::MovieInfo::ConstPtr
std::shared_ptr< const MovieInfo > ConstPtr
movie_publisher::GPMFMetadataExtractor::getAzimuth
cras::optional< compass_msgs::Azimuth > getAzimuth() override
movie_publisher::GPMFMetadataExtractor::getFaces
cras::optional< vision_msgs::Detection2DArray > getFaces() override
movie_publisher::GPMFMetadataExtractor::getRollPitch
cras::optional< std::pair< double, double > > getRollPitch() override
cras::LogHelperPtr
::cras::LogHelper::Ptr LogHelperPtr
movie_publisher::GPMFMetadataExtractor::getAngularVelocity
cras::optional< geometry_msgs::Vector3 > getAngularVelocity() override
movie_publisher::MetadataExtractor::Ptr
std::shared_ptr< MetadataExtractor > Ptr
movie_publisher
movie_publisher::GPMFMetadataExtractor::getMagneticField
cras::optional< sensor_msgs::MagneticField > getMagneticField() override
movie_publisher::GPMFMetadataExtractor::hasTimedMetadata
bool hasTimedMetadata() const override
movie_publisher::TimedMetadataExtractor
movie_publisher::MetadataType
MetadataType
movie_publisher::GPMFMetadataExtractor::getRotation
cras::optional< int > getRotation() override
movie_publisher::GPMFMetadataExtractor::processTimedMetadata
size_t processTimedMetadata(MetadataType type, const StreamTime &maxTime, bool requireOptional) override
cras::HasLogger::log
::cras::LogHelperPtr log
movie_publisher::GPMFMetadataExtractor::getLensModel
cras::optional< std::string > getLensModel() override
movie_publisher::MetadataExtractorPlugin
movie_publisher::GPMFMetadataExtractor::getFocalLengthMM
cras::optional< double > getFocalLengthMM() override
metadata_manager.h
movie_publisher::GPMFMetadataExtractor::getLensMake
cras::optional< std::string > getLensMake() override
movie_publisher::MetadataExtractorParams
movie_publisher::GPMFMetadataExtractor::supportedTimedMetadata
std::unordered_set< MetadataType > supportedTimedMetadata(const std::unordered_set< MetadataType > &availableMetadata) const override
movie_publisher::GPMFMetadataExtractor::getCameraModel
cras::optional< std::string > getCameraModel() override


gpmf_metadata_extractor
Author(s): Martin Pecka , Liam Samuel Pach
autogenerated on Wed May 28 2025 02:07:33