看了接近一周的spydroid源代码,对spydroid这个开源项目有了一定的认识。也许有些理解不一定正确,给后来者一点启示。也是自己对rtsp协议,rtp协议的总结。
在windows下,如果安装了svn,可以通过 svn checkout http://spydroid-ipcamera.googlecode.com/svn/ 下载源码,最新源码是spydroid6.7.1
下载后,导入eclipse工程,直接就可以编译运行。
在这里只关心其src源码部分,其他地方都比较简单,就不介绍了。src源码有以下几个package。
net.majorkernelpanic.http主要是介绍http server,spydroid自身内置http服务器,客户端可以通过在VLC等播放器中输入http://ip:8080/播放
net.majorkernelpanic.mp4主要是介绍提取mp4文件的profile,sps,pps等信息
net.majorkernelpanic.networking 主要是介绍rtsp服务器部分,spydroid自身内置rtsp服务器,客户端可以通过在VLC等播放器中输入rtsp://ip:8086/播放
net.majorkernelpanic.rtp主要是介绍rtp协议通信
net.majorkernelpanic.spydroid主要是activity的界面部分。
net.majorkernelpanic.streaming主要是stream接口和抽象类
net.majorkernelpanic.streaming.audio介绍音频部分
net.majorkernelpanic.streaming.video介绍视频部分
以后针对mp4,networking ,rtp,stream这4个包的内容重点分析
http://blog.csdn.net/xiaoliouc/article/details/8493161
相关推荐
在深入了解一个系统的原理、实现细节之前,应当先准备好它的源码编译环境、运行环境。如果能在实际环境安装和运行Spark,显然能够提升读者对于Spark的一些感受,对系统能有个大体的印象,有经验的技术人员甚至能够猜...
下面是一个初步的论文大体章节框架建议: 1. 绪论 1. 背景:介绍该系统所处的大背景和环境,讨论电影评论网站的重要性和需求。 2. 系统介绍:详细介绍该系统的主要作用和功能,包括评论人和管理员的角色及其功能...
2. 接口描述:在 Apifox 中,每个接口都需要有一个明确的描述,包括接口的名称、描述、请求方式、参数、返回值等信息。 3. 接口模型:Apifox 提供了多种接口模型,例如 RESTful API、GraphQL API 等,可以根据项目...
* PV/IP比:一般来说,有效的流量,网站内容比较好的话,一个IP大概能有3个以上的PV * 订单转化率:这是最最核心的数据了,没有订单转化率,其它一切都是免谈! 三、站内数据流分析 站内数据流分析主要用于分析...
Android项目源码一个优质的新闻客户端 注意:本项目是基于android studio开发的,eclipse可能无法直接导入。 本项目是一个优质的新闻客户端app,本项目有几大亮点 (1):一个不错的欢迎页面效果,上下滑动滑动到底部...
页面有点类似代刷网,没错,因为前几日帮某代刷网站长写页面,感觉样式好看,就仿了下大体页面。 纯HTML+CSS+JS 实现,没后门,源码自适应手机与pc端! 下载源码,在img文件里。更换自己的logo,红包二维码,收款...
数据中,每一行代表一个客户,每一列为该客户的不同属性。这些属性主要包括客户订购的服务、帐户信息和个人信息。我们将使用Python和Seaborn库结合特征工程、逻辑回归、随机森林来进行数据分析。 字段说明: ...
04.yarn集群的功能和大体机制介绍.mp4
1.先去下载一个主题包,这个主题包其实是一个apk文件,里面包含要换皮肤的资源文件 2.通过AssetManager,通过反射以及PackageName,获取到下载下来皮肤包的Resource,拿到Resource对象,即可以拿到res下面的任何资源...
在IT行业中,"马甲包"是指一个与原应用功能相似但具有不同标识的应用,通常用于规避某些限制或实现特定目的。例如,当开发者想要对新功能进行灰度测试,或者希望在不同用户群体中收集独立的数据时,会创建马甲包。...
由于只给出了一个大体的名称,无法详细列举每个子文件,但可以推测其中可能包含以下内容: 1. **源码文件夹**:包括WXML、WXSS和JavaScript文件,构成微信小程序的前端界面和逻辑。 2. **Java源码**:可能有...
积分管理系统java源码 oceans oceans ,英文 ocean 大海的复数。没有什么特殊含义,就觉得好听。 自己称这个项目为“与海”,渴望自由。 初衷是希望做一个 B2C 的商城 demo 项目,并且搭配一些可口的文章。但是,...
正好IoC容器的实现大量地使用了IoC,反射,设计模式,所以打算自己写一个简单的IoC容器来练习,网上查了一下,发现github上有一个叫 的开源项目,简化了Spring的IoC容器和AOP,API名字都是仿照Spring,所以临摹了一下...
智能排课系统的整体结构:整个系统分为C/S结构的教师与教务管理员登录功能、排课功能、课程管理功能、教室管理功能、教师管理功能、B/S结构的学生查课表功能与选课功能。 登录模块:在C/S结构中,登入系统有对角色的...
RC531是一款由NXP(原飞利浦半导体)推出的射频识别(RFID)芯片,主要用于非接触式通信,常应用于智能卡系统、门禁控制、支付系统等领域。这款芯片具有高安全性、低功耗和良好的读写性能。其对应的数据手册是MFRC531....
每个jar包的使用方法略有不同,但大体上包括以下几个步骤: - 添加库:将jar包添加到项目的类路径中,对于现代的构建工具如Maven或Gradle,只需在配置文件中声明依赖即可。 - 解析JSON:将JSON字符串转化为Java对象...
- **jdk.incubator.jpackage**: 这是一个实验性模块,用于创建可分发的Java应用程序包,简化软件部署。 - **java.datatransfer**: 包含了数据传输相关的类和接口,如剪贴板操作和拖放功能。 - **jdk.internal.vm....