2017-09-25 2 views
2

J'ai attendu avec impatience la sortie de Safari 11 sur OS-X et iOS 11. Maintenant qu'ils sont enfin là, je peux utiliser Safari pour enregistrer des données audio depuis le microphone - sauf que le support promis depuis longtemps ne fonctionne pas réellement.WebRTC Support pour Safari 11 Toujours brisé

Je cours macOS Sierra 10.12.6 avec Safari version 11.0 (12604.1.38.1.7). Les démos suivantes tous échouent avec des erreurs:

Quelqu'un peut-il confirmer ce comportement? Tout d'abord, j'ai besoin de savoir si je suis seul à voir WebRTC complètement cassé dans Safari 11.

Ensuite, il y a Safari 11 dans iOS. C'est beaucoup plus difficile pour moi de tester. Il semble que toutes les démos ci-dessus sont également cassées sur iOS. Safari 11 sur iOS Simulator dans XCode ne semble même pas du tout supporter WebRTC alors que Safari 11 sur iOS rapporte au navigateur qu'il est supporté mais, comme sur un ordinateur de bureau, il ne fonctionne pas réellement.

Est-ce que quelqu'un sait ce qu'il se passe dans le monde? Pour autant que je sache, le Safari 11 qui a été poussé vers iOS 11 et Sierra non seulement ne supporte pas l'enregistrement audio, mais BEAUCOUP pire, passe le code de détection de fonctionnalité getUserMedia impliquant que l'audio peut être capturé (mais ça ne marche jamais). Je suis curieux de savoir si la mise à niveau vers High Sierra corrige quoi que ce soit mais je ne veux pas essayer car même si cela fonctionne, j'ai besoin d'un état cassé pour essayer de trouver un moyen de contourner le problème. détection de caractéristiques. J'ai besoin de comprendre, mais cela s'avère difficile parce que la seule documentation en ligne dit que "Safari 11 supporte les portions audio de WebRTC" que je ne peux pas répliquer sur mon téléphone ou mon bureau.

Toute aide ou confirmation serait appréciée.

Répondre

1

La démo d'entrée webaudio échoue en raison de l'absence d'un AudioContext non préfixé. Essayez si window.AudioContext = window.AudioContext || window.webkitAudioContext;

corrige les choses

Voir aussi this issue au sujet de certains hacks nécessaires pour faire fonctionner les choses.

+1

En fait, j'ai entendu quelqu'un d'Apple qui a clarifié quelques choses pour moi. La grande chose que je ne comprenais pas, c'est que Safari 11 ne supporte apparemment que le streaming audio, mais pas la capture audio. Donc, quand vous essayez de capturer un flux audio localement, vous avez apparemment une erreur ou (comme je le voyais) un flux vide. J'espère vraiment qu'il existe une solution à ce problème ou à une solution de contournement car j'ai besoin de capture, pas de diffusion en continu. –

+1

recordrtc utilisé pour implémenter sa propre API MediaRecorder avant l'ajout de MediaRecorder à Chrome, probablement il va ajouter un autre hack pour safari. Vérifiez le référentiel github, il y a quelques problèmes. –