2006-01-20 12:34:02 -03:00
|
|
|
//
|
2006-04-02 11:44:08 -04:00
|
|
|
// InputNode.h
|
2006-01-20 12:34:02 -03:00
|
|
|
// Cog
|
|
|
|
//
|
2006-09-04 14:46:18 -04:00
|
|
|
// Created by Vincent Spader on 8/2/05.
|
|
|
|
// Copyright 2005 Vincent Spader. All rights reserved.
|
2006-01-20 12:34:02 -03:00
|
|
|
//
|
|
|
|
|
|
|
|
#import <Cocoa/Cocoa.h>
|
|
|
|
|
|
|
|
#import <AudioToolbox/AudioToolbox.h>
|
|
|
|
#import <AudioUnit/AudioUnit.h>
|
2022-02-07 02:49:27 -03:00
|
|
|
#import <CoreAudio/AudioHardware.h>
|
2006-01-20 12:34:02 -03:00
|
|
|
|
2007-02-24 17:36:27 -03:00
|
|
|
#import "AudioDecoder.h"
|
2006-01-20 12:34:02 -03:00
|
|
|
#import "Node.h"
|
2007-02-24 17:36:27 -03:00
|
|
|
#import "Plugin.h"
|
2006-01-20 12:34:02 -03:00
|
|
|
|
2013-10-12 17:52:58 -03:00
|
|
|
#define INPUT_NODE_SEEK
|
|
|
|
|
2006-01-20 12:34:02 -03:00
|
|
|
@interface InputNode : Node {
|
2007-02-24 17:36:27 -03:00
|
|
|
id<CogDecoder> decoder;
|
2022-02-07 02:49:27 -03:00
|
|
|
|
|
|
|
int bytesPerSample;
|
2007-11-24 17:16:27 -03:00
|
|
|
int bytesPerFrame;
|
2022-02-07 02:49:27 -03:00
|
|
|
BOOL floatingPoint;
|
|
|
|
BOOL swapEndian;
|
|
|
|
|
2006-04-02 16:03:12 -04:00
|
|
|
BOOL shouldSeek;
|
2007-11-24 17:16:27 -03:00
|
|
|
long seekFrame;
|
2013-10-12 17:52:58 -03:00
|
|
|
|
2022-02-07 02:49:27 -03:00
|
|
|
BOOL observersAdded;
|
|
|
|
|
|
|
|
Semaphore *exitAtTheEndOfTheStream;
|
2006-01-20 12:34:02 -03:00
|
|
|
}
|
2025-02-19 20:02:44 -03:00
|
|
|
@property(readonly) Semaphore * _Nonnull exitAtTheEndOfTheStream;
|
2022-12-10 02:17:45 -03:00
|
|
|
@property(readonly) BOOL threadExited;
|
2006-01-20 12:34:02 -03:00
|
|
|
|
2025-02-19 20:02:44 -03:00
|
|
|
- (id _Nullable)initWithController:(id _Nonnull)c previous:(id _Nullable)p;
|
|
|
|
|
|
|
|
- (BOOL)openWithSource:(id<CogSource>_Nonnull)source;
|
|
|
|
- (BOOL)openWithDecoder:(id<CogDecoder>_Nonnull)d;
|
2007-10-10 22:08:29 -04:00
|
|
|
|
2006-01-20 12:34:02 -03:00
|
|
|
- (void)process;
|
2025-02-19 20:02:44 -03:00
|
|
|
- (NSDictionary *_Nonnull)properties;
|
2007-11-24 17:16:27 -03:00
|
|
|
- (void)seek:(long)frame;
|
2006-04-02 16:03:12 -04:00
|
|
|
|
2007-03-03 14:19:37 -03:00
|
|
|
- (void)registerObservers;
|
2006-01-20 12:34:02 -03:00
|
|
|
|
2025-02-19 20:02:44 -03:00
|
|
|
- (BOOL)setTrack:(NSURL *_Nonnull)track;
|
2007-10-10 22:08:29 -04:00
|
|
|
|
2025-02-19 20:02:44 -03:00
|
|
|
- (id<CogDecoder>_Nonnull)decoder;
|
2007-10-10 22:08:29 -04:00
|
|
|
|
2006-01-20 12:34:02 -03:00
|
|
|
@end
|