TetaTricks/chap/OSC.tex

55 lines
1.3 KiB
TeX
Raw Normal View History

2020-10-26 23:06:17 +01:00
\chapter{Open Sound Control}
2020-11-13 01:35:31 +01:00
\index{OSC} \label{chap:OSC}
2020-10-26 23:06:17 +01:00
Wikipedia :
\textsl{OSC est un format de transmission de données entre ordinateurs,
synthétiseurs, robots ou tout autre matériel ou logiciel compatible,
2021-06-28 08:39:26 +02:00
conçu pour le contrôle en temps réel.
Il utilise le réseau IP\index{IP} au travers
2020-12-22 22:53:57 +01:00
des protocoles UDP\index{UDP} ou TCP\index{TCP} et apporte des
2021-06-28 08:39:26 +02:00
améliorations en termes de rapidité et de flexibilité par rapport
2020-10-26 23:06:17 +01:00
à l'ancienne norme MIDI\index{MIDI}\dots}
Actuellement, j'utilise (pour le C) \texttt{liblo}\index{liblo}
qui reste simple
à utiliser tout en permettant de descendre à un bas niveau.
Cette bibliothèque est livrée avec deux outils que nous
2020-12-22 22:53:57 +01:00
allons voir maintenant.
2020-10-26 23:06:17 +01:00
\section{oscdump \& oscsend}
\index{oscdump}\index{oscsend}
Ecouter :
\begin{verbatim}
tth@debian:~$ oscdump 1664
/tmp/kmem is 61 "meg, efface !"
^C
tth@debian:~$
\end{verbatim}
Envoyer :
\begin{verbatim}
tth@debian:~$ oscsend localhost 1664 /tmp/kmem is 61 'meg, efface !'
tth@debian:~$
\end{verbatim}
\section{Exemple de code}
2020-12-22 22:53:57 +01:00
Ecouter :
\lstinputlisting[language=c]{code/listen-osc.c}
Envoyer :
\lstinputlisting[language=c]{code/send-osc.c}
2020-10-26 23:06:17 +01:00
\section{Autres logiciels}
2021-06-28 08:39:26 +02:00
Beaucoup d'autres logiciels peuvent être controlés par OSC, ou
générer des trames OSC : on peut citer
Processing\index{Processing}, Chuck\index{Chuck},\dots
2020-10-26 23:06:17 +01:00