---
title: NSSound
framework: appkit
role: symbol
role_heading: Class
path: appkit/nssound
---

# NSSound

A simple interface for loading and playing audio files.

## Declaration

```swift
class NSSound
```

## Overview

Overview You create a sound object with an audio file or data, which can be in any format that Core Audio supports. Customize the sound by configuring its properties, such as setting its playback volume and looping behavior. Call the sound’s play() method to begin playback. The system executes this call asynchronously so that it doesn’t interrupt the functioning of your app. If you want to play the system beep sound, use the beep() (Swift) or NSBeep (Objective-C) function.

## Topics

### Detecting When a Sound Finishes Playing

- [delegate](appkit/nssound/delegate.md)
- [NSSoundDelegate](appkit/nssounddelegate.md)

### Creating Sounds

- [canInit(with:)](appkit/nssound/caninit(with:).md)
- [init(contentsOfFile:byReference:)](appkit/nssound/init(contentsoffile:byreference:).md)
- [init(contentsOf:byReference:)](appkit/nssound/init(contentsof:byreference:).md)
- [init(data:)](appkit/nssound/init(data:).md)
- [init(pasteboard:)](appkit/nssound/init(pasteboard:).md)

### Configuring Sounds

- [name](appkit/nssound/name-swift.property.md)
- [NSSound.Name](appkit/nssound/name-swift.typealias.md)
- [setName(_:)](appkit/nssound/setname(_:).md)
- [volume](appkit/nssound/volume.md)
- [currentTime](appkit/nssound/currenttime.md)
- [loops](appkit/nssound/loops.md)
- [playbackDeviceIdentifier](appkit/nssound/playbackdeviceidentifier-swift.property.md)
- [NSSound.PlaybackDeviceIdentifier](appkit/nssound/playbackdeviceidentifier-swift.typealias.md)

### Getting Sound Information

- [soundUnfilteredTypes](appkit/nssound/soundunfilteredtypes.md)
- [init(named:)](appkit/nssound/init(named:).md)
- [duration](appkit/nssound/duration.md)

### Playing Sounds

- [beep()](appkit/nssound/beep().md)
- [isPlaying](appkit/nssound/isplaying.md)
- [pause()](appkit/nssound/pause().md)
- [play()](appkit/nssound/play().md)
- [resume()](appkit/nssound/resume().md)
- [stop()](appkit/nssound/stop().md)

### Writing Sounds

- [write(to:)](appkit/nssound/write(to:).md)

### Constants

- [NSPasteboard Type for Sound Data](appkit/nspasteboard-type-for-sound-data.md)

### Initializers

- [init(coder:)](appkit/nssound/init(coder:).md)
- [init(contentsOfURL:byReference:)](appkit/nssound/init(contentsofurl:byreference:).md)
- [init(pasteboardPropertyList:ofType:)](appkit/nssound/init(pasteboardpropertylist:oftype:).md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [Copyable](swift/copyable.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSPasteboardReading](appkit/nspasteboardreading.md)
- [NSPasteboardWriting](appkit/nspasteboardwriting.md)
- [NSSecureCoding](foundation/nssecurecoding.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [Transferable](coretransferable/transferable.md)
