User:Godiard/TestingVideoPipelines

From OLPC
< User:Godiard
Revision as of 14:08, 17 October 2011 by Godiard (talk | contribs) (Created page with '== GStreamer Video Pipelines == Tests comparing xo-1.5 and xo 1.75 The simplest pipeline using the camera: '''gst-launch v4l2src ! xvimagesink''' XO-1.5 Tasks: 93 total,…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

GStreamer Video Pipelines

Tests comparing xo-1.5 and xo 1.75

The simplest pipeline using the camera:

gst-launch v4l2src ! xvimagesink

XO-1.5

Tasks:  93 total,   1 running,  92 sleeping,   0 stopped,   0 zombie
Cpu(s): 17.2%us,  7.3%sy,  0.0%ni, 75.5%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    962900k total,   208812k used,   754088k free,    18676k buffers
Swap:        0k total,        0k used,        0k free,   104020k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                    
2350 olpc      20   0 41828 7048 5036 S 14.9  0.7   0:10.09 gst-launch-0.10                                                                                            
 804 root      20   0 82276 7848 4540 S  4.3  0.8   0:13.67 X                       

XO 1.75

top - 12:35:55 up  1:33,  1 user,  load average: 0.66, 0.64, 0.69
Tasks:  89 total,   1 running,  88 sleeping,   0 stopped,   0 zombie
Cpu(s): 22.3%us, 17.0%sy,  0.0%ni, 60.3%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%st
Mem:    472456k total,   231572k used,   240884k free,    21692k buffers
Swap:        0k total,        0k used,        0k free,    91172k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                   
2713 olpc      20   0 41360 6804 4820 S 23.6  1.4   0:28.13 gst-launch-0.10                                                                                           
 728 root      20   0 72140 7192 4320 S 15.4  1.5   2:42.15 X              


Create a ogg file (without scale):

gst-launch v4l2src ! tee name=tv ! queue ! xvimagesink sync=false tv. ! theoraenc ! queue ! oggmux ! filesink location=/tmp/test.ogg

XO-1.5

top - 05:00:57 up 43 min,  1 user,  load average: 0.67, 0.59, 0.52
Tasks:  96 total,   1 running,  95 sleeping,   0 stopped,   0 zombie
Cpu(s): 92.7%us,  1.0%sy,  0.0%ni,  6.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    962900k total,   217352k used,   745548k free,    18784k buffers
Swap:        0k total,        0k used,        0k free,   102224k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                    
2714 olpc      20   0 99020  13m 5460 S 91.6  1.4   0:34.88 gst-launch-0.10                                                                                            
 804 root      20   0 82128 7712 4392 S  1.0  0.8   0:21.04 X                                                                                                          
 700 root      20   0 29412 1252  788 S  0.7  0.1   0:01.59 rsyslogd                                                                                                   
2752 olpc      20   0  2700 1072  836 R  0.7  0.1   0:00.17 top        

XO 1.75

top - 12:40:17 up  1:37,  1 user,  load average: 1.57, 0.93, 0.77
Tasks:  90 total,   1 running,  89 sleeping,   0 stopped,   0 zombie
Cpu(s): 99.0%us,  1.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    472456k total,   238200k used,   234256k free,    21764k buffers
Swap:        0k total,        0k used,        0k free,    90980k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                   
2763 olpc      20   0 98544  13m 5196 S 93.3  3.0   0:45.44 gst-launch-0.10                                                                                           
2605 root      20   0     0    0    0 S  2.0  0.0   0:05.65 kworker/0:1                                                                                               
2699 root      20   0     0    0    0 S  2.0  0.0   0:01.51 kworker/0:0                                                                                               
  25 root      20   0     0    0    0 D  1.6  0.0   0:15.48 kworker/u:1                                                                                               
 728 root      20   0 72000 7044 4172 S  0.7  1.5   2:59.40 X       

Saving to /dev/null (to see if is I/O)

gst-launch v4l2src ! tee name=tv ! queue ! xvimagesink sync=false tv. ! theoraenc ! queue ! oggmux ! filesink location=/dev/null

XO-1.5

top - 05:15:18 up 58 min,  1 user,  load average: 1.03, 0.72, 0.58
Tasks:  94 total,   1 running,  93 sleeping,   0 stopped,   0 zombie
Cpu(s): 95.1%us,  1.0%sy,  0.0%ni,  3.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    962900k total,   220576k used,   742324k free,    18896k buffers
Swap:        0k total,        0k used,        0k free,   109168k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                    
 523 olpc      20   0 99148  13m 5464 S 93.0  1.5   0:39.85 gst-launch-0.10                                                                                            
 804 root      20   0 82128 7716 4392 S  1.0  0.8   0:22.73 X        

XO 1.75

top - 12:51:24 up  1:48,  1 user,  load average: 1.32, 0.96, 0.85
Tasks:  90 total,   1 running,  89 sleeping,   0 stopped,   0 zombie
Cpu(s): 97.7%us,  2.3%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    472456k total,   250568k used,   221888k free,    21840k buffers
Swap:        0k total,        0k used,        0k free,   103720k cached
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                   
 2891 olpc      20   0 98632  13m 5200 S 91.5  3.0   1:33.76 gst-launch-0.10                                                                                           
 2605 root      20   0     0    0    0 S  3.6  0.0   0:09.88 kworker/0:1                                                                                               
 2864 root      20   0     0    0    0 D  1.6  0.0   0:01.40 kworker/u:2                                                                                               
 2903 root      20   0     0    0    0 S  1.3  0.0   0:02.00 kworker/0:3                                                                                               
  728 root      20   0 71992 7044 4172 S  1.0  1.5   3:02.35 X              


We use a faster (and ugly :/ ) scaled image capture:

The code involved in Record is here: http://git.sugarlabs.org/record/mainline/blobs/master/glive.py

We use 160x120 and 400x300 resolution.

gst-launch v4l2src ! videoscale ! 'video/x-raw-yuv,width=160,height=120' ! tee name=tv ! queue ! xvimagesink sync=false tv. ! theoraenc ! queue ! oggmux ! filesink location=/dev/null

XO 1.5

top - 06:56:14 up  2:39,  1 user,  load average: 0.87, 0.59, 0.62
Tasks:  94 total,   1 running,  93 sleeping,   0 stopped,   0 zombie
Cpu(s): 73.4%us,  0.7%sy,  0.0%ni, 25.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    962900k total,   222592k used,   740308k free,    19656k buffers
Swap:        0k total,        0k used,        0k free,   109556k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                    
2942 olpc      20   0 93452 9524 5372 S 71.0  1.0   0:26.32 gst-launch-0.10       

XO 1.75

Tasks:  89 total,   1 running,  88 sleeping,   0 stopped,   0 zombie
Cpu(s): 97.0%us,  3.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    472456k total,   228380k used,   244076k free,    22340k buffers
Swap:        0k total,        0k used,        0k free,    87156k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                   
3740 olpc      20   0 91460 7256 4220 S 91.2  1.5   0:18.69 gst-launch-0.10                                                                                           
3751 root      20   0     0    0    0 S  2.6  0.0   0:00.40 kworker/0:3                                                                                               
3692 root      20   0     0    0    0 S  1.6  0.0   0:00.11 kworker/u:0       

gst-launch v4l2src ! videoscale ! 'video/x-raw-yuv,width=320,height=240' ! tee name=tv ! queue ! xvimagesink sync=false tv. ! theoraenc ! queue ! oggmux ! filesink location=/dev/null

XO 1.5

top - 06:57:45 up  2:40,  1 user,  load average: 0.82, 0.62, 0.63
Tasks:  94 total,   1 running,  93 sleeping,   0 stopped,   0 zombie
Cpu(s): 87.4%us,  1.7%sy,  0.0%ni, 10.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    962900k total,   222080k used,   740820k free,    19724k buffers
Swap:        0k total,        0k used,        0k free,   109660k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                    
3064 olpc      20   0 93572 8992 4544 S 83.7  0.9   0:26.53 gst-launch-0.10               

XO 1.75

top - 14:32:06 up  3:29,  1 user,  load average: 1.33, 1.10, 0.88
Tasks:  92 total,   1 running,  91 sleeping,   0 stopped,   0 zombie
Cpu(s): 98.7%us,  1.3%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    472456k total,   234544k used,   237912k free,    22484k buffers
Swap:        0k total,        0k used,        0k free,    87252k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                   
3839 olpc      20   0 93036 8688 4296 S 89.6  1.8   0:25.95 gst-launch-0.10                                                                                           
3599 root      20   0     0    0    0 D  3.9  0.0   0:07.09 kworker/0:0                                                                                               
3775 root      20   0     0    0    0 S  2.0  0.0   0:00.06 kworker/u:2                                                                                               
 728 root      20   0 71720 6724 3852 S  1.3  1.4   3:28.21 X                   

gst-launch v4l2src ! videoscale ! 'video/x-raw-yuv,width=400,height=300' ! tee name=tv ! queue ! xvimagesink sync=false tv. ! theoraenc ! queue ! oggmux ! filesink location=/dev/null

XO 1.5

top - 06:01:54 up 38 min,  1 user,  load average: 0.56, 0.70, 0.37
Tasks:  92 total,   1 running,  91 sleeping,   0 stopped,   0 zombie
Cpu(s): 85.9%us,  1.0%sy,  0.0%ni, 13.1%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    962900k total,   201388k used,   761512k free,    18424k buffers
Swap:        0k total,        0k used,        0k free,    94588k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                          
2637 olpc      20   0 95040  10m 4772 S 84.1  1.1   0:11.36 gst-launch-0.10      
    

XO 1.75

top - 13:31:51 up 30 min,  1 user,  load average: 1.00, 0.71, 0.56
Tasks:  92 total,   1 running,  91 sleeping,   0 stopped,   0 zombie
Cpu(s): 98.7%us,  1.3%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    472460k total,   221004k used,   251456k free,    17228k buffers
Swap:        0k total,        0k used,        0k free,    79296k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                         
1687 olpc      20   0 95616  11m 5256 S 94.5  2.5   0:15.68 gst-launch-0.10         


Using vp8

gst-launch v4l2src ! videoscale ! 'video/x-raw-yuv,width=400,height=300' ! tee name=tv ! queue ! xvimagesink sync=false tv. ! vp8enc ! queue ! matroskamux ! filesink location=/dev/null

XO 1.5 (looks slower)

top - 06:10:53 up 47 min,  1 user,  load average: 1.05, 0.95, 0.64
Tasks:  89 total,   1 running,  88 sleeping,   0 stopped,   0 zombie
Cpu(s): 97.0%us,  0.3%sy,  0.0%ni,  2.6%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    962900k total,   202488k used,   760412k free,    18664k buffers
Swap:        0k total,        0k used,        0k free,    95612k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                          
3384 olpc      20   0 98.5m  14m 4996 S 94.1  1.5   0:25.71 gst-launch-0.10      

XO 1.75 (Very slow)

top - 13:43:44 up 42 min,  1 user,  load average: 1.36, 0.83, 0.68
Tasks:  89 total,   1 running,  88 sleeping,   0 stopped,   0 zombie
Cpu(s): 99.3%us,  0.7%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    472460k total,   223908k used,   248552k free,    17472k buffers
Swap:        0k total,        0k used,        0k free,    80076k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                         
1801 olpc      20   0  102m  18m 5484 S 95.5  3.9   0:12.65 gst-launch-0.10           


Links