private MLResult InternalGetThumbnail(long entryId, out Texture2D imageThumbnail)
        {
            imageThumbnail = null;

            if (!_watchHistory.ContainsKey(entryId))
            {
                return(MLResult.Create(MLResult.Code.InvalidParam, "Unknown entry Id"));
            }

            var thumbnail = new MLImageNativeBindings.MLImageNative();

            MLResult.Code resultCode = MLScreensNativeBindings.MLScreensGetWatchHistoryThumbnail(entryId, ref thumbnail);
            var           result     = MLResult.Create(resultCode);

            if (!result.IsOk)
            {
                return(result);
            }

            imageThumbnail =
                new Texture2D((int)thumbnail.Width,
                              (int)thumbnail.Height,
                              TextureFormat.RGB24,
                              false,
                              true);

            imageThumbnail.LoadRawTextureData(thumbnail.Image,
                                              (int)(thumbnail.Height * thumbnail.Width) * RGBBytesPerPixel);
            resultCode = MLScreensNativeBindings.MLScreensReleaseWatchHistoryThumbnail(ref thumbnail);
            result     = MLResult.Create(resultCode);
            return(result);
        }