void Init()
{
	for (unsigned int i = 0; i < NUM_ENCODING_PROGRAMS; i++)
	{
		s_encodingPrograms[i] = NULL;
		s_encodingProgramsFailed[i] = false;
	}
	for (unsigned int i = 0; i < NUM_TRANSFORM_BUFFERS; i++)
	{
		TrnBuffers[i].FBTexture = NULL;
		TrnBuffers[i].RenderSurface = NULL;
		TrnBuffers[i].ReadSurface = NULL;
		TrnBuffers[i].Width = 0;
		TrnBuffers[i].Height = 0;
	}
	CreateRgbToYuyvProgram();
	CreateYuyvToRgbProgram();
}
void Init()
{
	CreateRgbToYuyvProgram();
	CreateYuyvToRgbProgram();
	xfreadBuffers = 0;
	WorkingBuffers = 0;
	for (unsigned int i = 0; i < NUM_ENCODING_PROGRAMS; i++)
	{
		s_encodingPrograms[i] = nullptr;
		s_encodingProgramsFailed[i] = false;
	}
	for (unsigned int i = 0; i < NUM_TRANSFORM_BUFFERS; i++)
	{
		TrnBuffers[i].Clear();
	}
	for (unsigned int i = 0; i < NUM_XFBREAD_BUFFER; i++)
	{
		XReadBuffers[i].Clear();
	}
}