From VideoLAN Wiki
Revision as of 16:06, 7 November 2013 by J-b (talk | contribs)
Jump to navigation Jump to search

This page provides a brief overview on the LibVLC Objective-C binding.


VLCKit is an Objective-C wrapper for libvlc's external interface, on MacOS X. It includes basic classes for playlists, streaming and transcoding. However, this is only a limited set. Doing simple media players (comparable to MPlayer OS X or QuickTime Player) is as hard as doing a QuickTime-based one; thus, it is really easy. However, you'll lack most of the cool things such as running multiple interfaces within one instance (remember that hotkeys is an interface, too). Still, you get da überfeature: playing multiple streams within one instance of VLC side by side.

Build the framework

  • Clone git.videolan.org/vlc-bindings/VLCKit.git
  • open .VLCKit.xcodeproj
  • make sure the VLCKit target is selected
  • build the project

This should automatically build VLC itself.

Basic usage in your application

The code should speak by itself

  // Set up a videoView by hand. You can also do that in the nib file
   videoView = [[VLCVideoView alloc] initWithFrame:[[window contentView] bounds]];
   [[window contentView] addSubview:videoView];
   [videoView setAutoresizingMask: NSViewHeightSizable|NSViewWidthSizable];
   // Init the player object
   player = [[VLCMediaPlayer alloc] initWithVideoView:videoView];
   [player setMedia:[VLCMedia mediaWithPath:@"/to/my/movie"]];
   [player play];

Sample code

You should be able to find sample code in:

  • Examples : This is the folder that contains the VLC.framework basics usage.
  • ./vlc/projects/macosx/vlc_app : This is the VLC application that uses the framework intensivly, this is much more advanced.