---
title: "VTFrameSiloSetTimeRangesForNextPass(_:timeRangeCount:timeRangeArray:)"
framework: videotoolbox
role: symbol
role_heading: Function
path: "videotoolbox/vtframesilosettimerangesfornextpass(_:timerangecount:timerangearray:)"
---

# VTFrameSiloSetTimeRangesForNextPass(_:timeRangeCount:timeRangeArray:)

Begins a new pass of samples to be added to a frame silo object.

## Declaration

```swift
func VTFrameSiloSetTimeRangesForNextPass(_ silo: VTFrameSilo, timeRangeCount: CMItemCount, timeRangeArray: UnsafePointer<CMTimeRange>) -> OSStatus
```

## Parameters

- `silo`: The frame silo object.
- `timeRangeCount`: The count of time ranges in timeRangeArray.
- `timeRangeArray`: The array of CMTimeRange structs.

## Return Value

Return Value kVTFrameSiloInvalidTimeRangeErr if any time ranges are non-numeric, overlap, or are not in ascending order.

## Discussion

Discussion Previously added sample buffers with decode timestamps within the time ranges are deleted from the frame silo object. note: It’s not necessary to call this function before adding sample buffers for the first pass.

## See Also

### Configuring Frame Silos

- [VTFrameSiloAddSampleBuffer(_:sampleBuffer:)](videotoolbox/vtframesiloaddsamplebuffer(_:samplebuffer:).md)
- [VTFrameSiloCallBlockForEachSampleBuffer(_:in:handler:)](videotoolbox/vtframesilocallblockforeachsamplebuffer(_:in:handler:).md)
- [VTFrameSiloCallFunctionForEachSampleBuffer(_:in:refcon:callback:)](videotoolbox/vtframesilocallfunctionforeachsamplebuffer(_:in:refcon:callback:).md)
