Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VoIP : problème de routage de son de sortie #979

Open
NicolasBuquet opened this issue Feb 28, 2024 · 2 comments
Open

VoIP : problème de routage de son de sortie #979

NicolasBuquet opened this issue Feb 28, 2024 · 2 comments
Labels
a-voip bug Something isn't working iOS

Comments

@NicolasBuquet
Copy link
Contributor

NicolasBuquet commented Feb 28, 2024

Dans un même appel VoIP, l'activation du rendu audio de l'appel (interne, haut-parleur, casque bluetooth) est différent suivant l'UI qu'on utilise :

  • celle de l'application Tchap
  • celle native de CallKit

Depuis un appel dans l'application, on peut passer à l'UI CallKit native en quittant l'application et en rentrant dans l'appel géré par iOS (icône verte dans la barre du haut de l'écran de l'iPhone).

Dans l'exemple ci-dessous du même appel, on voit que Tchap rapporte que la communication est routée sur le caseque bluetooth (ce qui n'est pas le cas en fait), alors qu'en passant sur l'UI CallKit native, il est rapporté que la communication est routée sur le haut-parleur du téléphone (ce qui est exact).

Dans Tchap :
image

CallKit native :
image

L'option cochée est au même index dans les 2 cas. Problème d'ordre d'affichage des options de sortie ?

Exemple de problème remonté au support :
-https://app.crisp.chat/website/6dacc68e-de3a-4511-8177-1339616098de/inbox/session_990dbc3b-7a49-4efa-9521-c32bf1aee784/

@NicolasBuquet NicolasBuquet moved this to prêt pour le sprint in Roadmap Produit Feb 28, 2024
@NicolasBuquet NicolasBuquet moved this from prêt pour le sprint to En étude in Roadmap Produit Feb 28, 2024
@odelcroi odelcroi added bug Something isn't working a-voip labels Feb 29, 2024
@NicolasBuquet
Copy link
Contributor Author

Lorsqu'on change le périphérique de sortie audio, voici ce qui est loggué :

[MXiOSAudioOutputRouter] updateRoute: to: <MXiOSAudioOutputRoute: identifier: BUILT_IN, type: builtIn, name: iPhone >
[WebRTC] (RTCLogging.mm:33): (RTCAudioSession.mm:855 -[RTCAudioSession observeValueForKeyPath:ofObject:change:context:]): OutputVolumeDidChange to 0.450000
[WebRTC] (RTCLogging.mm:33): (RTCAudioSession.mm:531 -[RTCAudioSession handleRouteChangeNotification:]): Audio route changed:
[WebRTC] (RTCLogging.mm:33): (RTCAudioSession.mm:544 -[RTCAudioSession handleRouteChangeNotification:]): Audio route changed: CategoryChange to :AVAudioSessionCategoryPlayAndRecord
[WebRTC] (RTCLogging.mm:33): (RTCAudioSession.mm:563 -[RTCAudioSession handleRouteChangeNotification:]): Previous route: <AVAudioSessionRouteDescription: 0x281583ae0, 
inputs = (
    "<AVAudioSessionPortDescription: 0x2815818a0, type = BluetoothHFP; name = EAH-AZ60; UID = B8:20:8E:51:86:F9-tsco; selectedDataSource = (null)>"
); 
outputs = (
    "<AVAudioSessionPortDescription: 0x281581940, type = BluetoothHFP; name = EAH-AZ60; UID = B8:20:8E:51:86:F9-tsco; selectedDataSource = (null)>"
)>
Current route:<AVAudioSessionRouteDescription: 0x2815bf260, 
inputs = (
    "<AVAudioSessionPortDescription: 0x2815bf520, type = MicrophoneBuiltIn; name = iPhone Micro; UID = Built-In Microphone; selectedDataSource = (null)>"
); 
outputs = (
    "<AVAudioSessionPortDescription: 0x2815bed50, type = Receiver; name = R\U00e9cepteur; UID = Built-In Receiver; selectedDataSource = (null)>"
)>
[WebRTC] (RTCLogging.mm:33): (audio_device_ios.mm:630 HandleOutputVolumeChange): Output volume change detected.
[WebRTC] (RTCLogging.mm:33): (audio_device_ios.mm:509 HandleValidRouteChange): RTC_OBJC_TYPE(RTCAudioSession): {
  category: AVAudioSessionCategoryPlayAndRecord
  categoryOptions: 0
  mode: AVAudioSessionModeVoiceChat
  isActive: 1
  sampleRate: 16000.00
  IOBufferDuration: 0.016000
  outputNumberOfChannels: 1
  inputNumberOfChannels: 4
  outputLatency: 0.002313
  inputLatency: 0.001750
  outputVolume: 0.450000
}
[WebRTC] (RTCLogging.mm:33): (audio_device_ios.mm:520 HandleSampleRateChange): Handling sample rate change.
[WebRTC] (RTCLogging.mm:33): (audio_device_ios.mm:549 HandleSampleRateChange): Handling playout sample rate change:
  Session sample rate: 16000.000000 frames_per_buffer: 256
  ADM sample rate: 16000.000000 frames_per_buffer: 256
[WebRTC] (RTCLogging.mm:33): (audio_device_ios.mm:554 HandleSampleRateChange): Ignoring sample rate change since audio parameters are intact.

@NicolasBuquet NicolasBuquet moved this from En étude to Backlog in Roadmap Produit May 14, 2024
@NicolasBuquet NicolasBuquet changed the title VoIP : inconsistance de connexion bluetooth entre l'UI CallKit native et l'UI VoIP Tchap VoIP : problème de routage de son de sortie May 21, 2024
@NicolasBuquet NicolasBuquet moved this from Backlog to En étude in Roadmap Produit Jun 11, 2024
@NicolasBuquet
Copy link
Contributor Author

NicolasBuquet commented Jul 2, 2024

Piste : regarder comment cela est géré dans Signal qui fonctionne correctement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a-voip bug Something isn't working iOS
Projects
Status: Backlog
Development

No branches or pull requests

2 participants