Index: media/audio/mac/audio_output_mac.cc |
diff --git a/media/audio/mac/audio_output_mac.cc b/media/audio/mac/audio_output_mac.cc |
index 8d68b2755e4517e59896fc1975ca408d5580e9f2..86810c8115bc31ebd893091d262ee724fcd84114 100644 |
--- a/media/audio/mac/audio_output_mac.cc |
+++ b/media/audio/mac/audio_output_mac.cc |
@@ -45,14 +45,14 @@ enum { |
PCMQueueOutAudioOutputStream::PCMQueueOutAudioOutputStream( |
AudioManagerMac* manager, AudioParameters params) |
- : format_(), |
- audio_queue_(NULL), |
- buffer_(), |
- source_(NULL), |
- manager_(manager), |
- silence_bytes_(0), |
- volume_(1), |
- pending_bytes_(0) { |
+ : format_(), |
+ audio_queue_(NULL), |
+ buffer_(), |
+ source_(NULL), |
+ manager_(manager), |
+ silence_bytes_(0), |
+ volume_(1), |
+ pending_bytes_(0) { |
// We must have a manager. |
DCHECK(manager_); |
// A frame is one sample across all channels. In interleaved audio the per |
@@ -68,6 +68,9 @@ PCMQueueOutAudioOutputStream::PCMQueueOutAudioOutputStream( |
format_.mBytesPerPacket = (format_.mBitsPerChannel * params.channels) / 8; |
format_.mBytesPerFrame = format_.mBytesPerPacket; |
+ packet_size_ = params.samples_per_packet * params.channels * |
scherkus (not reviewing)
2010/11/09 02:28:31
this seems to be duplicated a bit... can packet_si
Sergey Ulanov
2010/11/09 22:29:58
Done.
|
+ params.bits_per_sample / 8; |
+ |
// Silence buffer has a duration of 6ms to simulate the behavior of Windows. |
// This value is choosen by experiments and macs cannot keep up with |
// anything less than 6ms. |
@@ -87,11 +90,7 @@ void PCMQueueOutAudioOutputStream::HandleError(OSStatus err) { |
NOTREACHED() << "error code " << err; |
} |
-bool PCMQueueOutAudioOutputStream::Open(uint32 packet_size) { |
- if (0 == packet_size) { |
- // TODO(cpu) : Impelement default buffer computation. |
- return false; |
- } |
+bool PCMQueueOutAudioOutputStream::Open() { |
// Create the actual queue object and let the OS use its own thread to |
// run its CFRunLoop. |
OSStatus err = AudioQueueNewOutput(&format_, RenderCallback, this, NULL, |
@@ -102,7 +101,7 @@ bool PCMQueueOutAudioOutputStream::Open(uint32 packet_size) { |
} |
// Allocate the hardware-managed buffers. |
for (uint32 ix = 0; ix != kNumBuffers; ++ix) { |
- err = AudioQueueAllocateBuffer(audio_queue_, packet_size, &buffer_[ix]); |
+ err = AudioQueueAllocateBuffer(audio_queue_, packet_size_, &buffer_[ix]); |
if (err != noErr) { |
HandleError(err); |
return false; |