NSSound
NSSound
класс обеспечивает простой интерфейс для загрузки и игры аудиофайлов. Этот класс поддерживает то же аудиокодирование и форматы файлов, поддерживающиеся Core Audio и QuickTime.
Для использования этого класса инициализируйте новый экземпляр с желаемым файлом или аудиоданными. Можно сконфигурировать различные аспекты воспроизведения аудио, включая объем и ли звуковые циклы перед игрой его. В зависимости от типа аудиоданных этот класс может использовать или Core Audio или QuickTime для обработки фактического воспроизведения. (Как правило, это использует Core Audio для игры файлов в AIFF, WAVE, Затем, SD2, AU и форматы MP3 и может использовать его для других форматов в будущем также.) Воспроизведение происходит асинхронно так, чтобы Ваше приложение могло продолжать выполнять работу.
Необходимо сохранить NSSound
объекты прежде, чем инициировать воспроизведение или удостоверяются, что у Вас есть сильная ссылка им в собравшей «мусор» среде. На освобождение звуковой объект останавливает воспроизведение звука (по мере необходимости) так, чтобы это могло высвободить соответствующие аудио ресурсы. Если Вы хотите освободить звуковой объект сразу после воспроизведения, присвоить делегата и использовать sound:didFinishPlaying:
метод для освобождения его.
Если Вы хотите играть системный звук звукового сигнала, используйте NSBeep
функция.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSCopying
-
NSObjectProtocol
-
NSPasteboardReading
-
NSPasteboardWriting
-
Печатаемый
-
NSCoding
-
NSCopying
-
NSObject
-
NSPasteboardReading
-
NSPasteboardWriting
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Указывает, может ли получатель создать экземпляр себя от данных в области монтажа.
Объявление
Swift
class func canInitWithPasteboard(_
pasteboard
: NSPasteboard) -> BoolObjective C
+ (BOOL)canInitWithPasteboard:(NSPasteboard *)
pasteboard
Параметры
pasteboard
Область монтажа, содержащая звуковые данные.
Возвращаемое значение
YES
true
когда получатель может обработать данные, представленныеpasteboard
;NO
false
иначе.Обсуждение
soundUnfilteredPasteboardTypes
метод используется, чтобы узнать, может ли класс обработать данные вpasteboard
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует получатель с аудиоданные, расположенные в данном filepath.
Объявление
Swift
init?(contentsOfFile
filepath
: String, byReferencebyRef
: Bool)Objective C
- (instancetype)initWithContentsOfFile:(NSString *)
filepath
byReference:(BOOL)byRef
Параметры
filepath
Путь к звуковому файлу, с которым должен быть инициализирован получатель.
byRef
Когда
YES
true
только имя звука сохраненоNSSound
экземпляр, когда заархивировано с помощьюencodeWithCoder:
; иначе аудиоданные архивируются вместе с экземпляром.Возвращаемое значение
Инициализированный
NSSound
экземпляр.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует получатель с аудиоданными, расположенными в данном URL.
Объявление
Swift
init?(contentsOfURL
fileUrl
: NSURL, byReferencebyRef
: Bool)Objective C
- (instancetype)initWithContentsOfURL:(NSURL *)
fileUrl
byReference:(BOOL)byRef
Параметры
fileUrl
URL к звуковому файлу, с которым должен быть инициализирован получатель.
byRef
Когда
YES
true
только имя звука сохраненоNSSound
экземпляр, когда заархивировано с помощьюencodeWithCoder:
; иначе аудиоданные архивируются вместе с экземпляром.Возвращаемое значение
Инициализированный
NSSound
экземпляр.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует получатель с данными аудиоданными.
Объявление
Swift
init?(data
audioData
: NSData)Objective C
- (instancetype)initWithData:(NSData *)
audioData
Параметры
audioData
Аудиоданные, с которыми должен быть инициализирован получатель. Данные должны иметь надлежащее магическое число, звуковой заголовок и данные для форматов
NSSound
поддержки класса.Возвращаемое значение
Инициализированный
NSSound
экземпляр.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует получатель с данными от области монтажа. Область монтажа должна содержать тип, возвращенный
soundUnfilteredPasteboardTypes
.NSSound
ожидает, что данные будут иметь надлежащее магическое число, звуковой заголовок и данные для форматов, которые это поддерживает.Объявление
Swift
init?(pasteboard
pasteboard
: NSPasteboard)Objective C
- (instancetype)initWithPasteboard:(NSPasteboard *)
pasteboard
Параметры
pasteboard
Область монтажа, содержащая аудиоданные, с которыми должен быть инициализирован получатель. Область монтажа должна содержать тип, возвращенный
soundUnfilteredPasteboardTypes
. Содержавшие данные должны иметь надлежащее магическое число, звуковой заголовок и данные для форматовNSSound
поддержки класса.Возвращаемое значение
Инициализированный
NSSound
экземпляр.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает имя, присвоенное получателю.
Возвращаемое значение
Имя присвоилось к получателю;
nil
когда не было присвоено никакое имя.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Регистрирует получатель под именем.
Объявление
Swift
func setName(_
soundName
: String?) -> BoolObjective C
- (BOOL)setName:(NSString *)
soundName
Параметры
soundName
Имя для присвоения получателя. Имя должно быть не использовано другим
NSSound
экземпляры.Возвращаемое значение
YES
true
когда успешный;NO
false
иначе.Обсуждение
Если получатель уже регистрируется под другим именем, этот метод сначала не регистрирует предшествующее имя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Обеспечивает объем получателя.
Объявление
Swift
var volume: Float
Objective C
@property float volume
Возвращаемое значение
Объем получателя.
Обсуждение
Допустимый диапазон между 0,0 и 1.0.
Этот метод не влияет на объем в масштабе всей системы.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает объем получателя.
Объявление
Swift
var volume: Float
Objective C
@property float volume
Параметры
volume
Объем, в котором должен играть получатель.
Обсуждение
Допустимый диапазон между 0,0 и 1.0.
Этот метод не влияет на объем в масштабе всей системы.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Обеспечивает прогресс воспроизведения получателя в секундах.
Возвращаемое значение
В секундах развивается воспроизведение получателя.
Обсуждение
Звуки запускаются с
currentTime == 0
и конец сcurrentTime == ([<sound> duration] - 1)
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает прогресс воспроизведения получателей в секундах.
Параметры
currentTime
Прогресс воспроизведения для получателя.
Обсуждение
Это свойство не архивируется, копируется или сохранено на области монтажа.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает, перезапускает ли получатель воспроизведение, когда это достигает конца своего содержания. Значение по умолчанию:
NO
false
.Объявление
Swift
var loops: Bool
Objective C
@property BOOL loops
Возвращаемое значение
YES
true
когда получатель перезапускает воспроизведение, когда это заканчивается,NO
false
иначе.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает, перезапускает ли получатель воспроизведение, когда это достигает конца своего содержания.
Объявление
Swift
var loops: Bool
Objective C
@property BOOL loops
Параметры
Term
YES
true
для имения получателя перезапускают воспроизведение, когда это достигает конца своего содержания.NO
false
для имения получателя завершают воспроизведение, вместо этого.Обсуждение
Когда
loops
YES
true
, получатель не отправляетsound:didFinishPlaying:
его делегату, когда это достигает конца своего содержания и перезапускает воспроизведение.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Идентифицирует устройство вывода получателя.
Объявление
Swift
var playbackDeviceIdentifier: String?
Objective C
@property(copy) NSString *playbackDeviceIdentifier
Возвращаемое значение
Уникальный идентификатор устройства звукового вывода.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает устройство вывода получателя.
Объявление
Swift
var playbackDeviceIdentifier: String?
Objective C
@property(copy) NSString *playbackDeviceIdentifier
Параметры
playbackDeviceIdentifier
Уникальный идентификатор устройства звукового вывода.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
channelMapping - channelMapping
(OS X v10.9)Обеспечивает карту канала получателя.
Объявление
Objective C
- (NSArray *)channelMapping
Возвращаемое значение
Аудио получателя образовывает канал к отображениям канала устройства.
Обсуждение
Карта канала коррелирует каналы звука к каналы устройства вывода. Например, звук с двумя каналами, играемый на устройстве с пятью каналами, должен иметь карту канала для оптимизации играющего звук опыта. Карта по умолчанию, коррелирует первый звуковой канал к первому каналу вывода, второй звуковой канал к второму каналу вывода, и т.д.
Для получения дополнительной информации о картах канала, см. Обзор Core Audio> “Общие задачи в OS X”.
Оператор импорта
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
См. также
-
setChannelMapping: - setChannelMapping:
(OS X v10.9)Указывает карту канала получателя.
Объявление
Objective C
- (void)setChannelMapping:(NSArray *)
channelMapping
Параметры
channelMapping
Звуковой канал — к — отображения канала устройства для получателя.
Оператор импорта
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
См. также
-
Возвращает делегата получателя.
Объявление
Swift
unowned(unsafe) var delegate: NSSoundDelegate?
Objective C
@property(assign) id<NSSoundDelegate> delegate
Возвращаемое значение
Делегат получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Установите делегата получателя.
Объявление
Swift
unowned(unsafe) var delegate: NSSoundDelegate?
Objective C
@property(assign) id<NSSoundDelegate> delegate
Параметры
delegate
Объект служить делегатом получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Обеспечивает типы файлов
NSSound
класс понимает.Объявление
Swift
class func soundUnfilteredTypes() -> [AnyObject]
Objective C
+ (NSArray *)soundUnfilteredTypes
Возвращаемое значение
Массив UTIs идентификация типов файлов
NSSound
класс понимает.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Возвраты
NSSound
экземпляр связался с именем.Объявление
Swift
init?(named
soundName
: String) -> NSSoundObjective C
+ (NSSound *)soundNamed:(NSString *)
soundName
Параметры
soundName
Имя, идентифицирующее звуковые данные.
Возвращаемое значение
NSSound
экземпляр, инициализированный со звуковыми данными, идентифицированнымиsoundName
.Обсуждение
Возвращенный объект может быть одним из следующего:
Один это было присвоено имя с
setName:
Одна из именованной системы звучит предоставленной платформой Набора Приложения
Если существует не известно
NSSound
объект сsoundName
, этот метод пытается создать один путем поиска звуковых файлов в основном пакете приложения (см.NSBundle
для описания того, как содержание пакета ищется). Если никакой звуковой файл не может быть расположен в приложении основной пакет, следующие каталоги ищутся в порядке:~/Library/Sounds
/Library/Sounds
/Network/Library/Sounds
/System/Library/Sounds
Если никакие данные не могут быть найдены для
soundName
, никакой объект не создается, иnil
возвращается.Предпочтительный способ определить местоположение звука состоит в том, чтобы передать имя без расширения файла. См. описание класса для списка поддерживаемых расширений звукового файла.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Обеспечивает продолжительность получателя в секундах.
Объявление
Swift
var duration: NSTimeInterval { get }
Objective C
@property(readonly) NSTimeInterval duration
Возвращаемое значение
Продолжительность получателя в секундах.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
isPlaying - isPlaying
Доступный в OS X v10.0 через OS X v10.9Указывает, играет ли получатель свои аудиоданные.
Объявление
Objective C
- (BOOL)isPlaying
Возвращаемое значение
YES
true
когда получатель играет свои аудиоданные,NO
false
иначе.Оператор импорта
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 через OS X v10.9.
-
Воспроизведение аудио пауз.
Объявление
Swift
func pause() -> Bool
Objective C
- (BOOL)pause
Возвращаемое значение
YES
true
когда воспроизведение приостанавливается успешно,NO
false
когда ошибка произошла, когда воспроизведение уже приостанавливается или.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Инициирует воспроизведение аудио.
Объявление
Swift
func play() -> Bool
Objective C
- (BOOL)play
Возвращаемое значение
YES
true
когда воспроизведение инициируется,NO
false
когда ошибка произошла, когда воспроизведение уже происходит или.Обсуждение
Этот метод инициирует воспроизведение асинхронно и возвращает управление Вашему приложению. В то время как аудио играет, Поэтому Ваше приложение может продолжать выполнять работу.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Воспроизведение аудио резюме.
Объявление
Swift
func resume() -> Bool
Objective C
- (BOOL)resume
Возвращаемое значение
YES
true
когда воспроизведение возобновляется,NO
false
когда ошибка произошла, когда воспроизведение происходит или.Обсуждение
Предполагает, что получатель был ранее приостановлен путем отправки его
pause
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Завершает воспроизведение аудио.
Объявление
Swift
func stop() -> Bool
Objective C
- (BOOL)stop
Возвращаемое значение
YES
true
когда воспроизведение завершено успешно или если оно приостанавливается,NO
false
иначе.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– sound:didFinishPlaying:
(NSSoundDelegate)
-
Пишут данные получателя в область монтажа.
Объявление
Swift
func writeToPasteboard(_
pasteboard
: NSPasteboard)Objective C
- (void)writeToPasteboard:(NSPasteboard *)
pasteboard
Параметры
pasteboard
Область монтажа, в которую получатель должен записать свои данные.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
soundUnfilteredFileTypes + soundUnfilteredFileTypes
(OS X v10.5)Обеспечивает список типов файлов
NSSound
класс понимает.Оператор осуждения
Использовать
soundUnfilteredTypes
.Объявление
Objective C
+ (NSArray *)soundUnfilteredFileTypes
Возвращаемое значение
Массив строк, представляющих типы файлов
NSSound
класс понимает.Обсуждение
Возвращенный массив может быть передан непосредственно
runModalForTypes:
методNSOpenPanel
класс.Оператор импорта
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
Обеспечивает список типов области монтажа что
NSSound
класс может принять.Оператор осуждения
Использовать
soundUnfilteredTypes
.Объявление
Objective C
+ (NSArray *)soundUnfilteredPasteboardTypes
Возвращаемое значение
Массив типов области монтажа, что
NSSound
класс может принять.Оператор импорта
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.