ThinkKeep / Evilslive
Licence: mit
This project is a SDK about video stream live
Stars: ✭ 420
Programming Languages
java
68154 projects - #9 most used programming language
Projects that are alternatives of or similar to Evilslive
Node Stream
RTMP server in Nodejs for live streaming.
Stars: ✭ 320 (-23.81%)
Mutual labels: ffmpeg, livestream, rtmp
Huong-dan-cai-dat-stream-server-va-chuyen-doi-video-sang-streaming
Hướng dẫn cài đặt stream server và chuyển đổi video thường sang dạng TS Streaming
Stars: ✭ 29 (-93.1%)
Mutual labels: ffmpeg, livestream
nebula
Media asset management and broadcast automation system
Stars: ✭ 103 (-75.48%)
Mutual labels: ffmpeg, livestream
Awesome Live Stream
Webrtc && Nginx && DASH && Quic 学习资料收集,持续更新中
Stars: ✭ 290 (-30.95%)
Mutual labels: ffmpeg, rtmp
cordova-plugin-tencent-liteav
A cordova plugin for video playing with Tencent's LiteAV SDK. Support RTMP/HLS/FLV/MP4.
Stars: ✭ 24 (-94.29%)
Mutual labels: livestream, rtmp
Dockerfiles
Optimized media, analytics and graphics software stack images. Use the dockerfile(s) in your project or as a recipe book for bare metal installation.
Stars: ✭ 98 (-76.67%)
Mutual labels: ffmpeg, rtmp
Android Ffmpeg Camerarecord
使用JavaCV提供的支持, 使用OpenGL实时处理+显示摄像头采集的图像, 并使用FFMPEG实时录制音视频
Stars: ✭ 334 (-20.48%)
Mutual labels: camera, ffmpeg
Goprostream
Tools for handling/displaying GoPro HTTP/UDP stream (Python/Ruby)
Stars: ✭ 311 (-25.95%)
Mutual labels: camera, ffmpeg
tms
tms(toy media server) is a toy media server for myself learning media develop. Just for fun.
Stars: ✭ 29 (-93.1%)
Mutual labels: livestream, rtmp
Node Media Server
A Node.js implementation of RTMP/HTTP-FLV/WS-FLV/HLS/DASH/MP4 Media Server
Stars: ✭ 4,433 (+955.48%)
Mutual labels: livestream, rtmp
HaishinKit.kt
Camera and Microphone streaming library via RTMP for Android.
Stars: ✭ 70 (-83.33%)
Mutual labels: camera, rtmp
smart rtmpd
RTMP server, smart, compact, high performance(c, c++), high concurrency, easy to maintain, easy to deploy, (supports multiple operating systems Windows and Linux, ARM, FreeBSD)
Stars: ✭ 159 (-62.14%)
Mutual labels: ffmpeg, rtmp
LiveHiddenCamera
Live Hidden Camera is a library which record live video and audio from Android device without displaying a preview.
Stars: ✭ 69 (-83.57%)
Mutual labels: livestream, rtmp
live-broadcast-bundle
Live broadcasting planner and scheduler
Stars: ✭ 38 (-90.95%)
Mutual labels: ffmpeg, rtmp
Monibuca
🧩 Monibuca is a Modularized, Extensible framework for building Streaming Server
Stars: ✭ 307 (-26.9%)
Mutual labels: livestream, rtmp
EvilsLive
项目介绍
EvilsLive 是一个视频直播件开发工具包(SDK), 目前只支持 Android, 以后还会支持 Web/IOS 等平台。 主要负责视频直播的采集、推流、预览、播放、美图支持。
欢迎大家 Star, 你们的关注才是我们持续的动力!
注意:
目前此项目还在持续更新中....
功能特点
- [x] 视频编码:H.264
- [x] 推流协议:RTMP
- [x] 预览与推流分辨率可分别自由设置
- [x] 支持前、后置摄像头动态切换
- [ ] 支持软编、硬编及软编兼容模式
- [ ] 网络自适应,可根据实际网络情况动态调整目标码率,保证流畅性
- [ ] 音频编码:AAC
- [ ] 支持动态横竖屏推流
- [ ] 音视频目标码率:可设
项目结构
- android/app:这里是测试的 sameple
- android/videolib: 直播相关核心功能实现
- doc: 文档说明
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 中的代码
builder = EvilsLiveStreamerConfig.Builder.newBuilder();
//设置分辨率
builder.setVideoResolution(Defines.EvideoResolution.E720P);
//设置摄像头方向
builder.setCameraFacing(Defines.EcameraFacing.CAMERA_FACING_BACK);
//设置视频预览帧率
builder.setPreviewFrameRate(25);
//设置推流url
builder.setStreamUrl(url);
EvilsLiveStreamerConfig config = builder.build();
//设置预览视图
streamer.setDisplayPreview(mPreviewView);
streamer.setStreamConfig(config);
//停止预览
streamer.stopPreview();
//开启预览
streamer.startPreview();
//开启推流
streamer.startStream();
//停止推流
streamer.stopStream();
测试环境:
Android 版本: 6.0
硬件: HuaWei H60-L02
TODO LIST
- [x] 推流(视频)功能
- [ ] 推流(音频)功能
- [ ] 推流流程优化, 支持硬编、多种流媒体协议等
- [ ] 拉流功能
- [ ] 添加测试用例
- [ ] 机型适配
遗留问题
- [ ] 视频采集数据native层处理
- [ ] 支持多种体系结构
- [ ] 支持 Web/IOS 平台
Copyright and License
Copyright 2016-2017 ThinkKeep
Code released under the MIT License.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].