转载,侵删

7 无线wifi传输视频开发

MT7601的驱动源码提供了两种:AP模式和STA模式源码。此时我使用USB作为AP热点,电脑作为STA模式,并使用ORTP实现无线传输视频

7.1、AP模式下USB WIFI驱动移植

(1)准备wifi源码并将源码复制到ubuntu服务器下解压

源码在主机的:E:\winshare\HI3518EV200\MT7601_driver\下,此后打开Ubuntu终端,并执行以下命令:
cd /home/aston/sambashare[进入目标目录]
cp /mnt/hgfs/winshare/HI3518EV200/MT7601_driver/ ./ -rf[复制到ubuntu]
cd MT7601_driver/ap[进入AP模式源码目录]
tar -jxvf MT7601U_LinuxAP_3.0.0.1_20130802.tar.bz2[解压wifi源码]
cd MT7601U_LinuxAP_3.0.0.1_20130802/[进入源码目录]

(2)根据硬件条件对源码作出修改以适应硬件平台

步骤一:在include/rtmp_def.h中的1627行,修改完网络名始终为:wlan:
Sudo vi include/rtmp_def.h[打开目标头文件]
:1627[跳到1627行]
将下面的

#ifdef ANDROID_SUPPORT
#define INF_MAIN_DEV_NAME “wlan”
#define INF_MBSSID_DEV_NAME “wlan”
#else
#define INF_MAIN_DEV_NAME “ra”
#define INF_MBSSID_DEV_NAME “ra”
#endif

第一句和后面四句用//注释掉

(3)进入makefile目录,编译并修改错误

Cd ../Makefile ./ [进入源码根目录]
Make clean;make [清除并编译]
错误提示:linux/rt_profile.c:26:23: 致命错误: rt_config.h:没有这样的文件或目录
推测:cd os/linux [发现rt_profile.c]
Sudo vi rt_profile.c [打开 rt_profile.c源码文件]
: 26[跳转至第26行,发现#include "rt_config.h" ,即包含了rt_config头文件]
Cd ../../include [进入源码的头文件总目录,发现已经有了"rt_config.h"头文件,但是编译时找不到这个头文件,因此这个错误应该是编译没有把这个头文件链接包含进去,导致找不到这个文件 ]
解决:在./os/linux/config.mk中添加EXTRA_FLAGS
Cd os/linux
Sudo vi config.mk[打开wifi源码配置文件]
/DM6446[搜索关键字DM6446]
在DM6446平台架构之上添加HI3518E支持[1048行],如下:
ifeq ($(PLATFORM),HISI_3518E)
EXTRA_CFLAGS := $(WFLAGS) //指定预定义变量EXTRA_CFLAGS作为C编译器选项编译HI3518E源码树
endif
Cd ../../ [重新进入源码根目录]
Make clean;make [清除并编译]

(4)修改Makefile或者手工复制xx.ko到/home/aston/rootfs中

ls /os/linux/*.ko[发现os/linux/mt7601Uap.ko驱动已经生成]
sudo vi Makefile
/ko [搜索关键词ko]
将原来415行的内容改成:
cp -f $(RT28xx_DIR)/os/linux/mt$(MODULE)ap.ko /home/aston/rootfs [将生成的ko驱动挂载到 /home/aston/rootfs共享目录中]
Make[重新编译]
Cd /home/aston/rootfs[进入共享目录]
Ls [发现mt7601Uap.ko已经复制到了共享目录中去了]

7.2、AP模式下USB WIFI开发板部署

(1)测试wifi硬件是否能够正常使用

将开发板连上电脑,并进入Hilinux模式:
A:不插wifi时,串口输入命令lsusb,此时显示
Bus 001 Device 001:ID 1d6b:0002
Bus 001 Device 001:ID 1d6b:0001
B:现在插入wifi,会提示新高速USB设备002即hiusb-ehci.
这时执行命令:lsusb,发现新增加一个设备
Bus 001 Device 002:ID 148f:7601[这就是wifi设备,它的ID时002]

(2)将USB WIFU的AP模式驱动部署到开发板上

A:Ubunu:复制配置文件RT2870AP.dat文件到nfs共享文件夹中
Cd/home/aston/sambashare/MT7601_driver/ap/MT7601U_LinuxAP_3.0.0.1_20130802 [进入目标目录]
cp RT2870AP.dat ~/rootfs/ -f [将RT2870AP.dat复制到共享目录中]

B:Hilinux中执行命令建立目录
cd /mnt [进入mnt共享目录]
Ls [发现RT2870AP.dat已经复制进入了此目录]
mkdir -p /etc/Wireless/RT2870AP [建立目标目录]
cd /etc/Wireless/RT2870AP/ [ls查看此目录发现为空目录]
cp /mnt/RT2870AP.dat ./ [从共享目录中复制配置文件到当前目录]
Ls [RT2870AP.dat文件,说明复制成功了]
vi RT2870AP.dat [更改这个文件,因为默认没有密码,不安全,要改成带密码的,按照以下方式修改]
SSID=MT7601AP_WPA(这里的名字是在pc机上看到的连接ssid名)AuthMode=WPA2PSK(加密方式)
EncrypType=TKIP;AES(加密算法)
WPAPSK=1234567890(这个是密码)

C:insmod xx.ko安装USB WIFI驱动模块
cd /mnt/
insmod mt7601Uap.ko [装载驱动]
lsmod[在最前面发现了mt7601Uap驱动模块已经安装]
ifconfig -a[发现有eth0,lo和wlan0三个网卡,即有wlan0目标网卡生成,说明安装成功]

D:设置IP地址
ifconfig wlan0 192.168.0.100[设置无线网卡wlan0的IP地址]
ifconfig wlan0 up[唤醒无线网卡wlan0]
ifconfig [发现wlan0网卡的inet addr地址为192.168.0.100,证明设置成功,注此时eth0的ip地址时192.168.1.10,即开发板的有线网卡和无线网卡都在工作了,注ifconfig是查看已经工作的网卡,ifconfig -a是查看所有的网卡]
windows和开发板都有一个无线网卡和一个有线网卡,它们彼此独立,可以同时工作。开发板和主机windows要处在同一个网段[局域网]
无线:
windows: 192.168.0.30
AP: 192.168.0.100

E:用PC或手机的WIFI搜索看一下,是否有一个名为:MT7601AP_WPA的网络了,有了就成功了,但是输入密码之后会提示连接不成功[此计算机当前已将连接限制为MT7601AP_WPA],其实当前已经连接成功了,但是此时的AP还是不能访问外网,所以会提示有限的访问权限。
主机上选择打开网络共享中心,点击无线网络连接(MT7601AP_WPA),选择详细信息,发现自动分配的IP地址时169.254.158.163,子网掩码时255.255.0.0,即全部都是乱的,因此需要给PC端强制分配一个静态IP地址。

F:给PC强制分配静态IP
主机上选择打开网络共享中心,点击无线网络连接(MT7601AP_WPA),选择属性,选择Internet协议版本4(TCP/IPv4),选择"使用下面的IP地址",指定ip地址为162.168.0.30,指定子网掩码为255.255.255.0,点击确定,点击确定,确定,选择详细信息,发现此时的ip地址为192.168.0.30,子网掩码为255.255.255.0,证明设置成功了。然后关闭对话框。此时的开发板和window已经通过无线wifi连接通了。

8 效果

7 无线wifi传输视频开发的更多相关文章

  1. 通过BSSID和无线流量传输后门Payload

    本文将探讨无线接入点(AP)和BSSID(MAC地址AP).我们不借助文件系统加密和文件系统中(仅内存中)的硬编码Payload即可获得后门Payload,通过该方法可绕过所有的杀软,可以不使用Pay ...

  2. 13-H.264编码解码器的无线应用:1080P60 3D无线影音传输器

    H.264编码解码器的无线应用:1080P60 3D无线影音传输器 一.应用领域 家庭媒体娱乐中心 新闻现场采访 无线3D投影机 高清视频会议终端无线延长器 教学,医疗示教 考古,高档商业区域,监狱等 ...

  3. Android IOS WebRTC 音视频开发总结(八十五)-- 使用WebRTC广播网络摄像头视频(下)

    本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...

  4. Android IOS WebRTC 音视频开发总结(八十三)-- 使用WebRTC广播网络摄像头视频(上)

    本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...

  5. 浅谈iOS视频开发

     浅谈iOS视频开发 这段时间对视频开发进行了一些了解,在这里和大家分享一下我自己觉得学习步骤和资料,希望对那些对视频感兴趣的朋友有些帮助. 一.iOS系统自带播放器 要了解iOS视频开发,首先我们从 ...

  6. Android IOS WebRTC 音视频开发总结(六)-- iOS开发之含泪经验

    前段时间在搞webrtc iOS开发,所以将标题改为了Android IOS WebRTC 音视频开发总结, 下面都是开发过程中的经验总结,转载请说明出处(博客园RTC.Blacker): 1. IO ...

  7. 无线 WIFI 的13个信道频率范围

    目前主流的无线WIFI网络设备不管是802.11b/g还是802.11b/g/n 一般都支持13个信道.它们的中心频率虽然不同,但是因为都占据一定的频率范围,所以会有一些相互重叠的情况.下面是13个信 ...

  8. WebRTC 音视频开发

    WebRTC 音视频开发 webrtc   Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键? 摘要: 本文主要介绍WebRTC端到端监控(我们翻译 ...

  9. iOS 视频开发学习

    原文:浅谈iOS视频开发 这段时间对视频开发进行了一些了解,在这里和大家分享一下我自己觉得学习步骤和资料,希望对那些对视频感兴趣的朋友有些帮助. 一.iOS系统自带播放器 要了解iOS视频开发,首先我 ...

随机推荐

  1. Python练习题--持续更新

    1.你是一个高级测试工程师,现在要做性能测试,需要你写一个函数,批量生成一些注册使用的账号. 产生的账号是以@163.com结尾,长度由用户输入,产生多少条也由用户输入,用户名不能重复,用户名必须由大 ...

  2. OAF 标准的供应商管理员批准流程

    标准供应商审批流程 oracle.apps.pos.onboard.webui.FlexRegApproverPGCO--初始化poplist LinkedList actionListText = ...

  3. arc路径-磊哥

    不然直接设置80 90要转换成弧度比如Math.PI代表180度你就要 80*Math.PI/180190*Math.PI/180<!DOCTYPE html><html>&l ...

  4. php中点击网页不跳转执行程序

    if($code['result_code'] !='FAIL') { echo "<script type='text/javascript'> alert('退款成功,请耐心 ...

  5. win7下安装node及出现的npm问题

    按照官网下载安装,选择 Windows Installer (.msi):,一直next安装,默认安装在C:\Program Files\nodejs下,环境变量会自动添加 如果安装后,打开cmd输入 ...

  6. jquery组件和插件写法

    <!doctype html> <html> <head> <meta charset="utf-8"> <meta name ...

  7. js获得焦点和失去焦点那些事

    <!doctype html> <html> <head> <meta charset="utf-8"> <meta name ...

  8. SQL Server 数据库获取架构信息

    得到数据库存储过程列表: select * from dbo.sysobjects where OBJECTPROPERTY(id, N'IsProcedure') = 1 order by name ...

  9. 太过亲密往往不好——用non-member,non-friend替换member函数

    在前一篇文章,我们提到,使用private来代替public以提高class的封装性.这一篇文章,我们将对接口发起攻势.首先来个简单的例子. class WebBrowser { public: vo ...

  10. sgu 122. The book 满足ore性质的汉密尔顿回路 难度:2

    122. The book time limit per test: 0.25 sec. memory limit per test: 4096 KB There is a group of N (2 ...