# SpriteSource

```csharp
public class SpriteSource : StreamSource
```

Inherits [StreamSource](https://handtracking.lightbuzz.com/ui-reference/streamsource) class.

### Constructors

| Name           | Description                        |
| -------------- | ---------------------------------- |
| SpriteSource() | Creates a new SpriteSource object. |

### Properties

| Name      | Type                                                                            | Description                                                                       |
| --------- | ------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| Timestamp | DateTime                                                                        | Read-Only. Overriden. The frame timestamp.                                        |
| Width     | int                                                                             | Read-Only. Overriden. The width of the sprite texture in pixels.                  |
| Height    | int                                                                             | Read-Only. Overriden. The height of the sprite texture in pixels.                 |
| Pixels    | [UnityEngine.Color32](https://docs.unity3d.com/ScriptReference/Color32.html)\[] | Read-Only. Overriden. The pixel color data for a mipmap level as Color32 structs. |

### Example

The example shows how to manage sprite functionality with the `SpriteSource` class.

#### Create a SpriteSource

To create a `SpriteSource`, add a field for Unity to serialize.&#x20;

```csharp
[SerializeField] private SpriteSource _sprite;
```

#### Get sprite information

Get the sprite's timestamp, pixels, width and height.

```csharp
// Get sprite timestamp.
DateTime timestamp = _sprite.Timestamp;

// Get sprite pixels.
Color32[] pixels = _sprite.Pixels;

// Get sprite width.
int width = _sprite.Width;

// Get sprite height.
int height = _sprite.Height;
```
