diff --git a/test/configurable_frame_size_encoder.h b/test/configurable_frame_size_encoder.h
index 24f6be8..eed4498 100644
--- a/test/configurable_frame_size_encoder.h
+++ b/test/configurable_frame_size_encoder.h
@@ -24,28 +24,26 @@
   explicit ConfigurableFrameSizeEncoder(size_t max_frame_size);
   virtual ~ConfigurableFrameSizeEncoder();
 
-  virtual int32_t InitEncode(const VideoCodec* codec_settings,
-                             int32_t number_of_cores,
-                             size_t max_payload_size) OVERRIDE;
+  int32_t InitEncode(const VideoCodec* codec_settings,
+                     int32_t number_of_cores,
+                     size_t max_payload_size) override;
 
-  virtual int32_t Encode(const I420VideoFrame& input_image,
-                         const CodecSpecificInfo* codec_specific_info,
-                         const std::vector<VideoFrameType>* frame_types)
-      OVERRIDE;
+  int32_t Encode(const I420VideoFrame& input_image,
+                 const CodecSpecificInfo* codec_specific_info,
+                 const std::vector<VideoFrameType>* frame_types) override;
 
-  virtual int32_t RegisterEncodeCompleteCallback(EncodedImageCallback* callback)
-      OVERRIDE;
+  int32_t RegisterEncodeCompleteCallback(
+      EncodedImageCallback* callback) override;
 
-  virtual int32_t Release() OVERRIDE;
+  int32_t Release() override;
 
-  virtual int32_t SetChannelParameters(uint32_t packet_loss,
-                                       int64_t rtt) OVERRIDE;
+  int32_t SetChannelParameters(uint32_t packet_loss, int64_t rtt) override;
 
-  virtual int32_t SetRates(uint32_t new_bit_rate, uint32_t frame_rate) OVERRIDE;
+  int32_t SetRates(uint32_t new_bit_rate, uint32_t frame_rate) override;
 
-  virtual int32_t SetPeriodicKeyFrames(bool enable) OVERRIDE;
+  int32_t SetPeriodicKeyFrames(bool enable) override;
 
-  virtual int32_t CodecConfigParameters(uint8_t* buffer, int32_t size) OVERRIDE;
+  int32_t CodecConfigParameters(uint8_t* buffer, int32_t size) override;
 
   int32_t SetFrameSize(size_t size);
 
