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

Side by Side Diff: webrtc/modules/audio_coding/neteq/neteq_impl.h

Issue 2839163002: NetEq: Add functionality to assist with delay analysis and tooling (Closed)
Patch Set: After first round of reviews Created 3 years, 7 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
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 void RemoveAllPayloadTypes() override; 132 void RemoveAllPayloadTypes() override;
133 133
134 bool SetMinimumDelay(int delay_ms) override; 134 bool SetMinimumDelay(int delay_ms) override;
135 135
136 bool SetMaximumDelay(int delay_ms) override; 136 bool SetMaximumDelay(int delay_ms) override;
137 137
138 int LeastRequiredDelayMs() const override; 138 int LeastRequiredDelayMs() const override;
139 139
140 int SetTargetDelay() override; 140 int SetTargetDelay() override;
141 141
142 int TargetDelay() override; 142 int TargetDelayMs() override;
143 143
144 int CurrentDelayMs() const override; 144 int CurrentDelayMs() const override;
145 145
146 int FilteredCurrentDelayMs() const override; 146 int FilteredCurrentDelayMs() const override;
147 147
148 // Sets the playout mode to |mode|. 148 // Sets the playout mode to |mode|.
149 // Deprecated. 149 // Deprecated.
150 // TODO(henrik.lundin) Delete. 150 // TODO(henrik.lundin) Delete.
151 void SetPlayoutMode(NetEqPlayoutMode mode) override; 151 void SetPlayoutMode(NetEqPlayoutMode mode) override;
152 152
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 200
201 void PacketBufferStatistics(int* current_num_packets, 201 void PacketBufferStatistics(int* current_num_packets,
202 int* max_num_packets) const override; 202 int* max_num_packets) const override;
203 203
204 void EnableNack(size_t max_nack_list_size) override; 204 void EnableNack(size_t max_nack_list_size) override;
205 205
206 void DisableNack() override; 206 void DisableNack() override;
207 207
208 std::vector<uint16_t> GetNackList(int64_t round_trip_time_ms) const override; 208 std::vector<uint16_t> GetNackList(int64_t round_trip_time_ms) const override;
209 209
210 std::vector<uint32_t> LastDecodedTimestamps() const override;
211
212 int SyncBufferSizeMs() const override;
213
210 // This accessor method is only intended for testing purposes. 214 // This accessor method is only intended for testing purposes.
211 const SyncBuffer* sync_buffer_for_test() const; 215 const SyncBuffer* sync_buffer_for_test() const;
212 Operations last_operation_for_test() const; 216 Operations last_operation_for_test() const;
213 217
214 protected: 218 protected:
215 static const int kOutputSizeMs = 10; 219 static const int kOutputSizeMs = 10;
216 static const size_t kMaxFrameSize = 5760; // 120 ms @ 48 kHz. 220 static const size_t kMaxFrameSize = 5760; // 120 ms @ 48 kHz.
217 // TODO(hlundin): Provide a better value for kSyncBufferSize. 221 // TODO(hlundin): Provide a better value for kSyncBufferSize.
218 // Current value is kMaxFrameSize + 60 ms * 48 kHz, which is enough for 222 // Current value is kMaxFrameSize + 60 ms * 48 kHz, which is enough for
219 // calculating correlations of current frame against history. 223 // calculating correlations of current frame against history.
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
407 const BackgroundNoiseMode background_noise_mode_ GUARDED_BY(crit_sect_); 411 const BackgroundNoiseMode background_noise_mode_ GUARDED_BY(crit_sect_);
408 NetEqPlayoutMode playout_mode_ GUARDED_BY(crit_sect_); 412 NetEqPlayoutMode playout_mode_ GUARDED_BY(crit_sect_);
409 bool enable_fast_accelerate_ GUARDED_BY(crit_sect_); 413 bool enable_fast_accelerate_ GUARDED_BY(crit_sect_);
410 std::unique_ptr<NackTracker> nack_ GUARDED_BY(crit_sect_); 414 std::unique_ptr<NackTracker> nack_ GUARDED_BY(crit_sect_);
411 bool nack_enabled_ GUARDED_BY(crit_sect_); 415 bool nack_enabled_ GUARDED_BY(crit_sect_);
412 const bool enable_muted_state_ GUARDED_BY(crit_sect_); 416 const bool enable_muted_state_ GUARDED_BY(crit_sect_);
413 AudioFrame::VADActivity last_vad_activity_ GUARDED_BY(crit_sect_) = 417 AudioFrame::VADActivity last_vad_activity_ GUARDED_BY(crit_sect_) =
414 AudioFrame::kVadPassive; 418 AudioFrame::kVadPassive;
415 std::unique_ptr<TickTimer::Stopwatch> generated_noise_stopwatch_ 419 std::unique_ptr<TickTimer::Stopwatch> generated_noise_stopwatch_
416 GUARDED_BY(crit_sect_); 420 GUARDED_BY(crit_sect_);
421 std::vector<uint32_t> last_decoded_timestamps_ GUARDED_BY(crit_sect_);
417 422
418 private: 423 private:
419 RTC_DISALLOW_COPY_AND_ASSIGN(NetEqImpl); 424 RTC_DISALLOW_COPY_AND_ASSIGN(NetEqImpl);
420 }; 425 };
421 426
422 } // namespace webrtc 427 } // namespace webrtc
423 #endif // WEBRTC_MODULES_AUDIO_CODING_NETEQ_NETEQ_IMPL_H_ 428 #endif // WEBRTC_MODULES_AUDIO_CODING_NETEQ_NETEQ_IMPL_H_
OLDNEW
« no previous file with comments | « webrtc/modules/audio_coding/neteq/include/neteq.h ('k') | webrtc/modules/audio_coding/neteq/neteq_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698