forked from sbooth/SFBAudioEngine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSFBAudioDecoder+Internal.h
46 lines (36 loc) · 1.45 KB
/
SFBAudioDecoder+Internal.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
40
41
42
43
44
45
46
//
// Copyright (c) 2006-2024 Stephen F. Booth <[email protected]>
// Part of https://github.com/sbooth/SFBAudioEngine
// MIT license
//
#import <os/log.h>
#import "SFBAudioDecoder.h"
#import "SFBTernaryTruthValue.h"
NS_ASSUME_NONNULL_BEGIN
extern os_log_t gSFBAudioDecoderLog;
@interface SFBAudioDecoder ()
{
@package
SFBInputSource *_inputSource;
@protected
AVAudioFormat *_sourceFormat;
AVAudioFormat *_processingFormat;
NSDictionary *_properties;
}
/// Returns the decoder name
@property (class, nonatomic, readonly) SFBAudioDecoderName decoderName;
/// Tests whether a seekable input source contains data in a supported format
/// - parameter inputSource: The input source containing the data to test
/// - parameter formatIsSupported: On return indicates whether the data in `inputSource` is a supported format
/// - parameter error: An optional pointer to an `NSError` object to receive error information
/// - returns: `YES` if the test was successfully performed, `NO` otherwise
+ (BOOL)testInputSource:(SFBInputSource *)inputSource formatIsSupported:(SFBTernaryTruthValue *)formatIsSupported error:(NSError **)error;
@end
#pragma mark - Subclass Registration
@interface SFBAudioDecoder (SFBAudioDecoderSubclassRegistration)
/// Register a subclass with the default priority (`0`)
+ (void)registerSubclass:(Class)subclass;
/// Register a subclass with the specified priority
+ (void)registerSubclass:(Class)subclass priority:(int)priority;
@end
NS_ASSUME_NONNULL_END