\documentclass{beamer}

\usepackage{beamerthemesplit}
\usepackage{graphicx}
\usepackage{amsmath, amsthm}
\usepackage[latin1]{inputenc}
\usepackage[cyr]{aeguill}
\usepackage[francais]{babel}

\usepackage{ifsym}

\usepackage{color}

\usepackage{multimedia}

\usepackage{listings}


%\definecolor{Blue}{rgb}{0.3,0.3,0.9}
\definecolor{Blue}{rgb}{0.0,0.0,1.0}
\definecolor{Viol}{rgb}{0.4,0.0,0.6}
\definecolor{Red}{rgb}{0.7,0.0,0.3}
\definecolor{Green}{rgb}{0.4,0.6,0.0}
\definecolor{Grey}{rgb}{0.2,0.2,0.2}
\definecolor{Greyy}{rgb}{0.5,0.5,0.5}


\title{Saxophone MIDI}
\author{Basile Graf}
\date{\today}

\begin{document}

\frame{
\titlepage
}

\section[Outline]{}
\frame{\tableofcontents}

\section{Introduction}
\subsection{Synthétiseurs}

\frame
{
  \frametitle{Synthétiseurs conventionnels}
   \begin{itemize}
		\item[$\bullet$] Pourquoi un synthétiseur à vent?
		\item[$\bullet$] Les synthés normaux peuvent déjà tout faire, non?
 	 \end{itemize}
 	 
 	 \vspace{0.2in}

	\begin{columns}[c]
		\column{1.5in}
		  \begin{itemize} 
		  	\item<1-> Ils sont polyvalents 
		  	\item<1-> Ils jouent de tous les instruments 
		  	\item<1-> De nos jours: très bonne qualité   
		  \end{itemize}
		  
		 \column{1.5in}
		 	\framebox{\includegraphics[width=1.5in]{Figures/keyboard.jpg}}
	 \end{columns}
}

\frame
{
	\frametitle{Synthétiseurs conventionnels}
	\begin{itemize} 
		\item<1-> Mais quand on veut imiter un instrument à vent, on doit pouvoir...
		\item<2->[] \begin{center} \includegraphics[width=1.5in]{Figures/souffle.jpg} \end{center}
		\item<2-> Question d'expressivité!
	\end{itemize}
}


\frame
{
	\frametitle{Saxophone MIDI}
	
		\begin{columns}[c]
			\column{0.4in}
				\includegraphics[width=0.4in]{Figures/SaxoFace.jpg}
				
			\column{2in}
				\begin{itemize} 
			  	\item<1-> Une embouchure
			  		\begin{itemize}
			  			\item<1-> Force du souffle
			  			\item<1-> Pression des lèvres 
			  		\end{itemize} 
			  	\item<1->[]
			  	\item<1-> Système de clés   
			  \end{itemize}
			
			\column{0.3in}
				\includegraphics[width=0.3in]{Figures/SaxoCote.jpg}
		\end{columns}
	
	
}


\section{Saxophone MIDI}
\subsection{Schéma bloc}

\frame
{
	\frametitle{Schéma bloc du système}
	
	\begin{columns}[c]
		\column{2in}
			\includegraphics[width=2.2in]{Figures/ShemaBloc.png}
			
		\column{2in}
			\begin{itemize}
				\item<1-> Mécanique
				\item<2-> $\mu$C / électronique
					\begin{itemize}
						\item<2-> Conversion A/D
						\item<2-> Traitement
						\item<2-> Transmission
					\end{itemize}
				\item<3-> PC
					\begin{itemize}
						\item<3-> Carte son
						\item<3-> Synthèse (software)
					\end{itemize}
				\item<4-> Restitution
			\end{itemize}
	\end{columns}

}


\subsection{Contrôleur}

\frame
{
	\frametitle{Contrôleur}
	
	\begin{itemize}
		\item<1-> Le contrôleur est la partie physique de l'insrument
		\item<1-> Il doit "capter" les données du musicien
		\begin{itemize}
			\item<1-> Données analogiques (embouchure)
			\item<1-> Données digitales (position des doigts)
		\end{itemize}
	\end{itemize}
}



\frame
{
	\frametitle{Embouchure}
	\begin{itemize}
		\item<1-> L'embouchure d'un saxophone réel est un objet complexe (beaucoup de paramètres influent le son)
		\item<1-> On réduit le modèle à deux paramètres seulement
	\end{itemize}
}


\frame
{
	\frametitle{Embouchure}

	\begin{tabular}{ccccc}
		\includegraphics[width=0.6in]{Figures/FSR150.jpg}	& \ \ \ & Force						& \ \ \ & \includegraphics[width=1in]{Figures/anche.jpg}\\
		FSR-150																						& \ \ \ &									& \ \ \ & Anche \\
		\includegraphics[width=1in]{Figures/PSM.jpg}			& \ \ \ & Pression d'air	& \ \ \ & \includegraphics[width=1in]{Figures/becSax.jpg} \\
		PSM-005KPD																				& \ \ \ &									& \ \ \ & Bec
	\end{tabular}
}


\frame
{
	\frametitle{Système de clés}
\begin{figure}
\centering
	\begin{tabular}{ccccc}
																													&  \ \ \ &Position des doigts & \ \ \ & \\[0.2in]
		\includegraphics[width=0.52in]{Figures/mainGauche.jpg} & \ \ \ & Système de clés & \ \ \ &		\includegraphics[width=0.45in]{Figures/clefsSaxo.jpg}\\
			Microswitchs																				 &  \ \ \ &							 	 & \ \ \ &  	Clapets 
	\end{tabular}
	\end{figure}
}


\frame
{
	\frametitle{Électronique embarquée}
	Deux parties dans l'électronique embarquée
	\begin{itemize}
		\item<1-> Platine analogique
			\begin{itemize}
				\item<1-> Adaptation des niveaux de tension de sortie des capteurs analogiques
			\end{itemize}
		\item<1-> Platine digitale
			\begin{itemize}
				\item<1-> Multiplexage des touches
				\item<1-> $\mu$C (conversion, transmission,...)
			\end{itemize}
	\end{itemize}
}


\frame
{
	\frametitle{Schéma de la platine analogique}
	
\begin{figure}[htbp]
	\centering
		\includegraphics[width=0.60\textwidth]{Figures/AnalogBoard.png}
	%\caption{Platine analogique}
	\label{AnalogBoard}
\end{figure}

}



\frame
{
	\frametitle{Schéma de la platine digitale}
	
\begin{figure}[htbp]
	\centering
		\includegraphics[width=1\textwidth]{Figures/DigitalBoard.png}
	%\caption{Platine digitale}
	\label{DigitalBoard}
\end{figure}

}


\frame
{
	\frametitle{Protocole MIDI}
	
	\begin{itemize}
		\item<1-> Transmission asynchrone (\texttt{UART}) à 32$kbit/s$
		\item<1-> Groupe de $2$ ou $3$ bytes (voir plus)
		\item<1-> Deux type de  bytes
		\begin{itemize}
			\item<1-> Status bytes: annonce le genre des données
			\item<1-> Data bytes  : données
		\end{itemize}
	\end{itemize}
	
	\vspace{0.2in}
	
	\begin{tabular}{|l|c|c|c|c|c|c|c|c|}
		\hline 
								& 1&2&3&4&5&6&7&8 \\
		\hline
		Status Byte	& \color{Red}{\texttt{MSB=1}} & \multicolumn{3}{|c|}{\color{Blue}{\texttt{Event}}} & \multicolumn{4}{|c|}{\color{Viol}{\texttt{Channel}}} \\
		\hline
		Data Byte		& \color{Red}{\texttt{MSB=0}} & \multicolumn{7}{|c|}{\color{Green}{\texttt{MIDI message}}}\\
		\hline
	\end{tabular}
%	\vspace{0.1in}
	
%	Exemple (Note On, Note Number 64)
%	\begin{itemize}
%	\item<1->[]  \textifsym{\color{Grey}{L} \color{Viol}{LLLL} \color{Blue}{|H|LL} \color{Red}{|H} \color{Greyy}{H|} \color{Grey}{L|} \color{Green}{LL|HHHH|L} \color{Red}{L} \color{Greyy}{H|} \color{Grey}{L|} \color{Green}{LLLLLL|H|} \color{Red}{L} \color{Greyy}{H|}}
%	\end{itemize}
	
	%\color{Blue}{\textifsym{L|H|L|H|L}}\color{Red}{\textifsym{|H|H|L|H|L}}
}







\section{Synthèse}

\subsection{Types de synthèses}
\frame
{
	\frametitle{Synthèse des sons}
	
	Il faut maintenant, à partir des signaux MIDI, créer les sons qu'ils représentent.\\
	Il existe plusieurs méthodes de synthèse:\\
	\begin{itemize}
	\item<1-> Synthèse additive
	\item<1-> Synthèse soustractive
	\item<1-> Synthèse FM
	\item<1-> Synthèse par modèle physique (PM)
	\item<1-> Par analyse de sons réels
	\end{itemize}
}


\subsection{Langages de programmation}
\frame
{
	\frametitle{Langages utilisés}
	\begin{itemize}
		\item<1-> MATLAB pour l'analyse
		\item<1-> Programmation graphique par patchs avec \emph{Pure Data}
							\begin{figure}[htbp]
								\centering	\begin{tabular}{cc}
									\includegraphics[width=0.2\textwidth]{Figures/sinesynth.png} & \includegraphics[width=0.35\textwidth]{Figures/MIDIsaxInputs.png}\\
								\end{tabular}
							\end{figure}	
		\item<1-> Extensions de \emph{Pure Data} en \emph{C/C++}						
	\end{itemize}
}



\subsection{Techniques préhistoriques}
\frame
{
	\frametitle{Synthèse additive}
	Dans la synthèse additive, on spécifie simplement l'amplitude de chaque harmonique.
	
	\begin{columns}[c]
		\column{2.7in}
		
		\movie{Exemple:}{Sounds/additive110Hz.wav} \ \\
		%\vspace{0.2in}
		\begin{tabular}{|l|c|c|c|c|}
		\hline
			Fréquence ($Hz$) & $110$ & $220$ & $330$ & $440$\\
			\hline
			Amplitude				 & $1$   & $0.5$ & $0.3$ & $0.1$\\
			\hline
		\end{tabular}

		\column{1.7in}
			\includegraphics[width=1.6in]{Figures/additive.png}
		
	\end{columns}
	
	Simple, mais résultat très pauvre	
}

\frame
{
	\frametitle{Synthèse soustractive}
	On part d'un son harmoniquement riche et on élimine des composante par filtrage.
	
	\begin{columns}[c]
		\column{2.7in}
		\begin{itemize}
			\item<1-> 	\movie{Forme d'onde triangulaire ($110Hz$)}{Sounds/soustrTri.wav}
			\item<1-> 	\movie{Filtrage passe-bas}{Sounds/soustrTriLP.wav}
			\item<1-> 	\movie{Filtrage passe-haut}{Sounds/soustrTriHP.wav}
		\end{itemize}

		\column{1.7in}
			\includegraphics[width=1.6in]{Figures/soustractive.png}
		
	\end{columns}
	
	Cette méthode est morte avec l'utilisation de l'électronique analogique dans les synthétiseurs.	
}


\frame
{
	\frametitle{Synthèse FM}
	La synthèse FM consiste à enrichir le spectre d'un son pur par modulation en fréquence
	
	\begin{columns}[c]
		\column{2.4in}
		\begin{itemize}
			\item<1-> \movie{Son pur à $110Hz$}{Sounds/sin110Hz.wav}
			\begin{itemize}
				\item<1-> $s(t) = sin(2 \pi 110 t)$
			\end{itemize}
			\item<1-> \movie{Modulé à $1\%$ et $55Hz$}{Sounds/FM110Hzmod55Hz.wav}
			\begin{itemize}
				\item<1-> $s(t) = \sin{(2 \pi 110 t (1+0.01*\sin{(2\pi 55 t)}))}$
			\end{itemize}
		\end{itemize}
		
		\column{2in}
			\includegraphics[width=1.8in]{Figures/spectreSinFM.png}
		
	\end{columns}
	
	Bon pour \emph{Star Wars}, pas pour un saxophone...
}


\subsection{Physical modelling}


\frame
{
	\frametitle{Synthèse PM (1)}
	
	Au lieu de simplement créer des sons, on cherche à modéliser l'acoustique d'un instrument
	\begin{itemize}
		\item<1-> Instruments à cordes
		\begin{itemize}
			\item<1-> Modèle des cordes
			\item<1-> Modèle de la table vibrante
			\begin{itemize}
				\item<1->[+] Couplage cordes-table
			\end{itemize}
		\end{itemize}

		\item<1-> Instruments à vent
		\begin{itemize}
			\item<1-> Modèle du tuyau sonore (cylindrique, conique,...)
			\item<1-> Modèle d'embouchure
			\item<1-> Modèle de pavillon
			\begin{itemize}
				\item<1->[+] Couplage embouchure-tuyau-pavillon
			\end{itemize}
		\end{itemize}
		\item<1-> ...
	\end{itemize}
	
	A chaque instrument son modèle!
}


\frame
{
	\frametitle{Synthèse PM (2) - Tuyau acoustique}
	
	La propagation d'onde de pression dans un tuyau cylindrique ou sur une corde obéit à l'équation des ondes
	
	\begin{equation*}
		\begin{tabular}{|l}
			$\partial_{tt}p(x,t)-c^2\partial_{xx}p(x,t)=0$ \\[4pt]
			+ conditions aux limites
		\end{tabular}
	\end{equation*}
	
	\vspace{.2in}
	
	La méthode de D'Alembert fournit la solution suivante (milieu infini)
	
	\begin{equation*}
		p(x,t)=\phi(\frac{x}{c}+t)+\phi(\frac{x}{c}-t)
	\end{equation*}
}


\frame
{
	\frametitle{Synthèse PM (3) - Tuyau acoustique}
	
	\begin{itemize}
		\item<1-> Forme d'onde quelconque double $\phi$
		\item<1-> Propagation vers la droite et vers la gauche depuis la source de perturbation (en $t=t_0$ et $x=x_0$)
	\end{itemize}
	
	\begin{figure}[htbp]
		\centering
		\includegraphics[width=2in]{Figures/tuyau.png}
	\end{figure}
}

\frame
{
	\frametitle{Synthèse PM (4) - Simulation}
	
	La synthèse PM consiste à simuler l'acoustique en temps réel\\
	On doit:
	\begin{itemize}
		\item<1-> Discrétiser le temps
		\item<1-> Discrétiser l'espace
	\end{itemize}
	Le modèle d'un tronçon de tuyau devient alors:
	
	\begin{figure}[htbp]
		\centering
		\includegraphics[width=2in]{Figures/shiftReg.png}
	\end{figure}
	
	$\rightarrow$ un simple registre à décalage double!
}


\frame
{
	\frametitle{Synthèse PM (4) - Pavillon}
	Au pavillon il y a réflexion et transmission partielles\\

	\begin{figure}[htbp]
		\centering
		\includegraphics[width=2.5in]{Figures/pavillon.png}
	\end{figure}	
	
	Les effets de l'impédance de Rayleigh (de rayonnement) à l'extrémité du tube peuvent-être approximés par de simples filtres pour les coefficients de transmission et de réflexion
	
	\begin{equation*}
		\hat{\phi}^-(\omega,L)=H_{LP}(\omega) \hat{\phi}^+(\omega,L)  \ \ \ \ \ \ \ \ \ \hat{p}_{ray}(\omega)=H_{HP}(\omega) \hat{\phi}^+(\omega,L)
	\end{equation*}
%
%	\begin{equation*}
%		\hat{p}_{ray}(\omega)=H_{HP}(\omega) \hat{\phi}^+(\omega,L).
%	\end{equation*}
}


\frame
{
	\frametitle{Synthèse PM (5) - Embouchure}
	
	L'embouchure est la source d'énergie (souffle)\\
	Elle est modélisée par un système non-linéaire (statique ou dynamique (anche))\\
	Premier essais avec une simple sigmoïde
	
	\begin{itemize}
		\item<1-> Amplification vers l'origine
		\item<1-> Saturation pour les grandes valeurs
	\end{itemize}
	
	\begin{columns}[c]
		\column{2.7in}
		\begin{figure}[htbp]
			\centering
			\includegraphics[width=1.75in]{Figures/tansig.png}
		\end{figure}
		\column{2.7in}	
		Fonctionne, mais simpliste...
	\end{columns}
}



\frame
{
	\frametitle{Synthèse PM (6) - Une "clarinette" simple}
	
	Un modèle complet d'une clarinette (tuyau cylindrique) peut-être
	donné
	
	\begin{figure}[htbp]
		\centering
		\includegraphics[width=3in]{Figures/clariPM.png}
	\end{figure}
}



\frame
{
	\frametitle{Synthèse PM (7)}
	
	\begin{figure}[htbp]
	\begin{tabular}{cc}
		\movie{\includegraphics[width=0.18\textwidth]{Figures/strangeApe.jpg}}{Sounds/PM1.wav} & Les résultats sont encore un peu bizarres... \\
		 \movie{\includegraphics[width=0.21\textwidth]{Figures/noise.jpg}}{Sounds/PMtrash1.wav} & ... et à ne pas mettre entre toutes les mains, peut-être
	\end{tabular}	
\end{figure}
	
}





\subsection{Analyse - synthèse}

\frame
{
	\frametitle{Analyse-synthèse (1)}
	
	On dispose pour chaque note et pour chaque instrument, de trois enregistrements en chambre anéchoïque
	\begin{itemize}
		\item<1-> \movie{\emph{Pianissimo}}{Sounds/40pp.wav}
		\item<1-> \movie{\emph{Mezzo-forte}}{Sounds/40mf.wav}
		\item<1-> \movie{\emph{Fortissimo}}{Sounds/40ff.wav}
	\end{itemize}
	On veut "interpoler" entre ces sons pour pouvoir obtenir tous les timbres imtermédiaires.
}


\frame
{
	\frametitle{Analyse-synthèse (2)}
	
	\begin{itemize}
		\item<1->[Étape 1] Extraire une période de signal de chaque son (suréchantillonnage, autocorrélation,...)\\
											 $\rightarrow$ $\tilde{s}_{pp}(n)$, $\tilde{s}_{mf}(n)$ et $\tilde{s}_{ff}(n)$	
		\item<1->[Étape 2] Mettre les composantes fréquentielles en phase (pour pouvoir interpoler)\\
												\begin{tabular}{rcl}
													$S_{ff}(k)$ & $=$ & $\tilde{S}_{ff}(k)$\\[4pt]
													$S_{mf}(k)$ & $=$ & $|\tilde{S}_{mf}(k)| \ e^{j\arg{(S_{ff}(k)})}$\\[4pt]
													$S_{pp}(k)$ & $=$ & $|\tilde{S}_{pp}(k)| \ e^{j\arg{(S_{ff}(k)})}$\\[4pt]
												\end{tabular}
		\item<1->[Étape 3] Créer un fichier LUT (Look Up Table) avec ces signaux
	\end{itemize}
}


\frame
{
	\frametitle{Analyse-synthèse (3)}
	
	Ensuite, un timbre intermédiaire peut être généré
	
	\vspace{0.2in}
	
	\begin{tabular}{c}
		$s(n) = a_{ff}s_{ff}(n) + a_{mf}s_{mf}(n) + a_{pp}s_{pp}(n)$ \\[4pt]
		avec $\ \ \ a_{ff}+a_{mf}+a_{pp}$\\
	\end{tabular}

	\vspace{0.2in}
		
	Les paramètres $a_{ff}$, $a_{mf}$ et $a_{pp}=1$ dépendent de la force du souffle du musicien
}


\frame
{
	\frametitle{Analyse-synthèse (4)}
	
	Quelques résultats
	
	\begin{figure}[htbp]
		\begin{tabular}{ccc}
			\movie {\includegraphics[width=0.25\textwidth]{Figures/clari_basse.jpg}}{Sounds/ClarinetteBasse.wav} & \movie{\includegraphics[width=0.25\textwidth]{Figures/sax_alto.jpg}}{Sounds/SaxAlto.wav} & \movie{\includegraphics[width=0.35\textwidth]{Figures/trompette.jpg}}{Sounds/Trompette.wav} \\
		\end{tabular}	
	\end{figure}
}





\frame
{
	\frametitle{Photo de famille}
	
\begin{figure}[htbp]
	\centering
		\includegraphics[width=0.75\textwidth]{Figures/photofamille.jpg}
	%\caption{Photo de famille}
	\label{photoFamille}
\end{figure}

}


\end{document}