![]() |
Intel® Collaboration Suite for WebRTC
version 4.3.1
Open WebRTC Toolkit (OWT) Client SDK for Windows*
|
Video encoder interface. More...
#include <owt/base/videoencoderinterface.h>
Public Member Functions | |
virtual | ~VideoEncoderInterface () |
Destructor. | |
virtual bool | InitEncoderContext (Resolution &resolution, uint32_t fps, uint32_t bitrate_kbps, VideoCodec video_codec)=0 |
Initialize the customized video encoder. More... | |
virtual bool | EncodeOneFrame (std::vector< uint8_t > &buffer, bool key_frame)=0 |
Retrieve byte buffer from encoder that holds one complete frame. More... | |
virtual bool | Release ()=0 |
Release the resources that current encoder holds. More... | |
virtual VideoEncoderInterface * | Copy ()=0 |
Duplicate the VideoEncoderInterface instance. More... | |
Video encoder interface.
Internal webrtc encoder will request from this interface when it needs one complete encoded frame.
|
pure virtual |
Duplicate the VideoEncoderInterface instance.
|
pure virtual |
Retrieve byte buffer from encoder that holds one complete frame.
The buffer is provided by caller and EncodedOneFrame implementation should copy encoded data to this buffer. After return, the caller owns the buffer and VideoEncoderInterface implementation should not assume the buffer valid.
buffer | Output buffer that holds the encoded data. |
key_frame | Indicates whether we're requesting an AU representing an key frame. |
|
pure virtual |
Initialize the customized video encoder.
resolution | Resolution of frame to be encoded. |
fps | Estimated frame rate expected. |
bitrate_kbps | bitrate in kbps the caller expect the encoder to output at current resolution and frame rate. |
video_codec | codec type requested. |
|
pure virtual |
Release the resources that current encoder holds.