●Centos系统安装:请查看个人另外一篇博客Java后端之路(六)安装Linux系统 ●git安装(系统若是没有的话):www.cnblogs.com/imyalost/p/…,git配置完后记得重启系统才能生效,或者执行source /etc/profile命令也能够。 ●SRS流媒体服务器安装(官方教程):github.com/ossrs/srs/w… 安装完以后还须要将官方的安装说明中的srs.conf里涉及到的端口进行开放。 ●Linux端口开放:jingyan.baidu.com/article/0eb… ●OBS Studio推流软件下载:www.onlinedown.net/soft/637537… ●VLC拉流软件下载:www.onlinedown.net/soft/16216.…php
●OBS Studio配置推流: 在来源窗口右键->添加->显示器捕获 html
这里我使用的是一个很是好用的Android推流开源库:github.com/begeekmyfri… 使用方式很简单首先导入它的library而后在代码中简单几行便可实现: 布局文件代码:java
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.itfitness.zhiboapp.MainActivity">
<net.ossrs.yasea.SrsCameraView android:id="@+id/glsurfaceview_camera" android:layout_width="match_parent" android:layout_height="match_parent"/>
</RelativeLayout>
复制代码
Activity代码:android
//另外这个Activity还须要实现这些接口:SrsEncodeHandler.SrsEncodeListener, RtmpHandler.RtmpListener, SrsRecordHandler.SrsRecordListener
SrsCameraView cameraView = (SrsCameraView) findViewById(R.id.glsurfaceview_camera);
mPublisher = new SrsPublisher(cameraView);
//编码状态回调
mPublisher.setEncodeHandler(new SrsEncodeHandler(this));
mPublisher.setRecordHandler(new SrsRecordHandler(this));
//rtmp推流状态回调
mPublisher.setRtmpHandler(new RtmpHandler(this));
//预览分辨率
mPublisher.setPreviewResolution(1280, 720);
//推流分辨率
mPublisher.setOutputResolution(720, 1280);
//传输率
mPublisher.setVideoHDMode();
//开启美颜(其余滤镜效果在MagicFilterType中查看)
mPublisher.switchCameraFilter(MagicFilterType.BEAUTY);
//打开摄像头,开始预览(未推流)
mPublisher.startCamera();
//mPublisher.switchToSoftEncoder();//选择软编码
mPublisher.switchToHardEncoder();//选择硬编码
//开始推流 rtmpUrl(ip换成服务器的部署ip)
mPublisher.startPublish("rtmp://192.168.0.102/live/test");
复制代码
接下来使用VLC进行拉流播放: git