···143143 "reflections",
144144 "spline-optimisation",
145145 "weaving",
146146- ).map(artwork => grid.cell(image("../examples/gallery/" + artwork + ".svg", width: 100%)))
146146+ ).map(artwork => grid.cell(
147147+ image("../examples/gallery/" + artwork + ".svg", width: 100%),
148148+ ))
147149 ),
148150)
149151···470472 lang: "rust",
471473 is_method: true,
472474 transform: it => (
473473- "impl Video<C> {\n ...\n" + it.replace("<AdditionalContext>", "<C>") + "\n}"
475475+ "impl Video<C> {\n ...\n"
476476+ + it.replace("<AdditionalContext>", "<C>")
477477+ + "\n}"
474478 ),
475479 ),
476480)
···485489 lang: "rust",
486490 is_method: true,
487491 transform: it => (
488488- "impl Video<C> {\n ...\n" + it.replace("<AdditionalContext>", "<C>") + "\n}"
492492+ "impl Video<C> {\n ...\n"
493493+ + it.replace("<AdditionalContext>", "<C>")
494494+ + "\n}"
489495 ),
490496 ),
491497)
···555561#codesnippet(
556562 dedent(
557563 cut-around(
558558- it => it.trim().starts-with("if context.frame != previous_rendered_frame"),
564564+ it => it
565565+ .trim()
566566+ .starts-with("if context.frame != previous_rendered_frame"),
559567 it => it.trim().ends-with("}"),
560568 read("../src/video/encoding.rs"),
561569 ),
···578586/ Amplitudes _stems_-par-_stems_: utilisation des signaux audio bruts depuis des exports piste par piste du morceau
579587/ Analyse de fichiers MIDI: utilisation d'un standard stockant les notes jouées dans le temps.
580588/ Analyse de fichiers .flp: utilisation des fichiers de projet de FL Studio, un logiciel de production musicale. C'est l'équivalent d'un fichier source en programmation, là où l'export .mp3 serait l'équivalent d'un exécutable.
581581-/ Sondes dans le logiciel de MAO#footnote[MAO: Musique Assistée par Ordinateur]: utilisation de plugins VST pour envoyer des informations de synchronisation potentiellement arbitraire, directement depuis le logiciel de production musicale.
589589+/ Sondes dans le logiciel de MAO#footnote[MAO: Musique Assistée par Ordinateur]: utilisation de plugins VST pour envoyer des informations de synchronisation potentiellement arbitraire, directement depuis le logiciel de production musicale.
582590/ Temps réel: utilisation de signaux MIDI en "live", solution contournant le problème de la synchronisation et toute la partie rendu vidéo et rastérisation. Plutôt prévue pour un autre cas d'usage, les concerts et installations live
583591584592Dans chacun de ces cas, l'objectif est de pouvoir inférer depuis ces ressources les informations suivantes: