diff --git a/daemon/src/media/media_encoder.cpp b/daemon/src/media/media_encoder.cpp
index 5508dcc72e60345473ac3d63dfa1381002e46cce..d473ee6a2751134576d9e226448af9ea3dbf185e 100644
--- a/daemon/src/media/media_encoder.cpp
+++ b/daemon/src/media/media_encoder.cpp
@@ -500,6 +500,13 @@ void MediaEncoder::prepareEncoderContext(bool is_video)
                                                     NULL, 0)->value);
     RING_DBG("[%s] Using bitrate %d", encoderName, encoderCtx_->bit_rate);
 
+    // Use constant bitrate (video only)
+    if (is_video) {
+        RING_DBG("[%s] Using CBR", encoderName);
+        encoderCtx_->rc_min_rate = \
+            encoderCtx_->rc_max_rate = encoderCtx_->bit_rate;
+    }
+
     encoderCtx_->thread_count = std::thread::hardware_concurrency();
     RING_DBG("[%s] Using %d threads", encoderName, encoderCtx_->thread_count);