简单、可靠、高效、稳定的HLS直播切片SDK,能够将实时的H.264视频和AAC音频流实时切片成可供WEB、Android、iOS、微信等全平台客户端观看的HLS(m3u8+ts)直播流,搭配EasyRTSPClient、EasyAACEncoder等项目,可将大部分的安防摄像机对外进行HLS直播发布,同时也可灵活集成在各种流媒体服务中!
C++ C Makefile Shell
Switch branches/tags
Nothing to show
Clone or download
Latest commit b28746c Feb 1, 2018
Permalink
Failed to load latest commit information.
Doc update README Mar 28, 2016
EasyHLS_FILE update code Nov 2, 2017
EasyHLS_RTSP update code Nov 2, 2017
EasyHLS_SDK update code Nov 2, 2017
Include CONFIG FIRST TS IFRAME COUNT Nov 21, 2016
Lib reduce tartget duration Nov 23, 2016
win EasyHLS.sln Oct 8, 2016
.gitignore EasyHLS Linux build just Buildit Aug 28, 2015
Buildit CONFIG FIRST TS IFRAME COUNT Nov 21, 2016
README.md update README.md Feb 1, 2018

README.md

EasyHLS

EasyHLS是紫鲸团队开发的一款HLS/TS/m3u8切片打包库,接口非常简单,只需要传入打包的文件名、切片存放的目录、单个切片时长以及切片数等参数,EasyHLS库就能轻松将H264+AAC的流媒体切片成m3u8+ts直播/点播数据,提供给WEB服务器进行HLS流媒体分发;

调用示例

  • EasyHLS_RTSP:通过RTSPClient将RTSP摄像机IPCamera的流媒体音视频数据流获取到本地,再进行ts的音视频封装打包,并不断更新m3u8列表,以提供HLS直播功能;

    Windows编译方法,

      Visual Studio 2010 编译:./EasyHLS-master/win/EasyHLS_Demo.sln
    

    Linux编译方法,

      chmod +x ./Buildit
      ./Buildit
    

    调用提示:目前的调用示例程序,可以接收参数,具体参数的使用,请在调用时增加 -h 命令查阅。

调用过程

特殊说明

/* 打包H264视频 */
EasyHLS_API int Easy_APICALL EasyHLS_VideoMux(Easy_HLS_Handle handle, unsigned int uiFrameType, unsigned char *data, int dataLength, unsigned long long pcr, unsigned long long pts, unsigned long long dts);
	

其中pcr、dts、pts等参数都是unsigned long long型,通常情况下为时间戳(ms毫秒)*90以后的结果,所以我们通常需要定义: unsigned long long pcr,dts,pts = timestamp*90; 千万不要定义unsigned int型接收数据输入!具体过程参考上面的几个示例;

技术支持

我们同时提供Windows、Linux、Android、iOS、ARM版本的EasyRTMPClient库:EasyRTMPClient SDK商业使用需要经过授权才能永久使用,商业授权方案可以通过以上渠道进行更深入的技术与合作咨询;

获取更多信息

EasyDarwin开源流媒体服务器:www.EasyDarwin.org

EasyDSS商用流媒体解决方案:www.EasyDSS.com

EasyNVR无插件直播方案:www.EasyNVR.com

Copyright © EasyDarwin Team 2012-2018

EasyDarwin