[Trac #1491] Viable video codec for voip needed

Zarro Boogs per Child bugtracker at laptop.org
Wed May 16 12:35:00 EDT 2007


#1491: Viable video codec for voip needed
--------------------+-------------------------------------------------------
 Reporter:  sjoerd  |       Owner:  blizzard 
     Type:  defect  |      Status:  new      
 Priority:  normal  |   Milestone:  Untriaged
Component:  distro  |     Version:           
 Keywords:          |    Verified:  0        
--------------------+-------------------------------------------------------
 We need to have a usable video codec for video conferencing. Some
 requirements:
   * Patent free
   * Open source implementation
   * Efficient enough for decent performance on the olpc

 The current contenders (afaik) h261, h263 and theora:

 h261:
   * Seems patent free (encoder used by ekiga as shipped in Fedora)
   * Open source implementation available in opal (library used by ekiga,
 BSD licence, based on
     vic), vic (http://www-nrg.ee.lbl.gov/vic/, BSD license) and ofcourse
 ffmpeg (GPL)
   * Should be more then fast enough, standard from 1990.. olpc should be
 blazingly fast
     compared to machines from that era.


 h263:
   * patent status unknown?
   * Opensource implementation in vic (BSD license)and ffmepg (GPL)
   * Fast enough for olpc

    This is what we used for the voip demo's back in december. good
 quality, good cpu usage.
    Patent status might be a problem though.

 theora:
   * parent-free (royalty free licenses to the world :))
   * Opensource implementation in libtheora
   * slow compared to h263

   I've run some tests today with gstreamers theora encoder and decoder
 (libtheroa based) on my
   B1 machine.
   Displaying a test stream with resolution 320x240 with 5 fps using the
 following pipeline:
     gst-launch-0.10 videotestsrc is-live=true !
     video/x-raw-
 yuv,width=320,height=240,framerate=\(fraction\)5/1,format=\(fourcc\)I420 !
     theoraenc keyframe-force=60 ! theoradec ! xvimagesink sync=false

   uses about 60-70% cpu. For video conferencing you typically want at
 least around 15fps. When
   using the video camera as input it results in 75-85% cpu usage due to
 collor conversion from
   YUV2 to I420. For reference the same pipeline uses about 11% cpu on my
 PIII 1ghz and about 30%
   cpu for 15fps instead of 5. If the cpu of >= B3 is more comparable to a
 my PIII then to the B1
   it should be doable though.

-- 
Ticket URL: <http://dev.laptop.org/ticket/1491>
One Laptop Per Child <http://laptop.org/>



More information about the Bugs mailing list