/// <summary>
    /// Info String drawn at the bottom of the Preview
    /// </summary>

    public override string GetInfoString()
    {
        AVProLiveCameraUGUIComponent rawImage = target as AVProLiveCameraUGUIComponent;

        string text = string.Empty;

        if (rawImage.HasValidTexture())
        {
            text += string.Format("Video Size: {0}x{1}\n",
                                  Mathf.RoundToInt(Mathf.Abs(rawImage.mainTexture.width)),
                                  Mathf.RoundToInt(Mathf.Abs(rawImage.mainTexture.height)));
        }

        // Image size Text
        text += string.Format("Display Size: {0}x{1}",
                              Mathf.RoundToInt(Mathf.Abs(rawImage.rectTransform.rect.width)),
                              Mathf.RoundToInt(Mathf.Abs(rawImage.rectTransform.rect.height)));

        return(text);
    }
    public override bool RequiresConstantRepaint()
    {
        AVProLiveCameraUGUIComponent rawImage = target as AVProLiveCameraUGUIComponent;

        return(rawImage != null && rawImage.HasValidTexture());
    }