A little Swift utility that performs the Ken Burns effect on an image
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Kill the generated Example and FrameAccessor Jul 1, 2016
.swift-version add .swift-version Nov 3, 2016
KenBurns.gif Add KenBurns.gif Jul 1, 2016
KenBurns.podspec remove incorrect ruby symbol prefix May 9, 2017
LICENSE Update License Attribution Oct 28, 2016


Ken Burns


A simple yet configurable Ken Burns effect using a single image looping over itself. Really draws the user’s attention, much more so than a static image.


KenBurns is written in Swift, but you can use KenBurnsImageView from Swift or Objective-C. Examples are in Swift 3.0:

func newKenBurnsImageView(url: URL) -> KenBurnsImageView {
    let ken = KenBurnsImageView()
    ken.fetchImage(url: url, placeholder: UIImage(named: "placeholder"))
    return ken

func stop(ken: KenBurnsImageView) {

func pause(ken: KenBurnsImageView) {

func resume(ken: KenBurnsImageView) {

You can also initialize with a direct UIImage rather than a URL, and there are some paramaters you can set to configure the appearance:

func newKenBurnsImageView(image: UIImage) -> KenBurnsImageView {
    let ken = KenBurnsImageView()
    ken.setImage(image: image)
    ken.zoomIntensity = 1.5
    ken.setDuration(min: 5, max: 13)
    return ken

Ken Burns has been powering Calm’s nature scenes and meditations since 2016. We found that adding this effect in place of a static image improves click-through rates (and users love it).

Due to unfortunate circumstances, Calm has no direct affiliation with Ken Burns himself 😞


KenBurns is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "KenBurns"