Optional: Use nullopt and implicit construction in /modules/audio_processing

Changes places where we explicitly construct an Optional to instead use
nullopt or the requisite value type only.

This CL was uploaded by git cl split.

R=henrik.lundin@webrtc.org

Bug: None
Change-Id: I733a83f702fe11884d229a1713cfac952727bde8
Reviewed-on: https://webrtc-review.googlesource.com/23601
Commit-Queue: Oskar Sundbom <ossu@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20786}
diff --git a/modules/audio_processing/aec3/render_delay_controller.cc b/modules/audio_processing/aec3/render_delay_controller.cc
index 7de97cd..2c1f263 100644
--- a/modules/audio_processing/aec3/render_delay_controller.cc
+++ b/modules/audio_processing/aec3/render_delay_controller.cc
@@ -96,7 +96,7 @@
   blocks_since_last_delay_estimate_ = 300000;
   echo_path_delay_samples_ = delay_ * kBlockSize;
   align_call_counter_ = 0;
-  headroom_samples_ = rtc::Optional<size_t>();
+  headroom_samples_ = rtc::nullopt;
   std::fill(capture_delay_buffer_.begin(), capture_delay_buffer_.end(), 0.f);
   delay_estimator_.Reset();
 }
@@ -150,15 +150,15 @@
       if (echo_path_delay_samples_corrected >= 0) {
         const int headroom = echo_path_delay_samples_ - delay_ * kBlockSize;
         RTC_DCHECK_LE(0, headroom);
-        headroom_samples_ = rtc::Optional<size_t>(headroom);
+        headroom_samples_ = headroom;
       } else {
-        headroom_samples_ = rtc::Optional<size_t>();
+        headroom_samples_ = rtc::nullopt;
       }
     }
 
-    metrics_.Update(rtc::Optional<size_t>(echo_path_delay_samples_), delay_);
+    metrics_.Update(echo_path_delay_samples_, delay_);
   } else {
-    metrics_.Update(rtc::Optional<size_t>(), delay_);
+    metrics_.Update(rtc::nullopt, delay_);
   }
 
   data_dumper_->DumpRaw("aec3_render_delay_controller_delay", 1,