Maison > interface Web > Tutoriel H5 > le corps du texte

Explication détaillée de la solution de communication par ultrasons multi-appareils Web basée sur HTML5

黄舟
Libérer: 2017-03-09 16:09:40
original
1600 Les gens l'ont consulté

Explication détaillée de la solution de communication par ultrasons multi-appareils Web basée sur HTML5 :

Avant-propos : Chirp L'iPhone a lancé le transfert audio des fichiers. Nous n'avons plus besoin de MMS, d'appairage Bluetooth ou de IM pour transférer. données. Il partage des données grâce au gazouillis de petits oiseaux, ce qui est simple et intéressant, et peut rapidement réaliser un partage un à plusieurs.

                                                                                                                    Cependant, la technologie d'Alipay n'est actuellement utilisée que pour le paiement et nécessite des distributeurs automatiques spécifiques capables d'accepter les paiements soniques avant de pouvoir être utilisée.

L'auteur de "Advanced Sound for Games and Interactive Apps - WebAudio API" Boris Smus utilise HTML5 Web L'API Audio implémente une solution d'interconnexion ultrasonique basée sur le Web De cette manière, il n'y a pas besoin d'installer de client, ni Bluetooth ou <. avec la prise en charge de>NFC, vous pouvez connecter deux appareils qui utilisent des navigateurs pour accéder à Internet et transférer des images, de la musique, des vidéos et d'autres fichiers. Cette idée est cool et nous aide à faire un grand pas en avant au niveau des fonctionnalités et des applications du Web (cette idée est peut-être la vôtre ) Impensable, inouï), revenons sur les principes spécifiques et le processus de mise en œuvre.

…………………………………………✄……………………………………………… ……Magnifiques cloisons Line

Le téléphone portable dans votre poche est un outil cool, beau et fonctionnel. Mais lorsqu’il souhaite communiquer avec d’autres appareils, comme un téléviseur ou un ordinateur portable, l’expérience utilisateur diminue considérablement. Bill Buxton a un discours très émouvant sur ce sujet, décrivant les trois étapes de l'évolution de la haute technologie :

                                                                          >Fonctionnalité de l'appareil : bonne expérience utilisateur

           

3. De nombreux appareils fonctionnent ensemble

 

Nous sommes officiellement entrés dans la phase 2 avec la sortie de iPhone

, mais connecter des appareils est pénible. Il existe de nombreuses façons d'y parvenir : Bluetooth, BluetoothLE, WiFi Direct, via localWiFi Découverte du réseau et plus encore. Cet article aborde le problème sous un angle complètement inattendu : utiliser des ondes ultrasonores pour diffuser et envoyer des données entre appareils adjacents. Plus important encore, cette approche utilise l’API Web Audio, rendant possible la connexion d’applications Web pures. Vidéo de démonstration

 Tour de Babel des appareils

 Airplay et Chromecast est un excellent moyen de résoudre le problème de connexion d'appareils au sein d'un même écosystème (comme Apple ou Google) , mais les problèmes courants restent insaisissables.

Parce qu'il existe de nombreuses voies techniques possibles, il peut arriver qu'il n'y ait pas de méthode commune entre les équipements que vous souhaitez connecter. Même si deux appareils disposent de Bluetooth, l’un devra peut-être être configuré, mais l’autre non, ou prendra en charge une version différente de la norme. Maintenant, cela est particulièrement courant avec Bluetooth, de nombreux appareils prennent en charge Bluetooth 4.0 (alias BTLE) sur le matériel, mais de nombreux appareils ne le font pas. Ce dernier protocole n'est pas pris en charge pour diverses raisons.

 Cette situation est encore pire sur le Web à cause de la connexion d'appareils de bas niveauL'API n'est pas fournie pour des raisons de sécurité du bac à sable. Et comme le développement du Web est très lent, il est difficile d'imaginer que cette situation puisse être résolue en peu de temps.

Transférer des données de manière amusante

Electric Imp The à condition que Blinkup soit un moyen intéressant de communiquer entre terminaux. Il utilise une série de flashs pour éclairer les smartphones et Imp – un appareil qui ressemble à une petite carte SD et doté d'un capteur de lumière qui transfère les données entre les deux.                          Les modems commutés font quelque chose de similaire. Ils codent et décodent les données numériques sur les lignes téléphoniques analogiques. Vous vous souvenez de ces bruits de connexion ennuyeux ? Le modem commuté allumera le haut-parleur pour informer l'utilisateur qu'une poignée de main est en cours. Si vous les oubliez, vous pouvez les consulter ici

. Même dans les téléphones analogiques d'aujourd'hui, le son que vous entendez lorsque vous appuyez sur une touche numérique d'un clavier est équivalent à la fréquence utilisée par le système téléphonique pour la conversion analogique-numérique. Cette conversion utilise le Signal multi-fréquence Dual Tone (DTMF) .                                                                                                                                                                                                                                       . Les deux éléments matériels peuvent utiliser le son pour envoyer et recevoir des données, de la même manière qu'un modem le fait sur une ligne téléphonique. Mieux encore, si le système d'exploitation prend en charge l'envoi et la réception à une fréquence suffisamment élevée, nous pouvons créer un canal de données silencieux.

                                                                                                        L'encodage de données via le son n'est pas nouveau. L'idée de

Audio Watermark

est d'encoder la signature dans la musique, que l'auditeur ne peut pas reconnaître par des moyens humains, mais qui peut être comprise par un autre appareil. C'est une manière intelligente de prévenir le piratage.

La plupart des haut-parleurs ordinaires sont capables de produire du son à une fréquence d'échantillonnage 44,1 KHz (ce qui fait que la fréquence la plus élevée est 22KHz - selon le Théorème d'échantillonnage de Shannon). Cela nous permet d’encoder des données non seulement en son, mais également de produire un son que les adultes ne peuvent pas entendre. Cependant, les enfants et les animaux peuvent quand même entendre :)

Techniquement, il faut noter que le micro n'est parfois pas compatible avec l'enceinte, notamment dans le mobile phone , car ils sont souvent optimisés pour les personnes qui parlent au téléphone, en utilisant un taux d'échantillonnage plus faible pour améliorer le son. Dans d'autres cas, même si le matériel est compatible, le micrologiciel doit fonctionner à un faible taux d'échantillonnage pour assurer l'alimentation électrique. Si tel est le cas, l'appareil ne pourra pas recevoir d'ondes sonores et les connexions basées sur le son ne fonctionneront que dans un seul sens.

SONICNET.JS, une implémentation de Web Audio

 Pour illustrer ces concepts, j'ai construit une bibliothèque JavaScript pour l'envoi et la réception via des données sonores. Ma méthode ne nécessite pas l'apprentissage d'une technologie de filigrane audio complexe, et elle est encore plus simple que le DTMF. Fondamentalement, vous spécifiez la fréquence d'utilisation d'une plage et l'ensemble de lettres pouvant être transmises. Le spectre est divisé en plages correspondant aux lettres de début et de fin spécifiées, chaque lettre / correspondant à une partie de la gamme de fréquences entière.

                                                                                                                                                                                                                                   . L'extrémité réceptrice effectuera une transformée de Fourier discontinue sur le signal (note de Yujie : ma spécialité de premier cycle est l'ingénierie de l'information et de la communication, les amis qui ont étudié le traitement du signal numérique devraient le savoir très bien) et recherchera les pics dans la plage de fréquences spécifiée. Après avoir trouvé un pic dans un intervalle de signal, il reconvertit la fréquence en caractères. Il s'agit essentiellement d'un schéma de signal multi-fréquence mono-ton (STMF) .

                                                                                                                                               Nous avons utilisé un schéma simple pour éviter les caractères répétés adjacents.

J'ai conçu une socket APIUtilisée pour la communication acoustique. Le code client ressemble à ceci :

ssocket = new SonicSocket({alphabet: &#39;0123456789&#39;});
function onButton() {
 ssocket.send(&#39;31415&#39;);
}
Copier après la connexion


>Le serveur ressemble comme ceci :

sserver = new SonicServer({alphabet: &#39;0123456789&#39;});
sserver.on(&#39;message&#39;, function(message) {
  //Expect message to be &#39;31415&#39;.
 console.log(message);
});
sserver.start();
Copier après la connexion


bibliothèque JS

prend en charge github.

Bien sûr, son utilisation nécessite une implémentation de Web Audio (principalement du côté envoi en utilisant OscillatorNode , utilisez AnalyserNode ) à la réception. J'ai essayé Macbook sur Chrome vers Chrome, ainsi que Boitier de transfert de Mac Chrome vers Android Chrome. J'ai écrit quelques exemples pour illustrer cette idée. Ils apparaissent dans la

vidéo

présentée au début de cet article. Le premier exemple permet d'envoyer des émoticônes d'un appareil à un autre. Il utilise un petit jeu de caractères, comprenant seulement 6 caractères, chacun correspondant à 1 expressions. Vous pouvez choisir l'une des 6 expressions , et le caractère correspondant sera envoyé via le réseau sonique, et sera reçu et affiché à l'autre extrémité. Une application plus réaliste pour

sonicnet.js

est-ce chat Appliquer pour générer un jeton unique à 5 chiffres et l'utiliser sur 2 appareils Créez une connexion. Cela se fait à l'aide d'un serveur de couplage, qui établit une connexion proxy entre les deux appareils via WebSocket. Une fois la connexion établie, la conversation elle-même sera envoyée via WebSocket. Le code du serveur est hébergé sur nodejitsu.                                                                                                                 >Il a évolué pour rendre de telles applications possibles, ce qui constitue un progrès significatif. Je suis obsédé par l'implémentation de

sonicnet.js sur l'Internet des objets. Il s’agit d’une pure technologie Web qui peut être utilisée pour coupler des appareils. La combinaison des navigateurs omniprésents et du matériel audio sera une énorme victoire, et même au niveau matériel, la plateforme

Web n'a pas besoin d'attendre Bluetooth ou d'autres technologies de connectivité en champ proche pas du tout mature.

Si cet article a piqué votre intérêt, vous pouvez essayer d'utiliser sonicnet.js pour rédiger une application. Comme je l'ai mentionné précédemment, la réception audio haute fréquence n'est pas disponible sur tous les appareils en raison des limitations matérielles / du micrologiciel, j'aimerais donc savoir lesquels sont disponibles et lesquels ne le sont pas. . Ne ​​peut pas. Je m'attends à ce que la plupart des téléphones puissent uniquement envoyer, tandis que la plupart des ordinateurs portables peuvent recevoir et envoyer en même temps. Si vous avez essayé la démo d'émoticônes sur votre appareil, veuillez remplir ce formulaire. Au moment de la rédaction de cet article, la plate-forme Android Chrome Beta ne prend pas en charge la saisie en temps réel, le transfert de données d'un téléphone mobile vers un ordinateur portable est donc la seule option.


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal