diff options
| author | grunell <grunell@chromium.org> | 2015-12-18 03:28:21 -0800 |
|---|---|---|
| committer | Commit bot <commit-bot@chromium.org> | 2015-12-18 11:29:19 +0000 |
| commit | 09a6d7939e02a3b892d3eeaac95c5f0fc36e7e72 (patch) | |
| tree | 82e8ecc62499e9452d16bbcc9fb1ab70ad785884 /components/audio_modem/audio_player_impl.cc | |
| parent | bbebdda2945f809f53ecdd41100a315ed3265532 (diff) | |
| download | chromium_src-09a6d7939e02a3b892d3eeaac95c5f0fc36e7e72.zip chromium_src-09a6d7939e02a3b892d3eeaac95c5f0fc36e7e72.tar.gz chromium_src-09a6d7939e02a3b892d3eeaac95c5f0fc36e7e72.tar.bz2 | |
Forward the number of skipped frames by the OS in audio playout.
* Introduce AudioOutputBufferParameters in media/audio/audio_parameters.h. This contains number of skipped frames.
* Change the shared memory to hold AudioOutputBufferParameters before the audio data.
* Forward skipped frames by OS on Mac over IPC. Not yet used by any client.
This relands https://codereview.chromium.org/1487983002/ which was reverted due to crackling flash (pepper) audio.
Original CL is in patch set 1.
Will be done in follow-up CLs:
* Forward skipped frames by OS on Windows.
* Forward skipped frames to the WebRTC AEC.
BUG=560371
TBR=dalecurtis@chromium.org,ckehoe@chromium.org (no changes from original CL)
Review URL: https://codereview.chromium.org/1538563002
Cr-Commit-Position: refs/heads/master@{#366078}
Diffstat (limited to 'components/audio_modem/audio_player_impl.cc')
| -rw-r--r-- | components/audio_modem/audio_player_impl.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/components/audio_modem/audio_player_impl.cc b/components/audio_modem/audio_player_impl.cc index 22fd723..cd52f05 100644 --- a/components/audio_modem/audio_player_impl.cc +++ b/components/audio_modem/audio_player_impl.cc @@ -134,7 +134,8 @@ void AudioPlayerImpl::FinalizeOnAudioThread() { } int AudioPlayerImpl::OnMoreData(media::AudioBus* dest, - uint32 /* total_bytes_delay */) { + uint32_t /* total_bytes_delay */, + uint32_t /* frames_skipped */) { base::AutoLock al(state_lock_); // Continuously play our samples till explicitly told to stop. const int leftover_frames = samples_->frames() - frame_index_; |
