Halo,
Apakah ada cara untuk membisukan mikrofon lokal?
Session.mute() tampaknya tidak berfungsi.
Salam Hormat,
Pjata
Anda perlu mengeluarkan trek lokal dari peerConnection dan kemudian membisukan trek. Ini di luar cakupan SIP.js. Lihat dokumentasi Sesi Deskripsi Handler untuk informasi tentang cara mendapatkan koneksi peer.
Saya menyelesaikannya seperti ini:
session.getLocalStreams()[0].getAudioTracks()[0].stop()
session.getLocalStreams
tidak kompatibel dengan 0.8+. Anda perlu mendapatkan koneksi peer dan mendapatkan aliran dari koneksi peer.
jadi bagaimana saya bisa melakukan ini?
Anda perlu mengeluarkan trek lokal dari peerConnection dan kemudian membisukan trek. Ini di luar cakupan SIP.js. Lihat dokumentasi Sesi Deskripsi Handler untuk informasi tentang cara mendapatkan koneksi peer.
saya melakukannya dengan cara ini
///mute
var pc = session.sessionDescriptionHandler.peerConnection;
pc.getLocalStreams().forEach(function (stream) {
stream.getAudioTracks().forEach(function (track) {
track.enabled = false;
});
});
saya melakukannya dengan cara ini
///mute var pc = session.sessionDescriptionHandler.peerConnection; pc.getLocalStreams().forEach(function (stream) { stream.getAudioTracks().forEach(function (track) { track.enabled = false; }); });
Bagi siapa pun yang menemukan ini sekarang:
Chrome mengatakan peerConnection.getLocalStreams()
tidak boleh digunakan lagi. Sebagai gantinya gunakan:
peerConnection.getSenders()
dan peerConnection.getReceivers()
di versi 0.15.0 ternyata dibuat seperti ini
const pc: any = this.session.sessionDescriptionHandler.peerConnection
pc.getSenders().forEach((stream: any) => {
stream.track.enabled = false
})
terima kasih @koshelevvasya yang bekerja untuk saya!
maaf terlambat ke pesta. Pertanyaan: bagaimana saya sebagai rekan jarak jauh mengetahui rekan lokal telah menonaktifkan mikrofon mereka sehingga saya dapat memperbarui status dari pihak saya? Adakah acara yang akan diaktifkan ketika trek diaktifkan/dinonaktifkan seperti yang disebutkan oleh
@thanh-mel , rekan jarak jauh tidak perlu tahu bahwa mikrofon dimatikan. Mungkin Anda perlu menggunakan hold?
Acara apa pun akan diaktifkan saat trek diaktifkan/dinonaktifkan
Dalam pengalaman saya, ya. Karena dilakukan menggunakan JavaScript
Komentar yang paling membantu
di versi 0.15.0 ternyata dibuat seperti ini