18 #include "scanner/api/kernel.h"    19 #include "scanner/engine/metadata.h"    20 #include "scanner/util/common.h"    21 #include "scanner/util/profiler.h"    28 enum class VideoEncoderType {
    37   i64 keyframe_distance = -1;
    44   static std::vector<VideoEncoderType> get_supported_encoder_types();
    46   static bool has_encoder_type(VideoEncoderType type);
    49                                         i32 num_devices, VideoEncoderType type);
    53   virtual void configure(
const FrameInfo& metadata,
    56   virtual bool feed(
const u8* frame_buffer, 
size_t frame_size) = 0;
    58   virtual bool flush() = 0;
    60   virtual bool get_packet(u8* decoded_buffer, 
size_t decoded_size,
    61                           size_t& actual_packet_size) = 0;
    63   virtual int decoded_packets_buffered() = 0;
    65   virtual void wait_until_packets_copied() = 0;
    67   void set_profiler(
Profiler* profiler);
 Definition: video_encoder.h:34
Definition: profiler.h:40
Definition: database.cpp:36
VideoEncoder. 
Definition: video_encoder.h:42
FrameInfo. 
Definition: frame.h:34