00001 #ifndef VP9_STREAMERS_H_ 00002 #define VP9_STREAMERS_H_ 00003 00004 #include <image_transport/image_transport.h> 00005 #include "web_video_server/libav_streamer.h" 00006 #include "async_web_server_cpp/http_request.hpp" 00007 #include "async_web_server_cpp/http_connection.hpp" 00008 00009 namespace web_video_server 00010 { 00011 00012 class Vp9Streamer : public LibavStreamer 00013 { 00014 public: 00015 Vp9Streamer(const async_web_server_cpp::HttpRequest& request, async_web_server_cpp::HttpConnectionPtr connection, 00016 ros::NodeHandle& nh); 00017 ~Vp9Streamer(); 00018 protected: 00019 virtual void initializeEncoder(); 00020 }; 00021 00022 class Vp9StreamerType : public LibavStreamerType 00023 { 00024 public: 00025 Vp9StreamerType(); 00026 virtual boost::shared_ptr<ImageStreamer> create_streamer(const async_web_server_cpp::HttpRequest& request, 00027 async_web_server_cpp::HttpConnectionPtr connection, 00028 ros::NodeHandle& nh); 00029 }; 00030 00031 } 00032 00033 #endif