Le coin des codeurs :nerd:

Discussions sans rapport avec Nintendo mais qui n'ont pas un degré de connerie excessif : Voiture, Politique, Manga, TV, un message sympa...

Modérateur : DojoSuperHeroes

Avatar de l’utilisateur
meduz'
Grand analyst
Messages : 9120
Inscription : 01 avr. 2005 13:46
Localisation : Devant la Switch
Contact :

Re: Le coin des codeurs :nerd:

Message par meduz' »

Ctrl + F sur la page précédente, puis "olognion". :kikoo:

Avatar de l’utilisateur
Phoenix
Super Mario World
Messages : 1731
Inscription : 30 juil. 2009 17:20
Localisation : Liège, Belgique

Re: Le coin des codeurs :nerd:

Message par Phoenix »

meduz' a écrit :
02 juin 2020 10:25
Ctrl + F sur la page précédente, puis "olognion". :kikoo:
Le pire c'est que je l'avais vu sans prendre le temps de visiter le site, et je l'ai oublié :oscar:
Mon code ami Switch : SW-6964-9726-9478.

Avatar de l’utilisateur
meduz'
Grand analyst
Messages : 9120
Inscription : 01 avr. 2005 13:46
Localisation : Devant la Switch
Contact :

Re: Le coin des codeurs :nerd:

Message par meduz' »

Dans les navigateurs, y’a une API super cool qui s'appelle AudioContext. En gros, ça permet de mumuse de façons très avancée avec du son : distorsion, réverbération, spatialisation, synchronisation sonore au micropoil près, etc.

Et ce qui est rigolo, c’est que le code donne vraiment l'impression de jouer à l'apprenti ingénieur son en train de brancher ses câbles, genre « alors, on demande à notre centrale sonore de choper le son MACHIN, tu me le décodes et le connectes au buffer BIDULE, puis tu l'alignes juste après tel autre câble », etc.

C’est vraiment monstrueux et ça défonce. :ouaisouais:

Exemples :
- des boîte à rythmes : https://codepen.io/teropa/pen/JLjXGK https://codepen.io/sgput/full/vGRvMW
- spatialisation
- visualisation en fonction du rythme :winamp: : https://codepen.io/soulwire/full/Dscga
- un oscillateur (il a son API dédié) : https://webaudioapi.com/samples/oscillator/

Là je suis en train de dév. un petit truc qui utilise la fonction la plus basique du monde : t'appuies sur un bouton, ça joue le son. Ça, on peut aussi le faire sans cette API spécifique, mais sans cette API, impossible d'avoir dans Safari une synchro parfaite entre le moment où on tape le bouton et le moment où la lecture du son est effective.

Parmi les fonctions de « branchements », y’a decodeAudioData. C’est le morceau de l’API qui doit être utilisé pour transformer les octets qui composent un son en un AudioBuffer qu’on va ensuite connecter à la sortie audio (grosso merdo).

Donc typiquement, pour gagner en lisibilité, j'ai écrit une fonction qui va grouper quelques étapes :
- choper le son sur base de son URL
- le décoder
- retourner l’AudioBuffer obtenu.

Ça marche nickel, tout le monde est content. J’ai au final une classe nommée Sfx qui au final limite l’usage à Sfx.makeFrom(url) pour initialiser, et Sfx.play(bufferSourceNode, delay) pour le jouer autant de fois qu'on veut.

Sauf que Safari fait chier ! Normalement :
- decodeAudioData est asynchrone mais, contrairement aux autres, Safari ne retourne pas une Promise : il faut tout gérer dans le callback :oscar: ;
- le buffer décodé peut être cloné pour être réutilisé plus tard, mais pas dans Safari qui le tue dès la fin du callback (mon but était d’éviter la cascade de callbacks) ;
- au lieu de retourner une erreur parce qu'il a pas géré le buffer, Safari retourne null :niais: ;
- et j'en passe.

Je vais d’abord voir si je peux changer l’architecture de ma classe, quitte à avoir du #callbackception, mais c'est juste super pénible comme juste une seule méthode de l’API peut être foutue à ce point et avoir des implications sur l'architecture du code :nopenope:.

Si ça marche pas, je vais tenter la librairie que quelqu’un a écrite pour standardiser AudioContext. Son adaptation de decodeAudioData fait 100 lignes (soit ma classe Sfx entière :oscar:) + appel à d’autre trucs, donc ça alourdira probablement mon projet de manière considérable :nard:.

Avatar de l’utilisateur
MectonLaFlemme
Super Mario 64
Messages : 3686
Inscription : 21 juil. 2009 17:32
Localisation : 2S'Inscrire Mais Baisé Par Le_Systeme

Re: Le coin des codeurs :nerd:

Message par MectonLaFlemme »

"On fait jamais rien comme tout le monde".
- Apple
Les fous ont ouvert la voie. Les sages ont suivi

Avatar de l’utilisateur
Mortal
Satoru Iwata
Messages : 16918
Inscription : 15 avr. 2002 10:17
Localisation : Monde 4, Galaxie 2, Planete 1
Contact :

Re: Le coin des codeurs :nerd:

Message par Mortal »

Ça a l’air bien pété comme truc… Et ça devient presque inquiétant : avant ton navigateur il devait juste faire du rendu et c’était pas simple. Avec tous ces nouveaux trucs (WebGL, Audio, etc…), bientôt il va avoir 3 ou 4 trous du cul et on va trouver des failles dedans tous les 2 jours :nard:

Avatar de l’utilisateur
meduz'
Grand analyst
Messages : 9120
Inscription : 01 avr. 2005 13:46
Localisation : Devant la Switch
Contact :

Re: Le coin des codeurs :nerd:

Message par meduz' »

Là on parle d’une API installée 6 à 8 ans selon les navigateurs. :lol:

La plupart des specs maintenant sont en “living standard”. Tant qu’elles finissent pas en “recommandation”, ce qui peut prendre une décennie, elles sont susceptibles de bouger. Dans ce cas, en excluant les bugs, la « nouvelle » syntaxe a été implémentée par Firefox et Chrome en 2016-2017.

Bienvenue dans mon monde. :teptep:

Avatar de l’utilisateur
Mortal
Satoru Iwata
Messages : 16918
Inscription : 15 avr. 2002 10:17
Localisation : Monde 4, Galaxie 2, Planete 1
Contact :

Re: Le coin des codeurs :nerd:

Message par Mortal »

Perso, le logiciel universel qui fait tout, c’est moyen mon trip et plus ça va, plus les navigateurs deviennent ça.

Avatar de l’utilisateur
MectonLaFlemme
Super Mario 64
Messages : 3686
Inscription : 21 juil. 2009 17:32
Localisation : 2S'Inscrire Mais Baisé Par Le_Systeme

Re: Le coin des codeurs :nerd:

Message par MectonLaFlemme »

Et ca a tué Winamp.

Au début, un simple lecteur mp3 bien light et qui faisait son job niquel, à la fin... un navigateur web intégré.
Les fous ont ouvert la voie. Les sages ont suivi

Avatar de l’utilisateur
meduz'
Grand analyst
Messages : 9120
Inscription : 01 avr. 2005 13:46
Localisation : Devant la Switch
Contact :

Re: Le coin des codeurs :nerd:

Message par meduz' »

Sur Windows et Android, j’utilise AIMP depuis environ 10 ans, et il est excellent.

Android
Windows

Avatar de l’utilisateur
Le poussin
Super Mario Bros. 3
Messages : 659
Inscription : 19 janv. 2004 00:37
Localisation : Sur Paris
Contact :

Re: Le coin des codeurs :nerd:

Message par Le poussin »

Mortal a écrit :
08 juin 2020 08:01
Perso, le logiciel universel qui fait tout, c’est moyen mon trip et plus ça va, plus les navigateurs deviennent ça.
Personnellement, je vois plus le navigateur comme une VM/runtime avec un framework de GUI intégré et beaucoup de limitations pour la sécurité de l'utilisateur. Même pour un utilisateur averti, lancer un jeu dans un navigateur ça fait moins peur que double-cliquer sur un .exe dont tu es rarement sûr de l'origine. Et ça apporte une couche d'interopérabilité non négligeable.
Mon site : Image

Avatar de l’utilisateur
meduz'
Grand analyst
Messages : 9120
Inscription : 01 avr. 2005 13:46
Localisation : Devant la Switch
Contact :

Re: Le coin des codeurs :nerd:

Message par meduz' »



:teptep:

Avatar de l’utilisateur
Cyrare
Satoru Iwata
Messages : 25441
Inscription : 15 avr. 2002 13:04
Localisation : Paris, France
Contact :

Re: Le coin des codeurs :nerd:

Message par Cyrare »

Je suis allé voir juste pour constater la présence de la team premier degré, y'en a mais pas tant que ça.

Avatar de l’utilisateur
MectonLaFlemme
Super Mario 64
Messages : 3686
Inscription : 21 juil. 2009 17:32
Localisation : 2S'Inscrire Mais Baisé Par Le_Systeme

Re: Le coin des codeurs :nerd:

Message par MectonLaFlemme »

Parachuté au milieu d'un projet en état ubber-bordélique avec une équipe que j'ai eu le droit de choisir presque entièrement, 1 an et demi après, on livre le "final" setup (les guillemets sont importants xD)

Ca fait tout chose !

On est remerciés à coup de prime et de bonnes augmentations, ca fait plaisir aussi.
Mais je sais pas si c'est une délivrance ou le début des emmerdes xD
Les fous ont ouvert la voie. Les sages ont suivi

Avatar de l’utilisateur
Mortal
Satoru Iwata
Messages : 16918
Inscription : 15 avr. 2002 10:17
Localisation : Monde 4, Galaxie 2, Planete 1
Contact :

Re: Le coin des codeurs :nerd:

Message par Mortal »

Le plus compliqué, c’est pas de construire un truc. C’est de vivre avec pour les 15 ans qui viennent…

Avatar de l’utilisateur
Holaf
Super Mario Galaxy
Messages : 9167
Inscription : 11 nov. 2002 11:37
Localisation : Montpellier

Re: Le coin des codeurs :nerd:

Message par Holaf »

tu parles du boulot ou de ta maison ? :oscar:

Avatar de l’utilisateur
Chunky
Huggy-les-bons-tuyaux
Messages : 5481
Inscription : 05 sept. 2004 20:02
Localisation : Rennes (35)
Contact :

Re: Le coin des codeurs :nerd:

Message par Chunky »

Ou de tes enfants ? :nerd:

Avatar de l’utilisateur
MectonLaFlemme
Super Mario 64
Messages : 3686
Inscription : 21 juil. 2009 17:32
Localisation : 2S'Inscrire Mais Baisé Par Le_Systeme

Re: Le coin des codeurs :nerd:

Message par MectonLaFlemme »

:lol:
Les fous ont ouvert la voie. Les sages ont suivi

Avatar de l’utilisateur
Mortal
Satoru Iwata
Messages : 16918
Inscription : 15 avr. 2002 10:17
Localisation : Monde 4, Galaxie 2, Planete 1
Contact :

Re: Le coin des codeurs :nerd:

Message par Mortal »

Les 3. Vous le savez aussi bien que moi (y)

Avatar de l’utilisateur
MectonLaFlemme
Super Mario 64
Messages : 3686
Inscription : 21 juil. 2009 17:32
Localisation : 2S'Inscrire Mais Baisé Par Le_Systeme

Re: Le coin des codeurs :nerd:

Message par MectonLaFlemme »

IMPA : Industrialisation du Management des Processus pour l'Amélioration.

Voilà. Ce perso de Zelda est niqué à tout jamais.
Les fous ont ouvert la voie. Les sages ont suivi

Avatar de l’utilisateur
meduz'
Grand analyst
Messages : 9120
Inscription : 01 avr. 2005 13:46
Localisation : Devant la Switch
Contact :

Re: Le coin des codeurs :nerd:

Message par meduz' »

:n8rd:


Avatar de l’utilisateur
Kenshin83
Super Mario Sunshine
Messages : 5804
Inscription : 10 juin 2005 22:04
Localisation : Toulouse

Re: Le coin des codeurs :nerd:

Message par Kenshin83 »

576427-the-weeknd-quelle-est-l-origine-de-son-diapo-2.jpg
:prof: ?
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.

Avatar de l’utilisateur
meduz'
Grand analyst
Messages : 9120
Inscription : 01 avr. 2005 13:46
Localisation : Devant la Switch
Contact :

Re: Le coin des codeurs :nerd:

Message par meduz' »


Avatar de l’utilisateur
meduz'
Grand analyst
Messages : 9120
Inscription : 01 avr. 2005 13:46
Localisation : Devant la Switch
Contact :

Re: Le coin des codeurs :nerd:

Message par meduz' »


Avatar de l’utilisateur
Mortal
Satoru Iwata
Messages : 16918
Inscription : 15 avr. 2002 10:17
Localisation : Monde 4, Galaxie 2, Planete 1
Contact :

Re: Le coin des codeurs :nerd:

Message par Mortal »

Tain, mais tellement… Quand je vois que le moindre WP ridicule qu’on nous fait maintenir au taf a au moins 15 plugins…

Avatar de l’utilisateur
Tardigrade
Yoshi's Island
Messages : 2877
Inscription : 25 janv. 2017 15:34
Contact :

Re: Le coin des codeurs :nerd:

Message par Tardigrade »

On pourrait dire la même chose des utilisateurs de vim.

Répondre