Compare commits

..

No commits in common. "2f01b6b9bffc1502eb737956c35dcc63984d4c91" and "5758f1c932297dd039356dc510a810254f52e04b" have entirely different histories.

3 changed files with 6 additions and 42 deletions

View File

@ -1,4 +1,4 @@
\documentclass[a4paper,10pt]{article} \documentclass[a4paper,11pt]{article}
% \listfiles % pour le debug % \listfiles % pour le debug
@ -102,21 +102,12 @@ sous formes d'outils en ligne de commande, décrits page \pageref{outils}.
% ------------------------------------------------------------------- % -------------------------------------------------------------------
\section{Installation} \section{Installation}
\subsection{Prérequis} Pour le moment, la procédure d'installation est un peu rude,
pour ne pas dire clairement sommaire.
Vous devez, en dehors des outils classiques (gcc, make\dots),
avoir quelques bibliothèques installées\footnote{Les \texttt{-dev}
pour Debain et dérivées}~: libv4l2, libpnglite, libtiff, et
probablement d'autres choses.
\subsection{Compilation}
Un script \texttt{build.sh} permet de construire approximativement Un script \texttt{build.sh} permet de construire approximativement
le bouzin. Il est loin d'être parfait. le bouzin. Il est loin d'être parfait.
\vspace{1em} \vspace{1em}
Pour le moment, la procédure d'installation est un peu rude,
pour ne pas dire clairement sommaire.
Si le résultat vous semble correct, vous pouvez copier Si le résultat vous semble correct, vous pouvez copier
les deux fichiers \texttt{floatimg.h} et \texttt{libfloatimg.a} les deux fichiers \texttt{floatimg.h} et \texttt{libfloatimg.a}
dans un emplacement dans un emplacement
@ -286,12 +277,7 @@ de méthodes, toutes plus légitimes que les autres.
Il reste plein de choses à faire pour que ce soit vraiment utilisable. Il reste plein de choses à faire pour que ce soit vraiment utilisable.
\vspace{1em} \vspace{1em}
\begin{itemize}
\item Import/export au format \textsc{tiff}\index{tiff}.
\item Compléter les traitements mathémathiques (eg le gamma\index{gamma}).
\end{itemize}
% ------------------------------------------------------------------- % -------------------------------------------------------------------
\section{Video for Linux}\index{v4l2} \section{Video for Linux}\index{v4l2}
@ -307,25 +293,6 @@ pour cela, l'outil le plus commun, le plus répandu,
est la webcam\index{webcam}. L'universelle webcam. Et l'incontournable est la webcam\index{webcam}. L'universelle webcam. Et l'incontournable
v4l2. v4l2.
\subsection{grabvidseq}\index{grabvidseq}\label{grabvidseq}
Un logiciel en devenir, qui permet déja la capture d'images en
\textsl{longue pose} selon la méthode du cumul\index{cumul}.
\begin{verbatim}
tth@debian:~/Devel/FloatImg/v4l2$ ./grabvidseq -h
options :
-d /dev/? select video device
-g convert to gray
-n NNN how many frames ?
-O ./ set Output dir
-o bla set output filename
-p NN.N period in seconds
-s WxH size of capture
-u try upscaling...
-v increase verbosity
\end{verbatim}
% ------------------------------------------------------------------- % -------------------------------------------------------------------
\section{Et pour la suite ?} \section{Et pour la suite ?}

View File

@ -288,7 +288,7 @@ for (i = 0; i < nbre_capt; i++) {
} }
xioctl(fd, VIDIOC_QBUF, &buf); xioctl(fd, VIDIOC_QBUF, &buf);
} }
t_final = fimg_timer_get(0); t_final = fimg_timer_get(0);
fprintf(stderr, "pid %d : elapsed %g s -> %.2f fps\n", getpid(), fprintf(stderr, "pid %d : elapsed %g s -> %.2f fps\n", getpid(),
@ -301,7 +301,6 @@ if (to_gray) {
} }
// save cumul to file // save cumul to file
if (verbosity) fprintf(stderr, "saving to '%s'\n", outfile);
foo = fimg_save_as_pnm(&cumul, outfile, 0); foo = fimg_save_as_pnm(&cumul, outfile, 0);
// free buffers // free buffers
@ -314,8 +313,6 @@ for (i = 0; i < n_buffers; ++i) {
v4l2_munmap(buffers[i].start, buffers[i].length); v4l2_munmap(buffers[i].start, buffers[i].length);
} }
// free(buffers); /* atomic bombing */
v4l2_close(fd); v4l2_close(fd);
return 0; return 0;

View File

@ -28,8 +28,8 @@ if ( d->width != w*2 || d->height != h*2 ) {
return -2; return -2;
} }
ox = ! ! (modz & 2); ox = ! (modz & 2);
oy = ! ! (modz & 1); oy = ! (modz & 1);
if (verbosity>2) fprintf(stderr, "%s %5d %d %d\n", __func__, if (verbosity>2) fprintf(stderr, "%s %5d %d %d\n", __func__,
modz, ox, oy); modz, ox, oy);