About 50% of the time that I join a test meeting from my electron client built with lib-jitsi-meet on Debian 11 my device joins ‘muted’.
I can leave the meeting and re-join with a 50% chance of my microphone immediately working. I don’t know how to unmute myself. localTracks[0].unmute() doesn’t unmute me.
localTracks[0] is my microphone.
The deviceId for localTracks[0] is the same whether it is working or not.
Upon joining:
- localTracks[0] enabled = true (I would expect this to be false since I’m muted)
- localTracks[0] muted = false
- localTracks[0].isMuted() returns false
I’m not sure if it’s related or not but on a separate computer in the meeting I get this message in console and it seems like whenever the stream[id] ends in a ‘audio-1’ then the audio feed comes through properly and when it ends in ‘audio-2’ then I have the issue:
[modules/RTC/TraceablePeerConnection.js] <ha._remoteTrackRemoved>: TPC[id=11,type=JVB] Removed track not found for stream[id=091ed4bb-audio-2,trackId=5c8dd2b6-4c4a-41ba-9da2-c5d539b573ab-2]
I am trying to build a kiosk application that always uses the same camera, mic, and speakers for every call.
Here is my code:
function onLocalTracks(tracks) {
localTracks = tracks;
console.log('localTracks: ' + localTracks)
for (let i = 0; i < localTracks.length; i++) {
localTracks[i].addEventListener(
JitsiMeetJS.events.track.TRACK_AUDIO_LEVEL_CHANGED,
audioLevel => console.log(`Audio Level local: ${audioLevel}`));
localTracks[i].addEventListener(
JitsiMeetJS.events.track.TRACK_MUTE_CHANGED,
() => console.log('local track muted'));
localTracks[i].addEventListener(
JitsiMeetJS.events.track.LOCAL_TRACK_STOPPED,
() => console.log('local track stopped'));
localTracks[i].addEventListener(
JitsiMeetJS.events.track.TRACK_AUDIO_OUTPUT_CHANGED,
deviceId =>
console.log(
`track audio output device was changed to ${deviceId}`));
$('body').append(
`<audio autoplay='1' muted='false' id='localAudio${i}' />`);
localTracks[i].attach($(`#localAudio${i}`)[0]);
localTracks[i].unmute()
}
};
Any tips?