X-Git-Url: https://git.sesse.net/?p=nageru;a=blobdiff_plain;f=decklink_capture.h;h=f940241a854f7acc941b1af56d2a35567389458e;hp=05eb4a8d29a027b2e5725a93710b8b80b16219c5;hb=327534a3031a332423411c9599c741f2f81657df;hpb=cf7b9ee186d4ef8e5da0531b75854c97b821be44 diff --git a/decklink_capture.h b/decklink_capture.h index 05eb4a8..f940241 100644 --- a/decklink_capture.h +++ b/decklink_capture.h @@ -7,6 +7,7 @@ #include #include #include +#include #include #include "DeckLinkAPIModes.h" @@ -93,6 +94,14 @@ public: void set_video_mode(uint32_t video_mode_id) override; uint32_t get_current_video_mode() const override { return current_video_mode; } + std::set get_available_pixel_formats() const override { + return std::set{ bmusb::PixelFormat_8BitYCbCr, bmusb::PixelFormat_10BitYCbCr }; + } + void set_pixel_format(bmusb::PixelFormat pixel_format) override; + bmusb::PixelFormat get_current_pixel_format() const override { + return current_pixel_format; + } + std::map get_available_video_inputs() const override { return video_inputs; } void set_video_input(uint32_t video_input_id) override; uint32_t get_current_video_input() const override { return current_video_input; } @@ -126,9 +135,13 @@ private: IDeckLinkInput *input = nullptr; BMDTimeValue frame_duration; BMDTimeScale time_scale; + BMDFieldDominance field_dominance; + bool running = false; + bool supports_autodetect = false; std::map video_modes; BMDDisplayMode current_video_mode; + bmusb::PixelFormat current_pixel_format = bmusb::PixelFormat_8BitYCbCr; std::map video_inputs; BMDVideoConnection current_video_input;