diff options
Diffstat (limited to 'macosx/HBAudio.m')
-rw-r--r-- | macosx/HBAudio.m | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/macosx/HBAudio.m b/macosx/HBAudio.m index 3be645456..721e104ba 100644 --- a/macosx/HBAudio.m +++ b/macosx/HBAudio.m @@ -325,7 +325,7 @@ static NSMutableArray *masterBitRateArray = nil; return; } -- (void) updateBitRates +- (void) updateBitRates: (BOOL) shouldSetDefault { NSMutableArray *permittedBitRates = [NSMutableArray array]; @@ -391,7 +391,9 @@ static NSMutableArray *masterBitRateArray = nil; [self setBitRates: permittedBitRates]; // Select the proper one - [self setBitRateFromName: defaultBitRate]; + if (YES == shouldSetDefault) { + [self setBitRateFromName: defaultBitRate]; + } if (nil == [self bitRate] || NO == [permittedBitRates containsObject: [self bitRate]]) { [self setBitRate: [permittedBitRates lastObject]]; @@ -464,7 +466,7 @@ static NSMutableArray *masterBitRateArray = nil; [codec release]; codec = aValue; [self updateMixdowns]; - [self updateBitRates]; + [self updateBitRates: YES]; } return; } @@ -476,12 +478,24 @@ static NSMutableArray *masterBitRateArray = nil; [aValue retain]; [mixdown release]; mixdown = aValue; - [self updateBitRates]; + [self updateBitRates: YES]; [[NSNotificationCenter defaultCenter] postNotificationName: HBMixdownChangedNotification object: self]; } return; } +- (void) setSampleRate: (NSDictionary *) aValue + +{ + if ((nil != aValue || nil != sampleRate) && NO == [aValue isEqual: sampleRate]) { + [aValue retain]; + [sampleRate release]; + sampleRate = aValue; + [self updateBitRates: NO]; + } + return; +} + - (NSArray *) tracks { return [controller masterTrackArray]; } - (NSArray *) sampleRates { return masterSampleRateArray; } |