ZLMediaKit简介

ZLMediaKit是一个跨平台的开源流媒体项目,支持多种操作系统。本文是其源码分析系列的第一篇,介绍了ZLMediaKit的功能、技术优势和源码目录结构,包括3rdpart中的第三方库如jsoncpp和wepoll,以及ZLToolKit基础工具库。此外,还提及了Android版、API封装、测试代码和WebRTC、SRT协议的支持。
摘要由CSDN通过智能技术生成

本文属于《ZLMediaKit源码分析》连载系列博客的第一篇,简要介绍了ZLMediaKit的功能定位、技术优势和源码目录结构。

ZLMediaKit是一个采用现代C++标准编写的开源项目,它既可以直接作为流媒体服务器使用,也可以作为音视频、流媒体相关应用(如:播放器、推流器、流媒体服务器二次开发)的SDK。

ZLMediaKit原生支持多种操作系统,比如Windows、Linux、macOS、Android、iOS等,开发调试都十分方便。

让我们先从源码目录开始分析。后文将采用“ZLMediaKit/”来表示ZLMediaKit源码的根目录,在这个目录下可以看到3rdpart、Android、api等子目录。

ZLMediaKit/目录下的内容描述如下:

子目录

内容描述

3rdpart

第三方开源库,包含三个子目录,内容如下:

(1) jsoncpp:用来处理json格式字符串的C++库。

(2) media-server:由老陈提供的C++媒体服务器,里面包含了若干媒体文件格式、传输协议的封装类。

(3) wepoll:epoll for windows。为Windows平台实现的仿epoll API。

(4) ZLToolKit:整个ZLMediaKit项目范围内通用的基础工具库,ZLMediaKit流媒体协议库和MediaServer应用程序就是基于这个库实现的。此库封装的功能包括日志、线程池、定时器、任务、缓冲区、套接字、事件处理循环、工具类等,由于它比较通用,因此可以作为“第三方开源库”给其它项目使用(包括ZLMediaKit项目)。

Android

采用ZLMediaKit框架开发的Android版流媒体播放器。

api

将C++风格的ZLMediaKit核心框架封装成纯C风格的API,供C程序调用。

cmake

可供ZLMediaKit/CMakeLists.txt加载的cmake子模块。

conf

包含流媒体服务器的配置文件config.ini

docker

docker镜像构建脚本

package

rpm包支持

postman

restful接口测试工具postman的测试项目文件

release

项目构建目标输出目录

server

基于3rdpart和src目录中的模块开发的一个流媒体服务器。

src

ZLMediaKit流媒体开发库,主要由各种流媒体传输协议实现构成,还有Player、Pusher和Record等功能模块。

srt

SRT协议支持

tests

测试代码

webrtc

WebRTC协议栈支持

webrtc_player

WebRTC播放器

www

帮助文件


从这一篇文章开始,作者将会连载一系列文章,带读者全面领略流媒体领域的明星开源项目ZLMediaKit的技术风范。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ADM实验室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值