VLC for iOS and tvOS official mirror
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Migrate to Swift 4.2 Nov 19, 2018
.github PULL_REQUEST_TEMPLATE: removed fastlane lint since it's a buildphase now Nov 22, 2018
Apple-TV About: Move Mike and Soomin up and add SGiddins and RSonderberg Oct 26, 2018
Docs News: update for 3.1.5 Dec 18, 2018
PAPasscode/Assets PAPasscode: use the pod instead of individual files and added error h… Jan 2, 2018
Resources MovieViewController: fix playbackspeedview and tracklabel position Dec 20, 2018
SharedSources Podfile: update to VLCKit and TVVLCKit to 3.2.0 Dec 17, 2018
Sources AppDelegate: move playing and opening media behind password check Dec 20, 2018
Tools update_strings: Add check in swift files Apr 19, 2018
VLC-iOS-Tests Rename VLC-for-iOS to VLC-iOS and rename the Module from VLC-iOS to VLC Aug 21, 2018
VLC-iOS-UITests VLCTabBarCoodinator: Move view logic into views Jul 25, 2018
VLC.xcodeproj Remove dead references Dec 14, 2018
VLC.xcworkspace workspace: enforce the original build system type to prevent crashes … Oct 3, 2018
fastlane Migrate to Swift 4.2 Nov 19, 2018
share README: Add banner May 18, 2018
vlc-ios Resources: Add Launchscreen storyboard to avoid running in compatibil… Nov 22, 2018
.gitignore [UI] Use accessibilityIdentifier to interact Apr 18, 2018
.mailmap Update mailmap Apr 13, 2018
.rubocop.yml Add Ruby and Swift linters and PR template Apr 10, 2018
.swiftlint.yml SwiftLint: Fix typo in configuration Jun 5, 2018
AUTHORS Update authors and about contents Nov 18, 2013
COPYING Add GPLv2+/MPLv2 license to the repo Jun 14, 2013
Gemfile Bumped cocapods gem to 1.5.2 May 23, 2018
Gemfile.lock Gemfile.lock: Update rubyzip to 1.2.2 Oct 15, 2018
Podfile Podfile: update to VLCKit and TVVLCKit to 3.2.0 Dec 17, 2018
Podfile.lock Podfile.lock: Bump VLCMediaLibraryKit to 0.1.0 Jan 11, 2019
README.md Add bundle usage to the build process documentation Aug 22, 2018
SharedConfig.xcconfig store MLKit group identifier in Info.plist so it can be easily change… Nov 13, 2015


VLC-iOS banner

This is the official mirror repository of VLC for iOS and tvOS application.

You can find the official repository here.

It's currently written in Objective-C / Swift and uses VLCKit, a libvlc wrapper.


  • Xcode 9.0+
  • macOS 10.12+
  • Cocoapods 1.4+



  1. Run bundle install.
  2. Run bundle exec pod install.
  3. Open VLC.xcworkspace.
  4. Hit "Build and Run".

Custom VLCkit

Mostly for debugging or advanced users, you might want to have a custom local VLCKit build.

  1. Clone VLCKit:

    git clone https://code.videolan.org/videolan/VLCKit.git

  2. Inside the VLCKit folder, run the following command:

    ./compileAndBuildVLCKit.sh -a ${MYARCH}

    MYARCH can be i386 x86_64 armv7 armv7s or aarch64.

    Add -d for a debug build (to have valid stack straces and asserts).

    Add -n if you want to use you own VLC repository for VLCKit (See VLCKit README.md).

  3. Replace the MobileVLCKit.framework with the one you just build.

    Inside your vlc-ios folder, after a pod update, do:

    cd Pods/MobileVLCKit-unstable/MobileVLCKit-binary

    rm -rf MobileVLCKit.framework

    ln -s ${VLCKit}/build/MobileVLCKit.framework

  4. Hit "Build and Run".

Beginner's Guide

Can't get your project to build or run? Head over to the beginner's guide for help on common issues beginners tend to run into.

If you can't find your problem on the guide, please feel free to submit an issue.


Pull request

Pull request are more than welcome! If you do submit one, please make sure to use a descriptive title and description.


We try to follow a simple set of rules, outlined by this guide.

Additionally, commit messages should have all the information needed to understand the commit easily as the follwing:

Subject: Brief description(ticket related action)

For example:

UPnP: Remove iOS 7 compatiblity code(closes #166)

Gitlab issues

You can look through issues we currently have on the VideoLAN Gitlab.

A beginner friendly tag is available if you don't know where to start.



If you have any question or if you're not sure it's actually an issue, please visit our forum.


You have encountered an issue and wish to report it to the VLC dev team?

You can create one on our Gitlab or on our bug tracker.

Before creating an issue or ticket, please double check for duplicates!


Want to quickly get in touch with us for a question, or even just to talk?

You will always find someone from the VLC team on IRC, #videolan channel on the freenode network.

For VLC-iOS specific questions, you can find us on #vlc-ios.

If you don't have an IRC client, you can always use the freenode webchat.

Code of Conduct

Please read and follow the VideoLAN CoC.


VLC-iOS is under the GPLv2 (or later) and the MPLv2 license.

See COPYING for more license info.


For everything else, check our wiki or our support page.

We're happy to help!