34namespace webrtc_streaming {
79 static std::unique_ptr<Streamer>
Create(
81 std::shared_ptr<ConnectionObserverFactory> factory);
84 std::shared_ptr<VideoSink>
AddDisplay(
const std::string& label,
int width,
89 bool AddTouchpad(
const std::string& label,
int width,
int height);
98 std::shared_ptr<AudioSink>
AddAudioStream(
const std::string& label);
110 const std::string& title,
111 const std::string& icon_name);
113 const std::string& command,
const std::string& title,
114 const std::string& icon_name,
const std::string& shell_command);
116 const std::string& command,
const std::string& title,
117 const std::string& icon_name,
118 const std::vector<DeviceState>& device_states);
121 void Register(std::weak_ptr<OperatorObserver> operator_observer);
131 Streamer(std::unique_ptr<Impl> impl);
std::string to_string(ConnectionState state)
Definition: adb.cpp:144
Definition: camera_controller.h:24
Definition: streamer.h:63
virtual ~OperatorObserver()=default
virtual void OnRegistered()=0
Definition: recording_manager.h:41
Definition: streamer.h:74
Streamer(std::unique_ptr< Impl > impl)
Definition: streamer.cpp:192
bool RemoveDisplay(const std::string &label)
Definition: streamer.cpp:282
void Unregister()
Definition: streamer.cpp:381
void SetHardwareSpec(std::string key, std::string value)
Definition: streamer.cpp:341
CameraController * AddCamera(unsigned int port, unsigned int cid, bool vhost_user)
Definition: streamer.cpp:334
void SetHardwareSpec(std::string key, V value)
Definition: streamer.h:94
bool AddTouchpad(const std::string &label, int width, int height)
Definition: streamer.cpp:299
std::shared_ptr< VideoSink > AddDisplay(const std::string &label, int width, int height, int dpi, bool touch_enabled)
Definition: streamer.cpp:244
void AddCustomControlPanelButtonWithShellCommand(const std::string &command, const std::string &title, const std::string &icon_name, const std::string &shell_command)
Definition: streamer.cpp:353
static std::unique_ptr< Streamer > Create(const StreamerConfig &cfg, RecordingManager &recording_manager, std::shared_ptr< ConnectionObserverFactory > factory)
Definition: streamer.cpp:196
std::shared_ptr< Impl > impl_
Definition: streamer.h:132
std::shared_ptr< AudioSource > GetAudioSource()
Definition: streamer.cpp:330
std::shared_ptr< AudioSink > AddAudioStream(const std::string &label)
Definition: streamer.cpp:313
void AddCustomControlPanelButton(const std::string &command, const std::string &title, const std::string &icon_name)
Definition: streamer.cpp:345
void AddCustomControlPanelButtonWithDeviceStates(const std::string &command, const std::string &title, const std::string &icon_name, const std::vector< DeviceState > &device_states)
Definition: streamer.cpp:362
void Register(std::weak_ptr< OperatorObserver > operator_observer)
Definition: streamer.cpp:372
Definition: alloc_utils.cpp:23
Definition: streamer.h:38
std::string device_id
Definition: streamer.h:40
std::pair< uint16_t, uint16_t > udp_port_range
Definition: streamer.h:47
std::string operator_path
Definition: streamer.h:44
int client_files_port
Definition: streamer.h:43
bool enable_mouse
Definition: streamer.h:58
std::string openwrt_addr
Definition: streamer.h:52
std::string control_env_proxy_server_path
Definition: streamer.h:56
bool enable_gamepad
Definition: streamer.h:60
int adb_port
Definition: streamer.h:54
std::string openwrt_device_id
Definition: streamer.h:50
std::pair< uint16_t, uint16_t > tcp_port_range
Definition: streamer.h:48