Wifi Display
wifi display常用术语
AP:wifi access point
Primary Sink: a device that supports rendering video content only or both audio and video contents.
Secondary Sink: a device that supports rending audio content only.
Wifi P2P: a protocol that provides wifi device-to-device connectivity including discovery and paring,whitout requiring an AP.
2、Variable header 可变报头,部分报文包含
3、Body 有效载荷,部分报文包含
固定报头
报头长度:2 ~ 5 Bytes
1、报文类型:由第一个字节4-7 表示;共16个类型,但是保留第0个,第15个类型不用:
2、标志位,标志报文类型的特定标志,第一个字节的0-3:
3、剩余长度,从第二个字节开始,最少一个字节,最长四个字节。表示当前报文剩余部分(可变报头+负载数据)的字节数。不包括用于编码Remaining Length字段本身的字节数。
它使用一个变长度编码方案,对小于128的值,它使用单字节编码。
大值处理:低7位有效位用于编码数据,最高有效位用于指示是否有更多的字节。
因此每个字节可以编码128个数值和一个延续位(continuation bit)。
剩余长度字段的大小:
非负整数x使用变长编码方案算法:
do
encodedByte = x%128;
x = x /128;
if (x > 0 ){
encodedByte = encodedByte|128; //延续标志位置1
}else{
encodedByte = encodedByte;
}
fill_fix_header_remain_len(encodeByte);
while(x>0)
剩余长度字段的解码算法:
multiplier = 1
value = 0
do
encodedByte = 'next byte from stream'
value += (encodedByte AND 127) * multiplier
multiplier *= 128
if (multiplier > 128*128*128)
throw Error(Malformed Remaining Length)
while ((encodedByte AND 128) != 0)//判断下一个字节的最高位是否为1,不等于1就表示是最后一个长度字节,value的值就是剩余长度的值
可变报头
在固定报头和body之间,内容根据报文类型不同而不同。可变报头的标识符字段存在于在多个类型的报文里。?
报文标识符类型:
很多控制报文的可变报头部分,包含一个两字节的报文标识符字段。比如:PUBLISH(QoS > 0时), PUBACK,PUBREC,PUBREL,
PUBCOMP,SUBSCRIBE, SUBACK,UNSUBSCIBE,UNSUBACK。
SUBSCRIBE,UNSUBSCRIBE 和 PUBLISH(QoS大于0)控制报文必须包含一个非零的16位报文标识符。
有效载荷
对于PUBLISH来说就是消息内容了。
需要有效载荷的控制报文:CONNECT、SUBSCRIBE、SUBACK、UNSUBSCRIBE。 PUBLISH是可选。
Wifi Display的更多相关文章
- wifi display代码 分析
转自:http://blog.csdn.net/lilian0118/article/details/23168531 这一章中我们来看Wifi Display连接过程的建立,包含P2P的部分和RTS ...
- Android Wi-Fi Display(Miracast)介绍
地址:http://blog.csdn.net/innost/article/details/8474683 Android Wi-Fi Display(Miracast)介绍 2012年11月中旬, ...
- miracast 协议wifi display
看wifi direct display标准的地方: http://www.wi-fi.org/discover-wi-fi/specifications Miracast依赖的Wi-Fi技术项[②] ...
- Android WIFI 分析(一)
本文基于<深入理解Android WiFi NFC和GPS 卷>和 Android N 代码结合分析 WifiService 是 Frameworks中负责wifi功能的核心服务,它主 ...
- wifi diplasy流程介绍
转自:http://blog.csdn.net/dnfchan/article/details/8558552/ 另外一篇不错的参考文章:http://www.360doc.com/content/ ...
- 转自邓凡平 《深入理解Android:Wi-Fi,NFC和GPS》章节连载[节选]--第七章 深入理解Wi-Fi P2P部分节选
本章主要内容: 介绍Wi-Fi P2P相关知识: 介绍Android中WifiP2pService.wpa_supplicant的相关代码. 7.1 概述 承接第6章介绍的WSC,本章将继续介绍Wi ...
- wifi 模块RTL8188以及mt7601u 移植测试
kernel version:4.4.12 kernel make menuconfig // make menuconfig [*] Networking support ---> Netwo ...
- 无线显示技术:WiDi,WLAN Display,Air Play,Miracast的摘抄
除了标题提到的WIDI,WLAN Display,Air Play之外,还有Miracast与DLNA的概念,他们之间的区别和联系是什么呢? WIDI: WiDi是英特尔主导的无线音视频传输技术,这也 ...
- WIFI-Direct(Wifi直连)、AirPlay、DLAN、Miracast功能介绍
不知道大家对无线同屏技术有多少了解,当这种技术普及的时候,我想我们的工作与生活又会方便很多吧!下面是目前三种主流同屏技术的介绍: 目前这种将终端信号经由WiFi传输到电视.电视盒的技术有三种:DLNA ...
- 图解Android - Android GUI 系统 (1) - 概论
Android的GUI系统是Android最重要也最复杂的系统之一.它包括以下部分: 窗口和图形系统 - Window and View Manager System. 显示合成系统 - Surfac ...
随机推荐
- word取消保护
没有 文档的保护密码 可尝试用此方式,亲测有效 Excel.PPT 应该也可以,没试过 1.新建空白文档 2.插入.对象 3.点击[对象]右边的箭头,选择被加密的文件. 建议两个选项都试一下,我的第二 ...
- 一文详解 Linux Crontab 调度任务
最近接到这样一个任务: 定期(每天.每月)向"特定服务器"传输"软件服务"的运营数据,因此这里涉及到一个定时任务,计划使用Python语言添加Crontab依赖 ...
- Wireshark嗅探软件
# Wireshark的基本使用方法 1.1 打开wireshark 1.2 查看eth0 1.3 混杂模式 混杂模式 :任何经过这台主机的数据报都会被捕获. 停止捕获 -> 捕获 -> ...
- 本地文件上传 Gitee 和 GitHub
新建仓库 上 GitHub 或者是 gitee 创建仓库 在所在的文件夹打开终端 在本地项目文件夹打开终端, 或者 cd 到本地项目文件夹 配置提交项目的用户名和提交项目的邮箱 git config ...
- 在函数中设置input的multiple属性以及input的点击事件时,设置失效
1.在函数中先设置input文件可以多选,然后再设置input框的点击事件情况下,有时候这个多选设置会失效. 我们可以采用下面的方式去解决 <input ref="myInputRef ...
- [Codeforces Round #794 (Div. 2)] D. Linguistics
我是什么东西艹艹艹 <我离正解只差个sort> 首先,观察字符串,可以发现:若存在形似\(AA--BB\)或\(BB--AA\)等有两个相同的字符挨在一起的情况,则我们在它们中间放一块隔板 ...
- 构造方法-JavaBean
构造方法 当一个对象被创建时候,构造方法用来初始化该对象,给对象的成员变量赋初始值. 小贴士:无论你与否自定义构造方法,所有的类都有构造方法,因为Java自动提供了一个无参数构造方法, 一旦自己定义了 ...
- 线上排查:内存异常使用导致full gc频繁
线上排查:内存异常使用导致full gc频繁 问题系统 日常巡检发现,应用线上出现频繁full gc 现象 应用线上出现频繁full gc 排查过程 分析dump 拉dump文件:小插曲:dump时如 ...
- python装饰器拦截方法执行
import time def log(delay=0): def decorator(func): def wrapper(*args, **kwargs): """我 ...
- ChatGpt国内教程
近ChatGPT大火呀,小伙伴们是不是在网上看到各种和ChatGPT有趣聊天的截图,比如翻译代码.编写代码,奈何自己实力不够,被网络拒之门外,只能眼馋别人的东西.看别人玩,肯定不如自己玩一把舒服的啊. ...