您的位置:首页 > 娱乐 > 明星 > 北京餐饮网络营销公司_企业网站设计费用_精准营销的概念_销售外包公司

北京餐饮网络营销公司_企业网站设计费用_精准营销的概念_销售外包公司

2025/4/18 16:11:56 来源:https://blog.csdn.net/weixin_41255248/article/details/142780418  浏览:    关键词:北京餐饮网络营销公司_企业网站设计费用_精准营销的概念_销售外包公司
北京餐饮网络营销公司_企业网站设计费用_精准营销的概念_销售外包公司

1 简介

    在当下的视频点播应用场景下,端侧对视频缓存的需求可谓刚需,一方面可以为公司节省流量成本,一方面也可以提升用户的播放体验,有一石二鸟之效。

    近期,本人用C写了一个缓存库,支持iOS/Android/harmony系统平台,并在以上3个平台充分自测过,MIT license,开箱即用。

2 原理

    本缓存库,仅考虑支持标准HTTP协议,视频封装格式支持常见的MP4HLS,并且很容易增加对DASH格式的支持。并且作为一个单独的库来设计,不耦合到播放器中,最终提供几个api即可。

    因此,考虑到跨平台特性,本缓存库使用libevent来设计一个本地的http代理,作为播放器和点播服务器之间的桥梁,大致流程如下:

  • 设置配置给缓存库,而后启动缓存代理;
  • 将原URL传入缓存库,拿到本地代理URL,并将本地代理URL传入播放器,准备起播;
  • 播放器据此代理URL,向缓存代理发起HTTP下载数据请求;
  • 代理若有此数据,则从本地磁盘读取并发给播放器,若无则向点播服务器发起HTTP下载请求,一边写本地磁盘文件,一边透传给播放器;

3 依赖库

    本缓存库仅支依赖2个第三方库:libevent和openssl。版本呢如下:

LibraryVersion
libevent      2.1.18
openssl1.1.1

4 特性

    以下是C缓存库当前所支持的特性:

  1. Cross-Platform Support: Supports video caching on Android, iOS, and HarmonyOS.
  2. Video Format Support: Supports caching of MP4 and HLS video formats.
  3. HTTP Caching Proxy: A high-performance HTTP caching proxy built with libevent.
  4. HTTP 302 Redirection Support: Handles HTTP 302 redirects to ensure proper video resource access.
  5. Domain IP Pool Support: Configurable IP pools for domains, offering flexible resource access.
  6. Cache Management: Supports customizable cache eviction mechanisms.
  7. LRU Eviction Strategy: Implements an LRU (Least Recently Used) cache eviction strategy to ensure cache efficiency.

5 github地址

C缓存库Github地址

    欢迎使用,欢迎就使用问题交流。 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com