MainActivity.java
4.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package com.cnlive.demo.videoqn;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.RadioGroup;
import android.widget.Spinner;
import android.widget.TextView;
import com.cnlive.libs.lib_cnvideo.NetworkManager;
public class MainActivity extends AppCompatActivity {
private static final String DEFAULT_TEST_URL = "rtmp://live.hkstv.hk.lxdns.com/live/hks";
private static final String[] DEFAULT_PLAYBACK_DOMAIN_ARRAY = {
"live.hkstv.hk.lxdns.com"
};
private Spinner mActivitySpinner;
private EditText mEditText;
private RadioGroup mStreamingTypeRadioGroup;
private RadioGroup mDecodeTypeRadioGroup;
private NetworkManager networkManager;
public static final String[] TEST_ACTIVITY_ARRAY = {
"CNMediaPlayerActivity",
"CNAudioPlayerActivity",
"CNVideoViewActivity",
"CNVideoTextureActivity",
"VideoViewActivity",
"VideoStatusActivity"
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// try {
// networkManager.startDnsCacheService(this, DEFAULT_PLAYBACK_DOMAIN_ARRAY);
// } catch (UnknownHostException e) {
// e.printStackTrace();
// }
TextView mVersionInfoTextView = (TextView) findViewById(R.id.version_info);
mVersionInfoTextView.setText("Version: " + BuildConfig.VERSION_NAME);
mEditText = (EditText) findViewById(R.id.VideoPathEdit);
mEditText.setText(DEFAULT_TEST_URL);
mStreamingTypeRadioGroup = (RadioGroup) findViewById(R.id.StreamingTypeRadioGroup);
mDecodeTypeRadioGroup = (RadioGroup) findViewById(R.id.DecodeTypeRadioGroup);
mActivitySpinner = (Spinner) findViewById(R.id.TestSpinner);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, TEST_ACTIVITY_ARRAY);
mActivitySpinner.setAdapter(adapter);
}
@Override
protected void onDestroy() {
super.onDestroy();
// networkManager.stopDnsCacheService(this);
}
public void onClickLocalFile(View v) {
Intent intent = new Intent(this, VideoFileActivity.class);
startActivityForResult(intent, 0);
}
public void onClickPlay(View v) {
String videopath = mEditText.getText().toString();
if (!"".equals(videopath)) {
jumpToPlayerActivity(videopath);
}
}
public void jumpToPlayerActivity(String videopath) {
Class<?> cls = null;
switch (mActivitySpinner.getSelectedItemPosition()) {
case 0:
cls = CNMediaPlayerActivity.class;
break;
case 1:
cls = CNAudioPlayerActivity.class;
break;
case 2:
cls = CNVideoViewActivity.class;
break;
case 3:
cls = CNVideoTextureActivity.class;
break;
case 4:
cls = VideoViewActivity.class;
break;
case 5:
cls = VideoStatusActivity.class;
break;
default:
return;
}
Intent intent = new Intent(this, cls);
intent.putExtra("videoPath", videopath);
if (mDecodeTypeRadioGroup.getCheckedRadioButtonId() == R.id.RadioHWDecode) {
intent.putExtra("mediaCodec", 1);
} else {
intent.putExtra("mediaCodec", 0);
}
if (mStreamingTypeRadioGroup.getCheckedRadioButtonId() == R.id.RadioLiveStreaming) {
intent.putExtra("liveStreaming", 1);
} else {
intent.putExtra("liveStreaming", 0);
}
startActivity(intent);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode != Activity.RESULT_OK) {
return;
}
String videoPath = data.getStringExtra("videoPath");
mEditText.setText(videoPath, TextView.BufferType.EDITABLE);
}
}