18 #include "scanner/api/kernel.h" 19 #include "scanner/util/queue.h" 20 #include "scanner/video/video_decoder.h" 23 #include "libavcodec/avcodec.h" 24 #include "libavfilter/avfilter.h" 25 #include "libavformat/avformat.h" 26 #include "libavformat/avio.h" 27 #include "libavutil/error.h" 28 #include "libavutil/opt.h" 29 #include "libavutil/pixdesc.h" 30 #include "libswscale/swscale.h" 48 void configure(
const FrameInfo& metadata)
override;
50 bool feed(
const u8* encoded_buffer,
size_t encoded_size,
51 bool discontinuity =
false)
override;
53 bool discard_frame()
override;
55 bool get_frame(u8* decoded_buffer,
size_t decoded_size)
override;
57 int decoded_frames_buffered()
override;
59 void wait_until_frames_copied()
override;
62 void feed_packet(
bool flush);
65 DeviceType output_type_;
73 std::vector<u8> conversion_buffer_;
75 SwsContext* sws_context_;
SoftwareVideoDecoder.
Definition: software_video_decoder.h:42
VideoDecoder.
Definition: video_decoder.h:38
Definition: database.cpp:36
SoftwareVideoDecoder(i32 device_id, DeviceType output_type, i32 thread_count)
SoftwareVideoDecoder.
Definition: software_video_decoder.cpp:38
FrameInfo.
Definition: frame.h:34