             config[AVVideoHeightKey] = NSNumber(integerLiteral: Int(height))
         }
 
-        config = self.update(config: config)
+		if let sizeDivisibleBy = sizeDivisibleBy {
+			config = adjustConfigurationDimensions(config: config, withSizeValuesDivisibleBy: sizeDivisibleBy)
+		}
 
         config[AVVideoCodecKey] = self.codec
         config[AVVideoScalingModeKey] = self.scalingMode

    /// Maximum recording duration, when set, session finishes automatically
    public var maximumCaptureDuration: CMTime?

    // MARK: - object lifecycle

    override public init() {

    ///   - config: Input configuration dictionary
    ///   - divisibleBy: Divisor
    /// - Returns: Configuration with appropriately divided sizes
    private func adjustConfigurationDimensions(config: [String: Any], withSizeValuesDivisibleBy divisibleBy: Int = 16) -> [String: Any] {
        var config = config

        if let width = config[AVVideoWidthKey] as? Int {
