I'm trying to launch VLC in "dummy" mode from a Node.js server script, however using child_process.spawn('vlc',['-I dummy'])
produces a new console window for VLC's output when using Windows. Is there a way to prevent this happening and force all stdout though the stdout ReadableStream so no "popup windows" occur?
EDIT: This problem had nothing to do with node.js, it was simply the way I was calling it and VLC's behaviour. The solution is below.
Thanks.
The rc module is a interactive command line interface. It allows you to type commands to make VLC do things. To start it, run vlc --intf rc . This is the default interface if no GUI environment is available.
I found a solution for the specific problem:
VLC has a command line option to surpress this window --*-quiet where * is the interface.
e.g. For the dummy interface, use
child_process.spawn('vlc',['-I dummy','--dummy-quiet'])
For the rc interface, use
child_process.spawn('vlc',['-I rc','--rc-quiet'])
I would like to complement Adam M-W answer.
VLC has a command line option to suppress this window --*-quiet where * is the interface.
e.g. For the dummy interface, use
child_process.spawn('vlc',['-I dummy','--dummy-quiet']) For the rc interface, use
child_process.spawn('vlc',['-I rc','--rc-quiet'])
answered Jun 13 '11 at 14:12 Adam M-W
at least on my system, VLC now sends its messages to stdError, so this is the channel which needs to be monitored.
My interface is with Qt , QtProcess and these are the options that worked for me.
Using MergedChannels and reading stdOut.
m_proc->setProcessChannelMode(QProcess::MergedChannels);
connect (m_proc,SIGNAL(readyReadStandardOutput()),
this, SLOT(readyRead()));
void ReDirVLC::readyRead(){
if (!m_proc) return;
qDebug()<<m_proc->readAllStandardOutput() << endl;
}
Using SeparateChannels and reading stdError
m_proc->setProcessChannelMode(QProcess::SeparateChannels);
connect (m_proc,SIGNAL(readyReadStandardError()),
this, SLOT(readyRead()));
void ReDirVLC::readyRead(){
if (!m_proc) return;
qDebug()<<m_proc->readAllStandardError() << endl;
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With