一款开源的视频直播项目 --EvilsLive

7,983 阅读1分钟

项目介绍

EvilsLive 是一个视频直播件开发工具包(SDK), 目前只支持 Android, 主要负责视频直播的采集、推流、预览、播放、美图支持。

注意:

目前此项目还在持续更新中....

功能特点

  • 视频编码:H.264
  • 推流协议:RTMP
  • 预览与推流分辨率可分别自由设置
  • 支持前、后置摄像头动态切换
  • 支持软编、硬编及软编兼容模式
  • 网络自适应,可根据实际网络情况动态调整目标码率,保证流畅性
  • 音频编码:AAC
  • 支持动态横竖屏推流
  • 音视频目标码率:可设

项目结构

  • android/app:这里是测试的 sameple
  • android/videolib: 直播相关核心功能实现
  • doc: 文档说明

Snapshot

snapshot

Usage

要求:

Android Studio >= 2.2.3

Android API >= 19

Step 1:

在进行推流之前,你需要有流媒体服务(视频上传默认rtmp协议),本地搭建或搭建在公有云上,随你意。

例如:rtmp://127.0.0.1/live/hjd_phone

具体可参照 ossrs/srs 搭建rtmp server

Step 2:

具体如何使用可以参照 app 中的代码

TODO LIST

  • 推流(视频)功能
  • 推流(音频)功能
  • 推流流程优化, 支持硬编、多种流媒体协议等
  • 拉流功能
  • 添加测试用例
  • 机型适配

遗留问题

  • 视频采集数据native层处理
  • 支持多种体系结构

Copyright and License

Copyright 2016-2017 ThinkKeep

Code released under the MIT License.