目录
目录
环境准备
直播测试
●OBS Studio配置推流:
在来源窗口右键->添加->显示器捕获
zhibo.png
然后在控件窗口点击设置进行配置留的推送地址:
配置推流地址,推流的协议为rtmp,后面则是服务器ip+端口号+随意名称(我是live),然后是下面的流名称这里我填的test。
设置完之后就可以开始推流了
●VLC拉流播放:
打开VLC选择工具栏的媒体->流
选择网络选项卡,然后我们输入与推流一样的地址,然后点击播放:
拉流成功的话会显示你屏幕的图像。
Android进行推流
这里我使用的是一个非常好用的Android推流开源库:https://github.com/begeekmyfriend/yasea
使用方式很简单首先导入它的library然后在代码中简单几行即可实现:
布局文件代码:
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">
android:id="@+id/glsurfaceview_camera"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
Activity代码:
//另外这个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进行拉流播放:
如果觉得VLC比较卡的话可以使用一个在线的拉流播放工具:http://www.cutv.com/demo/live_test.swf