For mostly historical reasons, libvlc_new() accept a list of strings like command line parameters. This is inherited from VLC, which relies on LibVLC to parse its command line. Those parameters depend on the version, platform and included plugins, so it is generally a good idea to not use them. There is always a risk that it will break if LibVLC is upgraded, a plugin is removed, or refactored,
Unfortunately, some parameters have become part of some kind of programming cargo cult. For instance, "--ignore-config" is often listed there. This is useless as it is the default. Similarly the pair of "-I", "dummy" is useless, as LibVLC does not attempt to start an interface by default; it only does that if you do call libvlc_add_intf() explicitly. Then there is "--plugin-path" which should be avoided unless your software ships with its own plugins - LibVLC automatically scans the plugins directory from wherever it is installed. And libvlc_set_log_verbosity() should be favored over "-v".
In the long term, most useful parameters should be converted to new explicit semantic API extensions to LibVLC. So which ones do you use/need?