Improve AV-sync when initial delay is set and NetEq has long buffer.
Review URL: https://webrtc-codereview.appspot.com/1324006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3883 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/webrtc/modules/audio_coding/neteq/signal_mcu.c b/webrtc/modules/audio_coding/neteq/signal_mcu.c
index ebe035d..b3791d1 100644
--- a/webrtc/modules/audio_coding/neteq/signal_mcu.c
+++ b/webrtc/modules/audio_coding/neteq/signal_mcu.c
@@ -43,9 +43,12 @@
if (codec_pos >= 0) {
codec_pos = inst->codec_DB_inst.position[codec_pos];
if (codec_pos >= 0) {
- return WebRtcNetEQ_PacketBufferGetPacketSize(
- &inst->PacketBuffer_inst, buffer_pos,
- &inst->codec_DB_inst, codec_pos, pack_size_samples);
+ int temp_packet_size_samples = WebRtcNetEQ_PacketBufferGetPacketSize(
+ &inst->PacketBuffer_inst, buffer_pos, &inst->codec_DB_inst,
+ codec_pos, pack_size_samples, inst->av_sync);
+ if (temp_packet_size_samples > 0)
+ return temp_packet_size_samples;
+ return pack_size_samples;
}
}
}
@@ -245,7 +248,7 @@
/* Check packet buffer */
w32_bufsize = WebRtcNetEQ_PacketBufferGetSize(&inst->PacketBuffer_inst,
- &inst->codec_DB_inst);
+ &inst->codec_DB_inst, inst->av_sync);
if (dspInfo.lastMode == MODE_SUCCESS_ACCELERATE || dspInfo.lastMode
== MODE_LOWEN_ACCELERATE || dspInfo.lastMode == MODE_SUCCESS_PREEMPTIVE