jitsi / jitsi

Jitsi is an audio/video and chat communicator that supports protocols such as SIP, XMPP/Jabber, IRC and many other useful features.
https://desktop.jitsi.org
Apache License 2.0
4.13k stars 968 forks source link

Audio in (mic) device issues on call #348

Open ageekhere opened 7 years ago

ageekhere commented 7 years ago

Hi there is an issue when making a call where the “audio in” device does not work. To manually fix the issue after the call is made if no one can hear each they need to go to audio settings and select no device then reselect the “audio in” mic.

nerkgeek commented 7 years ago

I am having the same issue, although I've only been able to get the mic to work twice.

I found that download an older version fixed the problem... must be an updated piece of code. 2.8.5426x86 (worked for me)

https://download.jitsi.org/jitsi/windows/jitsi-2.8.5426-x86.exe https://download.jitsi.org/jitsi/windows/jitsi-2.8.5426-x64.exe

jitsi-developers commented 7 years ago

Having same audio issue too.  Solution has been working well, but audio just stopped working since last week. Users can't hear each other. The only adjustment made before this issue started was that I changed the title name of the home page, and also the emorji and didnt think this should affect the solution. I have changed them back and still audio is not back Please is there any way i can troubleshoot this Thanks

  From: nerkgeek <notifications@github.com>

To: jitsi/jitsi jitsi@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Sent: Thursday, April 20, 2017 6:01 PM Subject: Re: [jitsi-dev] [jitsi/jitsi] Audio in (mic) device issues on call (#348)

I am having the same issue, although I've only been able to get the mic to work once. Are there specific steps to get it running manually? or any other fixes?— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread. ___ dev mailing list dev@jitsi.org Unsubscribe instructions and other list options: http://lists.jitsi.org/mailman/listinfo/dev

ageekhere commented 7 years ago

Still an issue with version 2.11.5583

ibauersachs commented 7 years ago

I'm unfortunately unable to reproduce this.

ageekhere commented 7 years ago

tested with 2.11.5586

What devices, I have tried them all, even though you have a device selected before the call it seems like the device errors out . To fix I have (or the caller, its random) to select no device then reselect the mic again. I have also have it happen to audio out (again unselect and reselect).

Here are the audio system. Windows 10 64bit calling another Windows 10 64bit both using WASAPI. Windows 10 64bit calling Windows 7 64bit both using WASAPI. Windows 10 64bit calling mac WASAPI for windows and the default for the mac (not sure what the mac uses as default).

I have found this issue happens on many different setups and devices (have not tried linux to linux call) it should not be hard for your to recreate.

here is the Error (let me know if you need the full log)

java.lang.IllegalArgumentException: device at org.jitsi.service.neomedia.AbstractMediaStream.assertDirection(AbstractMediaStream.java:104) at org.jitsi.impl.neomedia.MediaStreamImpl.setDevice(MediaStreamImpl.java:2589) at net.java.sip.communicator.service.protocol.media.CallPeerMediaHandler.callPropertyChange(CallPeerMediaHandler.java:427) at net.java.sip.communicator.service.protocol.media.CallPeerMediaHandler.access$000(CallPeerMediaHandler.java:50) at net.java.sip.communicator.service.protocol.media.CallPeerMediaHandler$CallPropertyChangeListener.propertyChange(CallPeerMediaHandler.java:2140) at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:335) at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:327) at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:263) at net.java.sip.communicator.service.protocol.AbstractCall.firePropertyChange(AbstractCall.java:198) at net.java.sip.communicator.service.protocol.media.MediaAwareCall.firePropertyChange(MediaAwareCall.java:961) at net.java.sip.communicator.service.protocol.media.MediaAwareCall.propertyChange(MediaAwareCall.java:870) at org.jitsi.util.event.PropertyChangeNotifier.firePropertyChange(PropertyChangeNotifier.java:126) at net.java.sip.communicator.service.protocol.media.MediaAwareCallConference.propertyChange(MediaAwareCallConference.java:461) at net.java.sip.communicator.service.protocol.media.MediaAwareCallConference.access$000(MediaAwareCallConference.java:38) at net.java.sip.communicator.service.protocol.media.MediaAwareCallConference$1.propertyChange(MediaAwareCallConference.java:83) at net.java.sip.communicator.service.protocol.media.MediaAwareCallConference$WeakPropertyChangeListener.propertyChange(MediaAwareCallConference.java:646) at org.jitsi.util.event.PropertyChangeNotifier.firePropertyChange(PropertyChangeNotifier.java:126) at org.jitsi.impl.neomedia.MediaServiceImpl.deviceConfigurationPropertyChange(MediaServiceImpl.java:1497) at org.jitsi.impl.neomedia.MediaServiceImpl.access$000(MediaServiceImpl.java:62) at org.jitsi.impl.neomedia.MediaServiceImpl$1.propertyChange(MediaServiceImpl.java:173) at org.jitsi.util.event.PropertyChangeNotifier.firePropertyChange(PropertyChangeNotifier.java:126) at org.jitsi.impl.neomedia.device.DeviceConfiguration.propertyChange(DeviceConfiguration.java:963) at org.jitsi.util.event.PropertyChangeNotifier.firePropertyChange(PropertyChangeNotifier.java:126) at org.jitsi.impl.neomedia.device.AudioSystem.propertyChange(AudioSystem.java:664) at org.jitsi.impl.neomedia.device.Devices.setDevice(Devices.java:399) at org.jitsi.impl.neomedia.device.AudioSystem.setDevice(AudioSystem.java:722) at net.java.sip.communicator.impl.neomedia.DeviceConfigurationComboBoxModel.setSelectedDevice(DeviceConfigurationComboBoxModel.java:349) at net.java.sip.communicator.impl.neomedia.DeviceConfigurationComboBoxModel.setSelectedItem(DeviceConfigurationComboBoxModel.java:397) at javax.swing.JComboBox.setSelectedItem(JComboBox.java:576) at javax.swing.JComboBox.setSelectedIndex(JComboBox.java:622) at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(BasicComboPopup.java:861) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:290) at java.awt.Component.processMouseEvent(Component.java:6533) at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) at javax.swing.plaf.basic.BasicComboPopup$1.processMouseEvent(BasicComboPopup.java:510) at java.awt.Component.processEvent(Component.java:6298) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) at java.awt.Container.dispatchEventImpl(Container.java:2280) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

ageekhere commented 7 years ago

Just tested on another laptop running windows 10 64bit, same issue (both sides have to keep selecting and then unselecting the mic until it works). I hope this is not hard to fix.

deelkar commented 6 years ago

I have a probably related issue. If I select WASAPI Audio System, and have a Headset connected to front audio, I cannot use its microphone with any SIP call. If I use HDMI audio out I can use the microphone no problem. Alternatively if I use PortAudio system I can use the microphone with any combination of audio outputs.

Yrlish commented 5 years ago

This is a fatal bug in the client and no one has even commented on this issue for over a year?

@ibauersachs You still can't reproduce this problem? This was the first thing we noticed here when we were trying out the application.

The behavior of this bug is very weird.

Yes, it seems very backwards to me too. Here are some exceptions with related timestamps.

2019-04-12 14:37:50.855 SEVERE: [1736] org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.log() IMediaObject_ProcessOutput
org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.HResultException: 0x88890004
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.VoiceCaptureDSP.IMediaObject_ProcessOutput(Native Method)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.processOutput(WASAPIStream.java:2227)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.runInProcessThread(WASAPIStream.java:2459)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.runInProcessThread(WASAPIStream.java:2567)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.access$400(WASAPIStream.java:43)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream$4.run(WASAPIStream.java:2689)
2019-04-12 14:37:50.933 SEVERE: [1735] org.jitsi.impl.neomedia.jmfext.media.renderer.audio.WASAPIRenderer.log() IAudioClient_GetCurrentPadding
org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.HResultException: 0x88890004
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPI.IAudioClient_GetCurrentPadding(Native Method)
    at org.jitsi.impl.neomedia.jmfext.media.renderer.audio.WASAPIRenderer.runInEventHandleCmd(WASAPIRenderer.java:1517)
    at org.jitsi.impl.neomedia.jmfext.media.renderer.audio.WASAPIRenderer.access$000(WASAPIRenderer.java:43)
    at org.jitsi.impl.neomedia.jmfext.media.renderer.audio.WASAPIRenderer$2.run(WASAPIRenderer.java:1772)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
2019-04-12 14:37:50.933 SEVERE: [1759] org.jitsi.impl.neomedia.device.WASAPISystem.log() Failed to doInitialize for IMMDevice at index 2
org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.HResultException: 0x88890004
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPI.IMMDevice_Activate(Native Method)
    at org.jitsi.impl.neomedia.device.WASAPISystem.doInitializeIMMDevice(WASAPISystem.java:579)
    at org.jitsi.impl.neomedia.device.WASAPISystem.doInitialize(WASAPISystem.java:506)
    at org.jitsi.impl.neomedia.device.DeviceSystem.initialize(DeviceSystem.java:642)
    at org.jitsi.impl.neomedia.device.DeviceSystem$1.run(DeviceSystem.java:393)
2019-04-12 14:37:50.980 SEVERE: [1759] org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.log() Failed to connect a WASAPIStream to an audio endpoint device.
java.lang.IllegalStateException: Failed to determine an AudioFormat with which to initialize IAudioClient for MediaLocator wasapi:{0.0.1.00000000}.{4f0c503e-cb5a-4087-b976-f851c5206965} based on AudioFormat LINEAR, 22050.0 Hz, 16-bit, Mono, LittleEndian, Signed
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.initializeCapture(WASAPIStream.java:1852)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.doConnect(WASAPIStream.java:1005)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.connect(WASAPIStream.java:843)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.propertyChange(WASAPIStream.java:2367)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.access$000(WASAPIStream.java:43)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream$1.propertyChange(WASAPIStream.java:583)
    at org.jitsi.util.event.PropertyChangeNotifier.firePropertyChange(PropertyChangeNotifier.java:126)
    at org.jitsi.impl.neomedia.device.AudioSystem.propertyChange(AudioSystem.java:664)
    at org.jitsi.impl.neomedia.device.Devices.setDevice(Devices.java:399)
    at org.jitsi.impl.neomedia.device.AudioSystem.postInitializeSpecificDevices(AudioSystem.java:620)
    at org.jitsi.impl.neomedia.device.AudioSystem.postInitialize(AudioSystem.java:588)
    at org.jitsi.impl.neomedia.device.WASAPISystem.postInitialize(WASAPISystem.java:1566)
    at org.jitsi.impl.neomedia.device.DeviceSystem.initialize(DeviceSystem.java:646)
    at org.jitsi.impl.neomedia.device.DeviceSystem$1.run(DeviceSystem.java:393)
2019-04-12 14:37:50.980 SEVERE: [1759] org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.log() Failed to handle a change to the value of the property playbackDevice of a class org.jitsi.impl.neomedia.device.WASAPISystem.
java.io.IOException
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.connect(WASAPIStream.java:863)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.propertyChange(WASAPIStream.java:2367)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.access$000(WASAPIStream.java:43)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream$1.propertyChange(WASAPIStream.java:583)
    at org.jitsi.util.event.PropertyChangeNotifier.firePropertyChange(PropertyChangeNotifier.java:126)
    at org.jitsi.impl.neomedia.device.AudioSystem.propertyChange(AudioSystem.java:664)
    at org.jitsi.impl.neomedia.device.Devices.setDevice(Devices.java:399)
    at org.jitsi.impl.neomedia.device.AudioSystem.postInitializeSpecificDevices(AudioSystem.java:620)
    at org.jitsi.impl.neomedia.device.AudioSystem.postInitialize(AudioSystem.java:588)
    at org.jitsi.impl.neomedia.device.WASAPISystem.postInitialize(WASAPISystem.java:1566)
    at org.jitsi.impl.neomedia.device.DeviceSystem.initialize(DeviceSystem.java:646)
    at org.jitsi.impl.neomedia.device.DeviceSystem$1.run(DeviceSystem.java:393)
Caused by: java.lang.IllegalStateException: Failed to determine an AudioFormat with which to initialize IAudioClient for MediaLocator wasapi:{0.0.1.00000000}.{4f0c503e-cb5a-4087-b976-f851c5206965} based on AudioFormat LINEAR, 22050.0 Hz, 16-bit, Mono, LittleEndian, Signed
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.initializeCapture(WASAPIStream.java:1852)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.doConnect(WASAPIStream.java:1005)
    at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.connect(WASAPIStream.java:843)
    ... 11 more

Does anyone have any ideas to what this issue can be related to?

DavidPerezIngeniero commented 5 years ago

I have changed recently my phone, with a Nokia 7 plus, with Android 9, and none can hear me with the Jitsi meet app. I have it updated to the last version. I've checked all settings. And my phone's mic is certainly working.

saghul commented 4 years ago

@DavidPerezIngeniero you are in the wrong repository. See: https://github.com/jitsi/jitsi-meet

bitboy85 commented 4 years ago

Same here with the latest nightly. Tools -> Setting -> audio Doesn't matter which audiosystem is selected, the mic input bar shows nothing but the device itself is detected correctly. Of course its working in other apps. Its also working in the latest stable jitsi-2.10.5550-x64.msi

The following error is repeating over and over again

2019-10-30 09:32:35.350 SCHWERWIEGEND: [373] org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.log() IMediaObject_ProcessOutput org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.HResultException: 0x80070057 at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.VoiceCaptureDSP.IMediaObject_ProcessOutput(Native Method) at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.processOutput(WASAPIStream.java:2227) at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.runInProcessThread(WASAPIStream.java:2459) at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.runInProcessThread(WASAPIStream.java:2567) at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream.access$400(WASAPIStream.java:43) at org.jitsi.impl.neomedia.jmfext.media.protocol.wasapi.WASAPIStream$4.run(WASAPIStream.java:2689)

In windows microphone privacy settings app usage is allowed. https://support.microsoft.com/en-us/help/4468232/windows-10-camera-microphone-and-privacy