Index: webrtc/modules/audio_coding/codecs/opus/opus_inst.h |
diff --git a/webrtc/modules/audio_coding/codecs/opus/opus_inst.h b/webrtc/modules/audio_coding/codecs/opus/opus_inst.h |
index 373db392a6f3acbfeca4bca22f481aed56bffd82..8573b6d43667fc8e46083cb24fbee594bb4936b9 100644 |
--- a/webrtc/modules/audio_coding/codecs/opus/opus_inst.h |
+++ b/webrtc/modules/audio_coding/codecs/opus/opus_inst.h |
@@ -15,7 +15,14 @@ |
struct WebRtcOpusEncInst { |
OpusEncoder* encoder; |
+ int channels; |
int in_dtx_mode; |
+ // When Opus is in DTX mode, we use |zero_counts| to count consecutive zeros |
+ // to break long zero segment so as to prevent DTX from going wrong. We use |
+ // one counter for each channel. After each encoding, |zero_counts| contain |
+ // the remaining zeros from the last frame. |
+ // TODO(minyue): remove this when Opus gets an internal fix to DTX. |
+ size_t* zero_counts; |
}; |
struct WebRtcOpusDecInst { |