首先为什么要这么做呢,因为我只有一个手机,一台电脑,如何做连麦互动呢,就需要webrtc的web端跟android 手机来进行娃娃机方案的测试环境了,或者webrtc做采集,H5做播放端。
web端的采集和播放代码)
采集端
https://github.com/web-rtc-learner/web_2.0_with_channel_key
观看端
https://github.com/chenjie1129/Claw_H5_1.2
android wawaji client
https://github.com/AgoraIO/Wawaji/tree/rtc-only
下载zip,打开android 代码,导入到android studio。同时需要导入官方的视频通话 + 直播 SDK
演示
采集端
H5 播放端
android 播放端
注意事项
因为采集端一般是两个摄像头,也就是uid为两个,android 或者H5播放端,都需要设置显示是那个uid。android demo中可能已经写死了为1。也就是说当你测试android的demo时候,采集端可以先把自己的uid写为1去测试,否则android端会是黑屏
另外如果想要web端跟android或ios连麦,需要在joinchannel之前设置一个参数才可以。
android为例
public final void joinChannel(final String channel, int uid) {
mRtcEngine.enableWebSdkInteroperability(true);
if (Thread.currentThread() != this) {
log.warn("joinChannel() - worker thread asynchronously " + channel + " " + (uid & 0xFFFFFFFFL));
Message envelop = new Message();
envelop.what = ACTION_WORKER_JOIN_CHANNEL;
envelop.obj = new String[]{channel};
envelop.arg1 = uid;
mWorkerHandler.sendMessage(envelop);
return;
}
对就是这个:mRtcEngine.enableWebSdkInteroperability(true);
如果没有,或者位置不对,都可能会黑屏。demo中貌似写的不对,以我这个为准。