18#include <api/video/i420_buffer.h>
19#include <api/video/video_frame.h>
20#include <api/video/video_sink_interface.h>
32namespace webrtc_streaming {
37 CameraStreamer(
unsigned int port,
unsigned int cid,
bool vhost_user);
43 void OnFrame(
const webrtc::VideoFrame& frame)
override;
46 void HandleMessage(
const std::vector<char>& message)
override;
Definition: camera_controller.h:24
Definition: vsock_connection.h:72
Definition: camera_streamer.h:35
std::future< bool > pending_connection_
Definition: camera_streamer.h:59
bool ForwardClientMessage(const Json::Value &message)
CameraStreamer(unsigned int port, unsigned int cid, bool vhost_user)
Definition: camera_streamer.cpp:25
std::atomic< bool > camera_session_active_
Definition: camera_streamer.h:71
std::mutex onframe_mutex_
Definition: camera_streamer.h:65
CameraStreamer & operator=(const CameraStreamer &other)=delete
std::thread reader_thread_
Definition: camera_streamer.h:70
unsigned int port_
Definition: camera_streamer.h:68
Resolution GetResolutionFromSettings(const Json::Value &settings)
Definition: camera_streamer.cpp:106
{ int32_t width Resolution
Definition: camera_streamer.h:50
void Disconnect()
Definition: camera_streamer.cpp:170
void OnFrame(const webrtc::VideoFrame &frame) override
Definition: camera_streamer.cpp:35
bool IsConnectionReady()
Definition: camera_streamer.cpp:131
std::mutex settings_mutex_
Definition: camera_streamer.h:62
std::string settings_buffer_
Definition: camera_streamer.h:63
CameraStreamer(const CameraStreamer &other)=delete
rtc::scoped_refptr< webrtc::I420Buffer > scaled_frame_
Definition: camera_streamer.h:66
~CameraStreamer()
Definition: camera_streamer.cpp:32
std::mutex frame_mutex_
Definition: camera_streamer.h:64
VsockClientConnection cvd_connection_
Definition: camera_streamer.h:60
void HandleMessage(const Json::Value &message) override
Definition: camera_streamer.cpp:81
bool vhost_user_
Definition: camera_streamer.h:69
int32_t height
Definition: camera_streamer.h:51
std::atomic< Resolution > resolution_
Definition: camera_streamer.h:61
unsigned int cid_
Definition: camera_streamer.h:67
void StartReadLoop()
Definition: camera_streamer.cpp:146
bool VsockSendYUVFrame(const webrtc::I420BufferInterface *frame)
Definition: camera_streamer.cpp:112
Definition: alloc_utils.cpp:23