Code Quality Rank: L1
Programming language: Objective-C
License: MIT License
Tags: Media     Video    
Latest version: v6.0.1

VIMVideoPlayer alternatives and similar libraries

Based on the "Video" category.
Alternatively, view VIMVideoPlayer alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of VIMVideoPlayer or a related project?

Add another 'Video' Library



VIMVideoPlayer is a simple wrapper around the AVPlayer and AVPlayerLayer classes.


Add the VIMVideoPlayerView and VIMVideoPlayer classes to your project.

Do this by including this repo as a git submodule or by using cocoapods:

# Add this to your podfile
target 'MyTarget' do
   pod 'VIMVideoPlayer', ‘{CURRENT_POD_VERSION}’


Create a new VIMVideoPlayerView instance or set up an @IBOutlet:

@IBOutlet weak var videoPlayerView: VIMVideoPlayerView!


override func viewDidLoad()
    // Configure the player as needed
    self.videoPlayerView.player.looping = true

    self.videoPlayerView.delegate = self

Play a video:

// Using an NSURL

if let path = NSBundle.mainBundle().pathForResource("waterfall", ofType: "mp4")
    self.videoPlayerView.player.setURL(NSURL(fileURLWithPath: path))
    // Video file not found!

  Note: This must be a URL to an actual video resource (e.g. http://website.com/video.mp4 or .m3u8 etc.),
  It cannot be a URL to a web page (e.g. https://vimeo.com/67069182),
  See below for info on using VIMVideoPlayer to play Vimeo videos.

// Using an AVPlayerItem

let playerItem: AVPlayerItem = ...

// Or using an AVAsset

let asset: AVAsset = ...

Optionally implement the VIMVideoPlayerViewDelegate protocol methods:

protocol VIMVideoPlayerViewDelegate 
    optional func videoPlayerViewIsReadyToPlayVideo(videoPlayerView: VIMVideoPlayerView!)
    optional func videoPlayerViewDidReachEnd(videoPlayerView: VIMVideoPlayerView!)
    optional func videoPlayerView(videoPlayerView: VIMVideoPlayerView!, timeDidChange cmTime: CMTime)
    optional func videoPlayerView(videoPlayerView: VIMVideoPlayerView!, loadedTimeRangeDidChange duration: Float)
    optional func videoPlayerViewPlaybackBufferEmpty(videoPlayerView: VIMVideoPlayerView!)
    optional func videoPlayerViewPlaybackLikelyToKeepUp(videoPlayerView: VIMVideoPlayerView!)
    optional func videoPlayerView(videoPlayerView: VIMVideoPlayerView!, didFailWithError error: NSError!)

See VIMVideoPlayer.h for additional configuration options.

Playing Vimeo Videos

Vimeo Pro members can access playback URLs for Vimeo videos using the Vimeo API. Playback URLs are only included in the response object if the requesting account is a Vimeo Pro account.

If you have a Vimeo Pro account, when you make a request to the Vimeo API for a video object the response object will contain a list of video files. These represent the various resolution video files available for this particular video. Each has a link. You can use the string value keyed to link to create an NSURL. You can pass this NSURL to VIMVideoPlayer for playback.

Check out this Stack Overflow question for additional info.

You can use the Vimeo iOS SDK to interact with the Vimeo API.

For full documentation on the Vimeo API go here.

Found an Issue?

Please file it in the git issue tracker.

Want to Contribute?

If you'd like to contribute, please follow our guidelines found in [CONTRIBUTING.md](CONTRIBUTING.md).


VIMVideoPlayer is available under the MIT license. See the [LICENSE](LICENSE.md) file for more info.


Tweet at us here: @vimeoapi.

Post on Stackoverflow with the tag vimeo-ios.

Get in touch here.

Interested in working at Vimeo? We're hiring!

*Note that all licence references and agreements mentioned in the VIMVideoPlayer README section above are relevant to that project's source code only.