# MediaReference

> What a clip draws its pictures from.

Symbols in this group are spelled `otio_media_reference_…`. An SDK drops that prefix.

## `available_image_bounds`

`otio_media_reference_available_image_bounds` · getter · may answer nothing

Returns the image bounds a reference says its media has.

```c
OtioStatus otio_media_reference_available_image_bounds(
    const OtioDocument *source,
    OtioNode node_handle,
    OtioBox2d *out_bounds,
    OtioBuffer *out_error);
```

| Parameter | Type | Role |
| --- | --- | --- |
| `source` (optional) | `document` | document in |
| `node_handle` | `node` | receiver |
| `out_bounds` | `OtioBox2d` | output |
| `out_error` | `text` | error |

## `available_range`

`otio_media_reference_available_range` · getter · may answer nothing

Returns the span of media a reference says is available.

Reports `OTIO_STATUS_NO_VALUE` for a reference that does not say.

```c
OtioStatus otio_media_reference_available_range(
    const OtioDocument *source,
    OtioNode node_handle,
    OtioTimeRange *out_range,
    OtioBuffer *out_error);
```

| Parameter | Type | Role |
| --- | --- | --- |
| `source` (optional) | `document` | document in |
| `node_handle` | `node` | receiver |
| `out_range` | `OtioTimeRange` | output |
| `out_error` | `text` | error |

## `clear_available_image_bounds`

`otio_media_reference_clear_available_image_bounds` · clearer

Clears the image bounds a reference says its media has.

```c
OtioStatus otio_media_reference_clear_available_image_bounds(
    OtioDocument *target,
    OtioNode node_handle,
    OtioBuffer *out_error);
```

| Parameter | Type | Role |
| --- | --- | --- |
| `target` | `document` | document mut |
| `node_handle` | `node` | receiver |
| `out_error` | `text` | error |

## `clear_available_range`

`otio_media_reference_clear_available_range` · clearer

Clears the span of media a reference says is available.

```c
OtioStatus otio_media_reference_clear_available_range(
    OtioDocument *target,
    OtioNode node_handle,
    OtioBuffer *out_error);
```

| Parameter | Type | Role |
| --- | --- | --- |
| `target` | `document` | document mut |
| `node_handle` | `node` | receiver |
| `out_error` | `text` | error |

## `set_available_image_bounds`

`otio_media_reference_set_available_image_bounds` · setter

Sets the image bounds a reference says its media has.

```c
OtioStatus otio_media_reference_set_available_image_bounds(
    OtioDocument *target,
    OtioNode node_handle,
    OtioBox2d bounds,
    OtioBuffer *out_error);
```

| Parameter | Type | Role |
| --- | --- | --- |
| `target` | `document` | document mut |
| `node_handle` | `node` | receiver |
| `bounds` | `OtioBox2d` | input |
| `out_error` | `text` | error |

## `set_available_range`

`otio_media_reference_set_available_range` · setter

Sets the span of media a reference says is available.

```c
OtioStatus otio_media_reference_set_available_range(
    OtioDocument *target,
    OtioNode node_handle,
    OtioTimeRange range,
    OtioBuffer *out_error);
```

| Parameter | Type | Role |
| --- | --- | --- |
| `target` | `document` | document mut |
| `node_handle` | `node` | receiver |
| `range` | `OtioTimeRange` | input |
| `out_error` | `text` | error |

---

Page: https://otio-rust-docs.vercel.app/reference/media-reference/
