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
|
|
|
|
2025-02-14 23:50:50 -03:00
|
|
|
double lastVolume;
|
|
|
|
|
2022-02-07 02:49:27 -03:00
|
|
|
BOOL observersAdded;
|
|
|
|
|
|
|
|
Semaphore *exitAtTheEndOfTheStream;
|
2006-01-20 12:34:02 -03:00
|
|
|
}
|
2013-10-12 17:59:34 -03:00
|
|
|
@property(readonly) Semaphore *exitAtTheEndOfTheStream;
|
2022-12-10 02:17:45 -03:00
|
|
|
@property(readonly) BOOL threadExited;
|
2006-01-20 12:34:02 -03:00
|
|
|
|
2007-10-14 15:12:15 -03:00
|
|
|
- (BOOL)openWithSource:(id<CogSource>)source;
|
2022-02-07 02:49:27 -03:00
|
|
|
- (BOOL)openWithDecoder:(id<CogDecoder>)d;
|
2007-10-10 22:08:29 -04:00
|
|
|
|
2006-01-20 12:34:02 -03:00
|
|
|
- (void)process;
|
2022-02-07 02:49:27 -03:00
|
|
|
- (NSDictionary *)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
|
|
|
|
2007-10-10 22:08:29 -04:00
|
|
|
- (BOOL)setTrack:(NSURL *)track;
|
|
|
|
|
2022-02-07 02:49:27 -03:00
|
|
|
- (id<CogDecoder>)decoder;
|
2007-10-10 22:08:29 -04:00
|
|
|
|
2025-02-14 23:50:50 -03:00
|
|
|
- (void)setLastVolume:(double)v;
|
|
|
|
|
2006-01-20 12:34:02 -03:00
|
|
|
@end
|