Thank you Jean-Baptiste.
I had already tried the Idummy solution with no success, after spending some more time investigating all the alternatives, I have found what seems to be a working solution.
Let me briefly describe my applcation:
I need to start VLC as a background application with null or minimum interference with the machine desktop.
IOur current solution is to start VLC with its standard GUI with the command:
start /min "VLCStreamer" c:\"Program Files"\VideoLAN\vlc\vlc -vvv dshow:// :dshow-vdev="Sony Visual Communication Camera VGP-VCC7" :sout=#transcode{fps=10,vcodec=h264,vb=0,scale=0,acodec=mp4a,ab=128,channels=2,samplerate=44100}:duplicate{dst=file{dst=VlcStream.mp4},dst=http{dst=:8080/stream.flv}} :no-sout-rtp-sap :no-sout-standard-sap :ttl=1 :sout-keep
It streams ok and writes an mp4 video recoding.
When I want to stop streaming and recording, I use the command:
taskkill /T /IM vlc.exe
This command send a sigterm signal to VLC and it terminates properly closing the mp4 file that will then be playable.
The inconvenience of this solution is that VLC opens its GUI on top of the desktop and we have to manually iconize it.
If we start VLC iconized, using the command:
start /min "VLCStreamer" c:\"Program Files"\VideoLAN\vlc\vlc -vvv --qt-start-minimized dshow:// :dshow-vdev="Sony Visual Communication Camera VGP-VCC7" :sout=#transcode{fps=10,vcodec=h264,vb=0,scale=0,acodec=mp4a,ab=128,channels=2,samplerate=44100}:duplicate{dst=file{dst=VlcStream.mp4},dst=http{dst=:8080/stream.flv}} :no-sout-rtp-sap :no-sout-standard-sap :ttl=1 :sout-keep
VLC starts minimized and streams OK but to close streaming and recoding I cannot anymore use "taskkill /T" but I have to use "taskkill /F" and this forces VLC to quit but it does not proerly closes the mp4 recoding that will be unusable.
Same behaviour using -Idummy with the command:
start /min "VLCStreamer" c:\"Program Files"\VideoLAN\vlc\vlc -vvv -Idummy dshow:// :dshow-vdev="Sony Visual Communication Camera VGP-VCC7" :sout=#transcode{fps=10,vcodec=h264,vb=0,scale=0,acodec=mp4a,ab=128,channels=2,samplerate=44100}:duplicate{dst=file{dst=VlcStream.mp4},dst=http{dst=:8080/stream.flv}} :no-sout-rtp-sap :no-sout-standard-sap :ttl=1 :sout-keep
We have found an elegant solution starting vlc with the following command:
start /min "VLCStreamer" c:\"Program Files"\VideoLAN\vlc\vlc -vvv -Ihttp dshow:// :dshow-vdev="Sony Visual Communication Camera VGP-VCC7" :sout=#transcode{fps=10,vcodec=h264,vb=0,scale=0,acodec=mp4a,ab=128,channels=2,samplerate=44100}:duplicate{dst=file{dst=VlcStream.mp4},dst=http{dst=:8080/stream.flv}} :no-sout-rtp-sap :no-sout-standard-sap :ttl=1 :sout-keep vlc://quit
To stop streaming and properly close VLC and the mp4 file we do a command:
wget "
http://localhost:8080/requests/status.x ... nd=pl_next"
This solution fits very well our background operation mode requirement but unfortunatelly it does not allow viewing error and debug messages shown in the message window or on the dummy dos shell. Any way to have messages recorded to a file?
Thank you for any help.