vp8 streaming on Android

Andoni Morales ylatuya at gmail.com
Sat Apr 19 07:31:10 PDT 2014


2014-04-18 17:27 GMT+02:00 Lee Matthews <lma at spaceapplications.com>:

> Hi
>
> I'm trying to use gstreamer on a nexus 5 phone to stream video over the
> network to a PC using the vp8 codec.
>
> I used buildroot to build gstreamer and its associated plugins for the ARM
> target.
>
> To send data from the phone I use the following command :
>
> ../lib/ld-linux.so.3 ./gst-launch-1.0 v4l2src device=/dev/video3 !
> videoconvert !  video/x-raw, framerate=10/1, width=640, height=480 ! vp8enc
> target-bitrate=500000 keyframe-max-dist=20 threads=4  ! rtpvp8pay pt=96 !
> udpsink host=10.1.5.21 port=5555
>
> On my PC I visualise the incoming video using :
>
> gst-launch-1.0 udpsrc port=5555 ! "application/x-rtp, payload=96" !
> rtpvp8depay ! vp8dec ! xvimagesink
>
> The video framerate is really slow, ie 1 frame every second or two with a
> latency of around 10 seconds - is there something inherently wrong with the
> above pipeline configuration that would explain this ? Even if I reduce the
> resolution to 320x240, this yields very little improvement.
>
> Secondly, apparently the nexus 5 has built-in vp8 encoding/decoding
> hardware support. Is this taken into account by the vp8enc element ? My
> processor usage is currently hovering at around 40%.
>

By default vp8enc configures the encoder with deadline=0 (
VPX_DL_BEST_QUALITY<http://www.webmproject.org/docs/vp8-sdk/group__encoder.html#gab350573bea112f2fdf8e5677db3ac0da>)
but for realtime you should be using deadline=1
(VPX_DL_REALTIME<http://www.webmproject.org/docs/vp8-sdk/group__encoder.html#ga04253cc9ec1146d72fa8bb86bcf32144>
).
The property cpu-used also affects the encoding speed, where for realtime
you should use a value from 5 to 15. Everything is better explained in
"Encode Quality vs Speed" (
http://www.webmproject.org/docs/encoder-parameters/).
Hardware encoders and decoders for Android are wrapper in the
amcvideo{dec|enc} elements. For now only decoders are supported although
there are patches in bugzilla for the encoders.

Cheers,
Andoni

>
> Thanks
> Lee
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>



-- 
Andoni Morales Alastruey

LongoMatch:The Digital Coach
http://www.longomatch.ylatuya.es
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140419/0c4affdb/attachment.html>


More information about the gstreamer-devel mailing list