You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
706 B
20 lines
706 B
#pragma once |
|
#include "call_camera_capture.h" |
|
#ifdef HAVE_STREAM_CAPTURE |
|
#include <QVideoFrame> |
|
#include <functional> |
|
#include <memory> |
|
|
|
// Backend принадлежит только процессу захвата; тесты подставляют неисправное устройство. |
|
class CallCameraSource : public QObject { |
|
Q_OBJECT |
|
public: |
|
virtual CallCameraDevices devices() = 0; |
|
virtual bool start(const QByteArray& device, int width, int height) = 0; |
|
virtual void stop() = 0; |
|
signals: |
|
void frame(const QVideoFrame& frame); |
|
void error(const QString& message); |
|
}; |
|
int call_camera_worker_run(const QString& endpoint, std::unique_ptr<CallCameraSource> source); |
|
#endif
|
|
|