Page 1 of 1

VLM differences GUI-wx vs telnet+http in parsing and dshow

Posted: 24 Mar 2006 12:34
by Albert
Hello,
I work with win32 nightlies - vlc-0.8.5-test1-20060322-0132, WinXP SP2, IE 6.
I found several bugs:

1. I would like setup mosaic from webcams by http intf. There is a problem, that http intf crashes vlc on loading png fake file, while command line setup fake-file works.

2. VLC http mosaic intf is not usable with IE6 - add INPUT and set position in mosaic don´t work (IE :-()

3. There is a difference in parsing VLM scripts (I guess). I mentioned here, that VLM from GUI-wx (win32) is not able to load or run vlm batch scripts from a file (...C:\ in path...).

I run mosaic from command line by

Code: Select all

vlc -I telnet --extraintf http:rc --vlm-conf mosaic3x2full.vlm --fake-file 960x480.png --color --mosaic-rows 2 --mosaic-cols 3 --mosaic-width 960 --mosaic-height 480 --mosaic-hborder --mosaic-vborder --mosaic-position 1 --mosaic-keep-picture --mosaic-order 1,2,3,4,5,6
I tried to add --extraintf http:rc:wx and the message before crash was error in vlm file. So there is a difference in usage vlm.conf files between wx GUI and telnet+http.

My mosaic VLM conf is

Code: Select all

new kamera1 broadcast enabled setup kamera1 input dshow://:dshow-vdev="MSI Star Cam 370i No1":dshow-adev="none":dshow-size="":dshow-caching=200:dshow-chroma="":dshow-fps=0.000000 setup kamera1 option dshow-adev="none" setup kamera1 option dshow-size="320x240" # because in-line parametres don´t work setup kamera1 output #duplicate{dst=mosaic-bridge{id=1,width=320,height=240}} new kamera2 broadcast enabled setup kamera2 input dshow://:dshow-vdev="MSI Star Cam 370i No2":dshow-adev="none":dshow-size="":dshow-caching=200:dshow-chroma="":dshow-fps=0.000000 setup kamera2 option dshow-adev="none" setup kamera2 option dshow-size="320x240" setup kamera2 output #duplicate{dst=mosaic-bridge{id=2,width=320,height=240}} new kamera3 broadcast enabled setup kamera3 input c:\\pracovni\\Bear.wmv setup kamera3 output #duplicate{dst=mosaic-bridge{id=3,width=320,height=240},select=video} ... new bg broadcast enabled setup bg input fake: setup bg option sub-filter=mosaic setup bg output #bridge-in{delay=400,id-offset=100}:display control bg play
4. There is a difference in usage of dshow devices between VLC (command line, GUI) and VLM (telnet, http).
In VLC GUI "Video device name" menu I can see
Default
None
MSI Star Cam 370i No1
MSI Star Cam 370i No2
MSI Star Cam 370i No3

as I renamed FriendlyName thanks to garthb76 patch. I can watch video from webcam 1, 2 or 3. I can also use command line to open dshow device of required webcam

Code: Select all

vlc -vvv -I rc --extraintf wx dshow://:dshow-vdev="MSI Star Cam 370i No3" :dshow-adev="none" :dshow-size="320x240" :dshow-caching=1000 --sout=#duplicate{dst=display}
If I try to PLAY element kamera1 from http or telnet VLM interface, it is not able to use specific webcam. It is only able to open (default?) dshow:// It doesn´t consider what is written after dshow:// and in setup kamera2 option dshow-vdev="qwert" too.
The message is "dshow://:dshow-vdev="MSI Star Cam 370i No1" succesfully opened", but it is not truth.

Here are the messages about trying to PLAY webcam No2

Code: Select all

[00000288] rc interface: VLC media player - version 0.8.5-test1-20060322-0132 Ja nus - (c) 1996-2006 the VideoLAN team [00000288] rc interface: Warning: if you can't access the GUI anymore, open a dos command box, go to the directory where you installed VLC and run "vlc -I wxwin" Remote control interface initialized, `h' for help [00000292] main interface: creating vlm [00000292] telnet interface: Using the VLM interface plugin... [00000292] telnet interface: Telnet interface started on interface 4212 [00000364] [Media: kamera1] dshow demuxer error: can't use device: "none", unsupported device type [00000364] [Media: kamera1] dshow demuxer error: can't open audio [00000386] [Media: kamera2] dshow demuxer error: can't open video [00000386] [Media: kamera2] dshow demuxer error: can't use device: "none", unsupported device type [00000386] [Media: kamera2] dshow demuxer error: can't open audio [00000387] [Media: kamera2] dshow access error: can't open video [00000387] [Media: kamera2] dshow access error: can't use device: "none", unsupported device type [00000387] [Media: kamera2] dshow access error: can't open audio [00000382] [Media: kamera2] main input error: no suitable access module for `dshow://:dshow-vdev="MSI Star Cam 370i No2":dshow-adev="none":dshow-size="":dshow-c aching=200:dshow-chroma="":dshow-fps=0.000000'
I can click PLAY whatever webcan I want, but only the default one is opened and no other. So VLM commands are not able to use specific dshow device :-(


If somebody with Direct Show knowledge has time or desire to fix this problems...
Thank you
Albert

Re: VLM differences GUI-wx vs telnet+http in parsing and dsh

Posted: 24 Mar 2006 13:49
by dionoea
1. I would like setup mosaic from webcams by http intf. There is a problem, that http intf crashes vlc on loading png fake file, while command line setup fake-file works.
I'll try to fix that
2. VLC http mosaic intf is not usable with IE6 - add INPUT and set position in mosaic don´t work (IE :-()
This is a known problem .... needs some fixing but i really don't know where to start. The table cells don't show up on IE, and i don't have a clue about the reason.
3. There is a difference in parsing VLM scripts (I guess). I mentioned here, that VLM from GUI-wx (win32) is not able to load or run vlm batch scripts from a file (...C:\ in path...).
The HTTP interface doesn't use the load function to load the vlm batch. It sends the commands 1 by 1. The --vlm-conf option uses the load function. I think that we have a windows end of line parsing problem in the code. This of course needs some fixing too.
4. There is a difference in usage of dshow devices between VLC (command line, GUI) and VLM (telnet, http).
...
You need to use something like

Code: Select all

setup kamera1 option dshow-vdev=....
for the options.

Re: VLM differences GUI-wx vs telnet+http in parsing and dsh

Posted: 24 Mar 2006 14:15
by Albert
4. There is a difference in usage of dshow devices between VLC (command line, GUI) and VLM (telnet, http).
...
You need to use something like

Code: Select all

setup kamera1 option dshow-vdev=....
for the options.
Hello,
the problem is, that setup kamera1 option dshow-vdev=.... is ignored the same way as setup kamera1 input dshow://:dshow-vdev="MSI Star Cam 370i No1":dshow-adev="none"... VLM doesn´t care about these options or in-line dshow parametres.
I can write setup kamera1 option dshow-vdev="France" and nothing happens. It will use (default - the first windows registered and pluged in) dshow device.
Albert

VLM ignores dshow devices FriendlyNames

Posted: 27 Mar 2006 09:11
by Albert
Hello,
I have done some tests on vlc-0.8.5-test1-20060327-0000-win32:

Code: Select all

vlc -I telnet --extraintf rc -vv --vlm-conf kamera.vlm
I would like to play webcam2 (kamera.vlm)

Code: Select all

new kamera1 broadcast enabled setup kamera1 input dshow:// :dshow-vdev="MSI Star Cam 370i No2" :dshow-adev="USB camera (2)" setup kamera1 option dshow-size=320x240 setup kamera1 output #duplicate{dst=display} control kamera1 play
Result: VLC plays webcam number 1 :-(

Code: Select all

[00000283] rc interface: VLC media player - version 0.8.5-test1-20060327-0000 Janus - (c) 1996-2006 the VideoLAN team [00000283] rc interface: Warning: if you can't access the GUI anymore, open a dos command box, go to the directory where you installed VLC and run "vlc -I wxwin" Remote control interface initialized, `h' for help [00000283] main interface debug: using interface module "rc" [00000283] main interface debug: thread 3616 (interface) created at priority 0 (interface/interface.c:229) [00000285] main interface debug: looking for interface module: 1 candidate [00000285] main interface debug: using interface module "hotkeys" [00000285] main interface debug: thread 3652 (interface) created at priority 0 (interface/interface.c:229) [00000287] main interface debug: looking for interface module: 4 candidates [00000287] main interface: creating vlm [00000289] main vlm debug: thread 3688 (vlm thread) created at priority 0 (misc/vlm.c:105) [00000287] main interface debug: loading vlm conf ... [00000287] main interface debug: load kamera.vlm [00000289] main vlm debug: creating access '' path='kamera.vlm' [00000290] main access debug: looking for access2 module: 5 candidates [00000290] vcd access debug: trying .cue file: kamera.cue [00000290] access_file access debug: opening file `kamera.vlm' [00000290] main access debug: using access2 module "access_file" [00000295] main private debug: pre buffering [00000289] main vlm debug: creating statistics handler [00000295] main private debug: received first data for our buffer [00000290] main access debug: removing module "access_file" [00000297] [Media: kamera1] main input debug: waiting for thread completion [00000297] [Media: kamera1] main input debug: thread 3736 (input) created at priority 1 (input/input.c:260) [00000287] telnet interface: Using the VLM interface plugin... [00000298] [Media: kamera1] main stream output debug: stream=`duplicate' [00000299] [Media: kamera1] main private debug: looking for sout stream module:1 candidate [00000299] [Media: kamera1] stream_out_duplicate private debug: creating 'duplicate' [00000299] [Media: kamera1] stream_out_duplicate private debug: * adding `display' [00000298] [Media: kamera1] main stream output debug:stream=`display' [00000301] [Media: kamera1] main private debug: looking for sout stream module:1 candidate [00000287] main interface debug: net: listening to port 4212 [00000301] [Media: kamera1] main private debug: using sout stream module "stream_out_display" [00000299] [Media: kamera1] main private debug: using sout stream module "stream_out_duplicate" [00000297] [Media: kamera1] main input debug: `dshow://' gives access `dshow' demux `' path `' [00000297] [Media: kamera1] main input debug: creating demux: access='dshow' demux='' path='' [00000303] [Media: kamera1] main demuxer debug: looking for access_demux module: 1 candidate [00000303] [Media: kamera1] dshow demuxer debug: Width x Height 320x240 [00000287] telnet interface: Telnet interface started on interface 4212 [00000287] main interface debug: using interface module "telnet" [00000287] main interface debug: thread 3888 (manager) created at priority 0 (interface/interface.c:214) [00000303] [Media: kamera1] dshow demuxer debug: found device: MSI Star Cam 370i No1 [00000303] [Media: kamera1] dshow demuxer debug: found device: MSI Star Cam 370i No2 [00000303] [Media: kamera1] dshow demuxer debug: using device: MSI Star Cam 370i No1 [00000303] [Media: kamera1] dshow demuxer debug: EnumDeviceCaps: output pin: Capture [00000303] [Media: kamera1] dshow demuxer debug: EnumDeviceCaps: trying pin Capture ...
VLC doesn´t care about given FriendyNames:

Code: Select all

new kamera1 broadcast enabled setup kamera1 input dshow:// :dshow-vdev="France" :dshow-adev="England" setup kamera1 option dshow-size=320x240 setup kamera1 output #duplicate{dst=display} control kamera1 play
Result: VLC plays webcam number 1

Code: Select all

[00000283] rc interface: VLC media player - version 0.8.5-test1-20060327-0000 Janus - (c) 1996-2006 the VideoLAN team [00000283] rc interface: ... [00000287] main interface: creating vlm [00000289] main vlm debug: thread 3688 (vlm thread) created at priority 0 (misc/vlm.c:105) [00000287] main interface debug: loading vlm conf ... [00000287] main interface debug: load kamera.vlm [00000289] main vlm debug: creating access '' path='kamera.vlm' [00000290] main access debug: looking for access2 module: 5 candidates [00000290] vcd access debug: trying .cue file: kamera.cue [00000290] access_file access debug: opening file `kamera.vlm' [00000290] main access debug: using access2 module "access_file" [00000295] main private debug: pre buffering [00000289] main vlm debug: creating statistics handler [00000295] main private debug: received first data for our buffer [00000290] main access debug: removing module "access_file" [00000297] [Media: kamera1] main input debug: waiting for thread completion [00000297] [Media: kamera1] main input debug: thread 3736 (input) created at priority 1 (input/input.c:260) [00000287] telnet interface: Using the VLM interface plugin... [00000298] [Media: kamera1] main stream output debug: stream=`duplicate' [00000299] [Media: kamera1] main private debug: looking for sout stream module:1 candidate [00000299] [Media: kamera1] stream_out_duplicate private debug: creating 'duplicate' [00000299] [Media: kamera1] stream_out_duplicate private debug: * adding `display' [00000298] [Media: kamera1] main stream output debug: stream=`display' [00000301] [Media: kamera1] main private debug: looking for sout stream module:1 candidate [00000287] main interface debug: net: listening to port 4212 [00000301] [Media: kamera1] main private debug: using sout stream module "stream_out_display" [00000299] [Media: kamera1] main private debug: using sout stream module "stream_out_duplicate" [00000297] [Media: kamera1] main input debug: `dshow://:dshow-vdev="France":dshow-adev="England"' gives access `dshow' demux `' path `:dshow-vdev="France":dshow-adev="England"' [00000297] [Media: kamera1] main input debug: creating demux: access='dshow' demux='' path=':dshow-vdev="France":dshow-adev="England"' [00000303] [Media: kamera1] main demuxer debug: looking for access_demux module: 1 candidate [00000303] [Media: kamera1] dshow demuxer debug: Width x Height 320x240 [00000303] [Media: kamera1] dshow demuxer debug: found device: MSI Star Cam 370i No1 [00000303] [Media: kamera1] dshow demuxer debug: found device: MSI Star Cam 370i No2 [00000303] [Media: kamera1] dshow demuxer debug: using device: MSI Star Cam 370i No1 [00000303] [Media: kamera1] dshow demuxer debug: EnumDeviceCaps: output pin: Capture ...
I tried definition by setup option:

Code: Select all

new kamera1 broadcast enabled setup kamera1 input dshow:// setup kamera1 option dshow-size=320x240 setup kamera1 option dshow-vdev="MSI StarCam 370i No2" setup kamera1 option dshow-adev="none" setup kamera1 output #duplicate{dst=display} control kamera1 play
And it crashed:

Code: Select all

[00000283] rc interface: VLC media player - version 0.8.5-test1-20060327-0000 Janus - (c) 1996-2006 the VideoLAN team [00000283] rc interface: Warning: if you can't access the GUI anymore, open a dos command box, go to the directory where you installed VLC and run "vlc -I wxwin" Remote control interface initialized, `h' for help [00000283] main interface debug: using interface module "rc" [00000283] main interface debug: thread 3616 (interface) created at priority 0 (interface/interface.c:229) [00000285] main interface debug: looking for interface module: 1 candidate [00000285] main interface debug: using interface module "hotkeys" [00000285] main interface debug: thread 3652 (interface) created at priority 0 (interface/interface.c:229) [00000287] main interface debug: looking for interface module: 4 candidates [00000287] main interface: creating vlm [00000289] main vlm debug: thread 3688 (vlm thread) created at priority 0 (misc/vlm.c:105) [00000287] main interface debug: loading vlm conf ... [00000287] main interface debug: load kamera.vlm [00000289] main vlm debug: creating access '' path='kamera.vlm' [00000290] main access debug: looking for access2 module: 5 candidates [00000290] vcd access debug: trying .cue file: kamera.cue [00000290] access_file access debug: opening file `kamera.vlm' [00000290] main access debug: using access2 module "access_file" [00000295] main private debug: pre buffering [00000289] main vlm debug: creating statistics handler [00000295] main private debug: received first data for our buffer [00000290] main access debug: removing module "access_file" [00000297] [Media: kamera1] main input debug: waiting for thread completion [00000297] [Media: kamera1] main input debug: thread 3736 (input) created at priority 1 (input/input.c:260) [00000298] [Media: kamera1] main stream output debug: stream=`duplicate' [00000287] telnet interface: Using the VLM interface plugin... [00000299] [Media: kamera1] main private debug: looking for sout stream module:1 candidate [00000299] [Media: kamera1] stream_out_duplicate private debug: creating 'duplicate' [00000299] [Media: kamera1] stream_out_duplicate private debug: * adding `display' [00000298] [Media: kamera1] main stream output debug: stream=`display' [00000301] [Media: kamera1] main private debug: looking for sout stream module:1 candidate [00000287] main interface debug: net: listening to port 4212 [00000301] [Media: kamera1] main private debug: using sout stream module "stream_out_display" [00000299] [Media: kamera1] main private debug: using sout stream module "stream_out_duplicate" [00000297] [Media: kamera1] main input debug: `dshow://' gives access `dshow' demux `' path `' [00000297] [Media: kamera1] main input debug: creating demux: access='dshow' demux='' path='' [00000303] [Media: kamera1] main demuxer debug: looking for access_demux module: 1 candidate [00000303] [Media: kamera1] dshow demuxer debug: Width x Height 320x240 [00000287] telnet interface: Telnet interface started on interface 4212 [00000287] main interface debug: using interface module "telnet" [00000287] main interface debug: thread 3884 (manager) created at priority 0 (interface/interface.c:214) [00000303] [Media: kamera1] dshow demuxer debug: found device: MSI Star Cam 370i No1 [00000303] [Media: kamera1] dshow demuxer debug: found device: MSI Star Cam 370i No2 [00000303] [Media: kamera1] dshow demuxer error: can't use device: "MSI StarCam 370i No2", unsupported device type [00000303] [Media: kamera1] dshow demuxer error: can't open video [00000303] [Media: kamera1] dshow demuxer debug: found device: USB camera [00000303] [Media: kamera1] dshow demuxer debug: found device: SoundMAX DigitalAudio [00000303] [Media: kamera1] dshow demuxer debug: found device: USB camera (2) [00000303] [Media: kamera1] dshow demuxer error: can't use device: "none", unsupported device type [00000303] [Media: kamera1] dshow demuxer error: can't open audio [00000303] [Media: kamera1] dshow demuxer debug: Releasing DirectShow [00000303] [Media: kamera1] main demuxer warning: no access_demux module matching "dshow" could be loaded [00000297] [Media: kamera1] main input debug: creating access 'dshow' path='' [00000304] [Media: kamera1] main access debug: looking for access2 module: 6 candidates [00000304] [Media: kamera1] dshow access debug: Width x Height 320x240 [00000304] [Media: kamera1] dshow access debug: found device: MSI Star Cam 370i No1 [00000304] [Media: kamera1] dshow access debug: found device: MSI Star Cam 370i No2 [00000304] [Media: kamera1] dshow access error: can't use device: "MSI StarCam 370i No2", unsupported device type [00000304] [Media: kamera1] dshow access error: can't open video [00000304] [Media: kamera1] dshow access debug: found device: USB camera [00000304] [Media: kamera1] dshow access debug: found device: SoundMAX Digital Audio [00000304] [Media: kamera1] dshow access debug: found device: USB camera (2) [00000304] [Media: kamera1] dshow access error: can't use device: "none", unsupported device type [00000304] [Media: kamera1] dshow access error: can't open audio [00000304] [Media: kamera1] dshow access debug: Releasing DirectShow [00000304] [Media: kamera1] access_file access warning: : No such file or directory [00000304] [Media: kamera1] main access warning: no access2 module matching "dshow" could be loaded [00000297] [Media: kamera1] main input error: no suitable access module for `dshow://' [00000281] main playlist debug: initializing interaction system [00000299] main private debug: destroying chain... (name=duplicate) [00000299] stream_out_duplicate private debug: closing a duplication [00000301] main private debug: destroying chain... (name=display) [00000301] main private debug: removing module "stream_out_display" [00000301] main private debug: destroying chain done [00000299] main private debug: removing module "stream_out_duplicate" [00000299] main private debug: destroying chain done [00000297] [Media: kamera1] main input debug: thread times: real 0m1.000179s, kernel 0m0.312500s, user 0m0.125000s [00000297] [Media: kamera1] main input debug: thread 3736 joined (input/input.c:402) VLC FROZEN
Albert