RemoteMonster Community

실시간 방송 관련하여 문의드립니다

안녕하세요

하이브리드 앱에서 리모트몬스터 웹 sdk를 이용하여 라이브방송을 진행하려고 하는데요… createCast 하여 채널아이디나, 방 까지는 생성되는데 현재 진행중이 방송을 보려고 하면 아래와 같은 오류가 발생하면서 뷰어가 생성되지 않습니다.

[RM]E> PeerConnection: set Local description failed DOMException: Failed to execute ‘setLocalDescription’ on ‘RTCPeerConnection’: Failed to set local answer sdp: Failed to set local video description recv parameters.

해당 오류가 왜 발생하는것인지 확인 및 수정방법을 알려주시면 감사하겠습니다.

소스코드를 한번 확인해봐야할 것 같습니다.
sample.remotemonster.com 의 예제를 보시면서 틀린 부분을 찾으시면 어떨까요?

방송 송출

const config = {
credential: {
key: ‘key’,
serviceId: ‘serviceid’
},
view: {
remote: ‘#remoteVideo’,
local: ‘#localVideo
},
media: {
video: {
maxBandwidth: ‘1500’,
codec: ‘vp8’
},
audio: true
},
rtc: {
audioType: ‘music’
}
};

const listener = {
	onCreate(chid) {
		console.log(`EVENT FIRED: onCreate: ${chid}`);
		livecastSave(chid);
	},
	onConnect(chid) {
		console.log(`EVENT FIRED: onConnect: ${chid}`);
	},
	onComplete() {
		console.log('EVENT FIRED: onComplete');
	},
	onDisconnectChannel() {
		// is called when other peer hang up.
		remon.close();
		isConnected = false;
	},
	onJoin(chid) {
		console.log('EVENT FIRED: onJoin');
	},
	onClose() {
		console.log('EVENT FIRED: onClose');
		remon.close();
	},
	onError(error) {
		console.log(`EVENT FIRED: onError: ${error}`);
	},
	onStat(result) {
		console.log(`EVENT FIRED: onStat: ${result}`);
	}
};


const remon = new Remon({config, listener});

function start() {
if (isConnected) {
isConnected = false;
remon.close();
} else {
isConnected = true;
var myChannelId = getRandomId();
remon.createCast(myChannelId);
}
}

function getRandomId() {
	var text = "";
	var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
	for (var i = 0; i < 5; i++)
		text += possible.charAt(Math.floor(Math.random() * possible.length));
	return Date.now() + "_" + text;
}

시청

var listener = {
onCreate(chid) {
console.log(EVENT FIRED: onCreate: ${chid});
},
onConnect(chid) {
console.log(EVENT FIRED: onConnect: ${chid});
},
onComplete() {
console.log(‘EVENT FIRED: onComplete’);
},
onDisconnectChannel() {
// is called when other peer hang up.
remon.close();
isConnected = false;
},
onJoin(chid) {
console.log(‘EVENT FIRED: onJoin’);
},
onClose() {
console.log(‘EVENT FIRED: onClose’);
remon.close();
},
onError(error) {
console.log(EVENT FIRED: onError: ${error});
},
onStat(result) {
console.log(EVENT FIRED: onStat: ${result});
}
};
var config = {
credential: {
key: ‘key’,
serviceId: ‘serviceid’
},
view: {
remote: ‘#remoteVideo
}
};

const remon = new Remon({ config: config, listener });

$(function() {
    remon.joinCast('1593498136182_CWoXQ');
});

방송 송출 및 시청 코드는 위와 같이 되어 있습니다.

그리고 방송 송출시 일정한 시간이 지난 후

[RM]E> Signaling error -> Message: {transactionId: “114dbe20-ff7f-4cc4-af67-61ec4fa17289”, command: “onError”, code: “2370”, body: “This channel is terminated by a server”

위 오류가 뜨면서 자동으로 방송이 중지되는데 원인이 무엇인지 알려주시면 감사하겠습니다.
또한 카메라전환은 지원이 안되는것인지요?