live555支持单播和组播,我们先分析单播的流媒体服务端,后面分析组播的流媒体服务端。 一、单播的流媒体服务端: // Begin the LIVE555 event loop: env->taskScheduler().doEventLoop ...
上一篇博客说道,live 服务端main函数做的最后一件事就是调用如下代码陷入死循环: 那么这个doEventLoop是什么样的呢 如下: 就是不停地调用SingleStep 这个函数,SingleStep函数中代码比较多,我下面仅截取关键代码,首先是使用selet陷入阻塞,等待事件发生: 返回值后之后会对所有的socket进行遍历,找到是哪个socket发生了事件: 当找到相应的的socket ...
2016-05-04 16:43 0 1959 推荐指数:
live555支持单播和组播,我们先分析单播的流媒体服务端,后面分析组播的流媒体服务端。 一、单播的流媒体服务端: // Begin the LIVE555 event loop: env->taskScheduler().doEventLoop ...
live555的客服端流程:建立任务计划对象--建立环境对象--处理用户输入的参数(RTSP地址)--创建RTSPClient实例--发出DESCRIBE--发出SETUP--发出PLAY--进入Loop循环接收数据--发出TEARDOWN结束连接。 可以抽成3个函数接口:rtspOpen ...
最近五一回家,终于有机会能安静的看一下流媒体这方面相关的知识,准备分析live555的源码,接下来会把我读源码的过程记录成博客,以供其他的同路人参考。 因为再读源码的过程中,并不是一路顺着读下来,往往是读到后面,才能反过来明白之前读的内容,所以有的时候会写的有点穿越感。 在这个过程中,参考 ...
TTServer(TeamTalk服务器端)主要包含了以下几种服务器: LoginServer (C++): 登录服务器,分配一个负载小的MsgServer给客户端使用 MsgServer (C++): 消息服务器,提供客户端大部分信令处理功能,包括私人聊天、群组聊天 ...
ServerBootstrap与Bootstrap分别是netty中服务端与客户端的引导类,主要负责服务端与客户端初始化、配置及启动引导等工作,接下来我们就通过netty源码中的示例对ServerBootstrap与Bootstrap的源码进行一个简单的分析。首先我们知道这两个类都继承 ...
本文接着前两篇文章来讲,主要讲服务端类剩下的部分,我们还是来先看看服务端的代码 在前面两篇博文中从源码的角度分析了如下几行代码主要做了哪些工作。 本篇博文将从源码的角度分析ChannelFuture f = b.bind(8888).sync() 的内部实现 ...
首先了解RTSP/RTP/RTCP相关概念,尤其是了解RTP协议:RTP与RTCP协议介绍(转载)。 vlc使用模块加载机制调用live555,调用live555的文件是live555.cpp。 一、几个重要的类 以下向左箭头(“<-”)为继承关系。 1. ...
Dubbo源码分析(一)Dubbo的扩展点机制 Dubbo源码分析(二)Dubbo服务发布Export Dubbo源码分析(三)Dubbo的服务引用Refer Dubbo源码分析(四)Dubbo调用链-消费端(集群容错机制) Dubbo源码分析(五)Dubbo调用链-服务端 ...