Index: webrtc/modules/utility/source/file_player_impl.cc |
diff --git a/webrtc/modules/utility/source/file_player_impl.cc b/webrtc/modules/utility/source/file_player_impl.cc |
index e783a7eca888ced0efd74da6e091a6fd1e267f73..6608ce90cbdf3bebaf5593b642d11c9ecab24684 100644 |
--- a/webrtc/modules/utility/source/file_player_impl.cc |
+++ b/webrtc/modules/utility/source/file_player_impl.cc |
@@ -13,27 +13,24 @@ |
namespace webrtc { |
FilePlayer* FilePlayer::CreateFilePlayer(uint32_t instanceID, |
- FileFormats fileFormat) |
-{ |
- switch(fileFormat) |
- { |
+ FileFormats fileFormat) { |
+ switch (fileFormat) { |
case kFileFormatWavFile: |
case kFileFormatCompressedFile: |
case kFileFormatPreencodedFile: |
case kFileFormatPcm16kHzFile: |
case kFileFormatPcm8kHzFile: |
case kFileFormatPcm32kHzFile: |
- // audio formats |
- return new FilePlayerImpl(instanceID, fileFormat); |
+ // audio formats |
+ return new FilePlayerImpl(instanceID, fileFormat); |
default: |
- assert(false); |
- return NULL; |
- } |
+ assert(false); |
+ return NULL; |
+ } |
} |
-void FilePlayer::DestroyFilePlayer(FilePlayer* player) |
-{ |
- delete player; |
+void FilePlayer::DestroyFilePlayer(FilePlayer* player) { |
+ delete player; |
} |
FilePlayerImpl::FilePlayerImpl(const uint32_t instanceID, |
@@ -47,158 +44,125 @@ FilePlayerImpl::FilePlayerImpl(const uint32_t instanceID, |
_numberOf10MsPerFrame(0), |
_numberOf10MsInDecoder(0), |
_resampler(), |
- _scaling(1.0) |
-{ |
- _codec.plfreq = 0; |
+ _scaling(1.0) { |
+ _codec.plfreq = 0; |
} |
-FilePlayerImpl::~FilePlayerImpl() |
-{ |
- MediaFile::DestroyMediaFile(&_fileModule); |
+FilePlayerImpl::~FilePlayerImpl() { |
+ MediaFile::DestroyMediaFile(&_fileModule); |
} |
-int32_t FilePlayerImpl::Frequency() const |
-{ |
- if(_codec.plfreq == 0) |
- { |
- return -1; |
- } |
- // Make sure that sample rate is 8,16 or 32 kHz. E.g. WAVE files may have |
- // other sampling rates. |
- if(_codec.plfreq == 11000) |
- { |
- return 16000; |
- } |
- else if(_codec.plfreq == 22000) |
- { |
- return 32000; |
- } |
- else if(_codec.plfreq == 44000) |
- { |
- return 32000; |
- } |
- else if(_codec.plfreq == 48000) |
- { |
- return 32000; |
- } |
- else |
- { |
- return _codec.plfreq; |
- } |
+int32_t FilePlayerImpl::Frequency() const { |
+ if (_codec.plfreq == 0) { |
+ return -1; |
+ } |
+ // Make sure that sample rate is 8,16 or 32 kHz. E.g. WAVE files may have |
+ // other sampling rates. |
+ if (_codec.plfreq == 11000) { |
+ return 16000; |
+ } else if (_codec.plfreq == 22000) { |
+ return 32000; |
+ } else if (_codec.plfreq == 44000) { |
+ return 32000; |
+ } else if (_codec.plfreq == 48000) { |
+ return 32000; |
+ } else { |
+ return _codec.plfreq; |
+ } |
} |
-int32_t FilePlayerImpl::AudioCodec(CodecInst& audioCodec) const |
-{ |
- audioCodec = _codec; |
- return 0; |
+int32_t FilePlayerImpl::AudioCodec(CodecInst& audioCodec) const { |
+ audioCodec = _codec; |
+ return 0; |
} |
-int32_t FilePlayerImpl::Get10msAudioFromFile( |
- int16_t* outBuffer, |
- size_t& lengthInSamples, |
- int frequencyInHz) |
-{ |
- if(_codec.plfreq == 0) |
- { |
- LOG(LS_WARNING) << "Get10msAudioFromFile() playing not started!" |
- << " codec freq = " << _codec.plfreq |
- << ", wanted freq = " << frequencyInHz; |
+int32_t FilePlayerImpl::Get10msAudioFromFile(int16_t* outBuffer, |
+ size_t& lengthInSamples, |
+ int frequencyInHz) { |
+ if (_codec.plfreq == 0) { |
+ LOG(LS_WARNING) << "Get10msAudioFromFile() playing not started!" |
+ << " codec freq = " << _codec.plfreq |
+ << ", wanted freq = " << frequencyInHz; |
+ return -1; |
+ } |
+ |
+ AudioFrame unresampledAudioFrame; |
+ if (STR_CASE_CMP(_codec.plname, "L16") == 0) { |
+ unresampledAudioFrame.sample_rate_hz_ = _codec.plfreq; |
+ |
+ // L16 is un-encoded data. Just pull 10 ms. |
+ size_t lengthInBytes = sizeof(unresampledAudioFrame.data_); |
+ if (_fileModule.PlayoutAudioData((int8_t*)unresampledAudioFrame.data_, |
+ lengthInBytes) == -1) { |
+ // End of file reached. |
+ return -1; |
+ } |
+ if (lengthInBytes == 0) { |
+ lengthInSamples = 0; |
+ return 0; |
+ } |
+ // One sample is two bytes. |
+ unresampledAudioFrame.samples_per_channel_ = lengthInBytes >> 1; |
+ |
+ } else { |
+ // Decode will generate 10 ms of audio data. PlayoutAudioData(..) |
+ // expects a full frame. If the frame size is larger than 10 ms, |
+ // PlayoutAudioData(..) data should be called proportionally less often. |
+ int16_t encodedBuffer[MAX_AUDIO_BUFFER_IN_SAMPLES]; |
+ size_t encodedLengthInBytes = 0; |
+ if (++_numberOf10MsInDecoder >= _numberOf10MsPerFrame) { |
+ _numberOf10MsInDecoder = 0; |
+ size_t bytesFromFile = sizeof(encodedBuffer); |
+ if (_fileModule.PlayoutAudioData((int8_t*)encodedBuffer, bytesFromFile) == |
+ -1) { |
+ // End of file reached. |
return -1; |
+ } |
+ encodedLengthInBytes = bytesFromFile; |
+ } |
+ if (_audioDecoder.Decode(unresampledAudioFrame, frequencyInHz, |
+ (int8_t*)encodedBuffer, |
+ encodedLengthInBytes) == -1) { |
+ return -1; |
} |
+ } |
- AudioFrame unresampledAudioFrame; |
- if(STR_CASE_CMP(_codec.plname, "L16") == 0) |
- { |
- unresampledAudioFrame.sample_rate_hz_ = _codec.plfreq; |
- |
- // L16 is un-encoded data. Just pull 10 ms. |
- size_t lengthInBytes = |
- sizeof(unresampledAudioFrame.data_); |
- if (_fileModule.PlayoutAudioData( |
- (int8_t*)unresampledAudioFrame.data_, |
- lengthInBytes) == -1) |
- { |
- // End of file reached. |
- return -1; |
- } |
- if(lengthInBytes == 0) |
- { |
- lengthInSamples = 0; |
- return 0; |
- } |
- // One sample is two bytes. |
- unresampledAudioFrame.samples_per_channel_ = lengthInBytes >> 1; |
+ size_t outLen = 0; |
+ if (_resampler.ResetIfNeeded(unresampledAudioFrame.sample_rate_hz_, |
+ frequencyInHz, 1)) { |
+ LOG(LS_WARNING) << "Get10msAudioFromFile() unexpected codec."; |
- } else { |
- // Decode will generate 10 ms of audio data. PlayoutAudioData(..) |
- // expects a full frame. If the frame size is larger than 10 ms, |
- // PlayoutAudioData(..) data should be called proportionally less often. |
- int16_t encodedBuffer[MAX_AUDIO_BUFFER_IN_SAMPLES]; |
- size_t encodedLengthInBytes = 0; |
- if(++_numberOf10MsInDecoder >= _numberOf10MsPerFrame) |
- { |
- _numberOf10MsInDecoder = 0; |
- size_t bytesFromFile = sizeof(encodedBuffer); |
- if (_fileModule.PlayoutAudioData((int8_t*)encodedBuffer, |
- bytesFromFile) == -1) |
- { |
- // End of file reached. |
- return -1; |
- } |
- encodedLengthInBytes = bytesFromFile; |
- } |
- if(_audioDecoder.Decode(unresampledAudioFrame,frequencyInHz, |
- (int8_t*)encodedBuffer, |
- encodedLengthInBytes) == -1) |
- { |
- return -1; |
- } |
- } |
+ // New sampling frequency. Update state. |
+ outLen = static_cast<size_t>(frequencyInHz / 100); |
+ memset(outBuffer, 0, outLen * sizeof(int16_t)); |
+ return 0; |
+ } |
+ _resampler.Push(unresampledAudioFrame.data_, |
+ unresampledAudioFrame.samples_per_channel_, outBuffer, |
+ MAX_AUDIO_BUFFER_IN_SAMPLES, outLen); |
- size_t outLen = 0; |
- if(_resampler.ResetIfNeeded(unresampledAudioFrame.sample_rate_hz_, |
- frequencyInHz, 1)) |
- { |
- LOG(LS_WARNING) << "Get10msAudioFromFile() unexpected codec."; |
+ lengthInSamples = outLen; |
- // New sampling frequency. Update state. |
- outLen = static_cast<size_t>(frequencyInHz / 100); |
- memset(outBuffer, 0, outLen * sizeof(int16_t)); |
- return 0; |
- } |
- _resampler.Push(unresampledAudioFrame.data_, |
- unresampledAudioFrame.samples_per_channel_, |
- outBuffer, |
- MAX_AUDIO_BUFFER_IN_SAMPLES, |
- outLen); |
- |
- lengthInSamples = outLen; |
- |
- if(_scaling != 1.0) |
- { |
- for (size_t i = 0;i < outLen; i++) |
- { |
- outBuffer[i] = (int16_t)(outBuffer[i] * _scaling); |
- } |
+ if (_scaling != 1.0) { |
+ for (size_t i = 0; i < outLen; i++) { |
+ outBuffer[i] = (int16_t)(outBuffer[i] * _scaling); |
} |
- _decodedLengthInMS += 10; |
- return 0; |
+ } |
+ _decodedLengthInMS += 10; |
+ return 0; |
} |
-int32_t FilePlayerImpl::RegisterModuleFileCallback(FileCallback* callback) |
-{ |
- return _fileModule.SetModuleFileCallback(callback); |
+int32_t FilePlayerImpl::RegisterModuleFileCallback(FileCallback* callback) { |
+ return _fileModule.SetModuleFileCallback(callback); |
} |
-int32_t FilePlayerImpl::SetAudioScaling(float scaleFactor) |
-{ |
- if((scaleFactor >= 0)&&(scaleFactor <= 2.0)) |
- { |
- _scaling = scaleFactor; |
- return 0; |
- } |
- LOG(LS_WARNING) << "SetAudioScaling() non-allowed scale factor."; |
- return -1; |
+int32_t FilePlayerImpl::SetAudioScaling(float scaleFactor) { |
+ if ((scaleFactor >= 0) && (scaleFactor <= 2.0)) { |
+ _scaling = scaleFactor; |
+ return 0; |
+ } |
+ LOG(LS_WARNING) << "SetAudioScaling() non-allowed scale factor."; |
+ return -1; |
} |
int32_t FilePlayerImpl::StartPlayingFile(const char* fileName, |
@@ -207,80 +171,66 @@ int32_t FilePlayerImpl::StartPlayingFile(const char* fileName, |
float volumeScaling, |
uint32_t notification, |
uint32_t stopPosition, |
- const CodecInst* codecInst) |
-{ |
- if (_fileFormat == kFileFormatPcm16kHzFile || |
- _fileFormat == kFileFormatPcm8kHzFile|| |
- _fileFormat == kFileFormatPcm32kHzFile ) |
- { |
- CodecInst codecInstL16; |
- strncpy(codecInstL16.plname,"L16",32); |
- codecInstL16.pltype = 93; |
- codecInstL16.channels = 1; |
- |
- if (_fileFormat == kFileFormatPcm8kHzFile) |
- { |
- codecInstL16.rate = 128000; |
- codecInstL16.plfreq = 8000; |
- codecInstL16.pacsize = 80; |
- |
- } else if(_fileFormat == kFileFormatPcm16kHzFile) |
- { |
- codecInstL16.rate = 256000; |
- codecInstL16.plfreq = 16000; |
- codecInstL16.pacsize = 160; |
- |
- }else if(_fileFormat == kFileFormatPcm32kHzFile) |
- { |
- codecInstL16.rate = 512000; |
- codecInstL16.plfreq = 32000; |
- codecInstL16.pacsize = 160; |
- } else |
- { |
- LOG(LS_ERROR) << "StartPlayingFile() sample frequency not " |
- << "supported for PCM format."; |
- return -1; |
- } |
- |
- if (_fileModule.StartPlayingAudioFile(fileName, notification, loop, |
- _fileFormat, &codecInstL16, |
- startPosition, |
- stopPosition) == -1) |
- { |
- LOG(LS_WARNING) << "StartPlayingFile() failed to initialize " |
- << "pcm file " << fileName; |
- return -1; |
- } |
- SetAudioScaling(volumeScaling); |
- }else if(_fileFormat == kFileFormatPreencodedFile) |
- { |
- if (_fileModule.StartPlayingAudioFile(fileName, notification, loop, |
- _fileFormat, codecInst) == -1) |
- { |
- LOG(LS_WARNING) << "StartPlayingFile() failed to initialize " |
- << "pre-encoded file " << fileName; |
- return -1; |
- } |
- } else |
- { |
- CodecInst* no_inst = NULL; |
- if (_fileModule.StartPlayingAudioFile(fileName, notification, loop, |
- _fileFormat, no_inst, |
- startPosition, |
- stopPosition) == -1) |
- { |
- LOG(LS_WARNING) << "StartPlayingFile() failed to initialize file " |
- << fileName; |
- return -1; |
- } |
- SetAudioScaling(volumeScaling); |
+ const CodecInst* codecInst) { |
+ if (_fileFormat == kFileFormatPcm16kHzFile || |
+ _fileFormat == kFileFormatPcm8kHzFile || |
+ _fileFormat == kFileFormatPcm32kHzFile) { |
+ CodecInst codecInstL16; |
+ strncpy(codecInstL16.plname, "L16", 32); |
+ codecInstL16.pltype = 93; |
+ codecInstL16.channels = 1; |
+ |
+ if (_fileFormat == kFileFormatPcm8kHzFile) { |
+ codecInstL16.rate = 128000; |
+ codecInstL16.plfreq = 8000; |
+ codecInstL16.pacsize = 80; |
+ |
+ } else if (_fileFormat == kFileFormatPcm16kHzFile) { |
+ codecInstL16.rate = 256000; |
+ codecInstL16.plfreq = 16000; |
+ codecInstL16.pacsize = 160; |
+ |
+ } else if (_fileFormat == kFileFormatPcm32kHzFile) { |
+ codecInstL16.rate = 512000; |
+ codecInstL16.plfreq = 32000; |
+ codecInstL16.pacsize = 160; |
+ } else { |
+ LOG(LS_ERROR) << "StartPlayingFile() sample frequency not " |
+ << "supported for PCM format."; |
+ return -1; |
} |
- if (SetUpAudioDecoder() == -1) |
- { |
- StopPlayingFile(); |
- return -1; |
+ |
+ if (_fileModule.StartPlayingAudioFile(fileName, notification, loop, |
+ _fileFormat, &codecInstL16, |
+ startPosition, stopPosition) == -1) { |
+ LOG(LS_WARNING) << "StartPlayingFile() failed to initialize " |
+ << "pcm file " << fileName; |
+ return -1; |
} |
- return 0; |
+ SetAudioScaling(volumeScaling); |
+ } else if (_fileFormat == kFileFormatPreencodedFile) { |
+ if (_fileModule.StartPlayingAudioFile(fileName, notification, loop, |
+ _fileFormat, codecInst) == -1) { |
+ LOG(LS_WARNING) << "StartPlayingFile() failed to initialize " |
+ << "pre-encoded file " << fileName; |
+ return -1; |
+ } |
+ } else { |
+ CodecInst* no_inst = NULL; |
+ if (_fileModule.StartPlayingAudioFile(fileName, notification, loop, |
+ _fileFormat, no_inst, startPosition, |
+ stopPosition) == -1) { |
+ LOG(LS_WARNING) << "StartPlayingFile() failed to initialize file " |
+ << fileName; |
+ return -1; |
+ } |
+ SetAudioScaling(volumeScaling); |
+ } |
+ if (SetUpAudioDecoder() == -1) { |
+ StopPlayingFile(); |
+ return -1; |
+ } |
+ return 0; |
} |
int32_t FilePlayerImpl::StartPlayingFile(InStream& sourceStream, |
@@ -288,115 +238,96 @@ int32_t FilePlayerImpl::StartPlayingFile(InStream& sourceStream, |
float volumeScaling, |
uint32_t notification, |
uint32_t stopPosition, |
- const CodecInst* codecInst) |
-{ |
- if (_fileFormat == kFileFormatPcm16kHzFile || |
- _fileFormat == kFileFormatPcm32kHzFile || |
- _fileFormat == kFileFormatPcm8kHzFile) |
- { |
- CodecInst codecInstL16; |
- strncpy(codecInstL16.plname,"L16",32); |
- codecInstL16.pltype = 93; |
- codecInstL16.channels = 1; |
- |
- if (_fileFormat == kFileFormatPcm8kHzFile) |
- { |
- codecInstL16.rate = 128000; |
- codecInstL16.plfreq = 8000; |
- codecInstL16.pacsize = 80; |
- |
- }else if (_fileFormat == kFileFormatPcm16kHzFile) |
- { |
- codecInstL16.rate = 256000; |
- codecInstL16.plfreq = 16000; |
- codecInstL16.pacsize = 160; |
- |
- }else if (_fileFormat == kFileFormatPcm32kHzFile) |
- { |
- codecInstL16.rate = 512000; |
- codecInstL16.plfreq = 32000; |
- codecInstL16.pacsize = 160; |
- }else |
- { |
- LOG(LS_ERROR) << "StartPlayingFile() sample frequency not " |
- << "supported for PCM format."; |
- return -1; |
- } |
- if (_fileModule.StartPlayingAudioStream(sourceStream, notification, |
- _fileFormat, &codecInstL16, |
- startPosition, |
- stopPosition) == -1) |
- { |
- LOG(LS_ERROR) << "StartPlayingFile() failed to initialize stream " |
- << "playout."; |
- return -1; |
- } |
- |
- }else if(_fileFormat == kFileFormatPreencodedFile) |
- { |
- if (_fileModule.StartPlayingAudioStream(sourceStream, notification, |
- _fileFormat, codecInst) == -1) |
- { |
- LOG(LS_ERROR) << "StartPlayingFile() failed to initialize stream " |
- << "playout."; |
- return -1; |
- } |
+ const CodecInst* codecInst) { |
+ if (_fileFormat == kFileFormatPcm16kHzFile || |
+ _fileFormat == kFileFormatPcm32kHzFile || |
+ _fileFormat == kFileFormatPcm8kHzFile) { |
+ CodecInst codecInstL16; |
+ strncpy(codecInstL16.plname, "L16", 32); |
+ codecInstL16.pltype = 93; |
+ codecInstL16.channels = 1; |
+ |
+ if (_fileFormat == kFileFormatPcm8kHzFile) { |
+ codecInstL16.rate = 128000; |
+ codecInstL16.plfreq = 8000; |
+ codecInstL16.pacsize = 80; |
+ |
+ } else if (_fileFormat == kFileFormatPcm16kHzFile) { |
+ codecInstL16.rate = 256000; |
+ codecInstL16.plfreq = 16000; |
+ codecInstL16.pacsize = 160; |
+ |
+ } else if (_fileFormat == kFileFormatPcm32kHzFile) { |
+ codecInstL16.rate = 512000; |
+ codecInstL16.plfreq = 32000; |
+ codecInstL16.pacsize = 160; |
} else { |
- CodecInst* no_inst = NULL; |
- if (_fileModule.StartPlayingAudioStream(sourceStream, notification, |
- _fileFormat, no_inst, |
- startPosition, |
- stopPosition) == -1) |
- { |
- LOG(LS_ERROR) << "StartPlayingFile() failed to initialize stream " |
- << "playout."; |
- return -1; |
- } |
+ LOG(LS_ERROR) << "StartPlayingFile() sample frequency not " |
+ << "supported for PCM format."; |
+ return -1; |
+ } |
+ if (_fileModule.StartPlayingAudioStream( |
+ sourceStream, notification, _fileFormat, &codecInstL16, |
+ startPosition, stopPosition) == -1) { |
+ LOG(LS_ERROR) << "StartPlayingFile() failed to initialize stream " |
+ << "playout."; |
+ return -1; |
} |
- SetAudioScaling(volumeScaling); |
- if (SetUpAudioDecoder() == -1) |
- { |
- StopPlayingFile(); |
- return -1; |
+ } else if (_fileFormat == kFileFormatPreencodedFile) { |
+ if (_fileModule.StartPlayingAudioStream(sourceStream, notification, |
+ _fileFormat, codecInst) == -1) { |
+ LOG(LS_ERROR) << "StartPlayingFile() failed to initialize stream " |
+ << "playout."; |
+ return -1; |
} |
- return 0; |
+ } else { |
+ CodecInst* no_inst = NULL; |
+ if (_fileModule.StartPlayingAudioStream(sourceStream, notification, |
+ _fileFormat, no_inst, startPosition, |
+ stopPosition) == -1) { |
+ LOG(LS_ERROR) << "StartPlayingFile() failed to initialize stream " |
+ << "playout."; |
+ return -1; |
+ } |
+ } |
+ SetAudioScaling(volumeScaling); |
+ |
+ if (SetUpAudioDecoder() == -1) { |
+ StopPlayingFile(); |
+ return -1; |
+ } |
+ return 0; |
} |
-int32_t FilePlayerImpl::StopPlayingFile() |
-{ |
- memset(&_codec, 0, sizeof(CodecInst)); |
- _numberOf10MsPerFrame = 0; |
- _numberOf10MsInDecoder = 0; |
- return _fileModule.StopPlaying(); |
+int32_t FilePlayerImpl::StopPlayingFile() { |
+ memset(&_codec, 0, sizeof(CodecInst)); |
+ _numberOf10MsPerFrame = 0; |
+ _numberOf10MsInDecoder = 0; |
+ return _fileModule.StopPlaying(); |
} |
-bool FilePlayerImpl::IsPlayingFile() const |
-{ |
- return _fileModule.IsPlaying(); |
+bool FilePlayerImpl::IsPlayingFile() const { |
+ return _fileModule.IsPlaying(); |
} |
-int32_t FilePlayerImpl::GetPlayoutPosition(uint32_t& durationMs) |
-{ |
- return _fileModule.PlayoutPositionMs(durationMs); |
+int32_t FilePlayerImpl::GetPlayoutPosition(uint32_t& durationMs) { |
+ return _fileModule.PlayoutPositionMs(durationMs); |
} |
-int32_t FilePlayerImpl::SetUpAudioDecoder() |
-{ |
- if ((_fileModule.codec_info(_codec) == -1)) |
- { |
- LOG(LS_WARNING) << "Failed to retrieve codec info of file data."; |
- return -1; |
- } |
- if( STR_CASE_CMP(_codec.plname, "L16") != 0 && |
- _audioDecoder.SetDecodeCodec(_codec) == -1) |
- { |
- LOG(LS_WARNING) << "SetUpAudioDecoder() codec " << _codec.plname |
- << " not supported."; |
- return -1; |
- } |
- _numberOf10MsPerFrame = _codec.pacsize / (_codec.plfreq / 100); |
- _numberOf10MsInDecoder = 0; |
- return 0; |
+int32_t FilePlayerImpl::SetUpAudioDecoder() { |
+ if ((_fileModule.codec_info(_codec) == -1)) { |
+ LOG(LS_WARNING) << "Failed to retrieve codec info of file data."; |
+ return -1; |
+ } |
+ if (STR_CASE_CMP(_codec.plname, "L16") != 0 && |
+ _audioDecoder.SetDecodeCodec(_codec) == -1) { |
+ LOG(LS_WARNING) << "SetUpAudioDecoder() codec " << _codec.plname |
+ << " not supported."; |
+ return -1; |
+ } |
+ _numberOf10MsPerFrame = _codec.pacsize / (_codec.plfreq / 100); |
+ _numberOf10MsInDecoder = 0; |
+ return 0; |
} |
} // namespace webrtc |