---
title: AudioFileResource
framework: realitykit
role: symbol
role_heading: Class
path: realitykit/audiofileresource
---

# AudioFileResource

An audio resource that you load from a file or from a URL.

## Declaration

```swift
@MainActor @preconcurrency class AudioFileResource
```

## Overview

Overview Load an audio file resource, like an audio file stored in .aiff or other format, by calling one of the load functions. Use the resource to create an AudioPlaybackController instance by calling an entity’s prepareAudio(_:) or playAudio(_:) function. The controller plays the audio from the location in space of the entity that created the controller.

## Topics

### Loading audio from a bundle

- [init(named:from:in:)](realitykit/audiofileresource/init(named:from:in:).md)
- [init(named:in:configuration:)](realitykit/audiofileresource/init(named:in:configuration:).md)

### Loading audio from a URL

- [init(contentsOf:withName:configuration:)](realitykit/audiofileresource/init(contentsof:withname:configuration:).md)

### Describing the resource

- [configuration](realitykit/audiofileresource/configuration-swift.property.md)
- [duration](realitykit/audiofileresource/duration.md)
- [name](realitykit/audiofileresource/name.md)

### Supporting types

- [AudioFileResource.Configuration](realitykit/audiofileresource/configuration-swift.struct.md)
- [AudioFileResource.LoadingStrategy](realitykit/audiofileresource/loadingstrategy-swift.enum.md)

### Deprecated

- [load(named:in:inputMode:loadingStrategy:shouldLoop:)](realitykit/audiofileresource/load(named:in:inputmode:loadingstrategy:shouldloop:).md)
- [loadAsync(named:in:inputMode:loadingStrategy:shouldLoop:)](realitykit/audiofileresource/loadasync(named:in:inputmode:loadingstrategy:shouldloop:).md)
- [load(contentsOf:withName:inputMode:loadingStrategy:shouldLoop:)](realitykit/audiofileresource/load(contentsof:withname:inputmode:loadingstrategy:shouldloop:).md)
- [loadAsync(contentsOf:withName:inputMode:loadingStrategy:shouldLoop:)](realitykit/audiofileresource/loadasync(contentsof:withname:inputmode:loadingstrategy:shouldloop:).md)
- [loadingStrategy](realitykit/audiofileresource/loadingstrategy-swift.property.md)
- [shouldLoop](realitykit/audiofileresource/shouldloop.md)

### Creating an audio resource

- [init(from:configuration:)](realitykit/audiofileresource/init(from:configuration:).md)

### Operators

- [==(_:_:)](realitykit/audiofileresource/==(_:_:).md)

### Type Methods

- [load(contentsOf:withName:configuration:)](realitykit/audiofileresource/load(contentsof:withname:configuration:).md)
- [load(named:from:in:)](realitykit/audiofileresource/load(named:from:in:).md)
- [load(named:in:configuration:)](realitykit/audiofileresource/load(named:in:configuration:).md)

## Relationships

### Inherits From

- [AudioResource](realitykit/audioresource.md)

### Conforms To

- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [Resource](realitykit/resource.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Audio resources

- [AudioFileGroupResource](realitykit/audiofilegroupresource.md)
- [AudioBufferResource](realitykit/audiobufferresource.md)
- [AudioLibraryComponent](realitykit/audiolibrarycomponent.md)
- [AudioResource](realitykit/audioresource.md)
- [AudioResource.Calibration](realitykit/audioresource/calibration.md)
- [AudioResource.Normalization](realitykit/audioresource/normalization.md)
