Files
crossdesk/src/media/video/decode/video_decoder.h

32 lines
585 B
C++

/*
* @Author: DI JUNKUN
* @Date: 2023-11-24
* Copyright (c) 2023 by DI JUNKUN, All Rights Reserved.
*/
#ifndef _VIDEO_DECODER_H_
#define _VIDEO_DECODER_H_
#include <cstddef>
#include <cstdint>
#include <cstdio>
#include <functional>
#include <string>
#include "video_frame.h"
class VideoDecoder {
public:
virtual int Init() = 0;
virtual int Decode(
const uint8_t *data, size_t size,
std::function<void(VideoFrame)> on_receive_decoded_frame) = 0;
virtual std::string GetDecoderName() = 0;
VideoDecoder() = default;
virtual ~VideoDecoder() {}
};
#endif