摘要:
1 官方 Homebrew是Mac上非常优秀的软件包管理工具。 1.1 前提 Mac安装Homebrew的前提条件: 64bit Intel CPU或Apple Silicon CPU(M1) macOS Mojave(10.14)或更高版本 安装Xcode命令行工具(Command Line To 阅读全文
摘要:
简介 这一章中我们来看Wifi Display连接过程的建立,包含P2P的部分和RTSP的部分,首先来大致看一下Wifi Display规范相关的东西。 HIDC: Human Interface Device Class (遵循HID标准的设备类) UIBC: User Input Back Ch 阅读全文
摘要:
最近在学习Android 4.4上面的WifiDisplay(Miracast)相关的模块,这里先从WifiDisplay用到的各个Service讲起,然后再从WifiDisplaySettings里面讲解打开wfd的流程。首先看下面的主要几个Service的架构图: 相关Service的启动 图中 阅读全文
摘要:
调试rtsp收发流时,经常会需要抓包以确认是网络问题还是程序问题还是其它问题。通过tcpdump或者wireshark抓到的包通常是rtp流,保存为.pcap格式文件后中,可通过wireshark进行解析,得出h264裸流,并保存为文件。 我这里有一段rtp流文件,作为演示使用(这个文件有点不标准, 阅读全文
摘要:
RTP概览 RTP是一种应用层协议,传输层协议可以是TCP或者UDP(UDP多一些)! RTP数据包由两部分组成,一部分是RTP Heaeder,一部分是RTP body,RTP Header占用最少12个字节,最多72个字节;另一部分是RTP Payload,用来封装实际的数据负载,如封装h264 阅读全文
摘要:
问题重现: 确认: Android设备已连接PC Android设备已打开USB调试 zuo@zuo-ubuntu:/etc/udev/rules.d$ adb devices List of devices attached 0003001B0BA0020DB no permissions (mi 阅读全文
摘要:
网络流媒体协议的联系与区别(RTP RTCP RTSP RTMP HLS) RTP RTCP RTSP RTMP HLS 区别与联系 RTP传输流媒体数据、RTCP对RTP进行控制,同步、RTSP发起/终止流媒体RTP和RTCP互为姐妹关系,RTSP可以使用RTP来传输数据,但并没有绑定关系也可以使 阅读全文
摘要:
简介 在《Android Studio导入Android 4.2.2的WiFi-Display系统源码》这里已经介绍了如何将Sink源码导入到Android Studio里,主要是为了方便看源码。 Sink端源码 Sink端源码主要的核心类就这3个:WifiDisplaySink.cpp、RTPSi 阅读全文
摘要:
1.工具wireshark,官网最新的版本没有保存按键,建议使用3.4 链接:https://pan.baidu.com/s/1VHSGgojZPNtzyzV6RMVjkw 提取码:q51a 2.wireshark打开网络包,确认RTP的端口号 3.过滤rtp包,udp.port == 端口号 4. 阅读全文
摘要:
Miracast音视频流概述 在上一篇文章中,我们已经成功完成RTSP能力协商与会话的建立,并准备开始音视频流的传输阶段。那么下一步,就是对音视频流进行解析,并将音视频展示给用户的过程。这样整个Miracast的流程就算分析完毕了。 先简单来总结下,在Miracast底层的实现中,是采用RTP协议对 阅读全文