Skip to content
sunjian283019 edited this page Sep 19, 2016 · 32 revisions

release-libKSYLive.sh编译脚本使用方法如下:

1.pod install之后,KSYLive_iOS的目录结构如下图所示: SEQ

2.cd 进入releaseFramework SEQ

3.编译frameWork ./release-libKSYLive.sh

例:./release-libKSYLive.sh libksygpulive 265 编译一个名为libksygpulive.framework的静态推流库,其支持H265编码

SEQ

如何使用动态库?

framework

直播SDK位于framework目录下,ipa size是支持bitcode时的demo size,包含GPUImage和Bugly等第三方库。

名称 库名称 库size ipa size iOS要求
直播SDK静态库 libksygpulive.framework 105M 5.7M 7.0及以上
直播SDK动态库 libksygpulivedylib.framework 74M 6.9M 8.0及以上

为什么framework这么大?

因为framework包括了armv7/arm64/i386/x86_64 四个体系结构。

同时libksygpulivedylib还将GPUImage包含进去了。

优缺点

  • 静态库体积更小,直播SDK对ipa的影响只有5.7M(含GPUImage和Bugly)
  • 静态库iOS版本要求更低,只需要iOS 7.0。
  • 动态库能解决ffmpeg冲突问题。
  • 静态库对第三方库有更多的依赖库。静态库依赖以下第三方库:
    • GPUImage.framework
    • libstdc++.6.tbd

动态库提交app store

为了能够顺利提交app至app store, 需要移除动态库中的x86_64和i386平台,具体操作如下:

进入libksygpulivedylib.framework目录,执行命令:

  • lipo libksygpulivedylib -remove x86_64 -output libksygpulivedylib
  • lipo libksygpulivedylib -remove i386 -output libksygpulivedylib

执行完成后可使用lipo -info libksygpulivedylib 命令确认当前的动态库已经移除上面两个平台。

如果不执行上述操作,那么在提交app store的时候,可能会出现ITMS-90087, ITMS-90209, ITMS-90125错误。

1. 推流环节说明

2. 特色功能说明

2.1 采集

2.2 音频处理

2.3 视频处理

2.4 编码

2.5 推流

2.6 输入多样化

2.7 集成

3. 第三方功能

4. 技术专栏

5. 已知问题

8. FAQ

金山云计算

Clone this wiki locally