VLC manages a VLC media player through it's RC interface.

In it's default behaviour it will launch a VLC instance wrapped in a sub process and connect to it's RC interface. But VLC instance management may be bypassed. This is most usefull when controlling a remote VLC instance or for fine grained control for the VLC media player lifecycle.

NOTE: This project is still in it's inception state


Add this line to your application's Gemfile:

gem 'vlc'

And then execute:

$ bundle

Or install it yourself as:

$ gem install vlc


Default behaviour: self managed VLC instance

vlc = VLC::Client.new
=> #<VLC::Client:0x00000000c21be0 @host="localhost", @port=9595, @auto_start=true, @headless=true, @process=#<IO:fd 5>, @socket=#<TCPSocket:fd 6>>

=> true

VLC instance management bypass

vlc = VLC::Client.new(auto_start: false)
=> #<VLC::Client:0x00000001a73f90 @auto_start=false, @headless=true, @host="localhost", @port=9595>

=> false




  1. Fork it
  2. Create your topic branch (git checkout -b my-topic-branch)
  3. Add/change specs for your unimplemented feature or bug fix
  4. Make sure specs fail by running bundle exec rake spec. If not return to step 3
  5. Hack it
  6. Make sure specs pass (bundle exec rake spec). If not return to step 5
  7. Edit the documentation so it is coherent with your feature or fix. Run bundle exec rake yard to review
  8. Commit changes (git commit -am 'Add some feature/fix') and push to the branch (git push origin my-topic-branch)
  9. Submit a pull request for your branch.


Copyright (c) 2012 Miguel Guinada LICENSE for details.