Twitch SDK (Internal)
Classes
ivideoencoderplugin.h File Reference
#include "broadcasttypes.h"
#include "twitchsdk/core/types/errortypes.h"

Go to the source code of this file.

Classes

class  ITTVBuffer
 
class  ITTVPluginVideoEncoder
 
struct  ITTVPluginVideoEncoder::EncodeInput
 
struct  ITTVPluginVideoEncoder::EncodeOutput
 

Class Documentation

◆ ITTVPluginVideoEncoder::EncodeInput

struct ITTVPluginVideoEncoder::EncodeInput

Structure passed into EncodeFrame with details about the source data

Class Members
const uint8_t * source

source - Parameter that will hold the pointer to the surface that was passed in during the call to TTV_SubmitVideoFrame. The data pointed to will not have been modified.

uint64_t timeStamp

timeStamp - The internal timestamp of the frame being encoded. Ensure that the output frame that corresponds to the inputframe has the corresponding timestamp

const uint8_t * yuvPlanes[4]

yuvPlanes - Buffers that will contain the converted and flipped if requested image data. The pointers will correspond to the buffers of the YUV conversion requested in GetRequiredYUVFormat(). If the YUV conversion is not requested (TTV_YUV_NONE) these pointers will be null

◆ ITTVPluginVideoEncoder::EncodeOutput

struct ITTVPluginVideoEncoder::EncodeOutput

Structure passed into EncodeFrame that will receieve details about the encoded data

Class Members
ITTVBuffer * frameData

frameData - Buffer to store the output of the encoding. Do not persist this pointer, it will become invalid after EncodeFrame returns

uint64_t frameTimeStamp

frameTimeStamp - The timestamp of the input frame that this output frame corresponds to

bool isKeyFrame

isKeyFrame - Denotes if the encoded frame is a keyframe (IDR or I)