You can try using this code.
local RunService = game:GetService("RunService")
local camera = workspace.CurrentCamera
local speed = 3
local intensity = 0.5
local focusIntensity = 1.1
local smoothness = 0.2
RunService.RenderStepped:Connect(function()
local t = tick()
local x = math.cos(t * speed) * intensity
local y = math.sin(t * speed) * intensity
local cf = CFrame.new(Vector3.new(x, y, 0), Vector3.new(x*focusIntensity, y*focusIntensity, -5)) + camera.CFrame.Position
camera.CFrame = camera.CFrame:Lerp(cf * camera.CFrame.Rotation, smoothness)
end)
Video: