From 59d6cec291ff2e3baedc24a85d98d2f5c1660326 Mon Sep 17 00:00:00 2001 From: "braveyao@webrtc.org" Date: Tue, 14 Feb 2012 18:17:16 +0000 Subject: [PATCH] Fix the crash at playing 48kHz stereo wav file. http://code.google.com/p/webrtc/issues/detail?id=208 Review URL: https://webrtc-codereview.appspot.com/396001 git-svn-id: http://webrtc.googlecode.com/svn/trunk@1681 4adac7df-926f-26a2-2b94-8c16560cd09d --- .../media_file/source/media_file_utility.h | 4 +-- .../main/test/win_test/WinTestDlg.cc | 25 ++++++++++--------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/modules/media_file/source/media_file_utility.h b/src/modules/media_file/source/media_file_utility.h index f711b6136..cfe0314de 100644 --- a/src/modules/media_file/source/media_file_utility.h +++ b/src/modules/media_file/source/media_file_utility.h @@ -233,8 +233,8 @@ public: WebRtc_Word32 codec_info(CodecInst& codecInst); private: - // Biggest WAV frame supported is 10 ms at 32kHz of 2 channel, 16 bit audio. - enum{WAV_MAX_BUFFER_SIZE = 320*2*2}; + // Biggest WAV frame supported is 10 ms at 48kHz of 2 channel, 16 bit audio. + enum{WAV_MAX_BUFFER_SIZE = 480*2*2}; WebRtc_Word32 InitWavCodec(WebRtc_UWord32 samplesPerSec, diff --git a/src/voice_engine/main/test/win_test/WinTestDlg.cc b/src/voice_engine/main/test/win_test/WinTestDlg.cc index e452e3bc4..de5480205 100644 --- a/src/voice_engine/main/test/win_test/WinTestDlg.cc +++ b/src/voice_engine/main/test/win_test/WinTestDlg.cc @@ -2382,7 +2382,8 @@ void CWinTestDlg::OnBnClickedCheckPlayFileIn2() void CWinTestDlg::OnBnClickedCheckPlayFileOut1() { - const FileFormats formats[7] = {{kFileFormatPcm16kHzFile}, + const FileFormats formats[8] = {{kFileFormatPcm16kHzFile}, + {kFileFormatWavFile}, {kFileFormatWavFile}, {kFileFormatWavFile}, {kFileFormatWavFile}, @@ -2390,14 +2391,14 @@ void CWinTestDlg::OnBnClickedCheckPlayFileOut1() {kFileFormatWavFile}, {kFileFormatWavFile}}; // File path is relative to the location of 'voice_engine.gyp'. - const char spkrFiles[8][64] = {{"../test/data/voice_engine/audio_short16.pcm"}, - {"../test/data/voice_engine/audio_tiny8.wav"}, - {"../test/data/voice_engine/audio_tiny11.wav"}, - {"../test/data/voice_engine/audio_tiny16.wav"}, - {"../test/data/voice_engine/audio_tiny22.wav"}, - {"../test/data/voice_engine/audio_tiny32.wav"}, - {"../test/data/voice_engine/audio_tiny44.wav"}, - {"../test/data/voice_engine/audio_tiny48.wav"}}; + const char spkrFiles[8][64] = {{"../../test/data/voice_engine/audio_short16.pcm"}, + {"../../test/data/voice_engine/audio_tiny8.wav"}, + {"../../test/data/voice_engine/audio_tiny11.wav"}, + {"../../test/data/voice_engine/audio_tiny16.wav"}, + {"../../test/data/voice_engine/audio_tiny22.wav"}, + {"../../test/data/voice_engine/audio_tiny32.wav"}, + {"../../test/data/voice_engine/audio_tiny44.wav"}, + {"../../test/data/voice_engine/audio_tiny48.wav"}}; int ret(0); int channel = GetDlgItemInt(IDC_EDIT_1); CButton* button = (CButton*)GetDlgItem(IDC_CHECK_PLAY_FILE_OUT_1); @@ -2409,11 +2410,11 @@ void CWinTestDlg::OnBnClickedCheckPlayFileOut1() const float volumeScaling(1.0); const int startPointMs(0); const int stopPointMs(0); - const FileFormats format = formats[_checkPlayFileOut1 % 7]; - const char* spkrFile = spkrFiles[_checkPlayFileOut1 % 7]; + const FileFormats format = formats[_checkPlayFileOut1 % 8]; + const char* spkrFile = spkrFiles[_checkPlayFileOut1 % 8]; CString str; - if (_checkPlayFileOut1 % 7 == 0) + if (_checkPlayFileOut1 % 8 == 0) { str = _T("kFileFormatPcm16kHzFile"); }