diff --git a/media/base/adaptedvideotracksource.h b/media/base/adaptedvideotracksource.h
index 82b3237..0db381f 100644
--- a/media/base/adaptedvideotracksource.h
+++ b/media/base/adaptedvideotracksource.h
@@ -30,7 +30,7 @@
  protected:
   // Allows derived classes to initialize |video_adapter_| with a custom
   // alignment.
-  AdaptedVideoTrackSource(int required_alignment);
+  explicit AdaptedVideoTrackSource(int required_alignment);
   // Checks the apply_rotation() flag. If the frame needs rotation, and it is a
   // plain memory frame, it is rotated. Subclasses producing native frames must
   // handle apply_rotation() themselves.
diff --git a/media/base/codec_unittest.cc b/media/base/codec_unittest.cc
index 115808b..394385e 100644
--- a/media/base/codec_unittest.cc
+++ b/media/base/codec_unittest.cc
@@ -229,9 +229,9 @@
   const FeedbackParam b3("b", "3");
   const FeedbackParam c3("c", "3");
   TestCodec c1;
-  c1.AddFeedbackParam(a1); // Only match with c2.
-  c1.AddFeedbackParam(b2); // Same param different values.
-  c1.AddFeedbackParam(c3); // Not in c2.
+  c1.AddFeedbackParam(a1);  // Only match with c2.
+  c1.AddFeedbackParam(b2);  // Same param different values.
+  c1.AddFeedbackParam(c3);  // Not in c2.
   TestCodec c2;
   c2.AddFeedbackParam(a1);
   c2.AddFeedbackParam(b3);
diff --git a/media/base/device.h b/media/base/device.h
index ae9567d..f472938 100644
--- a/media/base/device.h
+++ b/media/base/device.h
@@ -11,6 +11,8 @@
 #ifndef MEDIA_BASE_DEVICE_H_
 #define MEDIA_BASE_DEVICE_H_
 
+#include <string>
+
 #include "rtc_base/stringencode.h"
 
 namespace cricket {
diff --git a/media/base/fakemediaengine.h b/media/base/fakemediaengine.h
index 7b09dd4..e067c19 100644
--- a/media/base/fakemediaengine.h
+++ b/media/base/fakemediaengine.h
@@ -16,6 +16,8 @@
 #include <memory>
 #include <set>
 #include <string>
+#include <tuple>
+#include <utility>
 #include <vector>
 
 #include "api/call/audio_sink.h"
@@ -948,8 +950,6 @@
 
 class FakeDataEngine : public DataEngineInterface {
  public:
-  FakeDataEngine(){};
-
   virtual DataMediaChannel* CreateChannel(const MediaConfig& config) {
     FakeDataMediaChannel* ch = new FakeDataMediaChannel(this, DataOptions());
     channels_.push_back(ch);
diff --git a/media/base/fakenetworkinterface.h b/media/base/fakenetworkinterface.h
index 7f5dea0..3d98d1f 100644
--- a/media/base/fakenetworkinterface.h
+++ b/media/base/fakenetworkinterface.h
@@ -12,6 +12,7 @@
 #define MEDIA_BASE_FAKENETWORKINTERFACE_H_
 
 #include <map>
+#include <set>
 #include <vector>
 
 #include "media/base/mediachannel.h"
diff --git a/media/base/mediachannel.h b/media/base/mediachannel.h
index 06766a8..1fed49c 100644
--- a/media/base/mediachannel.h
+++ b/media/base/mediachannel.h
@@ -11,6 +11,7 @@
 #ifndef MEDIA_BASE_MEDIACHANNEL_H_
 #define MEDIA_BASE_MEDIACHANNEL_H_
 
+#include <map>
 #include <memory>
 #include <string>
 #include <vector>
@@ -1223,7 +1224,7 @@
   };
 
   DataMediaChannel() {}
-  DataMediaChannel(const MediaConfig& config) : MediaChannel(config) {}
+  explicit DataMediaChannel(const MediaConfig& config) : MediaChannel(config) {}
   virtual ~DataMediaChannel() {}
 
   virtual bool SetSendParameters(const DataSendParameters& params) = 0;
diff --git a/media/base/mediaengine.h b/media/base/mediaengine.h
index 5fa05c6..483a96b 100644
--- a/media/base/mediaengine.h
+++ b/media/base/mediaengine.h
@@ -16,6 +16,8 @@
 #endif
 
 #include <string>
+#include <tuple>
+#include <utility>
 #include <vector>
 
 #include "api/audio_codecs/audio_decoder_factory.h"
diff --git a/media/base/rtpdataengine.cc b/media/base/rtpdataengine.cc
index 47977e8..cacf973 100644
--- a/media/base/rtpdataengine.cc
+++ b/media/base/rtpdataengine.cc
@@ -10,6 +10,8 @@
 
 #include "media/base/rtpdataengine.h"
 
+#include <map>
+
 #include "media/base/codec.h"
 #include "media/base/mediaconstants.h"
 #include "media/base/rtputils.h"
diff --git a/media/base/rtpdataengine.h b/media/base/rtpdataengine.h
index 7dd182e..525bc02 100644
--- a/media/base/rtpdataengine.h
+++ b/media/base/rtpdataengine.h
@@ -11,6 +11,7 @@
 #ifndef MEDIA_BASE_RTPDATAENGINE_H_
 #define MEDIA_BASE_RTPDATAENGINE_H_
 
+#include <map>
 #include <memory>
 #include <string>
 #include <vector>
@@ -61,7 +62,7 @@
 
 class RtpDataMediaChannel : public DataMediaChannel {
  public:
-  RtpDataMediaChannel(const MediaConfig& config);
+  explicit RtpDataMediaChannel(const MediaConfig& config);
   virtual ~RtpDataMediaChannel();
 
   virtual bool SetSendParameters(const DataSendParameters& params);
diff --git a/media/base/rtputils.cc b/media/base/rtputils.cc
index 5147003..d0ba1cf 100644
--- a/media/base/rtputils.cc
+++ b/media/base/rtputils.cc
@@ -114,7 +114,7 @@
   memcpy(auth_tag, output, tag_length);
 }
 
-}
+}  // namespace
 
 bool GetUint8(const void* data, size_t offset, int* value) {
   if (!data || !value) {
diff --git a/media/base/rtputils_unittest.cc b/media/base/rtputils_unittest.cc
index ada1b50..a71eac7 100644
--- a/media/base/rtputils_unittest.cc
+++ b/media/base/rtputils_unittest.cc
@@ -8,6 +8,8 @@
  *  be found in the AUTHORS file in the root of the source tree.
  */
 
+#include <vector>
+
 #include "media/base/rtputils.h"
 #include "media/base/fakertp.h"
 #include "rtc_base/asyncpacketsocket.h"
diff --git a/media/base/videoadapter.cc b/media/base/videoadapter.cc
index 1cf8344..7fb02e1 100644
--- a/media/base/videoadapter.cc
+++ b/media/base/videoadapter.cc
@@ -14,6 +14,7 @@
 #include <cmath>
 #include <cstdlib>
 #include <limits>
+#include <utility>
 
 #include "api/optional.h"
 #include "media/base/mediaconstants.h"
diff --git a/media/base/videoadapter_unittest.cc b/media/base/videoadapter_unittest.cc
index b05d1e3..522cd5d 100644
--- a/media/base/videoadapter_unittest.cc
+++ b/media/base/videoadapter_unittest.cc
@@ -10,6 +10,7 @@
 
 #include <limits.h>  // For INT_MAX
 
+#include <limits>
 #include <memory>
 #include <string>
 #include <vector>
diff --git a/media/base/videobroadcaster_unittest.cc b/media/base/videobroadcaster_unittest.cc
index ee39b61..779a5d0 100644
--- a/media/base/videobroadcaster_unittest.cc
+++ b/media/base/videobroadcaster_unittest.cc
@@ -8,6 +8,8 @@
  *  be found in the AUTHORS file in the root of the source tree.
  */
 
+#include <limits>
+
 #include "media/base/videobroadcaster.h"
 #include "api/video/i420_buffer.h"
 #include "api/video/video_frame.h"
diff --git a/media/base/videocommon.h b/media/base/videocommon.h
index df97797..264482b 100644
--- a/media/base/videocommon.h
+++ b/media/base/videocommon.h
@@ -10,7 +10,7 @@
 
 // Common definition for video, including fourcc and VideoFormat.
 
-#ifndef MEDIA_BASE_VIDEOCOMMON_H_  // NOLINT
+#ifndef MEDIA_BASE_VIDEOCOMMON_H_
 #define MEDIA_BASE_VIDEOCOMMON_H_
 
 #include <stdint.h>
@@ -226,4 +226,4 @@
 
 }  // namespace cricket
 
-#endif  // MEDIA_BASE_VIDEOCOMMON_H_  // NOLINT
+#endif  // MEDIA_BASE_VIDEOCOMMON_H_
diff --git a/media/base/videosinkinterface.h b/media/base/videosinkinterface.h
index e8e48d8..900e786 100644
--- a/media/base/videosinkinterface.h
+++ b/media/base/videosinkinterface.h
@@ -26,7 +26,7 @@
 
   // Should be called by the source when it discards the frame due to rate
   // limiting.
-  virtual void OnDiscardedFrame(){};
+  virtual void OnDiscardedFrame() {}
 };
 
 }  // namespace rtc
diff --git a/media/base/videosourceinterface.h b/media/base/videosourceinterface.h
index b68011d..701ddec 100644
--- a/media/base/videosourceinterface.h
+++ b/media/base/videosourceinterface.h
@@ -11,6 +11,8 @@
 #ifndef MEDIA_BASE_VIDEOSOURCEINTERFACE_H_
 #define MEDIA_BASE_VIDEOSOURCEINTERFACE_H_
 
+#include <limits>
+
 #include "api/optional.h"
 #include "media/base/videosinkinterface.h"
 
