[*] 安卓消费媒体
This commit is contained in:
@@ -2,34 +2,34 @@
|
||||
|
||||
## WebRTC资料
|
||||
|
||||
https://www.cnblogs.com/ssyfj/p/14828185.html
|
||||
https://www.cnblogs.com/ssyfj/p/14826516.html
|
||||
https://www.cnblogs.com/ssyfj/p/14823861.html
|
||||
https://www.cnblogs.com/ssyfj/p/14815266.html
|
||||
https://www.cnblogs.com/ssyfj/p/14811253.html
|
||||
https://www.cnblogs.com/ssyfj/p/14806678.html
|
||||
https://www.cnblogs.com/ssyfj/p/14805040.html
|
||||
https://www.cnblogs.com/ssyfj/p/14788663.html
|
||||
https://www.cnblogs.com/ssyfj/p/14787012.html
|
||||
https://www.cnblogs.com/ssyfj/p/14783168.html
|
||||
https://www.cnblogs.com/ssyfj/p/14781982.html
|
||||
https://www.cnblogs.com/ssyfj/p/14778839.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14828185.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14826516.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14823861.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14815266.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14811253.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14806678.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14805040.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14788663.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14787012.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14783168.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14781982.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14778839.html
|
||||
|
||||
## Mediasoup资料
|
||||
|
||||
https://www.cnblogs.com/ssyfj/p/14855454.html
|
||||
https://www.cnblogs.com/ssyfj/p/14851442.html
|
||||
https://www.cnblogs.com/ssyfj/p/14850041.html
|
||||
https://www.cnblogs.com/ssyfj/p/14847097.html
|
||||
https://www.cnblogs.com/ssyfj/p/14843182.html
|
||||
https://www.cnblogs.com/ssyfj/p/14843082.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14855454.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14851442.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14850041.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14847097.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14843182.html
|
||||
* https://www.cnblogs.com/ssyfj/p/14843082.html
|
||||
|
||||
## 更多资料
|
||||
|
||||
https://zhuanlan.zhihu.com/p/466172240
|
||||
http://koca.szkingdom.com/forum/t/topic/218
|
||||
https://blog.csdn.net/qw225967/article/details/121251305
|
||||
http://www.manoner.com/post/音视频基础/WebRTC核心组件和协议栈/
|
||||
https://blog.csdn.net/ababab12345/article/details/115585378
|
||||
https://blog.csdn.net/jisuanji111111/article/details/121634199
|
||||
https://lequ7.com/guan-yu-webrtc-yi-wen-xiang-jie-webrtc-ji-chu.html
|
||||
* https://zhuanlan.zhihu.com/p/466172240
|
||||
* http://koca.szkingdom.com/forum/t/topic/218
|
||||
* https://blog.csdn.net/qw225967/article/details/121251305
|
||||
* http://www.manoner.com/post/音视频基础/WebRTC核心组件和协议栈/
|
||||
* https://blog.csdn.net/ababab12345/article/details/115585378
|
||||
* https://blog.csdn.net/jisuanji111111/article/details/121634199
|
||||
* https://lequ7.com/guan-yu-webrtc-yi-wen-xiang-jie-webrtc-ji-chu.html
|
||||
|
||||
@@ -721,14 +721,14 @@ public final class MediaManager {
|
||||
|
||||
@Override
|
||||
public void onCapturerStarted(boolean status) {
|
||||
Log.i(MediaManager.class.getSimpleName(), "结束视频捕获");
|
||||
Log.i(MediaManager.class.getSimpleName(), "开始视频捕获");
|
||||
this.mainObserver.onCapturerStarted(status);
|
||||
this.shareObserver.onCapturerStarted(status);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCapturerStopped() {
|
||||
Log.i(MediaManager.class.getSimpleName(), "开始视频捕获");
|
||||
Log.i(MediaManager.class.getSimpleName(), "结束视频捕获");
|
||||
this.mainObserver.onCapturerStopped();
|
||||
this.shareObserver.onCapturerStopped();
|
||||
}
|
||||
|
||||
@@ -52,11 +52,10 @@ public class Room extends CloseableClient implements RouterCallback {
|
||||
private LocalClient localClient;
|
||||
private PeerConnection.RTCConfiguration rtcConfiguration;
|
||||
private PeerConnectionFactory peerConnectionFactory;
|
||||
private String rtpCapabilities;
|
||||
private String sctpCapabilities;
|
||||
private Object rtpCapabilities;
|
||||
private Object sctpCapabilities;
|
||||
|
||||
/**
|
||||
*
|
||||
* @param name 房间名称
|
||||
* @param roomId 房间ID
|
||||
* @param clientId 当前终端ID
|
||||
@@ -121,8 +120,12 @@ public class Room extends CloseableClient implements RouterCallback {
|
||||
return this.taoyao.requestFuture(
|
||||
this.taoyao.buildMessage("media::router::rtp::capabilities", "roomId", this.roomId),
|
||||
response -> {
|
||||
final Object rtpCapabilities = MapUtils.get(response.body(), "rtpCapabilities");
|
||||
this.nativeEnterRoom(this.nativeRoomPointer, JSONUtils.toJSON(rtpCapabilities), this.peerConnectionFactory.getNativePeerConnectionFactory(), this.rtcConfiguration);
|
||||
this.nativeEnterRoom(
|
||||
this.nativeRoomPointer,
|
||||
JSONUtils.toJSON(MapUtils.get(response.body(), "rtpCapabilities")),
|
||||
this.peerConnectionFactory.getNativePeerConnectionFactory(),
|
||||
this.rtcConfiguration
|
||||
);
|
||||
return true;
|
||||
},
|
||||
response -> {
|
||||
@@ -311,20 +314,19 @@ public class Room extends CloseableClient implements RouterCallback {
|
||||
|
||||
@Override
|
||||
public void enterRoomCallback(String rtpCapabilities, String sctpCapabilities) {
|
||||
this.rtpCapabilities = rtpCapabilities;
|
||||
this.sctpCapabilities = sctpCapabilities;
|
||||
this.rtpCapabilities = JSONUtils.toJava(rtpCapabilities);
|
||||
this.sctpCapabilities = JSONUtils.toJava(sctpCapabilities);
|
||||
this.taoyao.push(this.taoyao.buildMessage(
|
||||
"room::enter",
|
||||
"roomId", this.roomId,
|
||||
"password", this.password,
|
||||
"rtpCapabilities", rtpCapabilities,
|
||||
"sctpCapabilities", sctpCapabilities
|
||||
"rtpCapabilities", this.rtpCapabilities,
|
||||
"sctpCapabilities", this.sctpCapabilities
|
||||
));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeRoomCallback() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1445,6 +1445,10 @@ class Taoyao extends RemoteClient {
|
||||
roomId: me.roomId,
|
||||
})
|
||||
);
|
||||
if(!response.success) {
|
||||
// TODO:提示
|
||||
return;
|
||||
}
|
||||
const routerRtpCapabilities = response.body.rtpCapabilities;
|
||||
me.mediasoupDevice = new mediasoupClient.Device();
|
||||
// mediasoupClient.parseScalabilityMode("L2T3");
|
||||
|
||||
Reference in New Issue
Block a user