Page 1 of 1

streaming from stdin

Posted: 03 Apr 2005 03:14
by devanl
I'm trying to take an mpegts stream directed to stdout and pipe it to vlc to then transcode and stream accross the network. Am I correct in assuming VLC can do this? The line I've come up with looks like this:

./test-mpeg2 -r 2 | vlc -vvv '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:standard{access=udp,mux=ts,url=192.168.1.102,sap=TestStream}'

The streamer is a Linux box and I am attempting to stream to a windows XP box. I have seen the first half go to a file and be playable by VLC(windows) but when I run the full command on the linux box VLC goes crazy and then shortly after exits:

whats left looks something like this:
root@devanLFS:/var/video# ./test-mpeg2 -r 2 | vlc -vvv '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:standard{access=udp,mux=ts,url=192.168.1.102,sap=TestStream}'
VLC media player 0.8.1 Janus
[00000001] main vlc debug: opening config file /root/.vlc/vlcrc
[00000001] main vlc warning: config file /root/.vlc/vlcrc does not exist yet
[00000001] main vlc debug: checking builtin modules
[00000001] main vlc debug: checking plugin modules
[00000001] main vlc debug: loading plugins cache file /root/.vlc/cache/plugins-04041e.dat
[00000001] main vlc debug: recursively browsing `modules'
[00000001] main vlc debug: recursively browsing `/usr/local/lib/vlc'
[00000001] main vlc debug: recursively browsing `plugins'
[00000001] main vlc debug: module bank initialized, found 160 modules
[00000001] main vlc debug: opening config file /root/.vlc/vlcrc
[00000001] main vlc warning: config file /root/.vlc/vlcrc does not exist yet
[00000000] main root debug: VLC media player - version 0.8.1 Janus - (c) 1996-2004 VideoLAN
[00000000] main root debug: libvlc was configured with ./configure --enable-livedotcom --enable-dvbpsi --enable-v4l --enable-ncurses --with-ffmpeg-tree=/root/mpeg/ffmpeg-20041113/ --with-livedotcom-path=/root/mpeg/live --enable-release --disable-mad --disable-wxwindows --disable-skins2
[00000001] main vlc debug: translation test: code is "C"
[00000001] main vlc debug: opening config file /root/.vlc/vlcrc
[00000001] main vlc warning: config file /root/.vlc/vlcrc does not exist yet
[00000001] main vlc debug: checking builtin modules
[00000001] main vlc debug: checking plugin modules
[00000001] main vlc debug: loading plugins cache file /root/.vlc/cache/plugins-04041e.dat
[00000001] main vlc debug: recursively browsing `modules'
[00000001] main vlc debug: recursively browsing `/usr/local/lib/vlc'
[00000001] main vlc debug: recursively browsing `plugins'
[00000001] main vlc debug: module bank initialized, found 160 modules
[00000001] main vlc debug: opening config file /root/.vlc/vlcrc
[00000001] main vlc warning: config file /root/.vlc/vlcrc does not exist yet
[00000001] main vlc debug: CPU has capabilities 486 586 MMX MMXEXT SSE FPU
[00000001] main vlc debug: looking for memcpy module
[00000001] main vlc debug: probing 3 candidates
[00000010] main module debug: using memcpy module "memcpymmxext"
[00000196] main playlist debug: creating group Normal with id 1 at position 0
[00000196] main playlist debug: waiting for thread completion
[00000196] main playlist debug: thread 1086802864 (playlist) created at priority 0 (src/playlist/playlist.c:107)
[00000197] main interface debug: looking for interface module
[00000197] main interface debug: probing 1 candidate
[00000092] main module debug: using interface module "hotkeys"
[00000197] main interface debug: interface initialized
[00000197] main interface debug: thread 1095216048 (interface) created at priority 0 (src/interface/interface.c:209)
[00000196] main playlist debug: adding playlist item `#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:standard{access=udp,mux=ts,url=192.168.1.102,sap=TestStream}' ( #transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:standard{access=udp,mux=ts,url=192.168.1.102,sap=TestStream} )
[00000199] main interface debug: looking for interface module
[00000199] main interface debug: probing 2 candidates
[00000199] rc interface warning: fd 0 is not a TTY
done.

Is there something malformed in my command?

Posted: 03 Apr 2005 10:07
by Sigmund
Is there something malformed in my command?
Yes. To read from stdin you must specify "-" as playlist item. also all the transcode stuff is supposed to be the argument to the --sout switch. Third you need to disable the rc interface, since it reads from stdin by default.

Basically now you try to open a file called #transcode ..., while taking commands from stdin, which could give strange results.

Posted: 03 Apr 2005 17:04
by devanl
THanks Sigmund. I knew I was doing something very wrong from what I was seeing and I figured this was the place to ask... no I just gotta figure out what the rc is.

Posted: 07 Apr 2005 05:52
by ZerBit
Read the documentation :wink:

:D