Compare commits
No commits in common. "7dba31d281ff0a633c69f4721224ae3e65cfbefa" and "25055fed7036af08edb219bc68611d7304fd80b6" have entirely different histories.
7dba31d281
...
25055fed70
@ -105,7 +105,7 @@ En utilisant les mêmes fonctions qu'une application basique.
|
||||
Peut-être aussi en lui trouvant un nom plus \textsl{fun}\dots
|
||||
|
||||
% ------------------------------------------------------------
|
||||
\section{DHCP} \index{DHCP} \index{dhcpd}
|
||||
\section{DHCP} \index{DHCP}
|
||||
|
||||
\begin{quote}
|
||||
The DHCP protocol allows a host to contact a central server which maintains a
|
||||
@ -120,12 +120,6 @@ Probablement avec \texttt{tcpdump}\index{tcpdump},
|
||||
et c'est à l'essai
|
||||
dans la page \pageref{tcpdump}.
|
||||
|
||||
Un compagnon privilégié du DHCP est le système PXE\index{PXE}
|
||||
qui permet de \textsl{booter} des images ISOs stockées sur
|
||||
un serveur du réseau local.
|
||||
|
||||
% https://www.geoffray-levasseur.org/tutoriels-2/un-pxe-pour-les-unir-tous/
|
||||
|
||||
% ------------------------------------------------------------
|
||||
\section{dnsmasq}
|
||||
\index{dnsmasq}
|
||||
|
@ -37,9 +37,6 @@ qui va générer le signal audio.
|
||||
% ---------------------------------------------------------
|
||||
\section{Outils de base}
|
||||
|
||||
Le sous-système ALSA vient avec quelques utiltaires bien pratique
|
||||
dans un usage d'exploration.
|
||||
|
||||
\subsection{aseqdump}
|
||||
\index{aseqdump}
|
||||
|
||||
@ -54,32 +51,8 @@ tth@plop:~/Muzak/Samples$ aseqdump -l
|
||||
0:0 System Timer
|
||||
0:1 System Announce
|
||||
14:0 Midi Through Midi Through Port-0
|
||||
20:0 nanoKONTROL nanoKONTROL MIDI 1
|
||||
\end{verbatim}
|
||||
|
||||
Voici ce qu'on obtient quand on remue les boutons d'un
|
||||
nanoKontrol de Korg, et voyez bien qu'on retrouve les
|
||||
trois octets dont on causait l'autre jour. Le premier
|
||||
contient à la fois le numéro ce canal et le type d'évènement,
|
||||
le second le numéro du contrôle concerné, et le troisième
|
||||
la nouvelle valeur~:
|
||||
|
||||
\begin{verbatim}
|
||||
tth@fubar:~/Documents/TetaTricks$ aseqdump -p 20
|
||||
Waiting for data. Press Ctrl+C to end.
|
||||
Source Event Ch Data
|
||||
20:0 Control change 1, controller 45, value 127
|
||||
20:0 Control change 1, controller 45, value 0
|
||||
20:0 Control change 1, controller 14, value 120
|
||||
20:0 Control change 1, controller 14, value 119
|
||||
\end{verbatim}
|
||||
|
||||
Un exemple d'utilisation d'un nanoKontrol pour piloter Chuck
|
||||
se trouve (peut-être) aux alentours de la
|
||||
page \pageref{chuck-midi}.
|
||||
|
||||
% -------------------------
|
||||
|
||||
\subsection{aconnect}
|
||||
|
||||
Maintenant que nous savons ce qui rentre dans notre machine,
|
||||
@ -94,11 +67,6 @@ aseqnet is an ALSA sequencer client which sends and receives
|
||||
event packets over the network.
|
||||
\end{quote}
|
||||
|
||||
\subsection{pmidi}
|
||||
|
||||
Jouer un fichier MIDI (aka \textsl{midifile}) au travers du
|
||||
séquenceur ALSA.
|
||||
|
||||
% ---------------------------------------------------------
|
||||
\section{ALSA tips}
|
||||
\index{ALSA}
|
||||
|
11
chap/X11.tex
11
chap/X11.tex
@ -1,7 +1,6 @@
|
||||
\chapter{X11}
|
||||
\label{chap:X11}\index{X11}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------
|
||||
\section{Les fontes}
|
||||
|
||||
@ -117,16 +116,6 @@ C'est simple, non ?
|
||||
|
||||
%-------------------------------------------------------------------
|
||||
|
||||
\section{Le Windowmanager}
|
||||
|
||||
Aka \textbf{WM}.
|
||||
|
||||
%
|
||||
% https://jichu4n.com/posts/how-x-window-managers-work-and-how-to-write-one-part-i/
|
||||
%
|
||||
|
||||
%-------------------------------------------------------------------
|
||||
|
||||
\section{XCB}\index{XCB}
|
||||
|
||||
Vous avez pratiqué la \textsl{Xlib} ? Avez-vous aimé ?
|
||||
|
@ -25,22 +25,6 @@ a voulu BigBlue\index{IBM}, régnait en maitre absolu le BIOS,
|
||||
Un bout de code minimaliste, bien rangé dans sa ROM, et disponible
|
||||
dès la mise sous tension du bouzin.
|
||||
|
||||
% =========================================================
|
||||
|
||||
\section{PXE} \index{PXE} \label{PXE}
|
||||
|
||||
PXE est le sigle de \textsl{Pre-boot eXecution Environment}.
|
||||
|
||||
En gros, ça permet de démarrer un système stocké ailleur sur
|
||||
le réseau, comme une image d'installation d'un Linux ou un
|
||||
système de secours. Ce qui est vraiment pratique, car ça
|
||||
évite la valse des clefs USB. Il nécessite la présence
|
||||
d'un serveur dhcpd \index{dhcpd}.
|
||||
|
||||
% https://www.geoffray-levasseur.org/tutoriels-2/un-pxe-pour-les-unir-tous/
|
||||
|
||||
% =========================================================
|
||||
|
||||
\section{amd64}\index{amd64}
|
||||
|
||||
Voir Grub, le bootloader.
|
||||
@ -51,6 +35,7 @@ XXX\index{XXX}.
|
||||
|
||||
\section{rc.local}
|
||||
|
||||
|
||||
L'exécution de ce script est la toute dernière étape du démarrage d'un
|
||||
système de la famille Unix\index{Unix} avant le passage au
|
||||
mode multi-utilisateur.
|
||||
|
@ -35,13 +35,6 @@ cryptiques pour moi. Donc, on y arrive.
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
Ceci dit, une lecture attentive du code source\footnote{UTSL} permettra
|
||||
de contourner ces petits désagréments, et de rédiger quelques exemples
|
||||
d'utilisation amusants.
|
||||
|
||||
% package source
|
||||
% http://deb.debian.org/debian/pool/main/w/wims/wims_4.17b+svn13454~dfsg1.orig.tar.gz
|
||||
|
||||
%====================================================================
|
||||
|
||||
\section{Povray}\index{POVray}
|
||||
|
@ -131,14 +131,6 @@ sustain level pour finir.
|
||||
\subsection{Jouer des samples}
|
||||
|
||||
Oui, on peut. On peut même faire des choses assez fun.
|
||||
Juste un example un peu brouillon et qui manque de rigueur
|
||||
en attendant mieux :
|
||||
|
||||
\lstinputlisting{code/playsample.ck}
|
||||
|
||||
Et j'entend un esprit chagrin râler au fond de la salle :
|
||||
« oué, nous on veut du gros son ». Patience, nous allons
|
||||
d'abord voir les briques avant de construire le mur.
|
||||
|
||||
% ------------------------------------------------------
|
||||
|
||||
@ -150,15 +142,9 @@ Attention, une petite connaissance du protocole MIDI
|
||||
est nécessaire. Vous trouverez quelques explications
|
||||
page \pageref{chap:MIDI}.
|
||||
|
||||
Le petit bout de code qui suit vous affiche les triplets
|
||||
reçus en charabia numérique. Leur décriptage est laissé
|
||||
en exercice à nos lecteurs.
|
||||
|
||||
\lstinputlisting{code/midibeep.ck}
|
||||
|
||||
Cet exemple est volontairement simple, voire même minimaliste,
|
||||
afin de ne pas surcharger cet ouvrage. Mais je vous rappelle
|
||||
que les exemples sur le site sont très instructifs.
|
||||
|
||||
|
||||
% ------------------------------------------------------
|
||||
|
||||
@ -166,7 +152,6 @@ que les exemples sur le site sont très instructifs.
|
||||
|
||||
OSC, Open Sound Control, a son chapitre dédié en page \pageref{chap:OSC}.
|
||||
Nous allons nous concentrer sur les aspects Chuck.
|
||||
J'ai bien une idée d'exemple, mais ce soir, c'est soirée "flemme".
|
||||
|
||||
% ------------------------------------------------------
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
\chapter{Les Intertubes}
|
||||
\chapter{Les intertubes}
|
||||
\label{chap:reseau} \index{Internet}
|
||||
|
||||
Ah, le grand Internet sauvage, il serait temps qu'on en parle un peu.
|
||||
@ -176,10 +176,6 @@ Ces gadgets dialoguent entre eux par le protocole
|
||||
\footnote{C'est en page \pageref{chap:Bonjour} qu'on
|
||||
en parle vaguement}.
|
||||
|
||||
Mais en fait, non. Je n'ai plus les Minimad sous la main.
|
||||
Il va falloir trouver un autre exemple, ou l'imaginer
|
||||
nous-même.
|
||||
|
||||
% -------------------------------------------------------------
|
||||
|
||||
\subsection{nmap}
|
||||
@ -200,10 +196,6 @@ Comment scanner un /24 pour y découvrir les machines ?
|
||||
\section{netcat}
|
||||
\index{netcat}
|
||||
|
||||
\textbf{Attention :} Il existe au moins deux variantes de netcat
|
||||
en circulation, bien entendu avec des options et des
|
||||
comportements différents.
|
||||
|
||||
\begin{quote}
|
||||
The nc (or netcat) utility is used for just about anything under the sun
|
||||
involving TCP or UDP. It can open TCP connections, send UDP packets,
|
||||
@ -215,7 +207,6 @@ error messages onto standard error instead of sending them to standard
|
||||
output, as telnet(1) does with some.
|
||||
\end{quote}
|
||||
|
||||
Netcat was written by a guy we know as the Hobbit <hobbit@avian.org>.
|
||||
|
||||
% ==============================================================
|
||||
|
||||
|
@ -7,7 +7,7 @@ if (!input.open(port)) {
|
||||
<<< "erreur open MIDI" >>>; me.exit();
|
||||
}
|
||||
|
||||
while (1) {
|
||||
while (1) {
|
||||
input => now;
|
||||
while ( input.recv(msg) ) {
|
||||
<<< msg.data1, msg.data2, msg.data3 >>>;
|
||||
|
@ -1,14 +0,0 @@
|
||||
SndBuf buf => dac;
|
||||
"sample.wav" => buf.read;
|
||||
|
||||
float srate, duration;
|
||||
1 => buf.gain;
|
||||
|
||||
for ( 0.7=>srate; srate<1.8; 0.1 +=> srate) {
|
||||
900 / srate => duration;
|
||||
<<< "loop...", srate, duration >>>;
|
||||
0 => buf.pos;
|
||||
srate => buf.rate;
|
||||
(duration)::ms => now;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user