Page 1 of 1
Using ActiveX in VB with OpenGL
Posted: 04 Dec 2009 06:21
by dhepburn
I'm placing the ActiveX as an OLE object on my Powerbuilder window (similar to VB). I can add files to play by executing:-
ole_vlc.object.playlist.Add("C:\xyz.mov", "", ":no-video-title-show :start-time="+gs_media_time+" --mouse-hide-timeout=0 --no-file-logging --fullscreen")
in my program. Works fine.
Now I need to make the video play with OpenGL option so I can make the video play over multiple monitors (7 to be precise). I can't get it to work. I tried adding --vout=OpenGL to the options but it made no difference yet if I run VLC.EXE from the Windows command line like this:-
"C:\Program Files\VideoLAN\VLC\vlc.exe" "C:\xyz.mov" --opengl-effect
it works fine.
How can I add OpenGL in the activeX?
Re: Using ActiveX in VB with OpenGL
Posted: 04 Dec 2009 20:55
by thannoy
I think you are facing the security policy of ActiveX interface.
As it can be inserted in a webpage, restrictions have been added for a malicious webpage to not be able to arm your computer. Only options tagged as safe (in the source code, need compile your own VLC to modify this set) can be used. I think the one you are trying to use is simply ignored because not (yet?) tagged as safe.
I am not sure --vout can be tagged as safe, not sure it is.
Re: Using ActiveX in VB with OpenGL
Posted: 05 Dec 2009 05:48
by dhepburn
I don't know - I guess. I'm not sure I have the capability (within myself) to make this mod. I'm running this in a Powerbuilder client/server type application, not a browser base application. I create my own EXE and run that, never touching a browser, so would this security feature still be applicable? Sure, its using the ActiveX object as an OLE object in my window, but not via a browser.
By the way I've shown the wrong line command for running VLC using OpenGL ,should have been:-
"C:\Program Files\VideoLAN\VLC\vlc.exe" "C:\xyz.mov" --vout=opengl
Surely there is someway I can ustilise OpenGL in the ActiveX?
I really need this ability so I can spread a movie clip that is 9520 x 768 pixels over 7 plasma screens (each screen is 1360 x 768 pixels). After lots of trial and error I discovered the OpenGL option via help from this forum and was able to run the clip over the 7 screens using the line command option. Trouble is I need it to work in my application that uses the ActiveX. Help please.
Re: Using ActiveX in VB with OpenGL
Posted: 05 Dec 2009 19:13
by thannoy
I have no idea how to enable this without modifying VLC, ... except those ones:
- use an older VLC (prior to 0.9) -> never advised!
- try to mess VLC DLL files (move/remove all vout dlls except opengl one, or rename the opengl one to be theaded as the legacy one)
Re: Using ActiveX in VB with OpenGL
Posted: 05 Dec 2009 23:36
by alexxxxx
I have no idea how to enable this without modifying VLC, ... except those ones:
- use an older VLC (prior to 0.9) -> never advised!
- try to mess VLC DLL files (move/remove all vout dlls except opengl one, or rename the opengl one to be theaded as the legacy one)
hi
Re: Using ActiveX in VB with OpenGL
Posted: 06 Dec 2009 08:04
by dhepburn
Thanks thannoy, would you mind giving me a point by point list of what's required to modify then compile VLC?
Re: Using ActiveX in VB with OpenGL
Posted: 08 Dec 2009 14:08
by thannoy
Both
Developers_Corner and
Git wiki pages give hints. Then locate "safe()" occurrences and you will understand quickly what modification need to be done. You can also use tarballs to start from a stable release.
For my own, I use Linux even when compiling for Windows platform but you can see howtos for cygwin and msys which allow you to stay on windows if you don't want to work from Linux.
You may need to use --enable-activex configure flag. Don't expect to compile this stuff in five minutes.