All Projects → gezhaoyou → RtmpPublishKit

gezhaoyou / RtmpPublishKit

Licence: BSD-2-Clause license
rtmp publish kit for android , encode with mediacodec

Programming Languages

C++
36643 projects - #6 most used programming language
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to RtmpPublishKit

Nginx Http Flv Module
Media streaming server based on nginx-rtmp-module. In addtion to the features nginx-rtmp-module provides, HTTP-FLV, GOP cache and VHOST (one IP for multi domain names) are supported now.
Stars: ✭ 2,063 (+1846.23%)
Mutual labels:  h264, rtmp, aac, live
Ksylive ios
金山云直播SDK [ iOS推流+播放 ]融合版 支持美颜滤镜(Beauty Filter)、美声(Beauty Voice)、软硬编(Software/Hardware Encoder) 、网络自适应(Network Auto Adapt)、混音(Audio Mixer)、混响(Reverb)、画中画(PIP)
Stars: ✭ 861 (+712.26%)
Mutual labels:  h264, rtmp, aac
Rtsp Simple Server
ready-to-use RTSP / RTMP server and proxy that allows to read, publish and proxy video and audio streams
Stars: ✭ 882 (+732.08%)
Mutual labels:  h264, rtmp, aac
Analysisavp
音视频学习,相关文件格式/协议分析。h264 nalu aac adts flv
Stars: ✭ 38 (-64.15%)
Mutual labels:  h264, rtmp, aac
PPlayer
ffmpeg 4.0.2静态库从0开始一个播放器的搭建,支持rtmp、rtsp、hls、本地MP4文件播放,音视频同步,直播推流
Stars: ✭ 81 (-23.58%)
Mutual labels:  h264, rtmp, mediacodec
Androidffmpeg
android 读取摄像头和麦克风,使用rtmp推流
Stars: ✭ 298 (+181.13%)
Mutual labels:  h264, rtmp, aac
Libstreaming
A solution for streaming H.264, H.263, AMR, AAC using RTP on Android
Stars: ✭ 3,167 (+2887.74%)
Mutual labels:  h264, aac, mediacodec
Haishinkit.swift
Camera and Microphone streaming library via RTMP, HLS for iOS, macOS, tvOS.
Stars: ✭ 2,237 (+2010.38%)
Mutual labels:  h264, rtmp, aac
Camerartmpsdk
CameraRtmpSDK is an audio and video based on ffmpeg SDK, is committed to creating a cross-platform audio and video sampling, encoding, mixing, protocol upload program.
Stars: ✭ 95 (-10.38%)
Mutual labels:  h264, aac
Conv2mp4 Ps
This Powershell script will recursively search through a user-defined file path and convert all videos of user-specified file types to MP4 with H264 video and AAC audio using ffmpeg. The purpose of this script is to reduce transcoding CPU load on a media server like Plex or Emby and increase video compatibility across platforms.
Stars: ✭ 97 (-8.49%)
Mutual labels:  h264, aac
raspiCam
RaspiCam, a simple web application to stream, take pictures or record videos from your raspberry pi camera.
Stars: ✭ 43 (-59.43%)
Mutual labels:  h264, live
Desktoplivestreaming
DesktopLiveStreaming
Stars: ✭ 138 (+30.19%)
Mutual labels:  h264, live
Trinity
android video record editor muxer sdk
Stars: ✭ 609 (+474.53%)
Mutual labels:  h264, aac
Rtmp
RTMP Server , RTMP Pusher , RTMP Client
Stars: ✭ 119 (+12.26%)
Mutual labels:  h264, rtmp
Nodeplayer.js
Pure JavaScrip HTML5 live stream player
Stars: ✭ 157 (+48.11%)
Mutual labels:  h264, aac
demuxer
A tool for demux ts/mp4/flv by typescript. Support HEVC/AVC/AAC codec
Stars: ✭ 108 (+1.89%)
Mutual labels:  h264, aac
Flvplayer
🍭 FlvPlayer.js is a JavaScript player for decode flv to the canvas
Stars: ✭ 210 (+98.11%)
Mutual labels:  h264, aac
Media Stream Library Js
JavaScript library to handle media streams on the command line (Node.js) and in the browser.
Stars: ✭ 192 (+81.13%)
Mutual labels:  h264, aac
Jmuxer
jMuxer - a simple javascript mp4 muxer that works in both browser and node environment.
Stars: ✭ 222 (+109.43%)
Mutual labels:  h264, aac
Livego
live video streaming server in golang
Stars: ✭ 7,312 (+6798.11%)
Mutual labels:  h264, rtmp

Rtmp Publish Kit for Android

简介

Rtmp Live Publish Kit 是简洁的 Android 平台直播推流SDK,使用 Mediacodec进行H264 和 AAC 编码, 网络部分 Java 重写了RTMP协议,方便阅读定位,YUV处理考虑性能采用了LibYUV。整体延时在1-3秒左右。

A simple rtmp live publisher for android, H264 and AAC encoder use android mediacodec. Publish media stream over RTMP protocol. Using LibYUV for process yuv.

特性

  • 支持 H.264/AAC 硬编码 -Supporting H264/AAC hard encoding
  • 支持RTMP协议推流 -Supporting publishing media over RTMP
  • 支持重力感应旋转画面-Supporting dynamic rotation image
  • 支持前后置摄像头动态切换,自动对焦-Supporting front/back camera dynamic swithing and autofocus

NDK配置

项目依赖NDK,已在build.gradle中指定21版本ndk, 可以不动,也可以按需要版本修改

ndkVersion '21.4.7075529'

权限

需要相机和麦克风权限,demo比较简单,默认不会主动申请,需要手动在app权限里面开启,

若遇到预览黑屏或者无声音问题,检测是否开启相机和麦克风权限。

Demo

北京向阿里香港服务器推流效果:

rtmp_android_01

性能-Performance

Simple Live Publisher 推720P视频,魅族MX4(14年32bit手机)上测试,CPU 占用在7%-12%左右,三星note4上测试,CPU占用7%左右,近两年出的手机CPU占用都在7%左右,发热控制的较好。

Simple Live Publisher Publish 720P video,in Meizu MX4(2014-32bit-mobile),cpu use about 7%-12%,in Samsung note4 about 7%,heating control well.

魅族-MX4(2014-12) Mobie CPU Usage:

	cpu_usage

网络和内存-Network & Memory Usage:

Net & Mem

附:

rtmp mindmap: 见 xmind 目录

Net & Mem

Net & Mem

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].