mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Tools: Update one to one demo
This commit is contained in:
parent
fc23b9e5f5
commit
74043b4153
5 changed files with 73 additions and 21 deletions
|
@ -57,7 +57,7 @@ function SrsRtcPublisherAsync() {
|
|||
self.pc.addTransceiver("video", {direction: "sendonly"});
|
||||
|
||||
var stream = await navigator.mediaDevices.getUserMedia(
|
||||
{audio: true, video: {height: {max: 320}}}
|
||||
{audio: true, video: {width: {max: 320}}}
|
||||
);
|
||||
// @see https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addStream#Migrating_to_addTrack
|
||||
stream.getTracks().forEach(function (track) {
|
||||
|
|
|
@ -106,6 +106,7 @@ function SrsRtcSignalingParse(location) {
|
|||
host = host? host.split('&')[0] : location.hostname;
|
||||
|
||||
let room = location.href.split('room=')[1];
|
||||
room = room? room.split('&')[0] : null;
|
||||
|
||||
let display = location.href.split('display=')[1];
|
||||
display = display? display.split('&')[0] : new Date().getTime().toString(16).substr(3);
|
||||
|
|
38
trunk/3rdparty/signaling/www/demos/one2one.html
vendored
38
trunk/3rdparty/signaling/www/demos/one2one.html
vendored
|
@ -45,19 +45,22 @@
|
|||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="span5">
|
||||
<div class="span4">
|
||||
<label></label>
|
||||
<video id="rtc_media_publisher" width="320" autoplay muted controls></video>
|
||||
<video id="rtc_media_publisher" width="310" autoplay muted controls></video>
|
||||
|
||||
<label></label>
|
||||
<span id='self'></span>
|
||||
</div>
|
||||
<div class="span6">
|
||||
<label></label>
|
||||
<video id="rtc_media_player" width="320" autoplay muted controls></video>
|
||||
<video id="rtc_media_player" width="310" autoplay muted controls></video>
|
||||
|
||||
<label></label>
|
||||
<span id='peer'></span>
|
||||
<a href="javascript:control_refresh_peer()">Refresh</a>
|
||||
<input type="text" id="txt_alert" class="input-medium" value="">
|
||||
<a href="javascript:control_alert_peer()">Alert</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -65,6 +68,8 @@
|
|||
var sig = null;
|
||||
var publisher = null;
|
||||
var player = null;
|
||||
var control_refresh_peer = null;
|
||||
var control_alert_peer = null;
|
||||
$(function(){
|
||||
console.log('?wss=x to specify the websocket schema, ws or wss');
|
||||
console.log('?wsh=x to specify the websocket server ip');
|
||||
|
@ -85,13 +90,32 @@
|
|||
sig = new SrsRtcSignalingAsync();
|
||||
sig.onmessage = function (msg) {
|
||||
console.log('Notify: ', msg);
|
||||
msg.participants.forEach(function (participant) {
|
||||
if (participant.display === display || !participant.publishing) return;
|
||||
startPlay(host, room, participant.display);
|
||||
});
|
||||
if (msg.event === 'publish') {
|
||||
msg.participants.forEach(function (participant) {
|
||||
if (participant.display === display || !participant.publishing) return;
|
||||
startPlay(host, room, participant.display);
|
||||
});
|
||||
} else if (msg.event === 'control') {
|
||||
if (msg.param === 'refresh') {
|
||||
setTimeout(function () {
|
||||
window.location.href = window.location.href;
|
||||
}, 500);
|
||||
} else if (msg.param === 'alert') {
|
||||
alert('From ' + msg.peer.display + ': ' + msg.data);
|
||||
}
|
||||
}
|
||||
};
|
||||
await sig.connect(conf.wsSchema, conf.wsHost, room, display);
|
||||
|
||||
control_refresh_peer = async function () {
|
||||
let r1 = await sig.send({action:'control', room:room, display:display, call:'refresh'});
|
||||
console.log('Signaling: control peer to refresh ok', r1);
|
||||
};
|
||||
control_alert_peer = async function () {
|
||||
let r1 = await sig.send({action:'control', room:room, display:display, call:'alert', data:$('#txt_alert').val()});
|
||||
console.log('Signaling: control peer to alert ok', r1);
|
||||
};
|
||||
|
||||
let r0 = await sig.send({action:'join', room:room, display:display});
|
||||
console.log('Signaling: join ok', r0);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue