FPV Camera(RPI3+V2.1) | wfb_ng Release 23.01 | Ubuntu 20.04 xfce软解测试
创始人
2024-06-02 14:58:49
0

@[TOC](FPV Camera(RPI3+V2.1) | wfb_ng Release 23.01 | Ubuntu 20.04 xfce软解测试)

1. 简介

与其他Linux桌面系统相比,Xfce消耗更少的CPU,仅使用1%的CPU。因此低CPU是Xfce的独特卖点之一。在FPV Camera(RPI3+V2.1) | wfb_ng Release 23.01 | Intel® Core™2 Duo CPU T6570 @ 2.10GHz 测试上,发现genome在720P 60FPS时,H264解码占用大量CPU资源,因此我们尝试减少桌面系统对CPU的占用率来看看有什么新的发现。

2. 安装xfce

xfce安装

$ sudo apt install tasksel
$ sudo tasksel install xubuntu-desktop
$ sudo apt install xfce4
$ sudo apt install xfce4-goodies

浏览器firefox无法上网,使用chromium替换

$ sudo apt-get remove firefox
$ sudo apt-get install chromium-browser

重启系统使用xfce桌面

$ sudo reboot

3. 测试

3.1 gst-launch-1.0 1280x720 720P 30FPS

gst-launch-1.0 v4l2src do-timestamp=true io-mode=mmap device=/dev/video0 \extra-controls="controls,image_stabilization=1,h264_profile=4,h264_i_frame_period=60,h264_level=11,power_line_frequency=1,exposure_metering_mong=1,exposure_dynamic_framerate=0,scene_mode=0,video_bitrate_mode=1,video_bitrate=2000000,repeat_sequence_header=1" \! video/x-h264,profile=high,width=1280,height=720,framerate=30/1,stream-format=byte-stream \! h264parse disable-passthrough=true ! rtph264pay config-interval=1 pt=96 mtu=1400 aggregate-mode=zero-latency ! udpsink host=127.0.0.1 port=5602 sync=false

gst1280x720@fps30

3.2 gst-launch-1.0 1280x720 720P 45FPS

gst-launch-1.0 v4l2src do-timestamp=true io-mode=mmap device=/dev/video0 \extra-controls="controls,image_stabilization=1,h264_profile=4,h264_i_frame_period=60,h264_level=11,power_line_frequency=1,exposure_metering_mong=1,exposure_dynamic_framerate=0,scene_mode=0,video_bitrate_mode=1,video_bitrate=2000000,repeat_sequence_header=1" \! video/x-h264,profile=high,width=1280,height=720,framerate=45/1,stream-format=byte-stream \! h264parse disable-passthrough=true ! rtph264pay config-interval=1 pt=96 mtu=1400 aggregate-mode=zero-latency ! udpsink host=127.0.0.1 port=5602 sync=false

gst1280x720fxce@fps45

3.3 gst-launch-1.0 1280x720 720P 60FPS

gst-launch-1.0 v4l2src do-timestamp=true io-mode=mmap device=/dev/video0 \extra-controls="controls,image_stabilization=1,h264_profile=4,h264_i_frame_period=60,h264_level=11,power_line_frequency=1,exposure_metering_mong=1,exposure_dynamic_framerate=0,scene_mode=0,video_bitrate_mode=1,video_bitrate=2000000,repeat_sequence_header=1" \! video/x-h264,profile=high,width=1280,height=720,framerate=60/1,stream-format=byte-stream \! h264parse disable-passthrough=true ! rtph264pay config-interval=1 pt=96 mtu=1400 aggregate-mode=zero-latency ! udpsink host=127.0.0.1 port=5602 sync=false

gst1280x720fxce@fps60

3.4 gst-launch-1.0 800x600 SVGA 60FPS

gst-launch-1.0 v4l2src do-timestamp=true io-mode=mmap device=/dev/video0 \extra-controls="controls,image_stabilization=1,h264_profile=4,h264_i_frame_period=60,h264_level=11,power_line_frequency=1,exposure_metering_mong=1,exposure_dynamic_framerate=0,scene_mode=0,video_bitrate_mode=1,video_bitrate=2000000,repeat_sequence_header=1" \! video/x-h264,profile=high,width=800,height=600,framerate=60/1,stream-format=byte-stream \! h264parse disable-passthrough=true ! rtph264pay config-interval=1 pt=96 mtu=1400 aggregate-mode=zero-latency ! udpsink host=127.0.0.1 port=5602 sync=false

gst800x600fxce@fps60

3.5 gst-launch-1.0 640x480 VGA 60FPS

gst-launch-1.0 v4l2src do-timestamp=true io-mode=mmap device=/dev/video0 \extra-controls="controls,image_stabilization=1,h264_profile=4,h264_i_frame_period=60,h264_level=11,power_line_frequency=1,exposure_metering_mong=1,exposure_dynamic_framerate=0,scene_mode=0,video_bitrate_mode=1,video_bitrate=2000000,repeat_sequence_header=1" \! video/x-h264,profile=high,width=640,height=480,framerate=60/1,stream-format=byte-stream \! h264parse disable-passthrough=true ! rtph264pay config-interval=1 pt=96 mtu=1400 aggregate-mode=zero-latency ! udpsink host=127.0.0.1 port=5602 sync=false

gst640x480fxce@fps60

3.6 gst-launch-1.0 480x320 HVGA 60FPS

gst-launch-1.0 v4l2src do-timestamp=true io-mode=mmap device=/dev/video0 \extra-controls="controls,image_stabilization=1,h264_profile=4,h264_i_frame_period=60,h264_level=11,power_line_frequency=1,exposure_metering_mong=1,exposure_dynamic_framerate=0,scene_mode=0,video_bitrate_mode=1,video_bitrate=2000000,repeat_sequence_header=1" \! video/x-h264,profile=high,width=480,height=320,framerate=60/1,stream-format=byte-stream \! h264parse disable-passthrough=true ! rtph264pay config-interval=1 pt=96 mtu=1400 aggregate-mode=zero-latency ! udpsink host=127.0.0.1 port=5602 sync=false

gst480x320fxce@fps60

4. 总结

4.1 1280x720 720P 30FPS x 3张清晰延时,统计平均 128ms,最小128ms,最大128ms

  • 第一张:1019 - 891= 128 ms

在这里插入图片描述

  • 第二张:531 - 403= 128 ms

在这里插入图片描述

  • 第三张:843 - 715= 128 ms

在这里插入图片描述

4.2 1280x720 720P 45FPS x 3张清晰延时,统计平均 85ms,最小80ms,最大88ms

  • 第一张:179 - 91 = 88 ms
    在这里插入图片描述

  • 第二张:331 - 243 = 88 ms
    在这里插入图片描述

  • 第三张:187 - 107= 80 ms

在这里插入图片描述

4.3 1280x720 720P 60FPS - 视频卡顿

鉴于该模式下,整体视频出现卡顿,延时测试取消。

在这里插入图片描述

4.4 800x600 SVGA 60FPS x 3张清晰延时,统计平均 85ms,最小80ms,最大88ms

  • 第一张:523 - 435 = 88 ms

在这里插入图片描述

  • 第二张:603 - 515 = 88 ms
    在这里插入图片描述

  • 第三张:499 - 419 = 80 ms

在这里插入图片描述

4.5 640x480 VGA 60FPS x 3张清晰延时,统计平均 56ms,最小40ms,最大80ms

  • 第一张:323 - 283 = 40 ms

在这里插入图片描述

  • 第二张:315 - 267 = 48 ms

在这里插入图片描述

  • 第三张:643 - 563 = 80 ms

在这里插入图片描述

4.6 480x320 HVGA 60FPS x 3张清晰延时,统计平均 48ms,最小48ms,最大48ms

  • 第一张:219 - 171 = 48 ms

在这里插入图片描述

  • 第二张:379 - 331 = 48 ms

在这里插入图片描述

  • 第三张:283 - 235 = 48 ms

在这里插入图片描述

4.5 视频延时测试结果

  • 1280x720 720P 30FPS x 3张清晰延时,统计平均 128ms,最小128ms,最大128ms
  • 1280x720 720P 45FPS x 3张清晰延时,统计平均 85ms,最小80ms,最大88ms
  • 1280x720 720P 60FPS - 卡顿
  • 800x600 SVGA 60FPS x 3张清晰延时,统计平均 85ms,最小80ms,最大88ms
  • 640x480 VGA 60FPS x 3张清晰延时,统计平均 56ms,最小40ms,最大80ms
  • 480x320 HVGA 60FPS x 3张清晰延时,统计平均 48ms,最小48ms,最大48ms

5. 参考资料

【1】wfb-ng Release 23.01镜像无头烧录&配置(2)
【2】wfb-ng Release 23.01镜像无头烧录&配置(1)
【3】wfb-ng 锁定WiFi接口
【4】Raspbian镜像无头烧录
【5】FPV Camera(RPI3+V2.1) | wfb_ng Release 23.01 | Intel® Core™2 Duo CPU T6570 @ 2.10GHz 测试
【6】How to install a web browser in XFCE?
【7】How install XFCE and remove gnome on Ubuntu 20.0.4 LTS
【8】How to Install XFCE Desktop or Xubuntu in Ubuntu 22.04|20.04
【9】Gnome vs Xfce Differences

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...