网易云视频直播推流集成大致过程

最近刚来到一家新公司,接手的第一个项目是做一款教育直播app(教师端),而我负责的是教师端的,也就是推流那个端的.

由于没有接触过这类的项目,怕接入网易云时碰到bug不知道如何解决,所以一段时间内沉浸在电脑的世界里,查找资料,查看直播的原理.

直播的原理我就不在大神面前装来,直接附上本人认为好的博客,他写了3篇,写的非常详细,可认真的研究下:

风从影系列的博客:http://www.jianshu.com/p/7ebbcc0c5df7

网易云视频直播推流端集成步骤:
第一步:当然是注册我们的网易云账号啦,地址是:

http://vcloud.163.com/docs/index.html

第二步:注册好账号后,下载网易云官方的sdk,根据网易云的开发文档进行如下的操作:

a.网易云视频直播所支持的设备是:搭载Android系统的设备,支持的CPU架构:armv7、arm64,系统要求:系统要求:Android 4.2(API 17)及其以上

b.为了不影响直播的进行,最好请在proguard-project.txt文件中添加以下代码: 
    -keep class com.netease.** { *; }
    -keep class jp.co.cyberagent.android.gpuimage.** { *; }
c.我在进行集成用的是网易云的demo,对其进行修改集成到我自己的项目中,所以接下来是下载网易云直播推流demo,地址:

http://vcloud.163.com/download.html

d.开始将资源文件拷贝进我们的项目中,我们要拷贝的东西有下面这些

第一步:将demo中的so库拷到我们自己的jinLibs目录下.
第二步:将.jar文件拷到lib目录下,这里注意网易云时将so库和.jar文件拷到jinLibs这一个文件下,我们这里可以不用这样,按照自己的方式拷贝.
第三步:将我们需要的网易云demo中的activity和布局界面拷贝到我们自己的项目中(你如果觉得麻烦,全拷贝进去,再把不需要的activity和布局界面移除)

e.开始配置我们的清单文件,配置如下:

第一步:权限配置:
 <!-- 允许挂载和反挂载文件系统 -->   
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />   
<!-- 允许程序向外部存储设备写数据 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 允许程序打开网络套接字 -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- 允许程序获取网络相关信息 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 允许程序向外部存储设备写数据 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 允许程序写音频数据 -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<!-- 允许程序使用PowerManager WakeLocks以防止处理器休眠或者屏幕锁屏 -->
<uses-permission android:name="android.permission.WAKE_LOCK" />
<!-- 允许程序获取Wifi网络状态信息 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- 允许程序使用设备的camera -->
<uses-permission android:name="android.permission.CAMERA" />
<!-- 允许程序使用闪光灯 -->
<uses-permission android:name="android.permission.FLASHLIGHT" />
<!-- 允许程序获得设备信息 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />

<uses-feature android:name="android.hardware.camera.autofocus"/>

<!-- 声明程序使用camera和自动对焦功能 -->
<uses-feature android:name="android.hardware.camera"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>
<!-- 声明程序使用OpenGL ES 2.0 -->
<uses-feature android:glEsVersion="0x00020000" android:required="true" />

第二步:配置我们所需要的网易云demo的activity

 <!-- 欢迎页面activity,默认竖屏模式 -->
<activity android:name=".WelcomeActivity" android:label="@string/app_name" android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
 </activity>

    <!-- 直播参数设置页面activity,默认竖屏模式 -->
<activity android:name=".MainActivity" android:label="@string/app_name" android:screenOrientation="portrait" />

    <!-- 直播主页面activity,默认竖屏模式 -->
  <activity android:name=".MediaPreviewActivity" android:label="@string/app_name" android:screenOrientation="portrait"/>    

配置到这里基本就结束了,我们可以开始将我们的项目对接拷贝进我们项目中的demo的activity,(我只用到了两个activity,一个是mainActivity和MediaPreviewActivity)

mainActivity:我们可以对其进行修改,在这个activity中我们请求我们自己的服务器后台,获取推流地址,而且一些数据的相关操作,也可以再这里面进行,比如直播房间的创建,直播房间的修改等

MediaPreviewActivity:这个activity就是我们直播的界面,网易云这个界面做的很简洁,这样我们就可以再这个界面进行自己的ui配置,添加直播之外的一些逻辑操作(比如:聊天弹幕,礼物等)

哈哈,大致过程就是这样,当然还有些小问题,这就要认真看下网易云官方文档啦.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值