I am trying to stream webcam with http and facing some problems.
initially I was using following settings to stream and it worked great -
./vlc -I dummy v4l:/dev/video0:norm=secam:frequency=543250:size=640x480:channel=0:adev=/dev/dsp:audio=0 --sout '#transcode{vcodec=mp4v,acodec=mpga,vb=3000,ab=256,vt=800000,keyint=80,deinterlace} :std{access=http,mux=ps,dst=192.168.0.1:8080}' --ttl 12
I actually want to change the my codecs and mux to theo+vorbis and ogg combination becuase of several reasons. Here where the problems start -
I have compiled vlc with following options - (majorly to avoid ffmpeg, no gui, add theo+vorbis+ogg)
./configure --prefix=/home/phpathak/dod/dod-vlc/in/ --exec-prefix=/home/phpathak/dod/dod-vlc/de/ --enable-nls=no --enable-optimize-memory --enable-vlm=no --enable-growl=no --enable-notify=no --enable-mad=no --enable-v4l --enable-gnomevfs=no --enable-libcdio=no --enable-libcddb=no --enable-cdda=no --enable-vcd=no --enable-screen=no --enable-ogg --enable-libmpeg2=no --enable-vorbis --enable-x11=no --enable-xvideo=no --enable-glx=no --enable-xinerama=no --enable-opengl=no --enable-freetype=no --enable-libxml2=no --enable-skins2=no --enable-wxwidgets=no --enable-visual=no --enable-daap=no --enable-bonjour=no --enable-gnutls=no --enable-hal=no --enable-flac --enable-theora --enable-ffmpeg=no
now with minimal changes I try running the vlc streaming again with following -
./vlc -vvv v4l:/dev/video0 --sout '#transcode{vcodec=theo,vb=192,scale=1,acodec=vorb,ab=96,channels=1}
:std{access=http,mux=ogg,dst=192.168.0.1:8080}'
upon running this I get -
[00000001] main private debug: checking builtin modules
[00000001] main private debug: checking plugin modules
[00000001] main private debug: loading plugins cache file /home/phpathak/.vlc/cache/plugins-04041e.dat
[00000001] main private debug: recursively browsing `modules'
[00000001] main private debug: recursively browsing `/home/phpathak/dod/dod-vlc/de//lib/vlc'
[00000001] main private debug: recursively browsing `plugins'
[00000001] main private debug: module bank initialized, found 179 modules
[00000001] main private debug: opening config file /home/phpathak/.vlc/vlcrc
[00000001] main private warning: config file /home/phpathak/.vlc/vlcrc does not exist yet
[00000001] main private debug: CPU has capabilities 486 586 MMX MMXEXT SSE FPU
[00000001] main private debug: looking for memcpy module: 3 candidates
[00000001] main private debug: using memcpy module "memcpymmxext"
[00000227] main playlist debug: waiting for thread completion
[00000227] main playlist debug: thread 3084209072 (playlist) created at priority 0 (playlist/playlist.c:184)
[00000228] main private debug: waiting for thread completion
[00000228] main private debug: thread 3075816368 (preparser) created at priority 0 (playlist/playlist.c:210)
[00000229] main interface debug: looking for interface module: 1 candidate
[00000229] main interface debug: using interface module "hotkeys"
[00000229] main interface debug: thread 3067399088 (interface) created at priority 0 (interface/interface.c:231)
[00000227] main playlist debug: adding playlist item `v4l:/dev/video0' ( v4l:/dev/video0 )
[00000231] main interface debug: looking for interface module: 1 candidate
Remote control interface initialized. Type `help' for help.
[00000231] main interface debug: using interface module "rc"
[00000231] main interface debug: thread 3058957232 (manager) created at priority 0 (interface/interface.c:216)
[00000227] main playlist debug: creating new input thread
[00000233] main input debug: waiting for thread completion
[00000233] main input debug: thread 3050564528 (input) created at priority 0 (input/input.c:265)
[00000233] main input debug: creating statistics handler
[00000235] main stream output debug: stream=`transcode'
[00000236] main private debug: looking for sout stream module: 1 candidate
[00000235] main stream output debug: stream=`std'
[00000239] main private debug: looking for sout stream module: 1 candidate
[00000239] main private debug: set sout option: sout-standard-access to http
[00000239] main private debug: set sout option: sout-standard-mux to ogg
[00000239] main private debug: set sout option: sout-standard-dst to 192.168.0.1:8080
[00000239] stream_out_standard private debug: creating `http/ogg://192.168.0.1:8080'
[00000239] stream_out_standard private debug: extension is 1:8080
[00000239] stream_out_standard private debug: extension -> mux=(null)
[00000239] stream_out_standard private debug: using `http/ogg://192.168.0.1:8080'
[00000241] main private debug: looking for sout access module: 1 candidate
[00000241] main private: creating httpd
[00000241] main private debug: net: listening to 192.168.0.1 port 8080
[00000241] main private debug: localized Domain Names not supported - disabled
[00000244] main http server debug: thread 3042094000 (httpd host thread) created at priority 0 (network/httpd.c:1078)
[00000241] main private debug: using sout access module "access_output_http"
[00000239] stream_out_standard private debug: access opened
[00000245] main private debug: looking for sout mux module: 1 candidate
status change: ( new input: v4l:/dev/video0 )
status change: ( audio volume: 256 )
status change: ( play state: 1 )
[00000245] mux_ogg private: Open
[00000245] main private debug: using sout mux module "mux_ogg"
[00000235] main stream output debug: muxer support adding stream at any time
[00000235] main stream output debug: muxer prefers to wait for all ES before starting to mux
[00000239] stream_out_standard private debug: mux opened
[00000239] main private debug: using sout stream module "stream_out_standard"
[00000236] main private debug: set sout option: sout-transcode-vcodec to theo
[00000236] main private debug: set sout option: sout-transcode-vb to 192
[00000236] main private debug: set sout option: sout-transcode-scale to 1
[00000236] main private debug: set sout option: sout-transcode-acodec to vorb
[00000236] main private debug: set sout option: sout-transcode-ab to 96
[00000236] main private debug: set sout option: sout-transcode-channels to 1
[00000236] stream_out_transcode private debug: codec audio=vorb 0Hz 1 channels 96Kb/s
[00000236] stream_out_transcode private debug: codec video=theo 0x0 scaling: 1.000000 192kb/s
[00000236] main private debug: using sout stream module "stream_out_transcode"
[00000233] main input debug: `v4l:/dev/video0' gives access `v4l' demux `' path `/dev/video0'
[00000233] main input debug: creating demux: access='v4l' demux='' path='/dev/video0'
[00000247] main demuxer debug: looking for access_demux module: 1 candidate
[00000247] v4l demuxer debug: main device=`/dev/video0'
[00000247] v4l demuxer debug: V4L device Logitech QuickCam USB 1 channels 0 audios 32 < w < 352 32 < h < 292
[00000247] v4l demuxer debug: invalid width 0
[00000247] v4l demuxer debug: invalid height 0
[00000247] v4l demuxer debug: setting channel Camera(0) 0 tuners flags=0x0 type=0x2 norm=0x0
[00000247] v4l demuxer debug: will use 352x292
[00000247] v4l demuxer debug: v4l device uses brightness: 32768
[00000247] v4l demuxer debug: v4l device uses colour: 32768
[00000247] v4l demuxer debug: v4l device uses hue: 32768
[00000247] v4l demuxer debug: v4l device uses contrast: 32768
[00000247] v4l demuxer debug: v4l device uses frame size: 205568
[00000247] v4l demuxer debug: v4l device uses chroma: I422
[00000247] v4l demuxer debug: openened adev=`/dev/dsp' stereo 44100Hz
[00000247] v4l demuxer debug: v4l grabbing started
[00000247] v4l demuxer debug: added new video es I422 352x292
[00000233] main input debug: selecting program id=0
[00000247] v4l demuxer debug: new audio es 2 channels 44100Hz
[00000247] main demuxer debug: using access_demux module "v4l"
[00000249] main packetizer debug: looking for packetizer module: 16 candidates
[00000249] main packetizer debug: using packetizer module "rawvideo"
[00000249] main packetizer debug: thread 3026922416 (decoder) created at priority 0 (input/decoder.c:159)
[00000258] main packetizer debug: looking for packetizer module: 16 candidates
[00000258] main packetizer debug: using packetizer module "packetizer_copy"
[00000258] main packetizer debug: thread 3018378160 (decoder) created at priority 0 (input/decoder.c:159)
[00000233] main input debug: starting in sync mode
[00000233] main input debug: `v4l:/dev/video0' successfully opened
[00000235] main stream output debug: adding a new input
[00000236] stream_out_transcode private debug: creating video transcoding from fcc=`I422' to fcc=`theo'
[00000276] main decoder debug: looking for decoder module: 19 candidates
[00000276] main decoder debug: using decoder module "rawvideo"
[00000277] main encoder debug: looking for encoder module: 4 candidates
[00000277] theora encoder debug: padding video from 352x292 to 352x304
[00000277] main encoder debug: using encoder module "theora"
[00000277] main encoder debug: removing module "theora"
[00000236] stream_out_transcode private debug: decoder aspect is 576000:432000
[00000236] stream_out_transcode private debug: source pixel aspect is 1.106061:1
[00000236] stream_out_transcode private debug: scaled pixel aspect is 1.106061:1
[00000236] stream_out_transcode private debug: source 352x292, crop 352x292, destination 352x292, padding 352x292
[00000236] stream_out_transcode private debug: encoder aspect is 576000:432000
[00000277] main encoder debug: looking for encoder module: 4 candidates
[00000277] theora encoder debug: padding video from 352x292 to 352x304
[00000277] main encoder debug: using encoder module "theora"
[00000245] main private debug: adding a new input
[00000245] mux_ogg private debug: adding input
[00000245] mux_ogg private debug: theora stream
[00000286] main private debug: looking for crop padd module: 0 candidates
[00000286] main private error: no crop padd module matched "any"
[00000236] stream_out_transcode private debug: no video filter found
[00000276] main decoder debug: removing module "rawvideo"
[00000277] main encoder debug: removing module "theora"
[00000235] main stream output debug: adding a new input
[00000236] stream_out_transcode private debug: creating audio transcoding from fcc=`s16l' to fcc=`vorb'
[00000287] main decoder debug: looking for decoder module: 19 candidates
[00000287] araw decoder debug: samplerate:44100Hz channels:2 bits/sample:16
[00000287] main decoder debug: using decoder module "araw"
[00000288] main encoder debug: looking for encoder module: 4 candidates
[00000288] main encoder debug: using encoder module "vorbis"
[00000289] main private debug: looking for audio filter2 module: 4 candidates
[00000289] audio_format private debug: s16l->fl32, bits per sample: 16
[00000289] main private debug: using audio filter2 module "audio_format"
[00000297] main private debug: looking for audio filter2 module: 4 candidates
[00000288] main encoder debug: removing module "vorbis"
[00000236] stream_out_transcode private debug: number of audio channels for mixing changed, trying to reopen the encoder for mixing 2 to 2 channels
[00000288] main encoder debug: looking for encoder module: 4 candidates
[00000288] main encoder debug: using encoder module "vorbis"
[00000245] main private debug: adding a new input
[00000245] mux_ogg private debug: adding input
[00000245] mux_ogg private debug: vorbis stream
[00000245] main private warning: late buffer for mux input (269517)
[00000245] main private warning: late buffer for mux input (131985)
[00000245] main private warning: late buffer for mux input (5623)
[00000245] main private warning: late buffer for mux input (848143)
[00000245] main private warning: late buffer for mux input (931924)
[00000245] main private warning: late buffer for mux input (1052652)
[00000245] main private warning: late buffer for mux input (1095788)
[00000245] main private warning: late buffer for mux input (1203334)
[00000245] main private warning: late buffer for mux input (1204913)
[00000245] main private warning: late buffer for mux input (1357735)
[00000245] main private warning: late buffer for mux input (1359199)
[00000245] main private warning: late buffer for mux input (1465372)
[00000245] main private warning: late buffer for mux input (1512225)
[00000245] mux_ogg private debug: writing header
[00000245] mux_ogg private debug: creating header for theo
[00000245] mux_ogg private debug: creating header for vorb
[00000245] main private warning: late buffer for mux input (1538101)
[00000245] main private warning: late buffer for mux input (1696134)
[00000245] main private warning: late buffer for mux input (1691384)
[00000245] main private warning: late buffer for mux input (1760743)
...
...
...
This continues for ever.. until the laptop gets hung and I manually reboot it.
when I try to capture the stream on the receiving side, vlc players ends up giving "segmentation fault"...
testing on XP clients vlc crashes too..
I believe this has got something to do with theo+vorbis+ogg combination because it was working previously.
Or this might be something else which is completely out of my understanding...
should I change anything while builing or running or what??
Please help me by providing some clue. I need to get it working in 2 days..
thanks