bla
This commit is contained in:
parent
d79a55fd2e
commit
a74069b7f2
@ -41,7 +41,7 @@ format.rate = 44100;
|
|||||||
format.byte_format = AO_FMT_LITTLE;
|
format.byte_format = AO_FMT_LITTLE;
|
||||||
|
|
||||||
/* -- Open driver -- */
|
/* -- Open driver -- */
|
||||||
device = ao_open_live(default_driver, &format, NULL /* no options */);
|
device = ao_open_live(default_driver, &format, NULL);
|
||||||
if (device == NULL) {
|
if (device == NULL) {
|
||||||
fprintf(stderr, "Error opening device.\n");
|
fprintf(stderr, "Error opening device.\n");
|
||||||
return 1;
|
return 1;
|
||||||
@ -53,7 +53,7 @@ buffer = calloc(buf_size, sizeof(char));
|
|||||||
|
|
||||||
for (i = 0; i < format.rate; i++) {
|
for (i = 0; i < format.rate; i++) {
|
||||||
sample = (int)(0.75 * 32768.0 *
|
sample = (int)(0.75 * 32768.0 *
|
||||||
sin(2 * M_PI * freq * ((float) i/format.rate)));
|
sin(2 * M_PI * freq * ((float) i/format.rate)));
|
||||||
|
|
||||||
/* Put the same stuff in left and right channel */
|
/* Put the same stuff in left and right channel */
|
||||||
buffer[4*i] = buffer[4*i+2] = sample & 0xff;
|
buffer[4*i] = buffer[4*i+2] = sample & 0xff;
|
||||||
|
@ -5,11 +5,47 @@
|
|||||||
|
|
||||||
\section{ImageMagick}\index{ImageMagick}
|
\section{ImageMagick}\index{ImageMagick}
|
||||||
|
|
||||||
Attention, ça va devenir \textsl{hardu}\dots
|
Attention, ça va devenir \textsl{hardu}%
|
||||||
|
\footnote{Nous attendons tous avec impatience l'ouvrage de Brunus},
|
||||||
|
l'abondance d'options
|
||||||
|
des outils imagemagick est vraiment énorme, et leurs
|
||||||
|
interactions parfois troublantes\dots
|
||||||
|
|
||||||
|
\subsection{Écrire du texte}
|
||||||
|
|
||||||
|
Voici un exemple concret
|
||||||
|
(tiré du script d'encodage du \textsc{cloître}\index{cloître})
|
||||||
|
qui montre l'essentiel pour bien débuter. C'est une fonction
|
||||||
|
écrite en bash\index{bash} qui rajoute un texte sur une image :
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
function tagpic
|
||||||
|
{
|
||||||
|
infile="$1"
|
||||||
|
outfile="$2"
|
||||||
|
texte="$3"
|
||||||
|
|
||||||
|
txtfont=" -font Utopia "
|
||||||
|
fontsize=" -pointsize 96 -kerning 6 "
|
||||||
|
color=" -fill Gray20 -stroke White "
|
||||||
|
txtopts=" -antialias -alpha off $txtfont "
|
||||||
|
|
||||||
|
convert $infile \
|
||||||
|
${txtopts} \
|
||||||
|
${txtfont} ${fontsize} \
|
||||||
|
${color} \
|
||||||
|
-gravity South \
|
||||||
|
-annotate +0+85 "${texte}" \
|
||||||
|
$outfile
|
||||||
|
}
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
Quelques explications...
|
||||||
|
|
||||||
|
|
||||||
% -------------------------------------------------------------------
|
% -------------------------------------------------------------------
|
||||||
|
|
||||||
|
\section{Gmic}\index{Gmic}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,6 +1,10 @@
|
|||||||
\chapter{Vidéo}
|
\chapter{Vidéo}
|
||||||
\label{chap:video}
|
\label{chap:video}
|
||||||
|
|
||||||
|
Le traitement de la vidéo, c'est vraiment compliqué : entre
|
||||||
|
les multiples \textsl{codec} et les multiples \textsl{containers},
|
||||||
|
on est rapidement perdu. Voici donc quelques recettes de cuisine
|
||||||
|
à appliquer avec modération (et respect des gestes barrières).
|
||||||
|
|
||||||
% --------------------------------------------------------------------
|
% --------------------------------------------------------------------
|
||||||
|
|
||||||
@ -108,6 +112,10 @@ ffmpeg -nostdin \
|
|||||||
wip.mp4
|
wip.mp4
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
|
\subsection{Questions}
|
||||||
|
|
||||||
|
Quand on encode images+son, comment arreter au plus court des deux ?
|
||||||
|
|
||||||
% --------------------------------------------------------------------
|
% --------------------------------------------------------------------
|
||||||
|
|
||||||
\section{Autres trucs}
|
\section{Autres trucs}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
% --------------------------------------------------------------------
|
% --------------------------------------------------------------------
|
||||||
|
|
||||||
\chapter{Webcam}
|
\chapter{Webcam}
|
||||||
\label{webcam}
|
\label{chap:webcam}
|
||||||
\index{webcam}
|
\index{webcam}
|
||||||
|
|
||||||
Sous Linux, c'est quand même un peu tordu, dans le même genre
|
Sous Linux, c'est quand même un peu tordu, dans le même genre
|
||||||
@ -12,6 +12,14 @@ simple : juste tenter de prendre une photo avec une
|
|||||||
\textsl{webcam} classique en USB, et d'enregistrer cette
|
\textsl{webcam} classique en USB, et d'enregistrer cette
|
||||||
image.
|
image.
|
||||||
|
|
||||||
|
% --------------------------------------------------------------------
|
||||||
|
|
||||||
|
\section{v4l2}\index{v4l2}
|
||||||
|
|
||||||
|
\textsl{Video For Linux, second edition.}
|
||||||
|
|
||||||
|
% --------------------------------------------------------------------
|
||||||
|
|
||||||
\section{vgrabbj}
|
\section{vgrabbj}
|
||||||
\index{vgrabbj}
|
\index{vgrabbj}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user