[jitsi-dev] no microphone == misleading behaviour


#1

Synopsis: When Jitsi can not find an audio input device, attempting to
place (or receive) a voice call leads to misleading exceptions & error
messages.

Setup:
Machine [A]: Windows 7 32-bit
Machine [B]: Windows 7 64-bit
Using Google Talk as transport with @gmail.com accounts.

Twist: Machine A has its microphone disabled.

Symptoms: When [A] rings [B] (voice call), [B] sees nothing, [A] sees an
exception with a title like "call setup failed" (sorry can't remember
exact wording) and the following trace:

net.java.sip.communicator.service.protocol.OperationFailedException:
Failed to create a call
  at
net.java.sip.communicator.impl.protocol.jabber.ProtocolProviderServiceJabberImpl.throwOperationFailedException(ProtocolProviderServiceJabberImpl.java:2568)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createOutgoingCall(OperationSetBasicTelephonyJabberImpl.java:512)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createOutgoingCall(OperationSetBasicTelephonyJabberImpl.java:239)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createCall(OperationSetBasicTelephonyJabberImpl.java:145)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createCall(OperationSetBasicTelephonyJabberImpl.java:197)
  at
net.java.sip.communicator.impl.gui.main.call.CallManager$CreateCallThread.run(CallManager.java:1418)
Caused by:
net.java.sip.communicator.service.protocol.OperationFailedException: We
couldn't find any active Audio/Video devices and couldn't create a call
  at
net.java.sip.communicator.impl.protocol.jabber.ProtocolProviderServiceJabberImpl.throwOperationFailedException(ProtocolProviderServiceJabberImpl.java:2566)
  at
net.java.sip.communicator.impl.protocol.jabber.CallPeerMediaHandlerJabberImpl.createContentList(CallPeerMediaHandlerJabberImpl.java:780)
  at
net.java.sip.communicator.impl.protocol.jabber.CallPeerJabberImpl.initiateSession(CallPeerJabberImpl.java:287)
  at
net.java.sip.communicator.impl.protocol.jabber.CallJabberImpl.initiateSession(CallJabberImpl.java:365)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createOutgoingCall(OperationSetBasicTelephonyJabberImpl.java:494)
  ... 4 more

Expected behaviour: The call should probably be placed anyway - and a
friendly "No microphone found!" alert message displayed to [A].

This is part 1 of this bug.

Part 2 is that when [B] calls [A], [B] gets the attached error message:
"Call ended by remote side. Reason: Incompatible parameters. Error: Offer
contained no media formats or no valid media descriptions."

This looks like serious breakage from [B]'s point of view, even though
there is nothing wrong with their configuration.

Expected behaviour: The call should be placed, and a warning message
displayed on [A] alerting the user to the "No microphone found!"
situation.

Tested with v.4164 on Windows 7. 100% reproducible. As soon the microphone
is re-enabled, everybody is friends again and calls get placed without a
hiccup.

I believe this qualifies as a bug.

Alex


#2

Thanks!

Could you please open a ticket for this one?

Emil

···

On 19.08.12, 19:39, Alexandros Papadopoulos wrote:

Synopsis: When Jitsi can not find an audio input device, attempting to
place (or receive) a voice call leads to misleading exceptions & error
messages.

Setup:
Machine [A]: Windows 7 32-bit
Machine [B]: Windows 7 64-bit
Using Google Talk as transport with @gmail.com accounts.

Twist: Machine A has its microphone disabled.

Symptoms: When [A] rings [B] (voice call), [B] sees nothing, [A] sees an
exception with a title like "call setup failed" (sorry can't remember
exact wording) and the following trace:

net.java.sip.communicator.service.protocol.OperationFailedException:
Failed to create a call
  at
net.java.sip.communicator.impl.protocol.jabber.ProtocolProviderServiceJabberImpl.throwOperationFailedException(ProtocolProviderServiceJabberImpl.java:2568)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createOutgoingCall(OperationSetBasicTelephonyJabberImpl.java:512)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createOutgoingCall(OperationSetBasicTelephonyJabberImpl.java:239)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createCall(OperationSetBasicTelephonyJabberImpl.java:145)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createCall(OperationSetBasicTelephonyJabberImpl.java:197)
  at
net.java.sip.communicator.impl.gui.main.call.CallManager$CreateCallThread.run(CallManager.java:1418)
Caused by:
net.java.sip.communicator.service.protocol.OperationFailedException: We
couldn't find any active Audio/Video devices and couldn't create a call
  at
net.java.sip.communicator.impl.protocol.jabber.ProtocolProviderServiceJabberImpl.throwOperationFailedException(ProtocolProviderServiceJabberImpl.java:2566)
  at
net.java.sip.communicator.impl.protocol.jabber.CallPeerMediaHandlerJabberImpl.createContentList(CallPeerMediaHandlerJabberImpl.java:780)
  at
net.java.sip.communicator.impl.protocol.jabber.CallPeerJabberImpl.initiateSession(CallPeerJabberImpl.java:287)
  at
net.java.sip.communicator.impl.protocol.jabber.CallJabberImpl.initiateSession(CallJabberImpl.java:365)
  at
net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.createOutgoingCall(OperationSetBasicTelephonyJabberImpl.java:494)
  ... 4 more

Expected behaviour: The call should probably be placed anyway - and a
friendly "No microphone found!" alert message displayed to [A].

This is part 1 of this bug.

Part 2 is that when [B] calls [A], [B] gets the attached error message:
"Call ended by remote side. Reason: Incompatible parameters. Error: Offer
contained no media formats or no valid media descriptions."

This looks like serious breakage from [B]'s point of view, even though
there is nothing wrong with their configuration.

Expected behaviour: The call should be placed, and a warning message
displayed on [A] alerting the user to the "No microphone found!"
situation.

Tested with v.4164 on Windows 7. 100% reproducible. As soon the microphone
is re-enabled, everybody is friends again and calls get placed without a
hiccup.

I believe this qualifies as a bug.

Alex

--
Emil Ivov, Ph.D. 67000 Strasbourg,
Project Lead France
Jitsi
emcho@jitsi.org PHONE: +33.1.77.62.43.30
https://jitsi.org FAX: +33.1.77.62.47.31