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

#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