Page 1 of 1

Libvlc skins2 interface

Posted: 24 Oct 2010 15:48
by darking
Hi guys,
I have a problem with libvlc (1.0.5) in Visual C++ (Visual Studio 2008), when I try to start it with a skins2 interface a pop-up appears to select the theme.
When I select the theme (both .vlt that .xml) I get an Access Violation.
I would like that theme is directly selected as parameter, but when I try to do it I've got the same problem.

I use this code:

Code: Select all

char *myarg0 = "-I"; char *myarg1 = "skins2=C:\\prova.vlt"; //prova.xml char *myarg2 = "--plugin-path=C:\\Program Files\\VideoLAN\\VLC\\plugins"; char *myargs[3] = {myarg0, myarg1, myarg2}; char *filename = "dvd://D:"; libvlc_exception_init (&excp); inst = libvlc_new (3, myargs, &excp);
what's the mistake ?

Re: Libvlc skins2 interface

Posted: 25 Oct 2010 14:30
by erwan10
The following line is wrong
char *myarg0 = "-I"; char *myarg1 = "skins2=C:\\prova.vlt"; //prova.xml
Somthing along these lines should work

Code: Select all

char *myarg0 = "-I"; char *myarg1 = "skins"; char *myarg3 = "--skins2-last"; char *myarg4 = "C:\\prova.vlt";

Re: Libvlc skins2 interface

Posted: 26 Oct 2010 10:50
by darking
The following line is wrong
Somthing along these lines should work

Code: Select all

char *myarg0 = "-I"; char *myarg1 = "skins"; char *myarg3 = "--skins2-last"; char *myarg4 = "C:\\prova.vlt";
Same problem, a pop-up appears to select the theme and I get an Access Violation.

Re: Libvlc skins2 interface

Posted: 27 Oct 2010 11:43
by erwan10
Actually, you might be the first person ever to try and mix skins2 and libvlc. But why not, :)

One thing to be aware of is that, if you were to use the skins2 playlist system, the related libvlc API (libvlc_playlist_play, ... ) is deprecated.

I just carried out a bunch of test on Linux with the latest vlc1.2 (still in dev). The results are the following :
- It does work better than I would have thought
- the parameters described earlier do cause a problem (to be investigated), but a workaround works fine (see code below)
- Though it was not expected, the skins2 interface did act as a vout window manager for a media_player, meaning that you can manage your own playlist and still be able to play it via the skins2 video subsystem. :)

Code: Select all

/* libvlc settings */ const char* const args[] = { "--verbose", "0", "--no-media-library", "--ignore-config", "--intf", "dummy", "--extraintf", "skins", "--skins2-last", "/tmp/test.vlt", }; int nargs = sizeof(args) / sizeof(args[0]);
I couldn't test it on Windows right away. If you test this code on Windows, please report if it works or not ?

EDIT:
- tested successfully on Windows with a basic C program.
- Yet, a big limitation exists, since usual skins2 functions and variables are no-op for a media_player.

Re: Libvlc skins2 interface

Posted: 16 Nov 2010 10:30
by darking
Hi guys, sorry but I've been busy ..
Then I compiled version 1.2.0 from linux but I can not understand how to create .dll and to use them under Windows.

Help :(