当前位置: 首页 > wzjs >正文

著名网站建设公司直播回放老卡怎么回事

著名网站建设公司,直播回放老卡怎么回事,做关于水果的网站,政府网站建设与管理的现状之前在NXP的板子上,移植过了ARM Linux 移植 tslib、Qt和OpenCV_linux qt tslib-CSDN博客 不过海思移植Qt时还是有不少问题的。 一、Qt 下载与编译 1. Qt 下载 Index of /archive/qt/5.12/5.12.9/single tar -xf qt-everywhere-src-5.12.9.tar.xz2. 修改交叉编译…

之前在NXP的板子上,移植过了ARM Linux 移植 tslib、Qt和OpenCV_linux qt tslib-CSDN博客

不过海思移植Qt时还是有不少问题的。

一、Qt 下载与编译

1. Qt 下载

Index of /archive/qt/5.12/5.12.9/single

tar -xf qt-everywhere-src-5.12.9.tar.xz

2. 修改交叉编译器 

将原来交叉编译的 qmake.conf 复制一份 

cd qt-everywhere-src-5.12.9/ 
cp -r qtbase/mkspecs/linux-arm-gnueabi-g++ qtbase/mkspecs/arm-himix200-linux-g++
vim qtbase/mkspecs/arm-himix200-linux-g++/qmake.conf 

修改的内容如下: 

#
# qmake configuration for building with arm-linux-gnueabi-g++
#MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental
QMAKE_INCREMENTAL_STYLE = sublibinclude(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)# modifications to g++.conf
QMAKE_CC                = arm-himix200-linux-gcc
QMAKE_CXX               = arm-himix200-linux-g++
QMAKE_LINK              = arm-himix200-linux-g++
QMAKE_LINK_SHLIB        = arm-himix200-linux-g++# modifications to linux.conf
QMAKE_AR                = arm-himix200-linux-ar cqs
QMAKE_OBJCOPY           = arm-himix200-linux-objcopy
QMAKE_STRIP             = arm-himix200-linux-stripload(qt_config)# modifications to gcc-base.conf
QMAKE_CFLAGS_RELEASE += -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4
QMAKE_CXXFLAGS_RELEASE += -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -fpermissive

3. 编译前的配置

vim autoconfigure.sh

内容如下:

./configure -prefix /home/prover/linux/arm-qt \
-opensource \
-confirm-license \
-release \
-strip \
-no-eglfs -linuxfb \
-qt-zlib \
-no-gif \
-qt-libpng \
-qt-libjpeg \
-qt-freetype \
-no-rpath \
-no-pch \
-no-avx \
-no-openssl \
-no-cups \
-no-dbus \
-no-pkg-config \
-no-glib \
-no-iconv \
-xplatform arm-himix200-linux-g++ \    
-no-opengl \
-nomake examples \
-nomake tools \
-no-sqlite \
-skip qtgamepad \
-skip qtandroidextras \
-skip qtmacextras \
-skip qtx11extras \
-skip qtsensors \
-skip qtserialbus \
-skip qtserialport \
-skip qtwebengine \
-skip qtwebchannel \
-skip qtwebsockets \
-skip qtlocation \
-skip qtquickcontrols \
-skip qtpurchasing \
-skip qtconnectivity \
-skip qtscxml \
-skip qtxmlpatterns \
-skip qtnetworkauth \
-skip qtspeech \
-skip qtscript \
-skip qtremoteobjects \
-skip qtcharts \
-skip qtdatavis3d \
-skip qtwebview \
-make libs \
-make examples \
-nomake tools -nomake tests \
-gui \
-widgets \
-dbus-runtime \
--glib=no \
--iconv=no \
--pcre=qt \
--zlib=qt \
-no-openssl \
--freetype=qt \
--harfbuzz=qt \
-no-opengl \
-linuxfb \
--xcb=no \
-tslib \
--libpng=qt \
--libjpeg=qt \
--sqlite=qt \
-plugin-sql-sqlite \
-I/home/prover/linux/tslib-1.21/arm-tslib/include \
-L/home/prover/linux/tslib-1.21/arm-tslib/lib \
-recheck-all

记得交叉编译器改成海思的:-xplatform arm-himix200-linux-g++ \  

然后运行: 

chmod +x autoconfigure.sh
sudo apt-get install g++ // 配置前请先安装 g++ 
./autoconfigure.sh 

4. 编译

make -j8
make install

打包

sudo tar -jcf ./arm-qt.tar.bz2 shared

二、移植Qt

1. SD卡挂载

由于 Nor flash 的大小就那么32M,肯定要把Qt运行库移植到SD卡上。

mkdir -p /sdcard
mount /dev/mmcblk0p1 /sdcard

可以设置开机自动挂载:

2. 移植到SD卡 

sudo cp arm-qt.tar.bz2 /home/prover/linux/nfs/rootfs_glibc/sdcard/

配置环境变量 /etc/profile

export QT_QPA_PLATFORM_PLUGIN_PATH=/sdcard/arm-qt/plugins
export QT_QPA_FONTDIR=/sdcard/arm-qt/fonts
export LD_LIBRARY_PATH=/sdcard/arm-qt
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/sdcard/arm-qt/lib
export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0
export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0:size=1920x1080:offset=0x0:nographicsmodeswitc

三、测试Qt应用

1. 编译demo

cd qt-everywhere-src-5.12.9/qtbase/examples/widgets/graphicsview/collidingmice
../../../../bin/qmake
make

2. 初始化

和之前移植 tslib 一样,海思是会对 /dev/fb0 进行封装的。这边改动 sample_tde.c 的源码,原来的 tde 是要将背景图和一些图片循环输出到屏幕的,这边我们直接不要这么做,而是直接刷新屏幕即可。

2.1 修改分辨率

我设置的是 1920*1080,这里的分辨率其实就是物理分辨率了。

来到函数 static HI_VOID circumrotate(HI_U32 u32CurOnShow) 

我们直接全部删了,换成下面这段:

static HI_VOID circumrotate(HI_U32 u32CurOnShow)
{struct fb_var_screeninfo stVarInfo; // **声明屏幕信息变量**// **获取当前屏幕参数**if (ioctl(g_s32Fd, FBIOGET_VSCREENINFO, &stVarInfo) < 0)  {TDE_PRINT("Failed to get screen info!\n");return;}// **执行屏幕刷新**if (ioctl(g_s32Fd, FBIOPAN_DISPLAY, &stVarInfo) < 0){TDE_PRINT("process frame buffer device error\n");return;}getchar();  // **等待用户按键**g_s32FrameNum++;  // **递增帧数**return;
}

3. 运行测试

这边还编译了个demo ,animatedtiles。

./sample_tde 0 &
./collidingmice
./animatedtiles

小结

后面开发的思路很明显了,要学习使用海思的mpp软件包进行开发视频。而既然移植了Qt,就将mpp也集成一块。后面想要开发一个相机的UI界面,按钮控件实现拍照和直播功能;当然还要有目标检测的话,就更好了。

http://www.dtcms.com/wzjs/206280.html

相关文章:

  • 自助网站建设系统软件百度关键词推广公司哪家好
  • 网站建设画册国外网站开发
  • 石狮网站设计公司债务优化是什么意思
  • 移动电商网站开发需求百度推广要多少钱
  • 怎么做cms网站新型网络搜索引擎
  • e建网站西安楼市最新房价
  • 国外红色企业网站软文广告代理平台
  • 新增病例最新消息快速seo排名优化
  • 做免费网站教程网络营销的含义的理解
  • 品牌网站运营搜索引擎排名优化seo
  • 建购物网站要多少钱山东免费网络推广工具
  • 手机网站制作报价北京网络营销公司排名
  • 网站代运营合同手机制作网站app
  • 网站开发设计项目书sem竞价推广代运营收费
  • 空包网站建设百度关键词搜索广告的优缺点
  • 做淘宝的批发网站有哪些手续打广告去哪个平台免费
  • 成都网站优化费用seo网站优化
  • 潍坊高端网站建设加强网络暴力治理
  • wordpress 模板调用惠州抖音seo
  • 六安市住房和城乡建设委员会网站6求网址
  • 佛山网站公司建设网站培训平台有哪些
  • 网站导航 javascript北京seo营销培训
  • 怎么做视频的网站如何在网上推广
  • 域名备案迁移优化新十条
  • 怎样学互联网营销上海做网站优化
  • 网络推广和网站推广百度官方认证
  • 哪个视频网站做视频赚钱的关于网络推广的方法
  • 重庆手机网站推广资料北京网站快速排名优化
  • 南京网站的优化什么是seo推广
  • wordpress网站关键字百度新闻网页