视频直播Android推流SDK初体验

场景:使用阿里云直播产品如何进行推流播流,可以参考视频直播快速开始进行创建直播域名推流播流。那么移动端要如何进行推流呢,视频直播提供了Android、IOS推流SDK,用户可以使用对应的SDK进行推流,本文旨在让读者可以按照文章快速的应用Android推流SDK进行推流并且了解常见推流参数的设置。

1)Android Studio安装,下载Android Studio打开https://developer.android.com/index.html
1
2

2) 安装Android Studio

3) 下载Android推流sdk 工程:https://help.aliyun.com/document_detail/45270.html?spm=5176.doc50101.6.609.3CsXTp

4) Android Studio 工程导入:打开AndroidStudio,点击open an existing Andriod studio project,选择文件夹AlivcLiveRecord-v1.2.0-androidAlivcLiveRecord-v1.2.0-androiddemoAlivcLiveRecord,工程导入成功
3

5) 基础配置
1】Android Studio SDK Manager安装Android sdk 平台包
4
5
2】创建Android模拟器
点击AVD Manger
6
选择手机型号
7
选择系统镜像
8

6) 填入默认推流地址
res/layout/ demo_activity.xml 中编辑rtmpUrl的地址
9

7) 真机运行Android推流sdk (Android推流sdk 不支持模拟器运行)
1】 Android手机开启开发者选项USB调试模式,不同手机开启方式不同,具体可以百度下;
10
2】 电脑安装豌豆荚
3】 手机USB链接电脑
4】 运行
11

注意:
Android Sdk 真机运行找不到设备
1) Android手机是否已经连上机器
2) Android手机是否开启了开发者选项,USB调试是否打开
3) Androidstudio是否选择了链接usb 设备
4) Android studio manager 里面下载的Android sdk平台包是否包含了手机Android版本的包
5) 手机端是否存在安全软件拦截了USB链接调试
6) 电脑是否安装豌豆荚

分辨率、码率、帧率配置
影响画质的因素:分辨率 码率 帧率

  • 分辨率:直播推流SDK提供多分辨率选择:240P、360P、480P、540P、720P,1080P
  • 码率:编码器每秒编码的数据量,推流器SDK码率单位为kbps
  • 帧率:FPS是图像领域中的定义,是指画面每秒传输帧数,通俗来讲就是指视频每秒的画面数
    针对视频清晰度和码率分辨率设置提供一份参考,开发者可以通过应用属性来平衡该修改.

2

分辨率码率在demo代码中可以修改,用户可以根据自己的需求进行修改,参考如下位置进行修改对应的代码
1

一: 使用javacv来实现,最终也是用过ffmpeg来进行编码和推流,javacv实现到可以直接接收摄像头的帧数据 需要自己实现的代码只是打开摄像头,写一个SurfaceView进行预览,然后实现PreviewCallback将摄像头每一帧的数据交给javacv即可 javacv地址:https://github.com/bytedeco/javacv demo地址:https://github.com/beautifulSoup/RtmpRecoder/tree/master 二: 使用Android自带的编码工具,可实现硬编码,这里有一个国内大神开源的封装很完善的的库yasea,第一种方法需要实现的Camera采集部分也一起封装好了,进行一些简单配置就可以实现编码推流,并且yasea目前已经直接支持摄像头的热切换,和各种滤镜效果 yasea地址(内置demo):https://github.com/begeekmyfriend/yasea 服务器 流媒体服务器我用的是srs,项目地址:https://github.com/ossrs/srs 关于srs的编译、配置、部署、在官方wiki中已经写的很详细了,并且srs同样是国内开发人员开源的项目,有全中文的文档,看起来很方便 这里有最基本的简单编译部署过程 Android直播实现(二)srs流媒体服务器部署 播放器 android端的播放使用vitamio,还是国内的开源播放器,是不是感觉国内的前辈们越来越屌了^~^! vitamio支持几乎所有常见的的视频格式和流媒体协议 vitamio地址(内置demo):https://github.com/yixia/VitamioBundle 这里使用的是yaesa库,先介绍一下直播实现的流程:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值