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

Unified Diff: webrtc/modules/audio_processing/include/audio_processing.h

Issue 2778783002: AecDump interface (Closed)
Patch Set: Update to changed CaptureStreamInfo interface. 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 side-by-side diff with in-line comments
Download patch
Index: webrtc/modules/audio_processing/include/audio_processing.h
diff --git a/webrtc/modules/audio_processing/include/audio_processing.h b/webrtc/modules/audio_processing/include/audio_processing.h
index a1cd398b022f225adc233f7ddaa6abcb66ccd985..9232936ebd8312555f73bb41e5b063ce2bf591c5 100644
--- a/webrtc/modules/audio_processing/include/audio_processing.h
+++ b/webrtc/modules/audio_processing/include/audio_processing.h
@@ -29,6 +29,7 @@ namespace webrtc {
struct AecCore;
+class AecDump;
class AudioFrame;
class NonlinearBeamformer;
@@ -447,6 +448,20 @@ class AudioProcessing {
virtual void set_delay_offset_ms(int offset) = 0;
virtual int delay_offset_ms() const = 0;
+ // Attaches provided webrtc::AecDump for recording debugging
+ // information. Log file and maximum file size logic is supposed to
+ // be handled by implementing instance of AecDump. Calling this
+ // method when another AecDump is attached resets the active AecDump
+ // with a new one. This causes the d-tor of the earlier AecDump to
+ // be called. The d-tor call may block until all pending logging
peah-webrtc 2017/05/15 05:32:51 The blocking part is not good at all. If a new aec
aleloi 2017/05/15 13:20:52 After offline discussions d-tor still blocks, but
+ // tasks are completed.
+ virtual void AttachAecDump(std::unique_ptr<AecDump> aec_dump) = 0;
+
+ // If no AecDump is attached, this has no effect. If an AecDump is
+ // attached, it's destructor is called. The d-tor may block until
+ // all pending logging tasks are completed.
+ virtual void DetachAecDump() = 0;
+
// Starts recording debugging information to a file specified by |filename|,
// a NULL-terminated string. If there is an ongoing recording, the old file
// will be closed, and recording will continue in the newly specified file.

Powered by Google App Engine
This is Rietveld 408576698