Decklink separation

This commit is contained in:
Aiden
2026-05-09 14:42:11 +10:00
parent 4ffbb97abf
commit 46f2f1ece5
4 changed files with 93 additions and 5 deletions

View File

@@ -2,9 +2,25 @@
#include "VideoIOConfig.h"
#include <functional>
#include <memory>
#include <string>
#include <vector>
class VideoIODevice;
struct VideoIOBackendDescriptor
{
VideoIOBackendId backendId = VideoIOBackendId::DeckLink;
const char* backendName = "decklink";
const char* displayName = "Blackmagic DeckLink";
const char* unavailableMessage = "";
const char* unavailableTitle = "Video I/O initialization failed";
};
using VideoIODeviceFactory = std::function<std::unique_ptr<VideoIODevice>()>;
const VideoIOBackendDescriptor* GetVideoIOBackendDescriptor(VideoIOBackendId backendId);
std::vector<VideoIOBackendDescriptor> ListVideoIOBackendDescriptors();
std::unique_ptr<VideoIODevice> CreateVideoIODevice(VideoIOBackendId backendId, std::string& error);
bool IsVideoIOBackendUnavailableError(VideoIOBackendId backendId, const std::string& error);