X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=bmusb%2Ffake_capture.h;h=ea9c3804e2c814e6304091df45c3d66e06cc900f;hb=HEAD;hp=17982ea50e6d0ff3071f6d01f9240ede4e9ed993;hpb=e0837a17b5a497476d67237c768836e51f8a4ce7;p=bmusb diff --git a/bmusb/fake_capture.h b/bmusb/fake_capture.h index 17982ea..ea9c380 100644 --- a/bmusb/fake_capture.h +++ b/bmusb/fake_capture.h @@ -65,6 +65,21 @@ public: void stop_dequeue_thread() override; bool get_disconnected() const override { return false; } + std::set get_available_pixel_formats() const override + { + return std::set{ PixelFormat_8BitYCbCr, PixelFormat_10BitYCbCr }; + } + + void set_pixel_format(PixelFormat pixel_format) override + { + current_pixel_format = pixel_format; + } + + PixelFormat get_current_pixel_format() const + { + return current_pixel_format; + } + std::map get_available_video_modes() const override; void set_video_mode(uint32_t video_mode_id) override; uint32_t get_current_video_mode() const override { return 0; } @@ -79,9 +94,11 @@ public: private: void producer_thread_func(); - void make_tone(int32_t *out, unsigned num_stereo_samples); + void make_tone(int32_t *out, unsigned num_stereo_samples, unsigned num_channels); unsigned width, height, fps, audio_sample_frequency; + PixelFormat current_pixel_format = PixelFormat_8BitYCbCr; + int card_index; uint8_t y, cb, cr; // sin(2 * pi * f / F) and similar for cos. Used for fast sine generation.