Réalisation d'une WEBSDR
Fermé
TR_2000
Messages postés
21
Date d'inscription
mardi 17 mai 2022
Statut
Membre
Dernière intervention
28 juin 2022
-
17 mai 2022 à 09:55
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 18 mai 2022 à 18:15
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 18 mai 2022 à 18:15
2 réponses
Salut,
non HTML existe uniquement par le navigateur en local, du moins la page. On parle de page statiques(ou contenus statique).
Sinon ce sont les pages dynamiques où la gestion des données se fait à la demande de la page et pour construire/remplir le HTML avec les contenus dynamiques.
Plus d'explications sur le sujet ici
https://fr.wikipedia.org/wiki/Page_web_dynamique
et là:
https://fr.wikipedia.org/wiki/Architecture_trois_tiers
Ce qui permet d'éviter les websockets dont je ne vois pas l'intérêt dans ce contexte, ça serait utile si vous avez des données qui transitent dans les deux sens et besoin de les synchroniser(exemple typique pour un jeu en ligne où les joueurs ont besoin d'avoir la gestion de leurs stats/personnages en "temps réel").
Il faut regarder plutôt du côté de la gestion des flux(streaming) pour ce que vous voulez je pense.
Surtout que du côté de l'appli audio il y a pas mal de possibilité mais c'est un développement assez costaud en JavaScript. Il existe par contre des bibliothèque qui font ça notamment en libre et open source.
Ou alors faire transiter les données analysées(ex : la visualisation du spectre avec Python) par une base de données qui va servir à afficher celles ci dans la page ou même en flux de données associées au sons. Mais ça paraît plus compliqué que l'autre méthode(et lourd car en plus du traitement côté serveur il faut compter le poids des données envoyées) pour des résultats de même type.
Voilà j'espére ne pas dire de bêtise mais comme vous avez plusieurs tâches à faire et êtes en apprentissage le mieux serait de vous tourner vers votre responsable de stage pour lui demander:
Les deux seront nécessaires et il existent des solutions déjà faites, des bibliothèques de code notamment JavaScript ou des tutos pour faire le code vous même:
https://duckduckgo.com/?t=ffab&q=javascript+spectre+audio&ia=web
plutôt que passer par les websockets le mieux serait de créer un/des fichiers de lecture disponible par HTTP. Ce qui me semble bien plus pratique
S'il n'a rien à vous suggérer regardez par là:
https://developer.mozilla.org/fr/docs/Web/API/Web_Audio_API
Trouvé ça aussi:
https://www.commentcamarche.net/faq/37282-creer-une-webradio
ps: si vous avez node.js dans votre environnement de travail ou un serveur du même type(comme PHP) il existe d'autres possibilités/solutions envisageable mais ce ne seront pas les plus simples ni les plus pratiques. A voir si elles correspondent mieux à vos besoins.
non HTML existe uniquement par le navigateur en local, du moins la page. On parle de page statiques(ou contenus statique).
Sinon ce sont les pages dynamiques où la gestion des données se fait à la demande de la page et pour construire/remplir le HTML avec les contenus dynamiques.
Plus d'explications sur le sujet ici
https://fr.wikipedia.org/wiki/Page_web_dynamique
et là:
https://fr.wikipedia.org/wiki/Architecture_trois_tiers
Ce qui permet d'éviter les websockets dont je ne vois pas l'intérêt dans ce contexte, ça serait utile si vous avez des données qui transitent dans les deux sens et besoin de les synchroniser(exemple typique pour un jeu en ligne où les joueurs ont besoin d'avoir la gestion de leurs stats/personnages en "temps réel").
Il faut regarder plutôt du côté de la gestion des flux(streaming) pour ce que vous voulez je pense.
Surtout que du côté de l'appli audio il y a pas mal de possibilité mais c'est un développement assez costaud en JavaScript. Il existe par contre des bibliothèque qui font ça notamment en libre et open source.
Ou alors faire transiter les données analysées(ex : la visualisation du spectre avec Python) par une base de données qui va servir à afficher celles ci dans la page ou même en flux de données associées au sons. Mais ça paraît plus compliqué que l'autre méthode(et lourd car en plus du traitement côté serveur il faut compter le poids des données envoyées) pour des résultats de même type.
Voilà j'espére ne pas dire de bêtise mais comme vous avez plusieurs tâches à faire et êtes en apprentissage le mieux serait de vous tourner vers votre responsable de stage pour lui demander:
- quelle tâche faire en priorité(le serveur radio pour le web ou le lecteur côté client avec l'ajout de l'analyseur et des filtres audio).
Les deux seront nécessaires et il existent des solutions déjà faites, des bibliothèques de code notamment JavaScript ou des tutos pour faire le code vous même:
https://duckduckgo.com/?t=ffab&q=javascript+spectre+audio&ia=web
- de quelle manière ou avec quels outils vous suggère t'il de le faire.
plutôt que passer par les websockets le mieux serait de créer un/des fichiers de lecture disponible par HTTP. Ce qui me semble bien plus pratique
S'il n'a rien à vous suggérer regardez par là:
https://developer.mozilla.org/fr/docs/Web/API/Web_Audio_API
Trouvé ça aussi:
https://www.commentcamarche.net/faq/37282-creer-une-webradio
ps: si vous avez node.js dans votre environnement de travail ou un serveur du même type(comme PHP) il existe d'autres possibilités/solutions envisageable mais ce ne seront pas les plus simples ni les plus pratiques. A voir si elles correspondent mieux à vos besoins.
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
Modifié le 18 mai 2022 à 18:15
Modifié le 18 mai 2022 à 18:15
Bonjour,
Coté client web, donc en javascript, tu peux utiliser l'API WebSocket : https://developer.mozilla.org/fr/docs/Web/API/WebSockets_API
Tu peux trouver plusieurs exemples pour le coté client en regardant le code source des sites similaires, par exemple tous les sites référencés sur websdr.org
Peut-être aussi regarder des exemples sur Github :
- https://github.com/FarnhamSDR/websdr (voir dans le dossier webpages pour la partie client)
- https://github.com/naj1024/pyspectrum (voir notamment les fichiers src/webUI/WebSocketServer.py et src/webUI/webroot/main.js)
Coté client web, donc en javascript, tu peux utiliser l'API WebSocket : https://developer.mozilla.org/fr/docs/Web/API/WebSockets_API
Tu peux trouver plusieurs exemples pour le coté client en regardant le code source des sites similaires, par exemple tous les sites référencés sur websdr.org
Peut-être aussi regarder des exemples sur Github :
- https://github.com/FarnhamSDR/websdr (voir dans le dossier webpages pour la partie client)
- https://github.com/naj1024/pyspectrum (voir notamment les fichiers src/webUI/WebSocketServer.py et src/webUI/webroot/main.js)
17 mai 2022 à 14:25
Tout d'abord, merci pour votre réponse.
Je suis désolé mais j'ai si peu de notions... Je ne fais que chercher et lire pleins de documents à ce sujet que je me suis perdu.
Pouvez-vous m'indiquer quelles doivent être les étapes dans les grandes lignes une fois que je possède les données captées par la radio. A cette étape la je suis sur le serveur et je ne sais pas quoi en faire. Je connais simplement le but final (correspondant à la première image). Je me doute qu'il y a de nombreuses étapes entre mais je ne les connais pas et je n'arrive pas à les trouver. J'aimerai dans un premier temps, fondamentalement comprendre.
Je vais essayer de vous expliquer ce que je pense qu'il faut faire pour que vous puissiez me dire si j'ai à peu près compris ou non…
Je viens de récupérer des données sur un port de mon serveur, désormais je dois envoyer ces données sur le web. C'est après cela que je pourrais les traitées en fonction de ce que le client souhaite.
C'est tout ce que je suis capable de dire…
Merci encore