» »

[js] zajem slike iz IP kamere

[js] zajem slike iz IP kamere

korenje3 ::

A kdo ve, kako bi lahko zajel sliko iz IP kamere?
Uporabljam node.js.

A ima kdo izkušnje s tem? Ali se da zajeti sliko iz posnetka, ki se v danem trenutku zapisuje (s ffmpeg modulom)? Ali je edina možnost da se naštima snapshot na kameri in potem pridobim te slikice?
i9-12900k; 32GB DDR5-6000 CL36; Nvidia RTX 3080 ti;
Gigabyte Aorus z690 master; Be Quiet Dark Power 12 1000W

infiniteLoop ::

Ker nimam pojma kaj tvoja kamera podpira ti lahko nudim zgolj teoreticni odgovor.

Ena varjanta je da program, ki zapisuje video (na disk), preusmeris da ga zapisuje na standardni izhod. Standardni izhod iz tega programa pa potem beres z node.js (unix pipe). V node.js potem obavis karkoli imas za obaviti in hkrati zapisujes video v datoteko po zelji (glej stream API).

Tolko brez bolj konkretnega vprasanja.
None of us is as dumb as all of us.

illion ::

Ena možnost je uporaba phatnomjs-ja
moraš ga inštalirat, potem za lažje delo z njim uporab kkšn nodejs lib za phantomjs, recimo ta: https://www.npmjs.org/package/phantomjs
vanj naloži html z javaskripto, ki zajame sliko iz webcama in prek phantomovih hookov dobi podatke. Tko na hitr, sem delal z phantomom (izvoz strani v pdf) in zajemanjem slik z js-jem direkt prek browserja, nism pa še poskusu tega dvojega skupaj. Edini problem, ki ga tu vidm, je ta, da je po navadi treba v chromu odklukat da dovoliš webcam access in ne vem kako točno se to nardi s phantomom, samo najbrž je potrebno samo kakšne flage nastavt..

edit: mogoče si lahko pomagaš s tem: https://github.com/node-modules/web-cam...

Zgodovina sprememb…

  • spremenil: illion ()

korenje3 ::

Zaenkrat sem naredil tako, da ohranjam 10 zadnjih snapshotov iz kamere na disku. Bitvo vsega je, če kdo pozvoni, da zarotira 3 zadnje slikice na tabličnem računalniku. Predvidevam da se da na teh kamerah narediti tako, da zajema sliko vsako sekundo?
i9-12900k; 32GB DDR5-6000 CL36; Nvidia RTX 3080 ti;
Gigabyte Aorus z690 master; Be Quiet Dark Power 12 1000W

FrEaKmAn ::

V 99% primerih da. Kličeš metodo za zajem slike na nekem intervalu.

korenje3 ::

Trenutno imam tako:

	function plotvideocanvas(data){
		if(plots[data.item].data.length === 0){ return; }
		if(plots[data.item].arrayrot > plots[data.item].data.length - 1){
			plots[data.item].arrayrot = 0;
		}
		var filesource = plots[data.item].data[plots[data.item].arrayrot].dir+plots[data.item].data[plots[data.item].arrayrot].file;
		$('#'+data.id).attr('src',filesource);
		plots[data.item].arrayrot += 1;
	}


A se da to z jquery nekako animirat slike?
i9-12900k; 32GB DDR5-6000 CL36; Nvidia RTX 3080 ti;
Gigabyte Aorus z690 master; Be Quiet Dark Power 12 1000W


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

PM2 (Node.js Process Manager) in uporabniki

Oddelek: Operacijski sistemi
6692 (628) dunda
»

Apache in Node.JS

Oddelek: Izdelava spletišč
91820 (1506) dunda
»

[js jquery] širina diva

Oddelek: Programiranje
141104 (972) alexa-lol
»

[js] json kompresija

Oddelek: Programiranje
223477 (2826) infiniteLoop
»

[.NET ASP] Napaka : Specified cast is not valid

Oddelek: Programiranje
61047 (1000) pinc

Več podobnih tem