webm and vp8 over tcp

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

webm and vp8 over tcp

jaro
Hi,
   I have two problems - one is the different behavior between
versions, the other is  a crash.

   I use debian squeeze with this repo added to the sources
## Debian Multimedia squeeze:
deb http://mirror.home-dn.net/debian-multimedia squeeze main

   Usually, I use jpeg transport over TCP (actually in ssh tunnel) and
it is quite ok, however after some time (10-20 minutes) the transport
dies. Not very convenient, but already usable.
 I have found that there exists vp8 and webm in gst, so I try

RECEIVE:
gst-launch-0.10 tcpserversrc host=0.0.0.0 port=8120 ! matroskademux  !
 vp8dec ! ffmpegcolorspace ! ximagesink  sync=false

SEND:
v4l2src device=/dev/video0 ! image/jpeg,width=640,height=480,rate=20/1
! jpegdec ! ffmpegcolorspace ! clockoverlay !  vp8enc speed=2
max-latency=2 quality=5.0 max-keyframe-distance=3 threads=5
error-resilient=true  ! webmmux streamable=true ! tcpclientsink
host=127.0.0.1 port=8120

1/ crash
    sometimes very fast, sometimes within minutes the sender part generates

** (gst-launch-0.10:4454): CRITICAL **: gst_adapter_take: assertion
`nbytes > 0' failed
Caught SIGSEGV accessing address (nil)
#0  0xb782e424 in __kernel_vsyscall ()
#1  0xb7595696 in *__GI___poll (fds=0xb7618ff4, nfds=1, timeout=249)
#2  0xb768206b in g_poll () from /lib/libglib-2.0.so.0
#3  0xb7674dbc in ?? () from /lib/libglib-2.0.so.0
#4  0xb7675527 in g_main_loop_run () from /lib/libglib-2.0.so.0
#5  0xb777150a in gst_bus_poll () from /usr/lib/libgstreamer-0.10.so.0
#6  0x0804a665 in ?? ()
#7  0x0804bef6 in ?? ()
#8  0xb74edc76 in __libc_start_main (main=0x804b1c0, argc=26,
#9  0x0804a241 in ?? ()
Spinning.  Please run 'gdb gst-launch 4454' to continue debugging,
Ctrl-C to quit, or Ctrl-\ to dump core.

It crashes even if I put 2 fps, but it takes more time.

2/ gst versions
I tried to  compile gst+plugins from git (downloaded 2011/10/10) and
there the receiver part doesnot work (I deduce it from different
combinations version+send/receive on the same PC) - it remains silent
and on ctrl-c both receiver/sender (normally) end.


I have always gst-launch-0.10 version 0.10.30

Maybe I make some mistake somewhere?
Best regards,
jaro
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

RE: webm and vp8 over tcp

Alexey Fisher
> Hi,
>    I have two problems - one is the different behavior between
> versions, the other is  a crash.
>
>    I use debian squeeze with this repo added to the sources
> ## Debian Multimedia squeeze:
> deb http://mirror.home-dn.net/debian-multimedia squeeze main
>
>    Usually, I use jpeg transport over TCP (actually in ssh tunnel) and
> it is quite ok, however after some time (10-20 minutes) the transport
> dies. Not very convenient, but already usable.
>  I have found that there exists vp8 and webm in gst, so I try
>
> RECEIVE:
> gst-launch-0.10 tcpserversrc host=0.0.0.0 port=8120 ! matroskademux  !
>  vp8dec ! ffmpegcolorspace ! ximagesink  sync=false
>
> SEND:
> v4l2src device=/dev/video0 ! image/jpeg,width=640,height=480,rate=20/1
> ! jpegdec ! ffmpegcolorspace ! clockoverlay !  vp8enc speed=2
> max-latency=2 quality=5.0 max-keyframe-distance=3 threads=5
> error-resilient=true  ! webmmux streamable=true ! tcpclientsink
> host=127.0.0.1 port=8120
>
> 1/ crash
>     sometimes very fast, sometimes within minutes the sender part generates
>
> ** (gst-launch-0.10:4454): CRITICAL **: gst_adapter_take: assertion
> `nbytes > 0' failed
> Caught SIGSEGV accessing address (nil)
> #0  0xb782e424 in __kernel_vsyscall ()
> #1  0xb7595696 in *__GI___poll (fds=0xb7618ff4, nfds=1, timeout=249)
> #2  0xb768206b in g_poll () from /lib/libglib-2.0.so.0
> #3  0xb7674dbc in ?? () from /lib/libglib-2.0.so.0
> #4  0xb7675527 in g_main_loop_run () from /lib/libglib-2.0.so.0
> #5  0xb777150a in gst_bus_poll () from /usr/lib/libgstreamer-0.10.so.0
> #6  0x0804a665 in ?? ()
> #7  0x0804bef6 in ?? ()
> #8  0xb74edc76 in __libc_start_main (main=0x804b1c0, argc=26,
> #9  0x0804a241 in ?? ()
> Spinning.  Please run 'gdb gst-launch 4454' to continue debugging,
> Ctrl-C to quit, or Ctrl-\ to dump core.
>
> It crashes even if I put 2 fps, but it takes more time.
>
> 2/ gst versions
> I tried to  compile gst+plugins from git (downloaded 2011/10/10) and
> there the receiver part doesnot work (I deduce it from different
> combinations version+send/receive on the same PC) - it remains silent
> and on ctrl-c both receiver/sender (normally) end.
>
>
> I have always gst-launch-0.10 version 0.10.30
>
> Maybe I make some mistake somewhere?
> Best regards,
> jaro


Hi,

use bitrate instead of quality. I think we should remove this use less
option. error-resilient currently make not really match sense. And use
rpt instead of webmmux.
Here is example:

gst-launch-0.10 v4l2src ! videorate ! video/x-raw-yuv,
width=320,hight=240,framerate=5/1 ! vp8enc speed=2 bitrate=100000 !
rtpvp8pay ! udpsink port=5555 host=192.168.0.150

gst-launch udpsrc port=5555 caps="application/x-rtp" ! rtpvp8depay !
vp8dec ! autovideosink

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel