Linux嵌入式开发:基于Linux的智能播放器(一)环境配置

目录

前言

一、项目介绍

二、环境配置

1.虚拟机安装(配置共享文件夹)

2.安装交叉编译工具链

前言

手里有一块剩下来的之前学习使用的正点原子开发板IMX6ULL,正好最近刷抖音看见一些语音助手,觉得很有意思,于是决定自己也做一个语音助手,主要用来播放视频。


一、项目介绍

主要还是使用开发板上现有资源进行开发,考虑到I.MX6ULL 性能比较差,而且没有硬件视频解码,并且视频的分辨率最好是在在 640*480 左右,我认为不如直接播放本地视频,也就是使用语音识别控制本地视频的播放,比如暂停/继续/终止/切换视频等。

开发平台:正点原子I.MX6U ALPHA 开发板

音频芯片:WM8960音视频芯片

UI设计平台:Qt5.12.9

二、环境配置

1.虚拟机安装(配置共享文件夹)

虚拟机使用VMware WorkstationPRO 17,Linux操作系统使用Ubuntu16.04LTS,网上教程很多,这里不再赘述。这里主要讲解如何使用samba服务器共享文件夹,方便后继开发。

  • 安装Samba服务

打开Linux终端,输入以下命令 

sudo apt-get install samba samba-common
  • 配置共享文件夹

以/home为例 (当然不推荐真的使用/home做完共享目录,但是个人开发的话其实无所谓)

$ sudo chmod 775 /home/ -R
  • 添加Samba用户

主要是用于设备认证,方便主机和虚机进行文件交互

sudo smbpassword -a username

其中username为自己的用户名,输入两次密码即可注册完成

  • 修改配置文件

修改前记得先备份一份,配置文件一般在/etc/samba下

[samba]
  comment = samba server
  path = /home/
  browseable = yes
  read only = no
  guest ok = yes
  writable = yes
  valid users = username

[samba]是之后在window中配置共享文件夹时会使用到的名字

path为之前配置的共享文件路径,使用pwd查看绝对路径填入其中即可

valid users为之前注册的用户名

  • 重启samba
sudo service smbd restart
  •  主机操作

在进行这一步之前要求Ubuntu与主机之间能够互相ping通,推荐虚拟机直接使用桥接网络设置,能够省下很多麻烦

在Ubuntu中记录下Ubuntu的IP地址,输入以下命令即可

ifconfig

 在主机中打开运行窗口

在其中输入Ubuntu的IP地址

成功后出现如上图所示

一般会让你输入密码作为登录验证,和直接映射网络驱动器同理

完成后,即可在window和Ubuntu之间实现文件共享

2.安装交叉编译工具链

接下来要进行的Uboot 移植、 Linux 移植这些都需要在 Ubuntu 下进行编译,编译就需要编译器,但是 Ubuntu 自带的 gcc 编译器是针对 X86 架构的!而开发板编译的是 ARM 架构的代码,所以需要一个在 X86 架构的 PC 上运行,可以编译 ARM 架构代码的 GCC 编译器,这个编译器就叫做交叉编译器。

开发板主控芯片IMX6ULL是Cortex-A7架构的,使用交叉编译工具链arm-linux-gnueabihf,这里附上链接https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/

打开网站后可以见到很多交叉编译工具链

这里需要根据自身的Ubuntu版本进行选择,笔者使用的是gcc-linaro-4.9.4- 2017.01-x86_64_arm-linux-gnueabihf.tar.xz。

下载完成后利用之前搭建好的samba共享文件夹将压缩包放入Ubuntu中,并将其放在指定目录下解压缩

sudo cp gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/ -f

解压命令如下:

sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz

配置环境变量后即可使用

sudo vim /etc/profile

 在最后添加

export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin

 记得保存后退出vim编辑器,重启Ubuntu系统后就能使用交叉编译工具链,在使用前安装其他库如下命令

sudo apt-get install lsb-core lib32stdc++6

输入以下命令查看编译器版本号

arm-linux-gnueabihf-gcc -v

如使用相同交叉编译工具链,输出如下

 到此,交叉编译工具链安装完成。


最后,笔者恳请各位博友能够指导一二,毕竟该项目为笔者临时起意,且主要目的是能够学习到更多知识,以及对自身所学进行一个梳理,还请各位博友不吝赐教。

随着第三代移动通信技术的逐步推广应用,将移动流媒体技术引入移动增值业务,已成为目前全球范围内移动业务应用研究的热点之。而高效、实用的多媒体终端设备融合了嵌入式技术、数字图像技术,通信技术等,是通信领域研究的主要方向之,使得对基于嵌入式技术实现视频的传输、解码、播放的研究更加迫切,并具有理论意义和实践意义通过对嵌入式、数字图像等技术的深入研究,提出了基于嵌入式 Linux的H264视频播放系统设计方案。系统硬件平台采用 XScale构架的PXA255嵌入式微处理器。软件平台的核心根据需求采用了嵌入式 Linux操作系统。论文对流媒体和移动流媒体的概念及发展趋势、嵌入式系统和嵌入式Linuκ发展概况、H.264视频编码标准的特点和优势进行了深入分析,对视频业务在未来通信中应用的意义进行了阐述。在此基础上,设计了嵌入式视频播放系统的软硬件总体结构,并逐步对硬件平台和软件模块设计进行了选择和细化:硬件平台根据嵌入式GUI的构建和视频解码播放需要选择了EAX-400系统;软件设计包括:建立了嵌入式系统的交叉开发环境,对Boot loader的启动过程进行了分析,实现了 Bootloader的移植;针对PXA255目标板,完成了嵌入式 Linux操作系统的移植工作:对 Linux根文件系统的组织结构进行了研究,设计了嵌入式 Linux根文件系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值