каждый модуль, который я пробовал для камеры Raspberry Pi, работает отлично, за исключением одной вещи, функция «тайм-аут», которая представляет собой количество времени, за которое видео снимается, фактически не работает, и для него установлено значение по умолчанию 5 секунд. не только это, но и в библиотеке pi-camera, она выдает ошибку, говоря, что она вообще не распознает команду. Я открыл вопрос о github, но я хотел опубликовать здесь, чтобы увидеть, если я просто делаю что-то не так. ниже мой код, который берет видео каждые 30 секунд (в течение 20 секунд), преобразует его в gif и загружает его в imgur.
const PiCamera = require('pi-camera');
var ffmpeg = require("fluent-ffmpeg");
var imgur = require('imgur-node-api'),
path = require('path');
var inFilename = "/home/pi/Videos/video.h264";
var outFilename = "/home/pi/Videos/video.gif";
var fs = require('fs');
var sleep = require('system-sleep');
const myCamera = new PiCamera({
mode: 'video',
output: `/home/pi/Videos/video.h264`,
width: 640,
height: 480,
timeout: 20000,
nopreview: true,
vflip: true,
});
sleep(5000);
setInterval(vid, 30000);
function vid(){
myCamera.record()
.then((result) => {
console.log('success');
ffmpeg(inFilename)
.outputOption("-vf", "scale=320:-1:flags=lanczos,fps=15")
.save(outFilename)
.run()
imgur.setClientID('MY_CLIENT_ID');
imgur.upload(path.join('/home/pi/Videos/', 'video.gif'), function (err, res) {
console.log(res.data.link);
});
})
.catch((error) => {
console.log(error);
});
}