diff options
author | xians@chromium.org <xians@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-11 11:41:37 +0000 |
---|---|---|
committer | xians@chromium.org <xians@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-11 11:41:37 +0000 |
commit | c2bdcc9b0b8ca209ea558994a8fd8a79c1343381 (patch) | |
tree | a8e4cca7cea5c78bd530226a5048d9c3e40b1585 /ppapi | |
parent | e483b3be3da5699a384c8e518b2b63e1ee1265cb (diff) | |
download | chromium_src-c2bdcc9b0b8ca209ea558994a8fd8a79c1343381.zip chromium_src-c2bdcc9b0b8ca209ea558994a8fd8a79c1343381.tar.gz chromium_src-c2bdcc9b0b8ca209ea558994a8fd8a79c1343381.tar.bz2 |
Extend the sample rates that Pepper should support.
Chrome actually supports a wide range of sample rates for the capture audio. So Pepper should also do this.
Also, since getUserMedia soon has APM in chrome, that means Pepper will get post-processed data whose sample rate will be 16000 on Android and 32000 on Desktop. In the future it will be 48000.
NOTRY=true
BUG=264611
TEST=browser_tests --gtest_filter="*PPAPINaClGLibcTest.*"
Review URL: https://codereview.chromium.org/192293007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256206 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi')
-rw-r--r-- | ppapi/api/ppb_audio_buffer.idl | 8 | ||||
-rw-r--r-- | ppapi/c/ppb_audio_buffer.h | 10 | ||||
-rw-r--r-- | ppapi/tests/test_media_stream_audio_track.cc | 21 | ||||
-rw-r--r-- | ppapi/thunk/ppb_display_color_profile_private_thunk.cc | 2 |
4 files changed, 36 insertions, 5 deletions
diff --git a/ppapi/api/ppb_audio_buffer.idl b/ppapi/api/ppb_audio_buffer.idl index 6d8fa63..1083e0d 100644 --- a/ppapi/api/ppb_audio_buffer.idl +++ b/ppapi/api/ppb_audio_buffer.idl @@ -20,7 +20,13 @@ label Chrome { enum PP_AudioBuffer_SampleRate { PP_AUDIOBUFFER_SAMPLERATE_UNKNOWN = 0, PP_AUDIOBUFFER_SAMPLERATE_8000 = 8000, - PP_AUDIOBUFFER_SAMPLERATE_44100 = 44100 + PP_AUDIOBUFFER_SAMPLERATE_16000 = 16000, + PP_AUDIOBUFFER_SAMPLERATE_22050 = 22050, + PP_AUDIOBUFFER_SAMPLERATE_32000 = 32000, + PP_AUDIOBUFFER_SAMPLERATE_44100 = 44100, + PP_AUDIOBUFFER_SAMPLERATE_48000 = 48000, + PP_AUDIOBUFFER_SAMPLERATE_96000 = 96000, + PP_AUDIOBUFFER_SAMPLERATE_192000 = 192000 }; /** diff --git a/ppapi/c/ppb_audio_buffer.h b/ppapi/c/ppb_audio_buffer.h index a58af2d..6424cba 100644 --- a/ppapi/c/ppb_audio_buffer.h +++ b/ppapi/c/ppb_audio_buffer.h @@ -3,7 +3,7 @@ * found in the LICENSE file. */ -/* From ppb_audio_buffer.idl modified Thu Feb 6 15:31:48 2014. */ +/* From ppb_audio_buffer.idl modified Mon Mar 10 20:21:25 2014. */ #ifndef PPAPI_C_PPB_AUDIO_BUFFER_H_ #define PPAPI_C_PPB_AUDIO_BUFFER_H_ @@ -32,7 +32,13 @@ typedef enum { PP_AUDIOBUFFER_SAMPLERATE_UNKNOWN = 0, PP_AUDIOBUFFER_SAMPLERATE_8000 = 8000, - PP_AUDIOBUFFER_SAMPLERATE_44100 = 44100 + PP_AUDIOBUFFER_SAMPLERATE_16000 = 16000, + PP_AUDIOBUFFER_SAMPLERATE_22050 = 22050, + PP_AUDIOBUFFER_SAMPLERATE_32000 = 32000, + PP_AUDIOBUFFER_SAMPLERATE_44100 = 44100, + PP_AUDIOBUFFER_SAMPLERATE_48000 = 48000, + PP_AUDIOBUFFER_SAMPLERATE_96000 = 96000, + PP_AUDIOBUFFER_SAMPLERATE_192000 = 192000 } PP_AudioBuffer_SampleRate; /** diff --git a/ppapi/tests/test_media_stream_audio_track.cc b/ppapi/tests/test_media_stream_audio_track.cc index a1b57ff..e58d4f0 100644 --- a/ppapi/tests/test_media_stream_audio_track.cc +++ b/ppapi/tests/test_media_stream_audio_track.cc @@ -34,6 +34,25 @@ const char kJSCode[] = " navigator.getUserMedia || navigator.webkitGetUserMedia;" "navigator.getUserMedia(constraints," " gotStream, function() {});"; + +// Helper to check if the |sample_rate| is listed in PP_AudioBuffer_SampleRate +// enum. +bool IsSampleRateValid(PP_AudioBuffer_SampleRate sample_rate) { + switch (sample_rate) { + case PP_AUDIOBUFFER_SAMPLERATE_8000: + case PP_AUDIOBUFFER_SAMPLERATE_16000: + case PP_AUDIOBUFFER_SAMPLERATE_22050: + case PP_AUDIOBUFFER_SAMPLERATE_32000: + case PP_AUDIOBUFFER_SAMPLERATE_44100: + case PP_AUDIOBUFFER_SAMPLERATE_48000: + case PP_AUDIOBUFFER_SAMPLERATE_96000: + case PP_AUDIOBUFFER_SAMPLERATE_192000: + return true; + default: + return false; + } +} + } TestMediaStreamAudioTrack::TestMediaStreamAudioTrack(TestingInstance* instance) @@ -97,7 +116,7 @@ std::string TestMediaStreamAudioTrack::TestGetBuffer() { ASSERT_EQ(PP_OK, cc.result()); pp::AudioBuffer buffer = cc.output(); ASSERT_FALSE(buffer.is_null()); - ASSERT_EQ(buffer.GetSampleRate(), PP_AUDIOBUFFER_SAMPLERATE_44100); + ASSERT_TRUE(IsSampleRateValid(buffer.GetSampleRate())); ASSERT_EQ(buffer.GetSampleSize(), PP_AUDIOBUFFER_SAMPLESIZE_16_BITS); ASSERT_GE(buffer.GetTimestamp(), timestamp); diff --git a/ppapi/thunk/ppb_display_color_profile_private_thunk.cc b/ppapi/thunk/ppb_display_color_profile_private_thunk.cc index 34b428b..6b14347 100644 --- a/ppapi/thunk/ppb_display_color_profile_private_thunk.cc +++ b/ppapi/thunk/ppb_display_color_profile_private_thunk.cc @@ -3,7 +3,7 @@ // found in the LICENSE file. // From private/ppb_display_color_profile_private.idl, -// modified Mon Feb 17 15:14:07 2014. +// modified Tue Feb 18 18:03:36 2014. #include "ppapi/c/pp_completion_callback.h" #include "ppapi/c/pp_errors.h" |