資源簡介
Android手機直播推流demo(yasea),支持SRS推流以及濾鏡功能

代碼片段和文件信息
package?net.ossrs.yasea.demo;
import?android.content.SharedPreferences;
import?android.content.pm.ActivityInfo;
import?android.content.res.Configuration;
import?android.hardware.Camera;
import?android.os.Bundle;
import?android.os.Environment;
import?android.support.v7.app.AppCompatActivity;
import?android.util.Log;
import?android.view.Menu;
import?android.view.MenuItem;
import?android.view.View;
import?android.view.WindowManager;
import?android.widget.Button;
import?android.widget.EditText;
import?android.widget.Toast;
import?com.github.faucamp.simplertmp.RtmpHandler;
import?com.seu.magicfilter.utils.MagicFilterType;
import?net.ossrs.yasea.SrsCameraView;
import?net.ossrs.yasea.SrsEncodeHandler;
import?net.ossrs.yasea.SrsPublisher;
import?net.ossrs.yasea.SrsRecordHandler;
import?java.io.IOException;
import?java.net.SocketException;
import?java.util.Random;
public?class?MainActivity?extends?AppCompatActivity?implements?RtmpHandler.RtmpListener
????????????????????????SrsRecordHandler.SrsRecordListener?SrsEncodeHandler.SrsEncodeListener?{
????private?static?final?String?TAG?=?“Yasea“;
????private?Button?btnPublish;
????private?Button?btnSwitchCamera;
????private?Button?btnRecord;
????private?Button?btnSwitchEncoder;
????private?SharedPreferences?sp;
????private?String?rtmpUrl?=?“rtmp://ossrs.net/“?+?getRandomAlphaString(3)?+?‘/‘?+?getRandomAlphaDigitString(5);
????private?String?recPath?=?Environment.getExternalStorageDirectory().getPath()?+?“/test.mp4“;
????private?SrsPublisher?mPublisher;
????@Override
????protected?void?onCreate(Bundle?savedInstanceState)?{
????????super.onCreate(savedInstanceState);
????????getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
????????setContentView(R.layout.activity_main);
????????//?response?screen?rotation?event
????????setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_FULL_SENSOR);
????????//?restore?data.
????????sp?=?getSharedPreferences(“Yasea“?MODE_PRIVATE);
????????rtmpUrl?=?sp.getString(“rtmpUrl“?rtmpUrl);
????????//?initialize?url.
????????final?EditText?efu?=?(EditText)?findViewById(R.id.url);
????????efu.setText(rtmpUrl);
????????btnPublish?=?(Button)?findViewById(R.id.publish);
????????btnSwitchCamera?=?(Button)?findViewById(R.id.swCam);
????????btnRecord?=?(Button)?findViewById(R.id.record);
????????btnSwitchEncoder?=?(Button)?findViewById(R.id.swEnc);
????????mPublisher?=?new?SrsPublisher((SrsCameraView)?findViewById(R.id.glsurfaceview_camera));
????????mPublisher.setEncodeHandler(new?SrsEncodeHandler(this));
????????mPublisher.setRtmpHandler(new?RtmpHandler(this));
????????mPublisher.setRecordHandler(new?SrsRecordHandler(this));
????????mPublisher.setPreviewResolution(640?360);
????????mPublisher.setOutputResolution(360?640);
????????mPublisher.setVideoHDMode();
????????mPublisher.startCamera();
????????btnPublish.setonclickListener(new?View.onclickListener()?{
????????????@Override
????????????public?void?onclick(View?v)?{
????????????????if?(btnPubl
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-07-19?09:00??yasea-master\
?????文件?????????105??2017-07-19?09:00??yasea-master\.gitignore
?????文件????????1128??2017-07-19?09:00??yasea-master\LICENSE
?????文件????????2482??2017-07-19?09:00??yasea-master\README.md
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\
?????文件???????????8??2017-07-19?09:00??yasea-master\app\.gitignore
?????文件?????????765??2017-07-19?09:00??yasea-master\app\build.gradle
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\
?????文件????????1263??2017-07-19?09:00??yasea-master\app\src\main\AndroidManifest.xm
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\java\
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\java\net\
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\java\net\ossrs\
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\java\net\ossrs\yasea\
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\java\net\ossrs\yasea\demo\
?????文件???????14367??2017-07-19?09:00??yasea-master\app\src\main\java\net\ossrs\yasea\demo\MainActivity.java
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\res\
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\res\layout\
?????文件????????2257??2017-07-19?09:00??yasea-master\app\src\main\res\layout\activity_main.xm
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\res\menu\
?????文件????????1775??2017-07-19?09:00??yasea-master\app\src\main\res\menu\menu_main.xm
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-hdpi\
?????文件????????3418??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-hdpi\ic_launcher.png
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-mdpi\
?????文件????????2206??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-mdpi\ic_launcher.png
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-xhdpi\
?????文件????????4842??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-xhdpi\ic_launcher.png
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-xxhdpi\
?????文件????????7718??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-xxhdpi\ic_launcher.png
?????目錄???????????0??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-xxxhdpi\
?????文件???????10486??2017-07-19?09:00??yasea-master\app\src\main\res\mipmap-xxxhdpi\ic_launcher.png
............此處省略904個文件信息
- 上一篇:Java 1.5API 中文完整版卷2
- 下一篇:java版網絡五子棋
評論
共有 條評論