NEWS
Telegram отправка фото камеры
-
Всем привет!
Подскажите как можно изменить соотношение сторон отправляемой картинки?
т.е. Камера китайская, по ссылке формирует картинку 704х576 (4:3), а хочу ее растянуть, чтобы получить 16:9. В настройках камеры таких настроек нет.
На каком этапе это можно сделать?
//Функция, которая запрашивает изображение с камеры, сохраняет его во временный файл и отправляет его в драйвер telegram function sendImage() { request.get({url: 'http://10.10.10.10/webcapture.jpg?command=snap&channel=1', encoding: 'binary'}, function (err, response, body) { fs.writeFile("/tmp/snapshot.jpg", body, 'binary', function(err) { if (err) { console.error(err); } else { sendTo('telegram.0', '/tmp/snapshot.jpg'); } }); }); }
-
Во-первых что это даст? А реализовать можно с помощью того же ffmpeg. Им получаете картинку с камеры, формируете промежуточное изображение и его уже высылаете в тгм.
https://forum.iobroker.net/viewtopic.php?f=26&t=10399 реализация, вам нужен пример где камера отдает rtsp поток.
-
Всем привет!
Подскажите как можно изменить соотношение сторон отправляемой картинки?
т.е. Камера китайская, по ссылке формирует картинку 704х576 (4:3), а хочу ее растянуть, чтобы получить 16:9. В настройках камеры таких настроек нет.
На каком этапе это можно сделать?
//Функция, которая запрашивает изображение с камеры, сохраняет его во временный файл и отправляет его в драйвер telegram function sendImage() { request.get({url: 'http://10.10.10.10/webcapture.jpg?command=snap&channel=1', encoding: 'binary'}, function (err, response, body) { fs.writeFile("/tmp/snapshot.jpg", body, 'binary', function(err) { if (err) { console.error(err); } else { sendTo('telegram.0', '/tmp/snapshot.jpg'); } }); }); } ```` `
Я бы посоветовал так
//Функция, которая запрашивает изображение с камеры, сохраняет его во временный файл и отправляет его в драйвер telegram var sharp = require("sharp"); function sendImage() { request.get({url: 'http://10.10.10.10/webcapture.jpg?command=snap&channel=1', encoding: 'binary'}, function (err, response, body) { fs.writeFile("/tmp/snapshot.jpg", body, 'binary', function(err) { if (err) { console.error(err); } else { sharp("/tmp/snapshot.jpg") .resize(320,200) .toFile("/tmp/snapshot1.jpg") .then(() =>sendTo('telegram.0', '/tmp/snapshot1.jpg')); }); }); }
Только надо добавить в настройках JavaScript: sharp
-
Во-первых что это даст? А реализовать можно с помощью того же ffmpeg. Им получаете картинку с камеры, формируете промежуточное изображение и его уже высылаете в тгм.
https://forum.iobroker.net/viewtopic.php?f=26&t=10399 реализация, вам нужен пример где камера отдает rtsp поток. `
Спасибо, статья хорошаяПовторил у себя на сервере, работает отлично! 8-)
-
Я бы посоветовал так
//Функция, которая запрашивает изображение с камеры, сохраняет его во временный файл и отправляет его в драйвер telegram var sharp = require("sharp"); function sendImage() { request.get({url: 'http://10.10.10.10/webcapture.jpg?command=snap&channel=1', encoding: 'binary'}, function (err, response, body) { fs.writeFile("/tmp/snapshot.jpg", body, 'binary', function(err) { if (err) { console.error(err); } else { sharp("/tmp/snapshot.jpg") .resize(320,200) .toFile("/tmp/snapshot1.jpg") .then(() =>sendTo('telegram.0', '/tmp/snapshot1.jpg')); }); }); }
Только надо добавить в настройках JavaScript: sharp `
Пробовал для эксперимента ваш вариант, не заработал.
-
Я бы посоветовал так
//Функция, которая запрашивает изображение с камеры, сохраняет его во временный файл и отправляет его в драйвер telegram var sharp = require("sharp"); function sendImage() { request.get({url: 'http://10.10.10.10/webcapture.jpg?command=snap&channel=1', encoding: 'binary'}, function (err, response, body) { fs.writeFile("/tmp/snapshot.jpg", body, 'binary', function(err) { if (err) { console.error(err); } else { sharp("/tmp/snapshot.jpg") .resize(320,200) .toFile("/tmp/snapshot1.jpg") .then(() =>sendTo('telegram.0', '/tmp/snapshot1.jpg')); }); }); }
Только надо добавить в настройках JavaScript: sharp `
Пробовал для эксперимента ваш вариант, не заработал. `
Ну что говорит то? Я же с телефона печататал.Может забыл скобку где.