Skip to content

Commit f5b9e95

Browse files
committed
修复App断网或切网重传。
Change-Id: I3448692a18fa28d1164706cd7622093197996097
1 parent c0ab576 commit f5b9e95

File tree

2 files changed

+14
-12
lines changed

2 files changed

+14
-12
lines changed

sdkdemo/src/main/java/com/tencent/iot/explorer/link/demo/video/preview/VideoPushStreamActivity.kt

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -132,25 +132,23 @@ class VideoPushStreamActivity : VideoBaseActivity(), EventView, TextureView.Surf
132132
)
133133

134134
holder = sv_camera_view.holder
135-
initAudioEncoder()
136-
initVideoEncoder()
137135
}
138136

139137
private fun initAudioEncoder() {
140138
val micParam: MicParam = MicParam.Builder()
141-
.setAudioSource(MediaRecorder.AudioSource.MIC)
139+
.setAudioSource(MediaRecorder.AudioSource.VOICE_COMMUNICATION)
142140
.setSampleRateInHz(16000) // 采样率
143141
.setChannelConfig(AudioFormat.CHANNEL_IN_MONO)
144142
.setAudioFormat(AudioFormat.ENCODING_PCM_16BIT) // PCM
145143
.build()
146144
val audioEncodeParam: AudioEncodeParam = AudioEncodeParam.Builder().build()
147-
audioEncoder = AudioEncoder(micParam, audioEncodeParam)
145+
audioEncoder = AudioEncoder(micParam, audioEncodeParam, true, true)
148146
audioEncoder!!.setOnEncodeListener(this)
149147
}
150148

151149
private fun initVideoEncoder() {
152150
val videoEncodeParam: VideoEncodeParam =
153-
VideoEncodeParam.Builder().setSize(vw, vh).setFrameRate(frameRate).setBitRate(vw * vh).build()
151+
VideoEncodeParam.Builder().setSize(vw, vh).setFrameRate(frameRate).setBitRate(vw * vh * 4).build()
154152
videoEncoder = VideoEncoder(videoEncodeParam)
155153
videoEncoder!!.setEncoderListener(this)
156154
}
@@ -217,7 +215,8 @@ class VideoPushStreamActivity : VideoBaseActivity(), EventView, TextureView.Surf
217215
}
218216
Log.d(tag, "id=${id} keepAliveThread do not wait and keepAliveThreadRuning=${keepAliveThreadRuning}")
219217
if (!keepAliveThreadRuning) break //锁被释放后,检查守护线程是否继续运行
220-
218+
flvPacker = null
219+
stopRecord()
221220
// 发现断开尝试恢复视频,每隔一秒尝试一次
222221
Log.d(tag, "====开始尝试重连...")
223222
XP2P.stopService(id)
@@ -265,6 +264,8 @@ class VideoPushStreamActivity : VideoBaseActivity(), EventView, TextureView.Surf
265264
XP2P.runSendService("${App.data.accessInfo?.productId}/${presenter.getDeviceName()}", "channel=0", false)
266265
handler.post(Runnable {
267266
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
267+
initAudioEncoder()
268+
initVideoEncoder()
268269
startRecord()
269270
}
270271
})

sdkdemo/src/main/java/com/tencent/iot/explorer/link/demo/video/preview/VideoWithoutPropertyActivity.kt

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -165,25 +165,23 @@ class VideoWithoutPropertyActivity : VideoBaseActivity(), EventView, TextureView
165165
screenHeight = (height / density).toInt() // 屏幕高度(dp)
166166

167167
holder = sv_camera_view.holder
168-
initAudioEncoder()
169-
initVideoEncoder()
170168
}
171169

172170
private fun initAudioEncoder() {
173171
val micParam: MicParam = MicParam.Builder()
174-
.setAudioSource(MediaRecorder.AudioSource.MIC)
172+
.setAudioSource(MediaRecorder.AudioSource.VOICE_COMMUNICATION)
175173
.setSampleRateInHz(16000) // 采样率
176174
.setChannelConfig(AudioFormat.CHANNEL_IN_MONO)
177175
.setAudioFormat(AudioFormat.ENCODING_PCM_16BIT) // PCM
178176
.build()
179177
val audioEncodeParam: AudioEncodeParam = AudioEncodeParam.Builder().build()
180-
audioEncoder = AudioEncoder(micParam, audioEncodeParam)
178+
audioEncoder = AudioEncoder(micParam, audioEncodeParam, true, true)
181179
audioEncoder!!.setOnEncodeListener(this)
182180
}
183181

184182
private fun initVideoEncoder() {
185183
val videoEncodeParam: VideoEncodeParam =
186-
VideoEncodeParam.Builder().setSize(vw, vh).setFrameRate(frameRate).setBitRate(vw * vh).build()
184+
VideoEncodeParam.Builder().setSize(vw, vh).setFrameRate(frameRate).setBitRate(vw * vh * 4).build()
187185
videoEncoder = VideoEncoder(videoEncodeParam)
188186
videoEncoder!!.setEncoderListener(this)
189187
}
@@ -254,7 +252,8 @@ class VideoWithoutPropertyActivity : VideoBaseActivity(), EventView, TextureView
254252
}
255253
Log.d(tag, "id=${id} keepAliveThread do not wait and keepAliveThreadRuning=${keepAliveThreadRuning}")
256254
if (!keepAliveThreadRuning) break //锁被释放后,检查守护线程是否继续运行
257-
255+
flvPacker = null
256+
stopRecord()
258257
// 发现断开尝试恢复视频,每隔一秒尝试一次
259258
Log.d(tag, "====开始尝试重连...")
260259
XP2P.stopService(id)
@@ -338,6 +337,8 @@ class VideoWithoutPropertyActivity : VideoBaseActivity(), EventView, TextureView
338337
// 开始推流
339338
XP2P.runSendService("${App.data.accessInfo?.productId}/${presenter.getDeviceName()}", "channel=0", false)
340339
handler.post(Runnable { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
340+
initAudioEncoder()
341+
initVideoEncoder()
341342
startRecord()
342343
}
343344
})

0 commit comments

Comments
 (0)