SwiftVideoBackground is an easy to use Swift framework that provides the ability to play videos on any UIView. This provides a nice user interface for the login screens or home pages of Spotify and many others.


  • x] Play the video with one line of code.
  • x] Supports local video and video from the web address.
  • x] Automatically adjusts when the orientation of the camera changes.
  • x] Resumes the video automatically when the application returns to the foreground.
  • x] Pause, resume, restart and other commands
  • x] Cycling videos (optional)
  • x] Mute (optional)
  • x] Dark videos to make the overlaid user interface more noticeable (optional).
  • x] Documentation


Cocoa beans

You can use CocoaPods to install SwiftVideoBackground by adding it to your podfile:

For Swift 5 :

SwiftVideo Phone Pod

For Swift 4 :

SwiftVideoBackground pod, ~> 3.0.

For Swift 3 :

SwiftVideoPhone pod, 0.06.


You can use Carthage to install SwiftVideoBackground by adding it to the map file:

github dingwilson/SwiftVideoBackground


You can use this library manually in your project:

  1. For projects, simply drag VideoBackground.fast into the project tree.
  2. For workspaces, enter the full SwiftVideoBackground.xcodeproj file.

Migration Manual

Version 3.0.0

Version 2.0.0

See the quick migration guide.



import SwiftVideoBackground

MyViewController class: UIViewController {
Override viewDidLoad() {

Want to try it? VideoBackground.shared.play(view: display, videoName: myVideo, videoType: mp4)

/* or with a URL */

let url = URL(string : https://coolVids.com/coolVid.mp4) !
VideoBackground.shared.play(view : view, url : url)}

The documentation for version 0.06 (Swift 3) can be found here.


play() has four additional optional parameters that can be configured:

  • Darkness: CGFloat – Value between 0 and 1. The higher the value, the darker the video. The default value is 0.
  • muted : Bool – Indicates whether video is disabled. This is true by default.
  • WillLoopVideo : Bool – Indicates whether the video should be restarted when finished. This is true by default.
  • SetAudioSessionAmbient: Bool – Specifies whether the overall AVAudioSession should be set to ambient mode. Otherwise, the sound played by your application will interrupt the other sounds on the unit. This is true by default.

So, for example:

view : view,
videoName : myVideo,
videoType : mp4,
darkness : 0.25,
isMuted : false,
willLoopVideo : true,
setAudioSessionAmbient : true

-> Plays the video with the sound, slightly muted, in a continuous loop and without affecting the other audio sources on the device.

Any combination of parameters can be enabled or disabled.

setAudioSessionAmbient is only valid on iOS 10.0+. Ask your doctors for more information.


  • pause() – pauses the video.
  • resume() – Resume the video.
  • restart() – restarts the video.
  • getThumbnailImage(from: URL, at: CMTime) – Generates an image of a video to be displayed as a thumbnail.
  • Darkness – Change this CGFloat to adjust the darkness of the video. The value is between 0 and 1. The higher numbers are more dismal. Setting an invalid value has no effect.
  • isMuted – Change this bool to mute or unmute the video.
  • willLoopVideo – Change this bool to indicate whether the video should reload when it ends.
  • videoGravity – the default setting is .resizeAspectFill. Change to .resizeAspect (does not fill the view) or .sizeze (does not maintain the aspect ratio).
  • playerLayer – AVPlayerLayer which can be used for advanced video control and configuration.

Single socket

SwiftVideoBackground contains a single key instance that is easily accessible via VideoBackground.shared. A VideoBackground instance can only play one video at a time on a UIView. So, if you need to play on different UIViews, you need to save an instance of VideoBackground for each UIView:

let videoBackground1 = VideoBackground()

Add a video to your project

To play local videos, you must add them to your project:

  1. Open the project browser
  2. Choose your destination
  3. Select construction phases
  4. Select the package Copy Resources
  5. Press + to add a video


add overlay to video swift + github,ios create video from images github,swiftui video background,custom video player in ios github,custom video player swift,avplayer play video in background,Privacy settings,How Search works,swifty360player,swift play video in background,play video in background ios swift,video background github

You May Also Like

AnimeDao – Stream High-Quality Anime Online for Free

Nowadays, animation has become an important part of entertainment. We all like…

5 Ways To Stop Skype From Starting Automatically In Windows 10

If you still use Skype as a video calling app, you’ll no…

🥇 Interrupts in Arduino  What are they? + Effects and Functions ▷ 2021

Arduino is a technology that allows us to program and create great…

🥇 +10 Accessibility Apps on Android and iOS  List ▷ 2021

In this article, I will present you with top 10 best, hand…