caprica / vlcj-natives

Native bindings to LibVLC used by the vlcj project
14 stars 6 forks source link

With this, I don't need to have VLC on my PC? #1

Closed leon-lourenco closed 5 years ago

leon-lourenco commented 5 years ago

Hello. I'm searching for some way to don't need to have VLC on my PC. There's somehow? I've searched on Caprica's page, but some tutorials are missing.

caprica commented 5 years ago

There are no tutorials missing. The tutorials state to install VLC first.

This project is the vlcj Java bindings to the native LibVLC library, it does NOT contain LibVLC. So the short answer to your question is "no".

I know some other projects use the "natives" nomenclature to mean it includes native libraries, but that is not the case here.

For a more useful answer:

If you are just supporting Windows, copy the VLC DLL's and ship them with your application (respecting the VLC license of course), and have vlcj's native discovery pick them up from whatever directory you put them in.

If you need to support Linux and/or OSX it is much more difficult, because you can NOT simply copy shared objects from one Linux distribution/architecture and have them work from some arbitrary directory on another PC.

Personally:

When you find a solution that works, probably you can find (or write) a maven plugin for it to make it convenient to build your target package.

leon-lourenco commented 5 years ago

Thank you for your complete explanation. One more question: You have said something about "vlcj native discovery". I'm not much familiar with VLCj. There's any tuto about it? Thank u! (really love your work)

caprica commented 5 years ago

Native discovery is a mechanism by which vlcj tries to help you correctly locate the LibVLC shared libraries (DLL's on Windows).

If VLC is installed properly, you usually don't have to bother with native discovery - it should just work, on any operating system.

In case it does not work, there are some things you can do but it is different (slightly) for vlcj-3.x vs vlcj-4.x:

For vlcj-3, see http://capricasoftware.co.uk/projects/vlcj-3/tutorials/first-steps.

For vlcj-4, native discovery is automatic for the vast majority of use-cases, but see http://capricasoftware.co.uk/projects/vlcj-4/tutorials/first-steps.

And thanks for the compliment!