mardi 23 janvier 2018

Ardour, Jack et latence

J'ai traîné de nouveau mon piano électronique sur mon bureau histoire de jouer un peu avec Ardour. Je commence à saisir les subtilités de Jack et d'Ardour et j'ai maintenant un setup qui fonctionne. En particulier, je commence à comprendre les problématiques de latence.

La latence est principalement due aux tampons utilisés par Jack, et sur lesquels s'accumulent les signaux audio avant d'être envoyé vers les applications. En fonction de la taille et du nombre de tampons et de la fréquence d’échantillonnage, nous subirons une latence plus ou moins grande, que qjackctl a la gentillesse de nous indiquer. Ainsi, pour une fréquence d'échantillonnage de 48KHz et 2 tampons de 512 échantillons, la latence est de 21.3ms. L'on peut réduire cette latence, par exemple en diminuant la taille du tampon, mais alors l'on prend le risque d'avoir un dépassement de tampon et de se retrouver avec des bouts de notes qui manquent. Une machine plus véloce pourra se permettre des tampons plus petits, et il faudra donc jouer avec les paramètres pour trouver la meilleure valeur.

J'ai commencé par enregistrer avec 2048 échantillons, et c'était une catastrophe. À près de 100ms de latence, il était très difficile d'enregistrer quoi que ce soit. Déjà, il était hors de question d'avoir le retour midi dans les oreilles, le délai entre la pression de touche et le étant source de distraction (la documentation d'Ardour indique que les organistes sont les seuls instrumentistes à ne pas être gênés par la latence entre l'action et le son). Ensuite, même en passant la sortie MIDI et les autres pistes déjà enregistrées en silencieux et en se calant sur le métronome, les pistes ne s'alignent pas, et c'est moche.

J'ai donc fortement diminué le nombre d'échantillons, causant de catastrophiques dépassements de tampon.

Finalement, avec 512 échantillons, ma machine tenait le coup, et la latence n'était pas perceptible. Banco !

J'ai donc enregistré un petit morceau de test avec piano, guitare et basse. Les banques de sons fournies avec FluidSynth sont raisonnablement jolies pour ces instruments, mais je retravaillerai quand même le son avec Ardour, ne serais-ce que pour ajouter un poil de reverb.

jeudi 18 janvier 2018

Bricabrac, mon casse-briques

Voici une petite capture d'écran de mon casse-briques. Il est encore à l'état de prototype, mais il avance bien. Je vous en parlerai plus lorsqu'il sera plus avancé, mais sachez déjà qu'il est codé en C++ en utilisant l'excellente bibliothèque SFML, qui est, pour ceux qui ne connaîtraient pas, un équivalent moderne en C++ de la SDL.

vendredi 12 janvier 2018

Pixel art avec Blender

En plus bien évidemment de la création de scènes et d'animations en 3D, Blender et les autres modeleurs 3D sont beaucoup utilisés pour créer des ressources pour les jeux vidéos. Modèles en 3D, cinématiques, mais également des sprites pour des jeux en 2 dimensions

Et là, Blender nous facilite vraiment la vie. Caméra orthographique, taille du sprite, fond transparent, et c'est parti.

Voici par exemple quelques ressources pour un jeu de type casse-brique. Alors, ce n'est pas grand chose, mais au vu de l'effort minimal qu'il m'a fallu pour les créer, et de l'effort minimal qu'il me faudra pour les modifier, par exemple en générant les images nécessaires à une animation du sprite dans le jeu, c'est quand même vachement efficace.

jeudi 4 janvier 2018

Le cybertrilobite

Enfin ! Enfin, j'ai fini mon animation dite du "cybertrilobite".

J'ai donc combiné d'une part mon trilobite et ma scène sous-marine, avec quelques bulles histoire de meubler, et d'autre part une scène façon "boite de nuit" avec des lampes de partout. Vous noterez que pour une fois, il y a du son : je me suis enregistré à l'ocarina pour la première partie, et j'ai utilisé le logiciel Hydrogen, une boite à rythmes, pour la batterie de la boite de nuit. Rajoutez quelques effets sonores enregistrés en frappant sur mon bureau, ou encore en soufflant avec une paille dans un saladier rempli d'eau, et des bruits de foule récupérés sur Freesound, et voilà le travail.

J'ai trouvé particulièrement intéressant et amusant de combiner les différentes scènes, les sons et la musique. Le montage n'est pas d'une originalité folle, mais il faut bien commencer quelque part !