cog/Plugins/Flac/FlacDecoder.h

62 lines
1.1 KiB
C
Raw Normal View History

2005-06-02 18:16:43 +00:00
//
// FlacFile.h
// zyVorbis
//
// Created by Vincent Spader on 1/25/05.
2005-07-02 21:02:06 +00:00
// Copyright 2005 Vincent Spader All rights reserved.
2005-06-02 18:16:43 +00:00
//
2005-06-29 15:28:20 +00:00
#import "FLAC/all.h"
#import <Cocoa/Cocoa.h>
2005-06-02 18:16:43 +00:00
#define SAMPLES_PER_WRITE 512
#define FLAC__MAX_SUPPORTED_CHANNELS 8
#define SAMPLE_blockBuffer_SIZE ((FLAC__MAX_BLOCK_SIZE + SAMPLES_PER_WRITE) * FLAC__MAX_SUPPORTED_CHANNELS * (24 / 8))
2005-06-02 18:16:43 +00:00
#import "Plugin.h"
@interface FlacDecoder : NSObject <CogDecoder> {
FLAC__StreamDecoder *decoder;
void *blockBuffer;
int blockBufferFrames;
id<CogSource> source;
BOOL endOfStream;
int bitsPerSample;
int channels;
uint32_t channelConfig;
float frequency;
long totalFrames;
long fileSize;
BOOL hasStreamInfo;
BOOL streamOpened;
BOOL abortFlag;
NSDictionary *metaDict;
NSDictionary *icyMetaDict;
NSData *albumArt;
BOOL cuesheetFound;
NSString *cuesheet;
2005-06-02 18:16:43 +00:00
}
- (void)setSource:(id<CogSource>)s;
- (id<CogSource>)source;
- (void)setEndOfStream:(BOOL)eos;
- (BOOL)endOfStream;
- (void)setSize:(long)size;
- (FLAC__StreamDecoder *)decoder;
- (char *)blockBuffer;
- (int)blockBufferFrames;
- (void)setBlockBufferFrames:(int)frames;
2005-06-02 18:16:43 +00:00
@end