1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
|
#include "video.h"
/**
**Cette fontion permet de vérifier qu'il y a bien le nombre de paramètres nécessaires
**à l'initialisation de la vidéo
**/
void test_parametres(char **a, char *b){
if(b==NULL){
printf("Erreur de chargement sur %s\n", *a);}
else{
*a=b;
}
}
/**
**Permet de composer la commande qui permet de déclencher la video.
**/
char *commande_acquisition(char *param[NB_PARAM]){
char *commandeLog;
sprintf(commandeLog, "streamer -t %s -s %sx%s -r 24 -o %s.yuv -c %s",param[0], param[1], param[2],param[3],param[4]);
printf("Commande exécutée: '%s'\n", commandeLog);
return commandeLog;
}
/*
Fonction main qui permet de créer un fichier vidéo
*/
int main(int argc,char *argv[]){
int j=4;
char* nom=NULL;
char *tmp=NULL;
for(i=argc-1; i>0; i--){
printf("i: %d\n", i);
if(j==4){
printf("Parametre lu: %s\n", argv[i]);
if(strncmp(argv[i],"/dev/",5)==0){
test_parametres(¶metres[j],argv[i]);
printf("parametre defini n°%d: %s\n", j, parametres[j]);
j--;
printf("j: %d\n",j);
}
else{
}
}
else if(j==3){
printf("ici");
if(strncmp(argv[i],"/mnt/",5)==0){
*tmp = realloc(nom, sizeof(char*));
if(tmp!=NULL){
strcpy(tmp,nom);
*nom=realloc(nom, (strlen(argv[i])+strlen(tmp)+2));
if(nom!=NULL){
strcpy(nom,argv[i]);
sprintf(nom,"%s%s",tmp);
free(tmp);
test_parametres(¶metres[j],nom);
printf("parametre defini n°%d: %s\n", j, parametres[j]);
j--;
printf("j: %d\n",j);
}
}
}
else{
*tmp = realloc(nom, sizeof(char*));
if(tmp!=NULL){
strcpy(tmp,nom);
*nom=realloc(nom, (strlen(argv[i])+strlen(tmp)+2));
if(nom!=NULL){
strcpy(nom,argv[i]);
sprintf(nom,"%s%s",tmp);
printf("Construction nom: %s\n", nom);
}
}
}
}
else{
free(nom);
test_parametres(¶metres[j],argv[i]);
printf("parametre defini n°%d: %s\n", j, parametres[j]);
j--;
printf("j: %d\n",j);
}
}
return 0;
} |