forked from sbooth/SFBAudioEngine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSFBDSDPCMDecoder.h
39 lines (31 loc) · 1.87 KB
/
SFBDSDPCMDecoder.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//
// Copyright (c) 2018-2024 Stephen F. Booth <me@sbooth.org>
// Part of https://github.com/sbooth/SFBAudioEngine
// MIT license
//
#import <SFBAudioEngine/SFBPCMDecoding.h>
#import <SFBAudioEngine/SFBDSDDecoding.h>
NS_ASSUME_NONNULL_BEGIN
/// A wrapper around a DSD decoder supporting DSD64 to PCM conversion
NS_SWIFT_NAME(DSDPCMDecoder) @interface SFBDSDPCMDecoder : NSObject <SFBPCMDecoding>
+ (instancetype)new NS_UNAVAILABLE;
- (instancetype)init NS_UNAVAILABLE;
/// Returns an initialized `SFBDSDPCMDecoder` object for the given URL or `nil` on failure
/// - parameter url: The URL
/// - parameter error: An optional pointer to an `NSError` object to receive error information
/// - returns: An initialized `SFBDSDPCMDecoder` object for the specified URL, or `nil` on failure
- (nullable instancetype)initWithURL:(NSURL *)url error:(NSError **)error;
/// Returns an initialized `SFBDSDPCMDecoder` object for the given input source or `nil` on failure
/// - parameter inputSource: The input source
/// - parameter error: An optional pointer to an `NSError` object to receive error information
/// - returns: An initialized `SFBDSDPCMDecoder` object for the specified input source, or `nil` on failure
- (nullable instancetype)initWithInputSource:(SFBInputSource *)inputSource error:(NSError **)error;
/// Returns an initialized `SFBDSDPCMDecoder` object for the given decoder or `nil` on failure
/// - parameter decoder: The decoder
/// - parameter error: An optional pointer to an `NSError` object to receive error information
/// - returns: An initialized `SFBDSDPCMDecoder` object for the specified decoder, or `nil` on failure
- (nullable instancetype)initWithDecoder:(id <SFBDSDDecoding>)decoder error:(NSError **)error NS_DESIGNATED_INITIALIZER;
/// The linear gain applied to the converted DSD samples (default is 6 dBFS)
@property (nonatomic) float linearGain;
@end
NS_ASSUME_NONNULL_END