diff options
Diffstat (limited to 'webrtc/modules/media_file')
-rw-r--r-- | webrtc/modules/media_file/BUILD.gn | 12 | ||||
-rw-r--r-- | webrtc/modules/media_file/OWNERS | 15 | ||||
-rw-r--r-- | webrtc/modules/media_file/media_file.gypi | 12 | ||||
-rw-r--r-- | webrtc/modules/media_file/media_file.h (renamed from webrtc/modules/media_file/interface/media_file.h) | 12 | ||||
-rw-r--r-- | webrtc/modules/media_file/media_file_defines.h (renamed from webrtc/modules/media_file/interface/media_file_defines.h) | 8 | ||||
-rw-r--r-- | webrtc/modules/media_file/media_file_impl.cc (renamed from webrtc/modules/media_file/source/media_file_impl.cc) | 2 | ||||
-rw-r--r-- | webrtc/modules/media_file/media_file_impl.h (renamed from webrtc/modules/media_file/source/media_file_impl.h) | 14 | ||||
-rw-r--r-- | webrtc/modules/media_file/media_file_unittest.cc (renamed from webrtc/modules/media_file/source/media_file_unittest.cc) | 20 | ||||
-rw-r--r-- | webrtc/modules/media_file/media_file_utility.cc (renamed from webrtc/modules/media_file/source/media_file_utility.cc) | 351 | ||||
-rw-r--r-- | webrtc/modules/media_file/media_file_utility.h (renamed from webrtc/modules/media_file/source/media_file_utility.h) | 32 | ||||
-rw-r--r-- | webrtc/modules/media_file/source/OWNERS | 5 |
11 files changed, 198 insertions, 285 deletions
diff --git a/webrtc/modules/media_file/BUILD.gn b/webrtc/modules/media_file/BUILD.gn index 05cfb4e555..2a4be728f3 100644 --- a/webrtc/modules/media_file/BUILD.gn +++ b/webrtc/modules/media_file/BUILD.gn @@ -14,12 +14,12 @@ config("media_file_config") { source_set("media_file") { sources = [ - "interface/media_file.h", - "interface/media_file_defines.h", - "source/media_file_impl.cc", - "source/media_file_impl.h", - "source/media_file_utility.cc", - "source/media_file_utility.h", + "media_file.h", + "media_file_defines.h", + "media_file_impl.cc", + "media_file_impl.h", + "media_file_utility.cc", + "media_file_utility.h", ] if (is_win) { diff --git a/webrtc/modules/media_file/OWNERS b/webrtc/modules/media_file/OWNERS index beb9729e04..f6467a4161 100644 --- a/webrtc/modules/media_file/OWNERS +++ b/webrtc/modules/media_file/OWNERS @@ -1,5 +1,10 @@ -mflodman@webrtc.org
-perkj@webrtc.org
-niklas.enbom@webrtc.org
-
-per-file BUILD.gn=kjellander@webrtc.org
+mflodman@webrtc.org +perkj@webrtc.org +niklas.enbom@webrtc.org + +# These are for the common case of adding or renaming files. If you're doing +# structural changes, please get a review from a reviewer in this file. +per-file *.gyp=* +per-file *.gypi=* + +per-file BUILD.gn=kjellander@webrtc.org diff --git a/webrtc/modules/media_file/media_file.gypi b/webrtc/modules/media_file/media_file.gypi index 4ec80c3c52..94a99a22f1 100644 --- a/webrtc/modules/media_file/media_file.gypi +++ b/webrtc/modules/media_file/media_file.gypi @@ -17,12 +17,12 @@ '<(webrtc_root)/common_audio/common_audio.gyp:common_audio', ], 'sources': [ - 'interface/media_file.h', - 'interface/media_file_defines.h', - 'source/media_file_impl.cc', - 'source/media_file_impl.h', - 'source/media_file_utility.cc', - 'source/media_file_utility.h', + 'media_file.h', + 'media_file_defines.h', + 'media_file_impl.cc', + 'media_file_impl.h', + 'media_file_utility.cc', + 'media_file_utility.h', ], # source # TODO(jschuh): Bug 1348: fix size_t to int truncations. 'msvs_disabled_warnings': [ 4267, ], diff --git a/webrtc/modules/media_file/interface/media_file.h b/webrtc/modules/media_file/media_file.h index 5b09ad4383..f6924d6bb0 100644 --- a/webrtc/modules/media_file/interface/media_file.h +++ b/webrtc/modules/media_file/media_file.h @@ -8,13 +8,13 @@ * be found in the AUTHORS file in the root of the source tree. */ -#ifndef WEBRTC_MODULES_MEDIA_FILE_INTERFACE_MEDIA_FILE_H_ -#define WEBRTC_MODULES_MEDIA_FILE_INTERFACE_MEDIA_FILE_H_ +#ifndef WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_H_ +#define WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_H_ #include "webrtc/common_types.h" -#include "webrtc/modules/interface/module.h" -#include "webrtc/modules/interface/module_common_types.h" -#include "webrtc/modules/media_file/interface/media_file_defines.h" +#include "webrtc/modules/include/module.h" +#include "webrtc/modules/include/module_common_types.h" +#include "webrtc/modules/media_file/media_file_defines.h" #include "webrtc/typedefs.h" namespace webrtc { @@ -177,4 +177,4 @@ protected: virtual ~MediaFile() {} }; } // namespace webrtc -#endif // WEBRTC_MODULES_MEDIA_FILE_INTERFACE_MEDIA_FILE_H_ +#endif // WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_H_ diff --git a/webrtc/modules/media_file/interface/media_file_defines.h b/webrtc/modules/media_file/media_file_defines.h index ded71a8ca7..a021a148a5 100644 --- a/webrtc/modules/media_file/interface/media_file_defines.h +++ b/webrtc/modules/media_file/media_file_defines.h @@ -8,11 +8,11 @@ * be found in the AUTHORS file in the root of the source tree. */ -#ifndef WEBRTC_MODULES_MEDIA_FILE_INTERFACE_MEDIA_FILE_DEFINES_H_ -#define WEBRTC_MODULES_MEDIA_FILE_INTERFACE_MEDIA_FILE_DEFINES_H_ +#ifndef WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_DEFINES_H_ +#define WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_DEFINES_H_ #include "webrtc/engine_configurations.h" -#include "webrtc/modules/interface/module_common_types.h" +#include "webrtc/modules/include/module_common_types.h" #include "webrtc/typedefs.h" namespace webrtc { @@ -48,4 +48,4 @@ protected: FileCallback() {} }; } // namespace webrtc -#endif // WEBRTC_MODULES_MEDIA_FILE_INTERFACE_MEDIA_FILE_DEFINES_H_ +#endif // WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_DEFINES_H_ diff --git a/webrtc/modules/media_file/source/media_file_impl.cc b/webrtc/modules/media_file/media_file_impl.cc index 50175b86d5..abc7b9d9e0 100644 --- a/webrtc/modules/media_file/source/media_file_impl.cc +++ b/webrtc/modules/media_file/media_file_impl.cc @@ -11,7 +11,7 @@ #include <assert.h> #include "webrtc/base/format_macros.h" -#include "webrtc/modules/media_file/source/media_file_impl.h" +#include "webrtc/modules/media_file/media_file_impl.h" #include "webrtc/system_wrappers/include/critical_section_wrapper.h" #include "webrtc/system_wrappers/include/file_wrapper.h" #include "webrtc/system_wrappers/include/tick_util.h" diff --git a/webrtc/modules/media_file/source/media_file_impl.h b/webrtc/modules/media_file/media_file_impl.h index cdb54d880d..c23f514c75 100644 --- a/webrtc/modules/media_file/source/media_file_impl.h +++ b/webrtc/modules/media_file/media_file_impl.h @@ -8,14 +8,14 @@ * be found in the AUTHORS file in the root of the source tree. */ -#ifndef WEBRTC_MODULES_MEDIA_FILE_SOURCE_MEDIA_FILE_IMPL_H_ -#define WEBRTC_MODULES_MEDIA_FILE_SOURCE_MEDIA_FILE_IMPL_H_ +#ifndef WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_IMPL_H_ +#define WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_IMPL_H_ #include "webrtc/common_types.h" -#include "webrtc/modules/interface/module_common_types.h" -#include "webrtc/modules/media_file/interface/media_file.h" -#include "webrtc/modules/media_file/interface/media_file_defines.h" -#include "webrtc/modules/media_file/source/media_file_utility.h" +#include "webrtc/modules/include/module_common_types.h" +#include "webrtc/modules/media_file/media_file.h" +#include "webrtc/modules/media_file/media_file_defines.h" +#include "webrtc/modules/media_file/media_file_utility.h" #include "webrtc/system_wrappers/include/critical_section_wrapper.h" namespace webrtc { @@ -145,4 +145,4 @@ private: }; } // namespace webrtc -#endif // WEBRTC_MODULES_MEDIA_FILE_SOURCE_MEDIA_FILE_IMPL_H_ +#endif // WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_IMPL_H_ diff --git a/webrtc/modules/media_file/source/media_file_unittest.cc b/webrtc/modules/media_file/media_file_unittest.cc index 370d13228a..6541a8fb7c 100644 --- a/webrtc/modules/media_file/source/media_file_unittest.cc +++ b/webrtc/modules/media_file/media_file_unittest.cc @@ -9,10 +9,9 @@ */ #include "testing/gtest/include/gtest/gtest.h" -#include "webrtc/modules/media_file/interface/media_file.h" +#include "webrtc/modules/media_file/media_file.h" #include "webrtc/system_wrappers/include/sleep.h" #include "webrtc/test/testsupport/fileutils.h" -#include "webrtc/test/testsupport/gtest_disable.h" class MediaFileTest : public testing::Test { protected: @@ -28,8 +27,14 @@ class MediaFileTest : public testing::Test { webrtc::MediaFile* media_file_; }; -TEST_F(MediaFileTest, DISABLED_ON_IOS( - DISABLED_ON_ANDROID(StartPlayingAudioFileWithoutError))) { +#if defined(WEBRTC_ANDROID) || defined(WEBRTC_IOS) +#define MAYBE_StartPlayingAudioFileWithoutError \ + DISABLED_StartPlayingAudioFileWithoutError +#else +#define MAYBE_StartPlayingAudioFileWithoutError \ + StartPlayingAudioFileWithoutError +#endif +TEST_F(MediaFileTest, MAYBE_StartPlayingAudioFileWithoutError) { // TODO(leozwang): Use hard coded filename here, we want to // loop through all audio files in future const std::string audio_file = webrtc::test::ProjectRootPath() + @@ -47,7 +52,12 @@ TEST_F(MediaFileTest, DISABLED_ON_IOS( ASSERT_EQ(0, media_file_->StopPlaying()); } -TEST_F(MediaFileTest, DISABLED_ON_IOS(WriteWavFile)) { +#if defined(WEBRTC_IOS) +#define MAYBE_WriteWavFile DISABLED_WriteWavFile +#else +#define MAYBE_WriteWavFile WriteWavFile +#endif +TEST_F(MediaFileTest, MAYBE_WriteWavFile) { // Write file. static const size_t kHeaderSize = 44; static const size_t kPayloadSize = 320; diff --git a/webrtc/modules/media_file/source/media_file_utility.cc b/webrtc/modules/media_file/media_file_utility.cc index 61ae442d0e..8a815cc25d 100644 --- a/webrtc/modules/media_file/source/media_file_utility.cc +++ b/webrtc/modules/media_file/media_file_utility.cc @@ -8,7 +8,7 @@ * be found in the AUTHORS file in the root of the source tree. */ -#include "webrtc/modules/media_file/source/media_file_utility.h" +#include "webrtc/modules/media_file/media_file_utility.h" #include <assert.h> #include <sys/stat.h> @@ -19,7 +19,7 @@ #include "webrtc/common_audio/wav_header.h" #include "webrtc/common_types.h" #include "webrtc/engine_configurations.h" -#include "webrtc/modules/interface/module_common_types.h" +#include "webrtc/modules/include/module_common_types.h" #include "webrtc/system_wrappers/include/file_wrapper.h" #include "webrtc/system_wrappers/include/trace.h" @@ -38,8 +38,8 @@ struct WAVE_RIFF_header // the chunk size (16, 18 or 40 byte) struct WAVE_CHUNK_header { - int8_t fmt_ckID[4]; - int32_t fmt_ckSize; + int8_t fmt_ckID[4]; + uint32_t fmt_ckSize; }; } // unnamed namespace @@ -79,15 +79,15 @@ int32_t ModuleFileUtility::ReadWavHeader(InStream& wav) // TODO (hellner): tmpStr and tmpStr2 seems unnecessary here. char tmpStr[6] = "FOUR"; unsigned char tmpStr2[4]; - int32_t i, len; + size_t i; bool dataFound = false; bool fmtFound = false; int8_t dummyRead; _dataSize = 0; - len = wav.Read(&RIFFheaderObj, sizeof(WAVE_RIFF_header)); - if(len != sizeof(WAVE_RIFF_header)) + int len = wav.Read(&RIFFheaderObj, sizeof(WAVE_RIFF_header)); + if (len != static_cast<int>(sizeof(WAVE_RIFF_header))) { WEBRTC_TRACE(kTraceError, kTraceFile, _id, "Not a wave file (too short)"); @@ -123,14 +123,13 @@ int32_t ModuleFileUtility::ReadWavHeader(InStream& wav) // in a subroutine. memcpy(tmpStr2, &CHUNKheaderObj.fmt_ckSize, 4); CHUNKheaderObj.fmt_ckSize = - (int32_t) ((uint32_t) tmpStr2[0] + - (((uint32_t)tmpStr2[1])<<8) + - (((uint32_t)tmpStr2[2])<<16) + - (((uint32_t)tmpStr2[3])<<24)); + (uint32_t)tmpStr2[0] + (((uint32_t)tmpStr2[1]) << 8) + + (((uint32_t)tmpStr2[2]) << 16) + (((uint32_t)tmpStr2[3]) << 24); memcpy(tmpStr, CHUNKheaderObj.fmt_ckID, 4); - while ((len == sizeof(WAVE_CHUNK_header)) && (!fmtFound || !dataFound)) + while ((len == static_cast<int>(sizeof(WAVE_CHUNK_header))) && + (!fmtFound || !dataFound)) { if(strcmp(tmpStr, "fmt ") == 0) { @@ -164,9 +163,14 @@ int32_t ModuleFileUtility::ReadWavHeader(InStream& wav) (int16_t) ((uint32_t)tmpStr2[0] + (((uint32_t)tmpStr2[1])<<8)); + if (CHUNKheaderObj.fmt_ckSize < sizeof(WAVE_FMTINFO_header)) + { + WEBRTC_TRACE(kTraceError, kTraceFile, _id, + "Chunk size is too small"); + return -1; + } for (i = 0; - i < (CHUNKheaderObj.fmt_ckSize - - (int32_t)sizeof(WAVE_FMTINFO_header)); + i < CHUNKheaderObj.fmt_ckSize - sizeof(WAVE_FMTINFO_header); i++) { len = wav.Read(&dummyRead, 1); @@ -187,7 +191,7 @@ int32_t ModuleFileUtility::ReadWavHeader(InStream& wav) } else { - for (i = 0; i < (CHUNKheaderObj.fmt_ckSize); i++) + for (i = 0; i < CHUNKheaderObj.fmt_ckSize; i++) { len = wav.Read(&dummyRead, 1); if(len != 1) @@ -203,10 +207,8 @@ int32_t ModuleFileUtility::ReadWavHeader(InStream& wav) memcpy(tmpStr2, &CHUNKheaderObj.fmt_ckSize, 4); CHUNKheaderObj.fmt_ckSize = - (int32_t) ((uint32_t)tmpStr2[0] + - (((uint32_t)tmpStr2[1])<<8) + - (((uint32_t)tmpStr2[2])<<16) + - (((uint32_t)tmpStr2[3])<<24)); + (uint32_t)tmpStr2[0] + (((uint32_t)tmpStr2[1]) << 8) + + (((uint32_t)tmpStr2[2]) << 16) + (((uint32_t)tmpStr2[3]) << 24); memcpy(tmpStr, CHUNKheaderObj.fmt_ckID, 4); } @@ -241,35 +243,17 @@ int32_t ModuleFileUtility::ReadWavHeader(InStream& wav) } // Calculate the number of bytes that 10 ms of audio data correspond to. - if(_wavFormatObj.formatTag == kWavFormatPcm) - { - // TODO (hellner): integer division for 22050 and 11025 would yield - // the same result as the else statement. Remove those - // special cases? - if(_wavFormatObj.nSamplesPerSec == 44100) - { - _readSizeBytes = 440 * _wavFormatObj.nChannels * - (_wavFormatObj.nBitsPerSample / 8); - } else if(_wavFormatObj.nSamplesPerSec == 22050) { - _readSizeBytes = 220 * _wavFormatObj.nChannels * - (_wavFormatObj.nBitsPerSample / 8); - } else if(_wavFormatObj.nSamplesPerSec == 11025) { - _readSizeBytes = 110 * _wavFormatObj.nChannels * - (_wavFormatObj.nBitsPerSample / 8); - } else { - _readSizeBytes = (_wavFormatObj.nSamplesPerSec/100) * - _wavFormatObj.nChannels * (_wavFormatObj.nBitsPerSample / 8); - } - - } else { - _readSizeBytes = (_wavFormatObj.nSamplesPerSec/100) * - _wavFormatObj.nChannels * (_wavFormatObj.nBitsPerSample / 8); - } + size_t samples_per_10ms = + ((_wavFormatObj.formatTag == kWavFormatPcm) && + (_wavFormatObj.nSamplesPerSec == 44100)) ? + 440 : static_cast<size_t>(_wavFormatObj.nSamplesPerSec / 100); + _readSizeBytes = samples_per_10ms * _wavFormatObj.nChannels * + (_wavFormatObj.nBitsPerSample / 8); return 0; } int32_t ModuleFileUtility::InitWavCodec(uint32_t samplesPerSec, - uint32_t channels, + size_t channels, uint32_t bitsPerSample, uint32_t formatTag) { @@ -376,15 +360,15 @@ int32_t ModuleFileUtility::InitWavReading(InStream& wav, if(start > 0) { uint8_t dummy[WAV_MAX_BUFFER_SIZE]; - int32_t readLength; + int readLength; if(_readSizeBytes <= WAV_MAX_BUFFER_SIZE) { while (_playoutPositionMs < start) { readLength = wav.Read(dummy, _readSizeBytes); - if(readLength == _readSizeBytes) + if(readLength == static_cast<int>(_readSizeBytes)) { - _readPos += readLength; + _readPos += _readSizeBytes; _playoutPositionMs += 10; } else // Must have reached EOF before start position! @@ -406,7 +390,7 @@ int32_t ModuleFileUtility::InitWavReading(InStream& wav, { return -1; } - _bytesPerSample = _wavFormatObj.nBitsPerSample / 8; + _bytesPerSample = static_cast<size_t>(_wavFormatObj.nBitsPerSample / 8); _startPointInMs = start; @@ -431,9 +415,9 @@ int32_t ModuleFileUtility::ReadWavDataAsMono( bufferSize); // The number of bytes that should be read from file. - const uint32_t totalBytesNeeded = _readSizeBytes; + const size_t totalBytesNeeded = _readSizeBytes; // The number of bytes that will be written to outData. - const uint32_t bytesRequested = (codec_info_.channels == 2) ? + const size_t bytesRequested = (codec_info_.channels == 2) ? totalBytesNeeded >> 1 : totalBytesNeeded; if(bufferSize < bytesRequested) { @@ -472,7 +456,7 @@ int32_t ModuleFileUtility::ReadWavDataAsMono( // Output data is should be mono. if(codec_info_.channels == 2) { - for (uint32_t i = 0; i < bytesRequested / _bytesPerSample; i++) + for (size_t i = 0; i < bytesRequested / _bytesPerSample; i++) { // Sample value is the average of left and right buffer rounded to // closest integer value. Note samples can be either 1 or 2 byte. @@ -490,7 +474,7 @@ int32_t ModuleFileUtility::ReadWavDataAsMono( } memcpy(outData, _tempData, bytesRequested); } - return bytesRequested; + return static_cast<int32_t>(bytesRequested); } int32_t ModuleFileUtility::ReadWavDataAsStereo( @@ -534,10 +518,10 @@ int32_t ModuleFileUtility::ReadWavDataAsStereo( } // The number of bytes that should be read from file. - const uint32_t totalBytesNeeded = _readSizeBytes; + const size_t totalBytesNeeded = _readSizeBytes; // The number of bytes that will be written to the left and the right // buffers. - const uint32_t bytesRequested = totalBytesNeeded >> 1; + const size_t bytesRequested = totalBytesNeeded >> 1; if(bufferSize < bytesRequested) { WEBRTC_TRACE(kTraceError, kTraceFile, _id, @@ -558,7 +542,7 @@ int32_t ModuleFileUtility::ReadWavDataAsStereo( // either 1 or 2 bytes if(_bytesPerSample == 1) { - for (uint32_t i = 0; i < bytesRequested; i++) + for (size_t i = 0; i < bytesRequested; i++) { outDataLeft[i] = _tempData[2 * i]; outDataRight[i] = _tempData[(2 * i) + 1]; @@ -572,35 +556,29 @@ int32_t ModuleFileUtility::ReadWavDataAsStereo( outDataRight); // Bytes requested to samples requested. - uint32_t sampleCount = bytesRequested >> 1; - for (uint32_t i = 0; i < sampleCount; i++) + size_t sampleCount = bytesRequested >> 1; + for (size_t i = 0; i < sampleCount; i++) { outLeft[i] = sampleData[2 * i]; outRight[i] = sampleData[(2 * i) + 1]; } } else { WEBRTC_TRACE(kTraceError, kTraceFile, _id, - "ReadWavStereoData: unsupported sample size %d!", + "ReadWavStereoData: unsupported sample size %" PRIuS "!", _bytesPerSample); assert(false); return -1; } - return bytesRequested; + return static_cast<int32_t>(bytesRequested); } -int32_t ModuleFileUtility::ReadWavData( - InStream& wav, - uint8_t* buffer, - const uint32_t dataLengthInBytes) +int32_t ModuleFileUtility::ReadWavData(InStream& wav, + uint8_t* buffer, + size_t dataLengthInBytes) { - WEBRTC_TRACE( - kTraceStream, - kTraceFile, - _id, - "ModuleFileUtility::ReadWavData(wav= 0x%x, buffer= 0x%x, dataLen= %ld)", - &wav, - buffer, - dataLengthInBytes); + WEBRTC_TRACE(kTraceStream, kTraceFile, _id, + "ModuleFileUtility::ReadWavData(wav= 0x%x, buffer= 0x%x, " + "dataLen= %" PRIuS ")", &wav, buffer, dataLengthInBytes); if(buffer == NULL) @@ -613,7 +591,7 @@ int32_t ModuleFileUtility::ReadWavData( // Make sure that a read won't return too few samples. // TODO (hellner): why not read the remaining bytes needed from the start // of the file? - if((_dataSize - _readPos) < (int32_t)dataLengthInBytes) + if(_dataSize < (_readPos + dataLengthInBytes)) { // Rewind() being -1 may be due to the file not supposed to be looped. if(wav.Rewind() == -1) @@ -685,8 +663,7 @@ int32_t ModuleFileUtility::InitWavWriting(OutStream& wav, return -1; } _writing = false; - uint32_t channels = (codecInst.channels == 0) ? - 1 : codecInst.channels; + size_t channels = (codecInst.channels == 0) ? 1 : codecInst.channels; if(STR_CASE_CMP(codecInst.plname, "PCMU") == 0) { @@ -696,7 +673,8 @@ int32_t ModuleFileUtility::InitWavWriting(OutStream& wav, { return -1; } - }else if(STR_CASE_CMP(codecInst.plname, "PCMA") == 0) + } + else if(STR_CASE_CMP(codecInst.plname, "PCMA") == 0) { _bytesPerSample = 1; if(WriteWavHeader(wav, 8000, _bytesPerSample, channels, kWavFormatALaw, @@ -729,15 +707,9 @@ int32_t ModuleFileUtility::WriteWavData(OutStream& out, const int8_t* buffer, const size_t dataLength) { - WEBRTC_TRACE( - kTraceStream, - kTraceFile, - _id, - "ModuleFileUtility::WriteWavData(out= 0x%x, buf= 0x%x, dataLen= %" PRIuS - ")", - &out, - buffer, - dataLength); + WEBRTC_TRACE(kTraceStream, kTraceFile, _id, + "ModuleFileUtility::WriteWavData(out= 0x%x, buf= 0x%x, " + "dataLen= %" PRIuS ")", &out, buffer, dataLength); if(buffer == NULL) { @@ -757,19 +729,19 @@ int32_t ModuleFileUtility::WriteWavData(OutStream& out, int32_t ModuleFileUtility::WriteWavHeader( OutStream& wav, - const uint32_t freq, - const uint32_t bytesPerSample, - const uint32_t channels, - const uint32_t format, - const uint32_t lengthInBytes) + uint32_t freq, + size_t bytesPerSample, + size_t channels, + uint32_t format, + size_t lengthInBytes) { // Frame size in bytes for 10 ms of audio. // TODO (hellner): 44.1 kHz has 440 samples frame size. Doesn't seem to // be taken into consideration here! - const int32_t frameSize = (freq / 100) * channels; + const size_t frameSize = (freq / 100) * channels; // Calculate the number of full frames that the wave file contain. - const int32_t dataLengthInBytes = frameSize * (lengthInBytes / frameSize); + const size_t dataLengthInBytes = frameSize * (lengthInBytes / frameSize); uint8_t buf[kWavHeaderSize]; webrtc::WriteWavHeader(buf, channels, freq, static_cast<WavFormat>(format), @@ -785,8 +757,7 @@ int32_t ModuleFileUtility::UpdateWavHeader(OutStream& wav) { return -1; } - uint32_t channels = (codec_info_.channels == 0) ? - 1 : codec_info_.channels; + size_t channels = (codec_info_.channels == 0) ? 1 : codec_info_.channels; if(STR_CASE_CMP(codec_info_.plname, "L16") == 0) { @@ -839,22 +810,17 @@ int32_t ModuleFileUtility::ReadPreEncodedData( int8_t* outData, const size_t bufferSize) { - WEBRTC_TRACE( - kTraceStream, - kTraceFile, - _id, - "ModuleFileUtility::ReadPreEncodedData(in= 0x%x, outData= 0x%x, " - "bufferSize= %" PRIuS ")", - &in, - outData, - bufferSize); + WEBRTC_TRACE(kTraceStream, kTraceFile, _id, + "ModuleFileUtility::ReadPreEncodedData(in= 0x%x, " + "outData= 0x%x, bufferSize= %" PRIuS ")", &in, outData, + bufferSize); if(outData == NULL) { WEBRTC_TRACE(kTraceError, kTraceFile, _id, "output buffer NULL"); } - uint32_t frameLen; + size_t frameLen; uint8_t buf[64]; // Each frame has a two byte header containing the frame length. int32_t res = in.Read(buf, 2); @@ -874,12 +840,9 @@ int32_t ModuleFileUtility::ReadPreEncodedData( frameLen = buf[0] + buf[1] * 256; if(bufferSize < frameLen) { - WEBRTC_TRACE( - kTraceError, - kTraceFile, - _id, - "buffer not large enough to read %d bytes of pre-encoded data!", - frameLen); + WEBRTC_TRACE(kTraceError, kTraceFile, _id, + "buffer not large enough to read %" PRIuS " bytes of " + "pre-encoded data!", frameLen); return -1; } return in.Read(outData, frameLen); @@ -897,24 +860,19 @@ int32_t ModuleFileUtility::InitPreEncodedWriting( } _writing = true; _bytesWritten = 1; - out.Write(&_codecId, 1); - return 0; + out.Write(&_codecId, 1); + return 0; } int32_t ModuleFileUtility::WritePreEncodedData( OutStream& out, - const int8_t* buffer, + const int8_t* buffer, const size_t dataLength) { - WEBRTC_TRACE( - kTraceStream, - kTraceFile, - _id, - "ModuleFileUtility::WritePreEncodedData(out= 0x%x, inData= 0x%x, " - "dataLen= %" PRIuS ")", - &out, - buffer, - dataLength); + WEBRTC_TRACE(kTraceStream, kTraceFile, _id, + "ModuleFileUtility::WritePreEncodedData(out= 0x%x, " + "inData= 0x%x, dataLen= %" PRIuS ")", &out, buffer, + dataLength); if(buffer == NULL) { @@ -945,15 +903,9 @@ int32_t ModuleFileUtility::InitCompressedReading( const uint32_t start, const uint32_t stop) { - WEBRTC_TRACE( - kTraceDebug, - kTraceFile, - _id, - "ModuleFileUtility::InitCompressedReading(in= 0x%x, start= %d,\ - stop= %d)", - &in, - start, - stop); + WEBRTC_TRACE(kTraceDebug, kTraceFile, _id, + "ModuleFileUtility::InitCompressedReading(in= 0x%x, " + "start= %d, stop= %d)", &in, start, stop); #if defined(WEBRTC_CODEC_ILBC) int16_t read_len = 0; @@ -976,9 +928,8 @@ int32_t ModuleFileUtility::InitCompressedReading( if(cnt==64) { return -1; - } else { - buf[cnt]=0; } + buf[cnt]=0; #ifdef WEBRTC_CODEC_ILBC if(!strcmp("#!iLBC20\n", buf)) @@ -996,14 +947,11 @@ int32_t ModuleFileUtility::InitCompressedReading( while (_playoutPositionMs <= _startPointInMs) { read_len = in.Read(buf, 38); - if(read_len == 38) - { - _playoutPositionMs += 20; - } - else + if(read_len != 38) { return -1; } + _playoutPositionMs += 20; } } } @@ -1023,14 +971,11 @@ int32_t ModuleFileUtility::InitCompressedReading( while (_playoutPositionMs <= _startPointInMs) { read_len = in.Read(buf, 50); - if(read_len == 50) - { - _playoutPositionMs += 20; - } - else + if(read_len != 50) { return -1; } + _playoutPositionMs += 20; } } } @@ -1047,17 +992,11 @@ int32_t ModuleFileUtility::ReadCompressedData(InStream& in, int8_t* outData, size_t bufferSize) { - WEBRTC_TRACE( - kTraceStream, - kTraceFile, - _id, - "ModuleFileUtility::ReadCompressedData(in=0x%x, outData=0x%x, bytes=%" - PRIuS ")", - &in, - outData, - bufferSize); + WEBRTC_TRACE(kTraceStream, kTraceFile, _id, + "ModuleFileUtility::ReadCompressedData(in=0x%x, outData=0x%x, " + "bytes=%" PRIuS ")", &in, outData, bufferSize); - uint32_t bytesRead = 0; + int bytesRead = 0; if(! _reading) { @@ -1069,8 +1008,8 @@ int32_t ModuleFileUtility::ReadCompressedData(InStream& in, if((_codecId == kCodecIlbc20Ms) || (_codecId == kCodecIlbc30Ms)) { - uint32_t byteSize = 0; - if(_codecId == kCodecIlbc30Ms) + size_t byteSize = 0; + if(_codecId == kCodecIlbc30Ms) { byteSize = 50; } @@ -1081,20 +1020,20 @@ int32_t ModuleFileUtility::ReadCompressedData(InStream& in, if(bufferSize < byteSize) { WEBRTC_TRACE(kTraceError, kTraceFile, _id, - "output buffer is too short to read ILBC compressed\ - data."); + "output buffer is too short to read ILBC compressed " + "data."); assert(false); return -1; } bytesRead = in.Read(outData, byteSize); - if(bytesRead != byteSize) + if(bytesRead != static_cast<int>(byteSize)) { if(!in.Rewind()) { InitCompressedReading(in, _startPointInMs, _stopPointInMs); bytesRead = in.Read(outData, byteSize); - if(bytesRead != byteSize) + if(bytesRead != static_cast<int>(byteSize)) { _reading = false; return -1; @@ -1136,9 +1075,8 @@ int32_t ModuleFileUtility::InitCompressedWriting( const CodecInst& codecInst) { WEBRTC_TRACE(kTraceDebug, kTraceFile, _id, - "ModuleFileUtility::InitCompressedWriting(out= 0x%x,\ - codecName= %s)", - &out, codecInst.plname); + "ModuleFileUtility::InitCompressedWriting(out= 0x%x, " + "codecName= %s)", &out, codecInst.plname); _writing = false; @@ -1177,15 +1115,9 @@ int32_t ModuleFileUtility::WriteCompressedData( const int8_t* buffer, const size_t dataLength) { - WEBRTC_TRACE( - kTraceStream, - kTraceFile, - _id, - "ModuleFileUtility::WriteCompressedData(out= 0x%x, buf= 0x%x, " - "dataLen= %" PRIuS ")", - &out, - buffer, - dataLength); + WEBRTC_TRACE(kTraceStream, kTraceFile, _id, + "ModuleFileUtility::WriteCompressedData(out= 0x%x, buf= 0x%x, " + "dataLen= %" PRIuS ")", &out, buffer, dataLength); if(buffer == NULL) { @@ -1204,19 +1136,12 @@ int32_t ModuleFileUtility::InitPCMReading(InStream& pcm, const uint32_t stop, uint32_t freq) { - WEBRTC_TRACE( - kTraceInfo, - kTraceFile, - _id, - "ModuleFileUtility::InitPCMReading(pcm= 0x%x, start=%d, stop=%d,\ - freq=%d)", - &pcm, - start, - stop, - freq); + WEBRTC_TRACE(kTraceInfo, kTraceFile, _id, + "ModuleFileUtility::InitPCMReading(pcm= 0x%x, start=%d, " + "stop=%d, freq=%d)", &pcm, start, stop, freq); int8_t dummy[320]; - int32_t read_len; + int read_len; _playoutPositionMs = 0; _startPointInMs = start; @@ -1261,14 +1186,11 @@ int32_t ModuleFileUtility::InitPCMReading(InStream& pcm, while (_playoutPositionMs < _startPointInMs) { read_len = pcm.Read(dummy, _readSizeBytes); - if(read_len == _readSizeBytes) + if(read_len != static_cast<int>(_readSizeBytes)) { - _playoutPositionMs += 10; - } - else // Must have reached EOF before start position! - { - return -1; + return -1; // Must have reached EOF before start position! } + _playoutPositionMs += 10; } } _reading = true; @@ -1279,23 +1201,17 @@ int32_t ModuleFileUtility::ReadPCMData(InStream& pcm, int8_t* outData, size_t bufferSize) { - WEBRTC_TRACE( - kTraceStream, - kTraceFile, - _id, - "ModuleFileUtility::ReadPCMData(pcm= 0x%x, outData= 0x%x, bufSize= %" - PRIuS ")", - &pcm, - outData, - bufferSize); + WEBRTC_TRACE(kTraceStream, kTraceFile, _id, + "ModuleFileUtility::ReadPCMData(pcm= 0x%x, outData= 0x%x, " + "bufSize= %" PRIuS ")", &pcm, outData, bufferSize); if(outData == NULL) { - WEBRTC_TRACE(kTraceError, kTraceFile, _id,"buffer NULL"); + WEBRTC_TRACE(kTraceError, kTraceFile, _id, "buffer NULL"); } // Readsize for 10ms of audio data (2 bytes per sample). - uint32_t bytesRequested = 2 * codec_info_.plfreq / 100; + size_t bytesRequested = static_cast<size_t>(2 * codec_info_.plfreq / 100); if(bufferSize < bytesRequested) { WEBRTC_TRACE(kTraceError, kTraceFile, _id, @@ -1304,8 +1220,8 @@ int32_t ModuleFileUtility::ReadPCMData(InStream& pcm, return -1; } - uint32_t bytesRead = pcm.Read(outData, bytesRequested); - if(bytesRead < bytesRequested) + int bytesRead = pcm.Read(outData, bytesRequested); + if(bytesRead < static_cast<int>(bytesRequested)) { if(pcm.Rewind() == -1) { @@ -1320,9 +1236,9 @@ int32_t ModuleFileUtility::ReadPCMData(InStream& pcm, } else { - int32_t rest = bytesRequested - bytesRead; - int32_t len = pcm.Read(&(outData[bytesRead]), rest); - if(len == rest) + size_t rest = bytesRequested - bytesRead; + int len = pcm.Read(&(outData[bytesRead]), rest); + if(len == static_cast<int>(rest)) { bytesRead += len; } @@ -1334,7 +1250,7 @@ int32_t ModuleFileUtility::ReadPCMData(InStream& pcm, if(bytesRead <= 0) { WEBRTC_TRACE(kTraceError, kTraceFile, _id, - "ReadPCMData: Failed to rewind audio file."); + "ReadPCMData: Failed to rewind audio file."); return -1; } } @@ -1343,7 +1259,7 @@ int32_t ModuleFileUtility::ReadPCMData(InStream& pcm, if(bytesRead <= 0) { WEBRTC_TRACE(kTraceStream, kTraceFile, _id, - "ReadPCMData: end of file"); + "ReadPCMData: end of file"); return -1; } _playoutPositionMs += 10; @@ -1414,15 +1330,9 @@ int32_t ModuleFileUtility::WritePCMData(OutStream& out, const int8_t* buffer, const size_t dataLength) { - WEBRTC_TRACE( - kTraceStream, - kTraceFile, - _id, - "ModuleFileUtility::WritePCMData(out= 0x%x, buf= 0x%x, dataLen= %" PRIuS - ")", - &out, - buffer, - dataLength); + WEBRTC_TRACE(kTraceStream, kTraceFile, _id, + "ModuleFileUtility::WritePCMData(out= 0x%x, buf= 0x%x, " + "dataLen= %" PRIuS ")", &out, buffer, dataLength); if(buffer == NULL) { @@ -1585,7 +1495,7 @@ int32_t ModuleFileUtility::FileDurationMs(const char* fileName, case kFileFormatCompressedFile: { int32_t cnt = 0; - int32_t read_len = 0; + int read_len = 0; char buf[64]; do { @@ -1642,15 +1552,8 @@ int32_t ModuleFileUtility::FileDurationMs(const char* fileName, uint32_t ModuleFileUtility::PlayoutPositionMs() { WEBRTC_TRACE(kTraceStream, kTraceFile, _id, - "ModuleFileUtility::PlayoutPosition()"); + "ModuleFileUtility::PlayoutPosition()"); - if(_reading) - { - return _playoutPositionMs; - } - else - { - return 0; - } + return _reading ? _playoutPositionMs : 0; } } // namespace webrtc diff --git a/webrtc/modules/media_file/source/media_file_utility.h b/webrtc/modules/media_file/media_file_utility.h index 2823ceca8a..bc2fa5a2f0 100644 --- a/webrtc/modules/media_file/source/media_file_utility.h +++ b/webrtc/modules/media_file/media_file_utility.h @@ -9,13 +9,13 @@ */ // Note: the class cannot be used for reading and writing at the same time. -#ifndef WEBRTC_MODULES_MEDIA_FILE_SOURCE_MEDIA_FILE_UTILITY_H_ -#define WEBRTC_MODULES_MEDIA_FILE_SOURCE_MEDIA_FILE_UTILITY_H_ +#ifndef WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_UTILITY_H_ +#define WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_UTILITY_H_ #include <stdio.h> #include "webrtc/common_types.h" -#include "webrtc/modules/media_file/interface/media_file_defines.h" +#include "webrtc/modules/media_file/media_file_defines.h" namespace webrtc { class InStream; @@ -176,11 +176,11 @@ public: private: // Biggest WAV frame supported is 10 ms at 48kHz of 2 channel, 16 bit audio. - enum{WAV_MAX_BUFFER_SIZE = 480*2*2}; + static const size_t WAV_MAX_BUFFER_SIZE = 480 * 2 * 2; int32_t InitWavCodec(uint32_t samplesPerSec, - uint32_t channels, + size_t channels, uint32_t bitsPerSample, uint32_t formatTag); @@ -194,16 +194,16 @@ private: // stereo. format is the encode format (e.g. PCMU, PCMA, PCM etc). // lengthInBytes is the number of bytes the audio samples are using up. int32_t WriteWavHeader(OutStream& stream, - const uint32_t freqInHz, - const uint32_t bytesPerSample, - const uint32_t channels, - const uint32_t format, - const uint32_t lengthInBytes); + uint32_t freqInHz, + size_t bytesPerSample, + size_t channels, + uint32_t format, + size_t lengthInBytes); // Put dataLengthInBytes of audio data from stream into the audioBuffer. // The return value is the number of bytes written to audioBuffer. int32_t ReadWavData(InStream& stream, uint8_t* audioBuffer, - const uint32_t dataLengthInBytes); + size_t dataLengthInBytes); // Update the current audio codec being used for reading or writing // according to codecInst. @@ -254,10 +254,10 @@ private: // TODO (hellner): why store multiple formats. Just store either codec_info_ // or _wavFormatObj and supply conversion functions. WAVE_FMTINFO_header _wavFormatObj; - int32_t _dataSize; // Chunk size if reading a WAV file + size_t _dataSize; // Chunk size if reading a WAV file // Number of bytes to read. I.e. frame size in bytes. May be multiple // chunks if reading WAV. - int32_t _readSizeBytes; + size_t _readSizeBytes; int32_t _id; @@ -270,8 +270,8 @@ private: MediaFileUtility_CodecType _codecId; // The amount of bytes, on average, used for one audio sample. - int32_t _bytesPerSample; - int32_t _readPos; + size_t _bytesPerSample; + size_t _readPos; // Only reading or writing can be enabled, not both. bool _reading; @@ -281,4 +281,4 @@ private: uint8_t _tempData[WAV_MAX_BUFFER_SIZE]; }; } // namespace webrtc -#endif // WEBRTC_MODULES_MEDIA_FILE_SOURCE_MEDIA_FILE_UTILITY_H_ +#endif // WEBRTC_MODULES_MEDIA_FILE_MEDIA_FILE_UTILITY_H_ diff --git a/webrtc/modules/media_file/source/OWNERS b/webrtc/modules/media_file/source/OWNERS deleted file mode 100644 index 3ee6b4bf5f..0000000000 --- a/webrtc/modules/media_file/source/OWNERS +++ /dev/null @@ -1,5 +0,0 @@ - -# These are for the common case of adding or renaming files. If you're doing -# structural changes, please get a review from a reviewer in this file. -per-file *.gyp=* -per-file *.gypi=* |