Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1109)

Issue 15217002: Using native sampling rate and optimal buffer size for audio on Android. (Closed)

Created:
7 years, 7 months ago by leozwang1
Modified:
7 years, 6 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, feature-media-reviews_chromium.org, jam, darin-cc_chromium.org
Base URL:
https://src.chromium.org/svn/trunk/src/
Visibility:
Public.

Description

Using native sampling rate and optimal buffer size for audio on Android. We want to use native sampling rate and optimial buffer size which is returned by framework on Android to achieve high audio quality. BUG=https://code.google.com/p/webrtc/issues/detail?id=1669 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=202464

Patch Set 1 #

Total comments: 2

Patch Set 2 : rebase #

Total comments: 4

Patch Set 3 : size -> frame #

Patch Set 4 : take max #

Total comments: 4

Patch Set 5 : address Qinmin's comments #

Total comments: 24

Patch Set 6 : Address Shijing's comment #

Total comments: 5

Patch Set 7 : change const name #

Total comments: 6

Patch Set 8 : change buffer_size #

Patch Set 9 : rebase #

Total comments: 8

Patch Set 10 : bytes->frames and address Min's comments #

Total comments: 6

Patch Set 11 : change func name #

Unified diffs Side-by-side diffs Delta from patch set Stats (+110 lines, -17 lines) Patch
M media/audio/android/audio_manager_android.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +3 lines, -0 lines 0 comments Download
M media/audio/android/audio_manager_android.cc View 1 2 3 4 5 6 7 8 9 10 5 chunks +38 lines, -12 lines 0 comments Download
M media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java View 1 2 3 4 5 6 7 8 9 10 4 chunks +69 lines, -5 lines 0 comments Download

Messages

Total messages: 40 (0 generated)
leozwang1
I cannot update https://chromiumcodereview.appspot.com/14430003/ I created this one which also added your patch which correctly ...
7 years, 7 months ago (2013-05-16 03:59:04 UTC) #1
Raymond Toy (Google)
lgtm, with a small comment in audio_manager_android. Do you know if the computed buffer size ...
7 years, 7 months ago (2013-05-16 04:32:28 UTC) #2
Raymond Toy (Google)
https://chromiumcodereview.appspot.com/15217002/diff/6001/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://chromiumcodereview.appspot.com/15217002/diff/6001/media/audio/android/audio_manager_android.cc#newcode187 media/audio/android/audio_manager_android.cc:187: int AudioManagerAndroid::GetMinInputBufferSize(int rate, int channels) { Should this be ...
7 years, 7 months ago (2013-05-16 19:30:01 UTC) #3
leozwang2
https://chromiumcodereview.appspot.com/15217002/diff/1/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://chromiumcodereview.appspot.com/15217002/diff/1/media/audio/android/audio_manager_android.cc#newcode129 media/audio/android/audio_manager_android.cc:129: return GetMinOutputBufferSize(sample_rate, channels); All devices I have tested have ...
7 years, 7 months ago (2013-05-16 20:56:08 UTC) #4
leozwang1
Hi Qinmin and Tommi, please review this CL.
7 years, 7 months ago (2013-05-16 20:58:15 UTC) #5
tommi (sloooow) - chröme
I don't know the Android code that well and I'm definitely not qualified to review ...
7 years, 7 months ago (2013-05-17 07:56:17 UTC) #6
qinmin
https://chromiumcodereview.appspot.com/15217002/diff/15001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://chromiumcodereview.appspot.com/15217002/diff/15001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode111 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:111: if (channels == 1) java coding style need {} ...
7 years, 7 months ago (2013-05-17 16:25:23 UTC) #7
leozwang1
Hi Min and Raymond, pls take a look at patch 5. Tommi, thanks. Shijing, please ...
7 years, 7 months ago (2013-05-17 16:51:30 UTC) #8
no longer working on chromium
https://codereview.chromium.org/15217002/diff/22002/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://codereview.chromium.org/15217002/diff/22002/media/audio/android/audio_manager_android.cc#newcode60 media/audio/android/audio_manager_android.cc:60: int size = GetMinInputFrameSize(GetNativeOutputSampleRate(), 2); nit, size -> buffer_size ...
7 years, 7 months ago (2013-05-20 09:59:26 UTC) #9
leozwang1
https://codereview.chromium.org/15217002/diff/22002/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://codereview.chromium.org/15217002/diff/22002/media/audio/android/audio_manager_android.cc#newcode60 media/audio/android/audio_manager_android.cc:60: int size = GetMinInputFrameSize(GetNativeOutputSampleRate(), 2); On 2013/05/20 09:59:26, xians1 ...
7 years, 7 months ago (2013-05-20 17:41:05 UTC) #10
leozwang1
ping
7 years, 7 months ago (2013-05-21 16:15:21 UTC) #11
Raymond Toy (Google)
https://chromiumcodereview.appspot.com/15217002/diff/32001/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://chromiumcodereview.appspot.com/15217002/diff/32001/media/audio/android/audio_manager_android.cc#newcode61 media/audio/android/audio_manager_android.cc:61: static const int kDefaultBufferSize = 1024; This is kind ...
7 years, 7 months ago (2013-05-21 16:30:38 UTC) #12
leozwang1
we used to share one const parameter, I created two now. https://codereview.chromium.org/15217002/diff/32001/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): ...
7 years, 7 months ago (2013-05-21 17:03:31 UTC) #13
no longer working on chromium
https://codereview.chromium.org/15217002/diff/22002/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://codereview.chromium.org/15217002/diff/22002/media/audio/android/audio_manager_android.cc#newcode127 media/audio/android/audio_manager_android.cc:127: return ((kTargetFrameSize + frame_size / 2) / frame_size) * ...
7 years, 7 months ago (2013-05-21 21:52:32 UTC) #14
Raymond Toy (Google)
https://codereview.chromium.org/15217002/diff/22002/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://codereview.chromium.org/15217002/diff/22002/media/audio/android/audio_manager_android.cc#newcode127 media/audio/android/audio_manager_android.cc:127: return ((kTargetFrameSize + frame_size / 2) / frame_size) * ...
7 years, 7 months ago (2013-05-21 22:00:27 UTC) #15
leozwang1
https://codereview.chromium.org/15217002/diff/42001/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://codereview.chromium.org/15217002/diff/42001/media/audio/android/audio_manager_android.cc#newcode133 media/audio/android/audio_manager_android.cc:133: GetMinOutputFrameSize(sample_rate, channels)); The return value of GetMinOutputFrameSize is small ...
7 years, 7 months ago (2013-05-22 06:33:19 UTC) #16
leozwang1
PTAL
7 years, 7 months ago (2013-05-22 17:52:41 UTC) #17
no longer working on chromium
https://codereview.chromium.org/15217002/diff/42001/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://codereview.chromium.org/15217002/diff/42001/media/audio/android/audio_manager_android.cc#newcode141 media/audio/android/audio_manager_android.cc:141: int buffer_size = GetOptimalOutputFrameSize(sample_rate, 2); On 2013/05/22 06:33:19, leozwang1 ...
7 years, 7 months ago (2013-05-22 21:00:00 UTC) #18
leozwang1
https://codereview.chromium.org/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://codereview.chromium.org/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode112 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:112: private static int getMinInputBufSize(int sampleRate, int channels) { java ...
7 years, 7 months ago (2013-05-22 21:03:41 UTC) #19
no longer working on chromium
https://codereview.chromium.org/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://codereview.chromium.org/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode112 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:112: private static int getMinInputBufSize(int sampleRate, int channels) { On ...
7 years, 7 months ago (2013-05-22 21:21:37 UTC) #20
leozwang1
https://codereview.chromium.org/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://codereview.chromium.org/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode112 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:112: private static int getMinInputBufSize(int sampleRate, int channels) { which ...
7 years, 7 months ago (2013-05-22 21:27:42 UTC) #21
no longer working on chromium
https://codereview.chromium.org/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://codereview.chromium.org/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode112 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:112: private static int getMinInputBufSize(int sampleRate, int channels) { On ...
7 years, 7 months ago (2013-05-22 21:41:52 UTC) #22
leozwang1
Here I think you assume the input and output have linear correlation. without looking at ...
7 years, 7 months ago (2013-05-22 21:51:35 UTC) #23
no longer working on chromium
On 2013/05/22 21:51:35, leozwang1 wrote: > Here I think you assume the input and output ...
7 years, 7 months ago (2013-05-23 15:35:52 UTC) #24
leozwang1
vendor needs to implements HAL and returns to framework, so the return value is vendor/hardware ...
7 years, 7 months ago (2013-05-23 16:23:41 UTC) #25
qinmin
lgtm%nits https://chromiumcodereview.appspot.com/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://chromiumcodereview.appspot.com/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode95 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:95: " Board: " + Build.BOARD + " Device: ...
7 years, 7 months ago (2013-05-23 16:27:39 UTC) #26
leozwang1
https://chromiumcodereview.appspot.com/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://chromiumcodereview.appspot.com/15217002/diff/53001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode95 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:95: " Board: " + Build.BOARD + " Device: " ...
7 years, 7 months ago (2013-05-23 21:13:46 UTC) #27
leozwang1
ping reviewers again.
7 years, 7 months ago (2013-05-24 16:13:05 UTC) #28
Raymond Toy (Google)
https://chromiumcodereview.appspot.com/15217002/diff/70001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://chromiumcodereview.appspot.com/15217002/diff/70001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode127 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:127: return AudioRecord.getMinBufferSize( Is there an inconsistency here? The method ...
7 years, 7 months ago (2013-05-24 16:48:35 UTC) #29
leozwang1
https://chromiumcodereview.appspot.com/15217002/diff/70001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://chromiumcodereview.appspot.com/15217002/diff/70001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode127 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:127: return AudioRecord.getMinBufferSize( AudioRecord.getMinBufferSize returns buffer size in bytes, however, ...
7 years, 7 months ago (2013-05-24 17:30:39 UTC) #30
Raymond Toy (Google)
https://chromiumcodereview.appspot.com/15217002/diff/70001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java File media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java (right): https://chromiumcodereview.appspot.com/15217002/diff/70001/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java#newcode127 media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java:127: return AudioRecord.getMinBufferSize( On 2013/05/24 17:30:39, leozwang1 wrote: > AudioRecord.getMinBufferSize ...
7 years, 7 months ago (2013-05-24 18:02:52 UTC) #31
leozwang1
ping Shijing again! please.
7 years, 6 months ago (2013-05-27 15:36:17 UTC) #32
no longer working on chromium
On 2013/05/23 16:23:41, leozwang1 wrote: > vendor needs to implements HAL and returns to framework, ...
7 years, 6 months ago (2013-05-27 15:50:27 UTC) #33
leozwang1
please check patch 9 and I need owner's stamp too.
7 years, 6 months ago (2013-05-27 15:56:24 UTC) #34
no longer working on chromium
almost there, one minor question https://chromiumcodereview.appspot.com/15217002/diff/70001/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://chromiumcodereview.appspot.com/15217002/diff/70001/media/audio/android/audio_manager_android.cc#newcode201 media/audio/android/audio_manager_android.cc:201: int AudioManagerAndroid::GetAudioLowLatencyFrameSize() { Can ...
7 years, 6 months ago (2013-05-27 16:04:55 UTC) #35
leozwang1
https://chromiumcodereview.appspot.com/15217002/diff/70001/media/audio/android/audio_manager_android.cc File media/audio/android/audio_manager_android.cc (right): https://chromiumcodereview.appspot.com/15217002/diff/70001/media/audio/android/audio_manager_android.cc#newcode201 media/audio/android/audio_manager_android.cc:201: int AudioManagerAndroid::GetAudioLowLatencyFrameSize() { this low latency mode is for ...
7 years, 6 months ago (2013-05-27 16:11:37 UTC) #36
no longer working on chromium
can we change the name to GetLowLatencyOutputFrameSize ? I am ooo now, lgtm to this ...
7 years, 6 months ago (2013-05-27 16:44:49 UTC) #37
leozwang1
will commit patch 10.thanks all.
7 years, 6 months ago (2013-05-27 17:21:28 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/leozwang@chromium.org/15217002/84001
7 years, 6 months ago (2013-05-27 18:46:27 UTC) #39
commit-bot: I haz the power
7 years, 6 months ago (2013-05-27 21:14:55 UTC) #40
Message was sent while issue was closed.
Change committed as 202464

Powered by Google App Engine
This is Rietveld 408576698