how to select "WinGdi" as Video output module in libvlc ?

This forum is about all development around libVLC.
kentontsui1985
Blank Cone
Blank Cone
Posts: 12
Joined: 25 Nov 2015 10:49

how to select "WinGdi" as Video output module in libvlc ?

Postby kentontsui1985 » 30 Nov 2015 07:52

Hi all,
To VLC player we can select video output module in the option tools->Preferences->Video->Output, how can i choose "WinGdi" with VLC sdk? what is the easiest way?
Thanks in advance.

Rémi Denis-Courmont
Developer
Developer
Posts: 15266
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby Rémi Denis-Courmont » 30 Nov 2015 09:07

LibVLC selects the most appropriate video output automatically. You can't change it.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

kentontsui1985
Blank Cone
Blank Cone
Posts: 12
Joined: 25 Nov 2015 10:49

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby kentontsui1985 » 30 Nov 2015 09:18

LibVLC selects the most appropriate video output automatically. You can't change it.
If i play a video on a pc with 16 screens, it will be fluent with "win gdi",and will be lagging with "auto output", if use command line can also adds "--vout wingdi", do you have some suggestion to use with libvlc ?

RSATom
Big Cone-huna
Big Cone-huna
Posts: 513
Joined: 24 Nov 2011 06:55
Operating System: Windows/Linux/OsX
Location: Russia, Tomsk

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby RSATom » 30 Nov 2015 09:25

try delete video output plugins files not suitable for you.

Rémi Denis-Courmont
Developer
Developer
Posts: 15266
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby Rémi Denis-Courmont » 30 Nov 2015 09:48

I believe that WinGDI is actually the slowest / most processor-intensive video outputs of all on Windows... It does not make much sense to expose it.

You might be better off with custom video output callbacks if you have a specialized use case. Otherwise, deleting other plugins should work as RSATom already wrote.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

kentontsui1985
Blank Cone
Blank Cone
Posts: 12
Joined: 25 Nov 2015 10:49

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby kentontsui1985 » 30 Nov 2015 10:35

According to my test on 16 screens with vlc player, the win gdi can play normally while other video output modes will pause for every several seconds. If i choose "windows GDI video output" it will work, if i only keep the wingdi mode and remove the other output module dlls, it will not work. So i want to know which part control the output mode selection in the codes? because that is the easiest way, if can not , then think custom output callbacks, thanks.

RSATom
Big Cone-huna
Big Cone-huna
Posts: 513
Joined: 24 Nov 2011 06:55
Operating System: Windows/Linux/OsX
Location: Russia, Tomsk

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby RSATom » 30 Nov 2015 11:03

You could check with http://www.dependencywalker.com/ (over corresponding video output plugin), maybe you've deleted some mandatory .dll. And try run with "-vvv" (+ maybe https://technet.microsoft.com/en-us/sys ... gview.aspx), maybe you will see something in logs.

RSATom
Big Cone-huna
Big Cone-huna
Posts: 513
Joined: 24 Nov 2011 06:55
Operating System: Windows/Linux/OsX
Location: Russia, Tomsk

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby RSATom » 30 Nov 2015 11:05

btw, what video dimensions do you need to output? something like 4k or full hd and below?

kentontsui1985
Blank Cone
Blank Cone
Posts: 12
Joined: 25 Nov 2015 10:49

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby kentontsui1985 » 30 Nov 2015 11:34

Hi, thanks everybody who have helped me
I resolved it by below way.
const char *parameter[] = {"--vout", "wingdi"};
instance = libvlc_new (sizeof(parameter) / sizeof(parameter[0]), parameter);
If i remove all other dlls except wingdi, it still not work, that means, even remove all the output dlls, it still can play, so there is a default output to play the video which do not use the video output module dlls.
Thanks again!

kentontsui1985
Blank Cone
Blank Cone
Posts: 12
Joined: 25 Nov 2015 10:49

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby kentontsui1985 » 30 Nov 2015 11:37

btw, what video dimensions do you need to output? something like 4k or full hd and below?
I use 4x4 alignment, running on a pc with 4 graphic cards. so the screen wall resolution is 7680 x 4320.

Rémi Denis-Courmont
Developer
Developer
Posts: 15266
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby Rémi Denis-Courmont » 30 Nov 2015 13:44

const char *parameter[] = {"--vout", "wingdi"};
instance = libvlc_new (sizeof(parameter) / sizeof(parameter[0]), parameter);
That won't have any effect.
If i remove all other dlls except wingdi, it still not work, that means, even remove all the output dlls, it still can play, so there is a default output to play the video which do not use the video output module dlls.
That is just plain false, and easy to disprove.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

kentontsui1985
Blank Cone
Blank Cone
Posts: 12
Joined: 25 Nov 2015 10:49

Re: how to select "WinGdi" as Video output module in libvlc ?

Postby kentontsui1985 » 30 Nov 2015 16:17

That won't have any effect.
hi, below codes works, and then it play video with wingdi output module. I test on screen wall resolution 7680 x 4032, the Direct3D not support so big resolution and will pause every several seconds while wingdi play fluently. :)
const char *parameter[] = {"--vout", "wingdi"};
instance = libvlc_new (sizeof(parameter) / sizeof(parameter[0]), parameter);


Return to “Development around libVLC”

Who is online

Users browsing this forum: No registered users and 10 guests