Updating delay for first value

BUG=

Review URL: https://webrtc-codereview.appspot.com/1327005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3865 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/webrtc/modules/video_coding/main/source/receiver.cc b/webrtc/modules/video_coding/main/source/receiver.cc
index 5155ee5..2595fb2 100644
--- a/webrtc/modules/video_coding/main/source/receiver.cc
+++ b/webrtc/modules/video_coding/main/source/receiver.cc
@@ -420,6 +420,8 @@
   jitter_buffer_.SetMaxJitterEstimate(desired_delay_ms);
   max_video_delay_ms_ = desired_delay_ms + kMaxVideoDelayMs;
   timing_->SetMaxVideoDelay(max_video_delay_ms_);
+  // Initializing timing to the desired delay.
+  timing_->SetRequiredDelay(desired_delay_ms);
   return 0;
 }
 
diff --git a/webrtc/modules/video_coding/main/source/timing.cc b/webrtc/modules/video_coding/main/source/timing.cc
index 2a381bd..1146223 100644
--- a/webrtc/modules/video_coding/main/source/timing.cc
+++ b/webrtc/modules/video_coding/main/source/timing.cc
@@ -108,6 +108,10 @@
                     "Desired jitter buffer level: %u ms", requiredDelayMs);
         }
         _requiredDelayMs = requiredDelayMs;
+        // When in initial state, set current delay to minimum delay.
+        if (_currentDelayMs == 0) {
+           _currentDelayMs = _requiredDelayMs;
+        }
     }
 }
 
@@ -270,7 +274,6 @@
     {
         estimatedCompleteTimeMs = nowMs;
     }
-
     return estimatedCompleteTimeMs + _currentDelayMs;
 }
 
diff --git a/webrtc/modules/video_coding/main/source/timing.h b/webrtc/modules/video_coding/main/source/timing.h
index 74bec72..ae0bd57 100644
--- a/webrtc/modules/video_coding/main/source/timing.h
+++ b/webrtc/modules/video_coding/main/source/timing.h
@@ -95,19 +95,19 @@
     uint32_t TargetDelayInternal() const;
 
 private:
-    CriticalSectionWrapper*       _critSect;
-    int32_t                 _vcmId;
-    Clock*                        _clock;
-    int32_t                 _timingId;
-    bool                          _master;
-    VCMTimestampExtrapolator*     _tsExtrapolator;
-    VCMCodecTimer                 _codecTimer;
-    uint32_t                _renderDelayMs;
-    uint32_t                _minTotalDelayMs;
-    uint32_t                _requiredDelayMs;
-    uint32_t                _currentDelayMs;
-    uint32_t                _prevFrameTimestamp;
-    int                           _maxVideoDelayMs;
+    CriticalSectionWrapper* _critSect;
+    int32_t _vcmId;
+    Clock* _clock;
+    int32_t _timingId;
+    bool _master;
+    VCMTimestampExtrapolator* _tsExtrapolator;
+    VCMCodecTimer _codecTimer;
+    uint32_t _renderDelayMs;
+    uint32_t _minTotalDelayMs;
+    uint32_t _requiredDelayMs;
+    uint32_t _currentDelayMs;
+    uint32_t _prevFrameTimestamp;
+    int _maxVideoDelayMs;
 };
 
 } // namespace webrtc