ponytracker/documentation/CSC3502_PonyTracker.tex

146 lines
6.5 KiB
TeX

%!TEX encoding = UTF-8 Unicode
\documentclass[11pt,a4paper,titlepage]{report}
\usepackage[francais]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage[usenames,dvipsnames]{pstricks}
\usepackage{epsfig}
\usepackage{pst-grad} % For gradients
\usepackage{pst-plot} % For axes
\usepackage{pstricks}
\usepackage{enumitem}
\author{Guillaume \textsc{Abramovici}\\
Guy \textsc{Godfroy}\\
Mickaɫl \textsc{Illy}\\
Quentin \textsc{Martin}\\
\\
\textit{Encadrant :} Elizabeth \textsc{Brunnet}}
\title{Projet \textsc{PonyTracker}\\
Rapport\\
\vspace{1cm}
\includegraphics[scale=0.5]{icon/vinyl.pdf}}
%LOL j'adore les poneys
\addto\captionsfrench{\renewcommand{\chaptername}{Section}}
\begin{document}
\begin{titlepage}
\end{titlepage}
\maketitle
\chapter{Analyse du problème}
La musique est un art ayant traversé les époques, évoluant au même rythme et à la même vitesse que les progrès culturels, sociaux, scientifiques et technologiques de l'Être Humain. Celui-ci a toujours su s'adapter à ces évolutions dans le but de faire progresser, d'améliorer, d'enrichir ses productions musicales. Parallèlement, l'informatique a connu ces dernières années une évolution sans précédent, devenant indispensable dans la vie de tous les jours.\\
Il n'en fallait alors pas plus pour deviner que le futur de la musique passerait peut-être par l'emploi de cet outil informatique. Traitement du son, des informations, des instruments, physiques ou virtuels,... aujourd'hui les ordinateurs nous offrent la possibilité d'aller plus loin dans tous les domaines artistiques et culturels, notamment dans la dscipline musicale, et de créer des œuvres qui n'auraient seulement pu être envisagées quand l'informatique n'en était qu'à ses débuts.\\
Il existe alors aujourd'hui un besoin de créer des applications permettant cette création musicale. En particulier, le genre de la musique électronique se prête particulièrement bien à cette idée. L'artiste voulant notamment produire ce genre de musique a désormais besoin d'un outil lui permettant de manier les sons, de les enregistrer, d'utiliser des instruments qu'il peut créer et d'appliquer les effets qu'il souhaite, sans pour autant posséder le matériel physique (les instruments), ou bien même les compétences nécessaires pour y jouer. Il s'agit donc de simuler les instruments et les effets.
\begin{center}
$\star \star \star$
\end{center}
Ainsi, notre objectif est de développer un séquenceur de musique, qui s'inscrit dans la discipline de la MAO (Musique Assistée par Ordinateur). Nous souhaitons répondre à ce besoin de simulation et munir le programme d'une interface graphique simple et intuitive, afin de toucher le plus de passionnés de musique possible. Afin de répondre au besoin, l'utilisateur devra avoir la possibilité de :
\begin{itemize}
\item créer ou importer des sons de bases, nommés \textit{samples};
\item configurer des \textit{instruments} virtuels à partir de ces samples.
\item entrer des mélodies à partir de ces instruments.
\item placer des effets isolément sur chaque note.
\end{itemize}
Notre but est de créer un programme s'inspirant de ceux déjà existants (par exemple \textsc{MilkyTracker}) en améliorant l'interface et en les simplifiant afin de les rendre plus accessibles, notamment pour les utilisateurs débutants.\\
L'avenir de la musique pourrait bien passer par l'infinité de possibilités que nous offre désormais l'informatique...
\chapter{Cahier des charges}
\begin{itemize}
\item Planning et deadlines
\item Bête à corne + pieuvre (à toi de jouer Mika)
\item Interface graphique, explication des boutons, voir partie GUI.
\item Plagiat du règlement...
\item C, Git, GTK, Doxygen, wiki
\item Encadrant (duh...)
\end{itemize}
\chapter{Liste des fonctionnalités}
% Voir fichier \texttt{fonctionnalités.txt}
Nous avons dressé une liste des fonctions du programme qui se veut la plus exhaustive possible. Nous avons indicé chaque fonction selon leur priorité d'implémentation : $\ast\ast$ pour les fonctions à implémenter pour la première version, et $\ast$ pour celles à implémenter pour le produit final. Les autres sont les fonctions moins importantes à implémenter s'il nous en avons la possibilité.\\
Voici dons la liste des fonctionnalités :
\section{Gestion des samples}
\begin{itemize}
\item Import de samples $\ast\ast$
\item Visualisation graphique des samples en vue d'affinage du son $\ast$
\item Réglages des paramètres de lecture en boucle des samples $\ast\ast$
\end{itemize}
\section{Gestion des instruments}
\begin{itemize}
\item Choix d'un sample pour chaque instrument $\ast\ast$
\item Accord du sample en fonction d'une note de préférence $\ast$
\item Édition du volume d'attaque, de maintien et de chute via une enveloppe sonore $\ast$
\item Positionnement stéréo
\end{itemize}
\section{Matrice de mélodie}
\begin{itemize}
\item Entrée/visualisation de la mélodie par clavier physique $\ast\ast$ ou clavier graphique cliquable $\ast$
\item Présentation de la matrice selon le temps et les instruments $\ast\ast$
\item Choix du nom des notes façon anglo-saxonne ou latine (via fenêtre des préférences)
\item Lecture de plusieurs instruments simultanément $\ast$
\item Choix du tempo $\ast\ast$, de la base de temps $\ast\ast$ et du nombre de \textit{ticks} $\ast$
\item Gestion des motifs (choix de l'agencement dans le temps, du tempo et de la base de temps) $\ast$
\end{itemize}
\section{Effets}
\begin{itemize}
\item Implémentation de plusieurs effets :
\begin{itemize}[label=$\bullet$]
\item arpège $\ast\ast$
\item portamento (montant, descendant, intelligent) $\ast$
\item vibrato $\ast$
\item tremolo $\ast$
\item coupure $\ast$
\item délai $\ast$
\end{itemize}
\item Choix des effets via un menu déroulant en face de chaque note $\ast$
\item Modification dynamique du volume et de la stéréo $\ast$
\end{itemize}
\section{Fonctionnalités basiques}
\begin{itemize}
\item Créer nouveau document $\ast$
\item Ouvrir document $\ast$
\item Sauvegarder document $\ast$
\item Undo/redo $\ast$
\item Maximiser/minimiser/fermer fenêtre $\ast$
\item Export de la musique en fichier son (wav ou mp3) $\ast$
\end{itemize}
\chapter{Spécification fonctionnelle}
\includegraphics{trollface.eps}
\chapter{Tests unitaires}
On va se faire chier...\\
Test de TOUS les boutons un par un. Yay.
\chapter{Esquisses de l'interface graphique}
\begin{figure}[!h]
\includegraphics{interface/mainwindow.eps}
\caption{Fenêtre principale}
\end{figure}
\end{document}