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

Side by Side Diff: chromecast/media/cma/backend/alsa/stream_mixer_alsa_input_impl.h

Issue 1809203003: [Chromecast] Improve rendering delay accuracy by tracking partial samples (Closed) Base URL: https://chromium.googlesource.com/chromium/src@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | chromecast/media/cma/backend/alsa/stream_mixer_alsa_input_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROMECAST_MEDIA_CMA_BACKEND_ALSA_STREAM_MIXER_ALSA_INPUT_IMPL_H_ 5 #ifndef CHROMECAST_MEDIA_CMA_BACKEND_ALSA_STREAM_MIXER_ALSA_INPUT_IMPL_H_
6 #define CHROMECAST_MEDIA_CMA_BACKEND_ALSA_STREAM_MIXER_ALSA_INPUT_IMPL_H_ 6 #define CHROMECAST_MEDIA_CMA_BACKEND_ALSA_STREAM_MIXER_ALSA_INPUT_IMPL_H_
7 7
8 #include <deque> 8 #include <deque>
9 9
10 #include "base/macros.h" 10 #include "base/macros.h"
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 const scoped_refptr<base::SingleThreadTaskRunner> mixer_task_runner_; 145 const scoped_refptr<base::SingleThreadTaskRunner> mixer_task_runner_;
146 const scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner_; 146 const scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner_;
147 147
148 State state_; 148 State state_;
149 float volume_multiplier_; 149 float volume_multiplier_;
150 150
151 base::Lock queue_lock_; // Lock for the following queue-related members. 151 base::Lock queue_lock_; // Lock for the following queue-related members.
152 scoped_refptr<DecoderBufferBase> pending_data_; 152 scoped_refptr<DecoderBufferBase> pending_data_;
153 std::deque<scoped_refptr<DecoderBufferBase>> queue_; 153 std::deque<scoped_refptr<DecoderBufferBase>> queue_;
154 int queued_frames_; 154 int queued_frames_;
155 int queued_frames_including_resampler_; 155 double queued_frames_including_resampler_;
156 MediaPipelineBackendAlsa::RenderingDelay mixer_rendering_delay_; 156 MediaPipelineBackendAlsa::RenderingDelay mixer_rendering_delay_;
157 // End of members that queue_lock_ controls access for. 157 // End of members that queue_lock_ controls access for.
158 158
159 int current_buffer_offset_; 159 int current_buffer_offset_;
160 int max_queued_frames_; 160 int max_queued_frames_;
161 int fade_frames_remaining_; 161 int fade_frames_remaining_;
162 int fade_out_frames_total_; 162 int fade_out_frames_total_;
163 int zeroed_frames_; // current count of consecutive 0-filled frames 163 int zeroed_frames_; // current count of consecutive 0-filled frames
164 164
165 OnReadyToDeleteCb delete_cb_; 165 OnReadyToDeleteCb delete_cb_;
166 166
167 scoped_ptr<::media::MultiChannelResampler> resampler_; 167 scoped_ptr<::media::MultiChannelResampler> resampler_;
168 168
169 base::WeakPtr<StreamMixerAlsaInputImpl> weak_this_; 169 base::WeakPtr<StreamMixerAlsaInputImpl> weak_this_;
170 base::WeakPtrFactory<StreamMixerAlsaInputImpl> weak_factory_; 170 base::WeakPtrFactory<StreamMixerAlsaInputImpl> weak_factory_;
171 171
172 DISALLOW_COPY_AND_ASSIGN(StreamMixerAlsaInputImpl); 172 DISALLOW_COPY_AND_ASSIGN(StreamMixerAlsaInputImpl);
173 }; 173 };
174 174
175 } // namespace media 175 } // namespace media
176 } // namespace chromecast 176 } // namespace chromecast
177 177
178 #endif // CHROMECAST_MEDIA_CMA_BACKEND_ALSA_STREAM_MIXER_ALSA_INPUT_IMPL_H_ 178 #endif // CHROMECAST_MEDIA_CMA_BACKEND_ALSA_STREAM_MIXER_ALSA_INPUT_IMPL_H_
OLDNEW
« no previous file with comments | « no previous file | chromecast/media/cma/backend/alsa/stream_mixer_alsa_input_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698