Ajouter une fonction pour vérifier si la caméra est occupée et mettre à jour la gestion des fichiers vidéo
This commit is contained in:
@@ -23,6 +23,10 @@ function writeCameraFile() {
|
|||||||
(cameraFile, JSON.stringify(data, null, 2), 'utf8');
|
(cameraFile, JSON.stringify(data, null, 2), 'utf8');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function isCameraOccupied() {
|
||||||
|
return captureProjectID != -1;
|
||||||
|
}
|
||||||
|
|
||||||
writeCameraFile();
|
writeCameraFile();
|
||||||
|
|
||||||
router.post('/procedure/start/', async (req, res) => {
|
router.post('/procedure/start/', async (req, res) => {
|
||||||
@@ -36,8 +40,12 @@ router.post('/procedure/start/', async (req, res) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
function startProcedure(projectId, interval) {
|
function startProcedure(projectId, interval) {
|
||||||
//vérifier qu'un projet n'est pas déjà en cours
|
// Vérifier si la caméra est occupée
|
||||||
if (captureProjectID != -1) {
|
// Vérifier cohérence des valeurs
|
||||||
|
// Interroger DB sur l'existence du projet
|
||||||
|
// Appliquer valeurs
|
||||||
|
// Changer le statut du projet dans la DB
|
||||||
|
if (isCameraOccupied()) {
|
||||||
return { message: 'Caméra Occupée : Le projet ID ' + captureProjectID + ' est déjà en cours de capture.' };
|
return { message: 'Caméra Occupée : Le projet ID ' + captureProjectID + ' est déjà en cours de capture.' };
|
||||||
}
|
}
|
||||||
console.log('Démarrage de la procédure de capture');
|
console.log('Démarrage de la procédure de capture');
|
||||||
|
|||||||
@@ -164,7 +164,7 @@ router.post('/videos/render/:video_id', async (req, res) => {
|
|||||||
const videoFile = await videoManager.createVideoWithList(project_id, pathList, duration, videoId);
|
const videoFile = await videoManager.createVideoWithList(project_id, pathList, duration, videoId);
|
||||||
console.log('Video file:', videoFile);
|
console.log('Video file:', videoFile);
|
||||||
|
|
||||||
await videoManager.updateVideoFile(videoId, videoFile);
|
const update = await videoManager.updateVideoFile(videoId, videoFile);
|
||||||
|
|
||||||
console.log('Video rendering complete');
|
console.log('Video rendering complete');
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
|||||||
@@ -134,9 +134,9 @@ async function createVideo(projectId) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function updateVideoFile(videoId, path) {
|
async function updateVideoFile(videoId, video_file) {
|
||||||
const query = 'UPDATE public.videos SET video_file = $2 WHERE id = $1 RETURNING *';
|
const query = 'UPDATE public.videos SET video_file = $2 WHERE id = $1 RETURNING *';
|
||||||
const values = [videoId, path];
|
const values = [videoId, video_file];
|
||||||
const res = await db.query(query, values);
|
const res = await db.query(query, values);
|
||||||
console.log('Video updated:', res.rows[0]);
|
console.log('Video updated:', res.rows[0]);
|
||||||
return res.rows[0];
|
return res.rows[0];
|
||||||
|
|||||||
Reference in New Issue
Block a user