上一页 1 2 3 4 5 6 7 8 9 10 ··· 12 下一页
摘要: 1. Cache 的工作方式 Web Cache 作为一种网页缓存技术,可以在用户访问网站服务器的任何一个中间网元上实现。根据 HTTP 协议的定义,在一次网页访问中,用户从客户端发出请求到网站服务器响应请求内容的交互过程中,通常会涉及 4 个关键的网元:用户、代理、网关和 Web 服务器。当 We 阅读全文
posted @ 2018-06-09 14:06 季末的天堂 阅读(1534) 评论(0) 推荐(0) 编辑
摘要: 1. 缓存简介 缓存是位于服务器和客户端的中间单元,主要根据用户代理发送过来的请求,向服务器请求相关内容后提供给用户,并保存内容副本,例如 HTML 页面、图片、文本文件或者流媒体文件。然后,当下一个针对相同 URL 的请求到来时,缓存直接使用副本来响应 HTTP 请求,而不需要向源服务器再次发送请 阅读全文
posted @ 2018-06-09 10:15 季末的天堂 阅读(338) 评论(0) 推荐(0) 编辑
摘要: 1. Cookie 1.1 为什么需要 Cookie? HTTP 协议是一种无状态的协议,也就是说,当前的 HTTP 请求与以前的 HTTP 请求没有任何联系。显然,这种无状态的情形在某些时候将让用户觉得非常麻烦,比如在网上商城购物时,每购买一个商品都要重新输入一次用户名和密码,用户很快就会失去耐心 阅读全文
posted @ 2018-06-09 00:25 季末的天堂 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 HTTP 协议是 Hyper Text Transfer Protocol(超文本传传输协议)的缩写,是用于从万维网服务器传输超文本到本地浏览器的传送协议。HTTP 通常架构在 TCP 传输协议之上,如下图所示。有时出于安全的考虑,HTTP 还需要经过 TLS 或 SSL 层的封装,架构 阅读全文
posted @ 2018-06-09 00:25 季末的天堂 阅读(559) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是 CDN? 来自 "《什么是 CDN?》" CDN(内容交付网络)是一种高度分布式服务器平台,为交付 Web 应用程序、流媒体等内容专门优化。服务器网络分布于众多物理和网络位置,对最终用户的 Web 内容请求和快速安全媒体交付做出快速响应。网络在内容服务器(源站)和最终用户(客户端)间起 阅读全文
posted @ 2018-06-08 10:21 季末的天堂 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 1. 是否可切片的检测 首先在调用 SrsHlsCache::reap_segment 函数进行切片时,针对音频或视频,都会有一个函数来进行检测当前片的时长是否符合所要求的时长。 对于音频,会调用 SrsHlsMuxer::is_segment_absolutely_overflow 函数进行检测, 阅读全文
posted @ 2018-06-07 22:32 季末的天堂 阅读(1119) 评论(0) 推荐(0) 编辑
摘要: 1. SrsHls::on_audio 将音频数据封装到 ts 文件中。 1.1 SrsAvcAacCodec::audio_aac_demux 1.1.1 SrsAvcAacCodec::audio_aac_sequence_header_demux 1.1.2 SrsCodecSample::a 阅读全文
posted @ 2018-06-07 20:18 季末的天堂 阅读(983) 评论(0) 推荐(0) 编辑
摘要: 1. SrsHls::on_video 2. SrsAvcAacCodec::video_avc_demux 接收到一个视频消息,首先调用该函数解析该视频数据。 接下来,若检测接收到的 video packet type 为 1,即为 NAL 单元,则调用 video_nalu_demux 进行解封 阅读全文
posted @ 2018-06-07 20:01 季末的天堂 阅读(1545) 评论(0) 推荐(0) 编辑
摘要: 1. SrsTsContext::encode_pes 该函数位于 srs_kernel_ts.cpp 中。下面的分析基于假设当前要封装的消息是视频。 该函数首先调用 编码第一个 PES 包(PES 包就是在音视频帧上加入了时间戳等信息). 2. SrsTsPacket::create_pes_fi 阅读全文
posted @ 2018-06-07 15:10 季末的天堂 阅读(781) 评论(0) 推荐(0) 编辑
摘要: 1. SrsTsContext::encode_pat_pmt 在该函数中,将 PAT 和 PMT 封装到 TS Packet 中,并将这两个 TS packet 写入到 ts 文件中。 该函数中,首先调用 SrsTsPacket::create_pat 函数生成一个 pmt 包。 1.1 SrsT 阅读全文
posted @ 2018-06-06 19:37 季末的天堂 阅读(1419) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 12 下一页