Class TheoraPublisher

Inheritance Relationships

Base Type

  • public image_transport::SimplePublisherPlugin< theora_image_transport::msg::Packet >

Class Documentation

class TheoraPublisher : public image_transport::SimplePublisherPlugin<theora_image_transport::msg::Packet>

Public Functions

TheoraPublisher()
virtual ~TheoraPublisher()
inline virtual std::string getTransportName() const

Protected Functions

virtual void advertiseImpl(rclcpp::Node *node, const std::string &base_topic, uint32_t queue_size, rmw_qos_profile_t custom_qos)
void publish(const sensor_msgs::msg::Image &message, const PublishFn &publish_fn) const
bool ensureEncodingContext(const sensor_msgs::msg::Image &image, const PublishFn &publish_fn) const
void oggPacketToMsg(const std_msgs::msg::Header &header, const ogg_packet &oggpacket, theora_image_transport::msg::Packet &msg) const
void updateKeyframeFrequency() const

Protected Attributes

mutable cv_bridge::CvImage img_image
mutable th_info encoder_setup_
mutable ogg_uint32_t keyframe_frequency_
mutable std::shared_ptr<th_enc_ctx> encoding_context_
mutable std::vector<theora_image_transport::msg::Packet> stream_header_
rclcpp::Logger logger_