From d49e2849ebdcd3943f319f03ad3423e6e05fbbd6 Mon Sep 17 00:00:00 2001 From: Thong Nguyen Date: Mon, 3 Feb 2014 17:23:53 +0000 Subject: [PATCH] Removed unnecessary synthesized properties. Made STKFrameFilterEntry public readonly. Removed AudioUnit framework requirement for iOS n podspec --- .../ExampleApp.xcodeproj/project.pbxproj | 8 +++-- .../ExampleAppMac.xcodeproj/project.pbxproj | 10 +++--- StreamingKit-head.podspec | 2 +- StreamingKit.podspec | 4 +-- StreamingKit/StreamingKit/STKAudioPlayer.h | 9 +++-- StreamingKit/StreamingKit/STKAudioPlayer.m | 35 ++++++++++++++----- 6 files changed, 48 insertions(+), 20 deletions(-) diff --git a/ExampleApp/ExampleApp.xcodeproj/project.pbxproj b/ExampleApp/ExampleApp.xcodeproj/project.pbxproj index 4248049..7a1605b 100644 --- a/ExampleApp/ExampleApp.xcodeproj/project.pbxproj +++ b/ExampleApp/ExampleApp.xcodeproj/project.pbxproj @@ -24,8 +24,9 @@ A111596C188D6C8100641365 /* sample.m4a in Resources */ = {isa = PBXBuildFile; fileRef = A111596B188D6C8100641365 /* sample.m4a */; }; A111596F188D6DB100641365 /* SampleQueueId.m in Sources */ = {isa = PBXBuildFile; fileRef = A111596E188D6DB100641365 /* SampleQueueId.m */; }; A142571D189079BE005F0129 /* airplane.aac in Resources */ = {isa = PBXBuildFile; fileRef = A142571C18907861005F0129 /* airplane.aac */; }; + A17FFB6318A0028300BAA7FF /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A17FFB6218A0028300BAA7FF /* AudioToolbox.framework */; }; + A17FFB6918A002E400BAA7FF /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1F5E491189EB3F20070B03F /* AVFoundation.framework */; }; A1EBEE64188DE34500681B04 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1EBEE63188DE34500681B04 /* SystemConfiguration.framework */; }; - A1F5E492189EB3F20070B03F /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1F5E491189EB3F20070B03F /* AVFoundation.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -62,6 +63,7 @@ A111596D188D6DB100641365 /* SampleQueueId.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SampleQueueId.h; sourceTree = ""; }; A111596E188D6DB100641365 /* SampleQueueId.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SampleQueueId.m; sourceTree = ""; }; A142571C18907861005F0129 /* airplane.aac */ = {isa = PBXFileReference; lastKnownFileType = file; path = airplane.aac; sourceTree = ""; }; + A17FFB6218A0028300BAA7FF /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; A1EBEE63188DE34500681B04 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; A1F5E48F189EB3CB0070B03F /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = System/Library/Frameworks/AudioUnit.framework; sourceTree = SDKROOT; }; A1F5E491189EB3F20070B03F /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; @@ -72,7 +74,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A1F5E492189EB3F20070B03F /* AVFoundation.framework in Frameworks */, + A17FFB6918A002E400BAA7FF /* AVFoundation.framework in Frameworks */, + A17FFB6318A0028300BAA7FF /* AudioToolbox.framework in Frameworks */, A1EBEE64188DE34500681B04 /* SystemConfiguration.framework in Frameworks */, A1115964188D691500641365 /* libStreamingKit.a in Frameworks */, A1115937188D686000641365 /* CoreGraphics.framework in Frameworks */, @@ -116,6 +119,7 @@ A1115933188D686000641365 /* Frameworks */ = { isa = PBXGroup; children = ( + A17FFB6218A0028300BAA7FF /* AudioToolbox.framework */, A1F5E491189EB3F20070B03F /* AVFoundation.framework */, A1F5E48F189EB3CB0070B03F /* AudioUnit.framework */, A1EBEE63188DE34500681B04 /* SystemConfiguration.framework */, diff --git a/ExampleAppMac/ExampleAppMac.xcodeproj/project.pbxproj b/ExampleAppMac/ExampleAppMac.xcodeproj/project.pbxproj index 16d179c..d2e7fce 100644 --- a/ExampleAppMac/ExampleAppMac.xcodeproj/project.pbxproj +++ b/ExampleAppMac/ExampleAppMac.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + A17FFB6818A002BC00BAA7FF /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1A499ED189E793700E2A2E2 /* AudioUnit.framework */; }; A1A499A5189E765800E2A2E2 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1A499A4189E765800E2A2E2 /* Cocoa.framework */; }; A1A499AF189E765800E2A2E2 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = A1A499AD189E765800E2A2E2 /* InfoPlist.strings */; }; A1A499B1189E765800E2A2E2 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = A1A499B0189E765800E2A2E2 /* main.m */; }; @@ -26,7 +27,6 @@ A1A499F9189E7A3500E2A2E2 /* libStreamingKitMac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A1A499F8189E7A3500E2A2E2 /* libStreamingKitMac.a */; }; A1A499FA189E7A5600E2A2E2 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1A499F1189E799400E2A2E2 /* AudioToolbox.framework */; }; A1A499FC189E7A6D00E2A2E2 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1A499FB189E7A6D00E2A2E2 /* SystemConfiguration.framework */; }; - A1A499FD189E7BFC00E2A2E2 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1A499ED189E793700E2A2E2 /* AudioUnit.framework */; }; A1A49A01189E82EC00E2A2E2 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1A49A00189E82EC00E2A2E2 /* QuartzCore.framework */; }; /* End PBXBuildFile section */ @@ -41,6 +41,7 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + A17FFB6618A002AD00BAA7FF /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; A1A499A1189E765800E2A2E2 /* ExampleAppMac.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ExampleAppMac.app; sourceTree = BUILT_PRODUCTS_DIR; }; A1A499A4189E765800E2A2E2 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; A1A499A7189E765800E2A2E2 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; @@ -60,12 +61,12 @@ A1A499CA189E765800E2A2E2 /* ExampleAppMacTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "ExampleAppMacTests-Info.plist"; sourceTree = ""; }; A1A499CC189E765800E2A2E2 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; A1A499CE189E765800E2A2E2 /* ExampleAppMacTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ExampleAppMacTests.m; sourceTree = ""; }; - A1A499EA189E76BD00E2A2E2 /* libStreamingKitMac.a */ = {isa = PBXFileReference; lastKnownFileType = file; name = libStreamingKitMac.a; path = ../StreamingKit/build/Debug/libStreamingKitMac.a; sourceTree = ""; }; + A1A499EA189E76BD00E2A2E2 /* libStreamingKitMac.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libStreamingKitMac.a; path = ../StreamingKit/build/Debug/libStreamingKitMac.a; sourceTree = ""; }; A1A499ED189E793700E2A2E2 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = System/Library/Frameworks/AudioUnit.framework; sourceTree = SDKROOT; }; A1A499EF189E793D00E2A2E2 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; A1A499F1189E799400E2A2E2 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; A1A499F4189E79CB00E2A2E2 /* CoreAudioKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudioKit.framework; path = System/Library/Frameworks/CoreAudioKit.framework; sourceTree = SDKROOT; }; - A1A499F8189E7A3500E2A2E2 /* libStreamingKitMac.a */ = {isa = PBXFileReference; lastKnownFileType = file; name = libStreamingKitMac.a; path = ../StreamingKit/build/Debug/libStreamingKitMac.a; sourceTree = ""; }; + A1A499F8189E7A3500E2A2E2 /* libStreamingKitMac.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libStreamingKitMac.a; path = ../StreamingKit/build/Debug/libStreamingKitMac.a; sourceTree = ""; }; A1A499FB189E7A6D00E2A2E2 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; A1A499FE189E82DD00E2A2E2 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; A1A49A00189E82EC00E2A2E2 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; @@ -76,8 +77,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + A17FFB6818A002BC00BAA7FF /* AudioUnit.framework in Frameworks */, A1A49A01189E82EC00E2A2E2 /* QuartzCore.framework in Frameworks */, - A1A499FD189E7BFC00E2A2E2 /* AudioUnit.framework in Frameworks */, A1A499FC189E7A6D00E2A2E2 /* SystemConfiguration.framework in Frameworks */, A1A499FA189E7A5600E2A2E2 /* AudioToolbox.framework in Frameworks */, A1A499F9189E7A3500E2A2E2 /* libStreamingKitMac.a in Frameworks */, @@ -124,6 +125,7 @@ A1A499A3189E765800E2A2E2 /* Frameworks */ = { isa = PBXGroup; children = ( + A17FFB6618A002AD00BAA7FF /* AVFoundation.framework */, A1A49A00189E82EC00E2A2E2 /* QuartzCore.framework */, A1A499FE189E82DD00E2A2E2 /* CoreGraphics.framework */, A1A499FB189E7A6D00E2A2E2 /* SystemConfiguration.framework */, diff --git a/StreamingKit-head.podspec b/StreamingKit-head.podspec index bcf6c6e..436d5c1 100644 --- a/StreamingKit-head.podspec +++ b/StreamingKit-head.podspec @@ -10,7 +10,7 @@ Pod::Spec.new do |s| s.requires_arc = true s.source_files = 'StreamingKit/StreamingKit/*.{h,m}' s.ios.deployment_target = '4.3' - s.ios.frameworks = 'SystemConfiguration', 'CFNetwork', 'CoreFoundation', 'AudioToolbox', 'AudioUnit' + s.ios.frameworks = 'SystemConfiguration', 'CFNetwork', 'CoreFoundation', 'AudioToolbox' s.osx.deployment_target = '10.7' s.osx.frameworks = 'SystemConfiguration', 'CFNetwork', 'CoreFoundation', 'AudioToolbox', 'AudioUnit' end diff --git a/StreamingKit.podspec b/StreamingKit.podspec index 110ee7b..577d4aa 100644 --- a/StreamingKit.podspec +++ b/StreamingKit.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "StreamingKit" - s.version = "0.1.18" + s.version = "0.1.19" s.summary = "A fast and extensible audio streamer for iOS and OSX with support for gapless playback and custom (non-HTTP) sources." s.homepage = "https://github.com/tumtumtum/StreamingKit/" s.license = 'MIT' @@ -10,7 +10,7 @@ Pod::Spec.new do |s| s.requires_arc = true s.source_files = 'StreamingKit/StreamingKit/*.{h,m}' s.ios.deployment_target = '4.3' - s.ios.frameworks = 'SystemConfiguration', 'CFNetwork', 'CoreFoundation', 'AudioToolbox', 'AudioUnit' + s.ios.frameworks = 'SystemConfiguration', 'CFNetwork', 'CoreFoundation', 'AudioToolbox' s.osx.deployment_target = '10.7' s.osx.frameworks = 'SystemConfiguration', 'CFNetwork', 'CoreFoundation', 'AudioToolbox', 'AudioUnit' end diff --git a/StreamingKit/StreamingKit/STKAudioPlayer.h b/StreamingKit/StreamingKit/STKAudioPlayer.h index e247ad4..ead1a41 100644 --- a/StreamingKit/StreamingKit/STKAudioPlayer.h +++ b/StreamingKit/StreamingKit/STKAudioPlayer.h @@ -85,6 +85,13 @@ typedef enum } STKAudioPlayerOptions; +typedef void(^STKFrameFilter)(UInt32 channelsPerFrame, UInt32 bytesPerFrame, UInt32 frameCount, void* frames); + +@interface STKFrameFilterEntry : NSObject +@property (readonly) NSString* name; +@property (readonly) STKFrameFilter filter; +@end + @class STKAudioPlayer; @protocol STKAudioPlayerDelegate @@ -108,8 +115,6 @@ STKAudioPlayerOptions; @end -typedef void(^STKFrameFilter)(UInt32 channelsPerFrame, UInt32 bytesPerFrame, UInt32 frameCount, void* frames); - @interface STKAudioPlayer : NSObject /// Gets or sets the player muted state diff --git a/StreamingKit/StreamingKit/STKAudioPlayer.m b/StreamingKit/StreamingKit/STKAudioPlayer.m index 023b418..9bf39a4 100644 --- a/StreamingKit/StreamingKit/STKAudioPlayer.m +++ b/StreamingKit/StreamingKit/STKAudioPlayer.m @@ -42,6 +42,8 @@ #import "libkern/OSAtomic.h" #import +#pragma mark Defines + #define kOutputBus 0 #define kInputBus 1 @@ -75,10 +77,12 @@ typedef enum } STKAudioPlayerInternalState; -@interface STKFrameFilterEntry : NSObject +#pragma mark STKFrameFilterEntry + +@interface STKFrameFilterEntry() { @public - const NSString* name; + NSString* name; STKFrameFilter filter; } @end @@ -94,15 +98,28 @@ STKAudioPlayerInternalState; return self; } + +-(NSString*) name +{ + return self->name; +} + +-(STKFrameFilter) filter +{ + return self->filter; +} @end +#pragma mark STKAudioPlayer + @interface STKAudioPlayer() { BOOL muted; UInt8* readBuffer; int readBufferSize; - + STKAudioPlayerInternalState internalState; + Float32 peakPowerDb[2]; Float32 averagePowerDb[2]; @@ -182,8 +199,6 @@ static void AudioFileStreamPacketsProc(void* clientData, UInt32 numberBytes, UIn } @implementation STKAudioPlayer -@synthesize delegate, internalState, state; - -(STKAudioPlayerOptions) options { @@ -264,16 +279,16 @@ static void AudioFileStreamPacketsProc(void* clientData, UInt32 numberBytes, UIn { if ([NSThread currentThread].isMainThread) { - if ([self->delegate respondsToSelector:@selector(audioPlayer:logInfo:)]) + if ([self.delegate respondsToSelector:@selector(audioPlayer:logInfo:)]) { - [self->delegate audioPlayer:self logInfo:line]; + [self.delegate audioPlayer:self logInfo:line]; } } else { - if ([self->delegate respondsToSelector:@selector(audioPlayer:logInfo:)]) + if ([self.delegate respondsToSelector:@selector(audioPlayer:logInfo:)]) { - [self->delegate audioPlayer:self logInfo:line]; + [self.delegate audioPlayer:self logInfo:line]; } } } @@ -2513,6 +2528,8 @@ static OSStatus OutputRenderCallback(void* inRefCon, AudioUnitRenderActionFlags* } } +#pragma mark Frame Filters + -(NSArray*) frameFilters { return frameFilters;