一、配置文件

  1.导入库文件jniLibs到main文件夹下

   

  2.导入red5streaming.jar

  3.在build里到入其他的包,代码如下: 

 dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'ch.qos.logback:logback-classic:1.2.3'
implementation 'ch.qos.logback:logback-core:1.2.3'
implementation 'org.apache.mina:mina-core:2.1.3'
implementation 'org.slf4j:slf4j-api:1.7.28'
implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.googlecode.mp4parser:isoparser:1.1.22'
implementation 'com.google.code.gson:gson:2.8.2'
implementation files('libs\\red5streaming.jar')
}

  4.声明权限

  

     <uses-permission android:name="android.permission.CAMERA" /><!--拍照-->
<uses-permission android:name="android.permission.INTERNET" /><!--网络-->
<uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"
tools:ignore="ProtectedPermissions" /><!--允许应用程序捕获音频输出-->
     <uses-permission android:name="android.permission.RECORD_AUDIO" /><!--允许录制声音-->
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><!--允许程序写入外部存储-->
7 <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /><!--允许程序修改声音设置信息-->

二、布局文件

  在你需要显示的布局中加入以下代码即可

 <com.red5pro.streaming.view.R5VideoView
android:id="@+id/videoView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true" />

三、具体实现的代码

  1.实现R5ConnectionListener接口里的方法(onConnectionEvent这是连接的监听)

  2.通过R5ConnectionEvent枚举里可拿到一个变量,两个方法。可以通过监听里拿到的R5ConnectionEvent和系统里的作判断

   2-1-1)       message;

   2-1-2)       name();    value();[==eventCode]

   2-2.R5ConnectionEvent枚举里所有的值

    CONNECTED(0),//已连接状态
DISCONNECTED(1),//断开状态
ERROR(2),//异常状态
TIMEOUT(3),//超时
CLOSE(4),//关闭通道
START_STREAMING(5),//启动-流媒体
STOP_STREAMING(6),//停止流媒体
NET_STATUS(7),//网络状况
AUDIO_MUTE(8),//音频静音
AUDIO_UNMUTE(9),//音频取消静音
VIDEO_MUTE(10),//视频静音
VIDEO_UNMUTE(11),//视频取消静音
LICENSE_ERROR(12),//sdk 许可证出现错误
LICENSE_VALID(13),//许可证有效
BUFFER_FLUSH_START(14),//缓冲器冲洗启动
BUFFER_FLUSH_EMPTY(15),//缓冲区冲洗空
VIDEO_RENDER_START(16),//视频渲染开始
ABR_LEVEL_CHANGED(17),//ABR_级别_已更改
SRTP_KEY_GEN_ERROR(18),//SRTP密钥生成错误
SRTP_KEY_HANDLE_ERROR(19);//SRTP_KEY_HANDLE异常

  3.具体连接和观看直播的代码书写

R5Configuration config = new R5Configuration(R5StreamProtocol.RTSP,"192.168.1.103",8554,"live",0.5f);
config.setLicenseKey("********");//[属性1:协议,属性2:主机地址,属性3:端口,属性4:上下文名称(应该可随意填写还没试过),属性5:缓冲时间]
     
config.setBundleID(this.getPackageName());//给他一个id就行 R5Connection connection = new R5Connection(config);//R5连接对象 //setup a new stream using the connection
subscribe = new R5Stream(connection);//推流还是流的来源都是这个 subscribe.audioController = new R5AudioController();//new red5里面的音频控制器给subscribe
subscribe.audioController.sampleRate = 44100;//采样频率 subscribe.client = this;
subscribe.setListener(this); //show all logging
subscribe.setLogLevel(R5Stream.LOG_LEVEL_DEBUG); //display.setZOrderOnTop(true);
display.attachStream(subscribe);//附加流 display.showDebugView(true);//设置显示调试
subscribe.play("stream1", true);//开始播放[属性1:播放的流名字 属性2:是不是需要开启硬件加速]

    后续续拆解直播和打游戏录屏直播的解释.....请要关注我哦!

最新文章

  1. windows7下php5.4成功安装imageMagick,及解决php imagick常见错误问题。(phpinfo中显示不出来是因为:1.imagick软件本身、php本身、php扩展三方版本要一致,2.需要把CORE_RL_*.dll多个文件放到/php/目录下面)
  2. 在SQL2008中使用XML应对不确定结构的参数
  3. Python自动化测试 (二) ConfigParser模块读写配置文件
  4. Ubuntu16.04.1 安装MyCat
  5. 【Memcache】下载和安装
  6. BZOJ2253: [2010 Beijing wc]纸箱堆叠
  7. Altium Designer多图纸原理图设计方法探讨
  8. python 小白(无编程基础,无计算机基础)的开发之路 辅助知识1 with...as
  9. idea+jsp+jstl c标签页面异常
  10. thrift之php,python使用TServerSocket并发 处理请求
  11. 转载 单例(Singleton)模式)的误区
  12. MySQL的binlog日志&lt;转&gt;
  13. Hadoop Map/Reduce 示例程序WordCount
  14. 枚举1--求小于n的最大素数
  15. 怎么爆加密过后的前端JS
  16. STS中配置MyBatis代码生成器
  17. numpy基本方法总结 --good
  18. 20155218 2006-2007-2 《Java程序设计》第4周学习总结
  19. Java的一些细节问题
  20. Django - day01 快速回忆ORM操作

热门文章

  1. cb35a_c++_STL_算法_for_each
  2. Mysql Workbench中EER Diagram逆向生成表
  3. Linux Systemd 详细介绍: Unit、Unit File、Systemctl、Target
  4. VulnHub CengBox2靶机渗透
  5. maven在windows10系统下安装配置和打包war
  6. DOM-BOM-EVENT(1)
  7. JsPlumb在react的使用方法及介绍
  8. 编译Spring5.2.0源码
  9. 读取和写入blob类型数据
  10. 浅谈并查集&amp;种类并查集&amp;带权并查集