Oficialus „Raspberry Pi“ fotoaparato modulis gali būti naudojamas kaip apsaugos kamera. Kameros vaizdo srautą galite bendrinti tinkle ir pasiekti jį nuotoliniu būdu iš bet kurio vietinio tinklo (LAN) įrenginio.
Galite naudoti „VLC media player“, kad bendrintumėte vaizdo srautą TCP prievade ir pasiektumėte jį iš bet kurio vietinio tinklo (LAN) įrenginio naudodami „VLC media player“.
Šiame straipsnyje aš jums parodysiu, kaip sukurti „Raspberry Pi“ saugos kamerą ir perduoti vaizdo kameros srautą iš „Raspberry Pi“ naudojant „VLC media player“.
Taigi, pradėkime!
Dalykai, kurių jums prireiks
Norėdami sekti šį straipsnį, jums reikės šių dalykų:
- Aviečių Pi 3 arba Aviečių Pi 4
- „Raspberry Pi“ fotoaparato modulis
- „Micro-USB“ („Raspberry Pi 3“) arba „Type-C“ („Raspberry Pi 4“) maitinimo adapteris
- Blykstelėjo 16 GB arba 32 GB „MicroSD“ kortelė su „Raspberry Pi OS“
- „Raspberry Pi“ tinklo ryšys
- Nešiojamas kompiuteris arba stalinis kompiuteris, skirtas VNC nuotoliniam darbalaukiui arba SSH prieigai prie „Raspberry Pi“.
PASTABA: Jei nenorite pasiekti „Raspberry Pi“ nuotoliniu būdu per SSH ar VNC, prie „Raspberry Pi“ taip pat turite prijungti monitorių, klaviatūrą ir pelę. Man nereikės nė vieno iš jų, nes savo „Raspberry Pi“ prijungsiu nuotoliniu būdu per VNC arba SSH. Mano sąranka vadinama „Raspberry Pi“ be galvos nustatymu.
Jei jums reikia pagalbos mirksint „Raspberry Pi OS“ atvaizdui „microSD“ kortelėje, patikrinkite mano straipsnį: Kaip įdiegti ir naudoti „Raspberry Pi Imager“.
Jei esate „Raspberry Pi“ pradedantysis ir jums reikia bet kokios pagalbos įdiegiant „Raspberry Pi OS“ į „Raspberry Pi“, patikrinkite mano straipsnį: Kaip įdiegti „Raspberry Pi OS“ į „Raspberry Pi 4“.
Jei jums reikia pagalbos dėl „Raspberry Pi“ nustatymo be galvos, peržiūrėkite mano straipsnį: Kaip įdiegti ir konfigūruoti „Raspberry Pi OS“ „Raspberry Pi 4“ be išorinio monitoriaus.
Jei jums reikia pagalbos prijungiant „Raspberry Pi“ kameros modulį prie „Raspberry Pi“, patikrinkite mano straipsnį: Naudojant „Raspberry Pi“ kameros modulį.
„Raspberry Pi“ kameros modulio įgalinimas
Fotoaparato sąsaja pagal numatytuosius nustatymus yra išjungta „Raspberry Pi OS“. Jį galite įgalinti iš „Raspberry Pi“ konfigūravimo įrankio, raspi-config.
Paleiskite „Raspberry Pi“ konfigūravimo įrankį naudodami šią komandą:
$ sudo raspi-config
Pasirinkite Sąsajos parinktys ir paspauskite
Pasirinkite Fotoaparatas ir paspauskite
Pasirinkite
Paspauskite
Pasirinkite
Pasirinkite
Diegiama „VLC Media Player“
„VLC Media Player“ yra oficialioje „Raspberry Pi OS“ paketų saugykloje. Taigi, ją lengva įdiegti „Raspberry Pi OS“.
Pirmiausia atnaujinkite APT paketų saugyklos talpyklą naudodami šią komandą:
$ sudo apt atnaujinimas
Norėdami įdiegti „VLC Media Player“, vykdykite šią komandą:
$ sudo apt install vlc -y
Reikėtų įdiegti „VLC Media Player“. Mano atveju jis jau yra įdiegtas.
Fotoaparato serverio su VLC Media Player kūrimas
The raspividas komanda naudojama vaizdo įrašams įrašyti iš „Raspberry Pi“ kameros modulio. Aš paaiškinau, kaip naudoti raspividas komanda įrašyti vaizdo įrašą naudodama „Raspberry Pi“ mano straipsnyje Naudojant „Raspberry Pi“ kameros modulį.
„VLC Media Player“ yra komandinės eilutės grotuvas cvlc. Galite naudoti cvlc komandą dalytis vaizdo srautu TCP prievade. Šiuo atveju - „Raspberry Pi“ kameros modulio vaizdo srautas.
Norėdami bendrinti „Raspberry Pi“ vaizdo kameros kanalą TCP prievade naudodami „VLC Media Player“, vykdykite šią komandą:
$ raspivid -o - -t 0 -hf -w 1920 -h 1080 -fps 30 | cvlc -vvv srautas: /// dev / stdin--sout '#standard prieiga = http, mux = ts, dst =: 9000': demux = h264
The raspividas komanda naudojama vaizdo įrašui įrašyti iš „Raspberry Pi“ kameros modulio.
Štai tokia toliau nurodytos komandos reikšmė:
- Vaizdo įrašo plotis bus 1920 taškų
- Vaizdo įrašo aukštis bus 1080 taškų (-h 1080).
- Vaizdo įrašas bus apverstas horizontaliai (-hf).
- Vaizdo įrašas bus įrašytas 30 kadrų per sekundę greičiu (-fps 30).
- Vaizdo įrašas bus įrašytas neribotą sekundžių skaičių (-t 0).
- Vaizdo srautas bus atspausdintas ant terminalo, o ne išsaugomas faile (-o -).
Galite pakeisti bet kurią iš šių parinkčių savo nuožiūra.
The cvlc komanda naudojama atidaryti TCP prievadą ir išsiųsti „Raspberry Pi“ fotoaparato vaizdo kanalą į TCP prievadą.
Vaizdo kanalas paimamas iš standartinės įvesties (srautas: /// dev / stdin) terminalo (naudojant vamzdį |).
VLC multipleksavimui naudos TS kodeką (-sout '#standard …, mux = ts, ...') įvesties vaizdo sklaidos kanalas ir H264 kodekas, skirtas demultipleksuoti (: demux = h264) išvesties vaizdo sklaidos kanalas.
Vaizdo srautas bus pasiekiamas HTTP prievade 9000 (-sout '#standard prieiga = http,…, dst =: 9000').
Kai paleisite komandą ir buferis bus baigtas, galite transliuoti vaizdo įrašą iš bet kurio tinklo įrenginio naudodami „VLC Media Player“.
Vaizdo kameros srautas iš „Raspberry Pi“ kamerų serverio
Norėdami prieiti prie kameros informacijos iš kitų namų tinklo (LAN) įrenginių, turite žinoti savo „Raspberry Pi“ IP adresą.
„Raspberry Pi“ IP adresą galite rasti namų maršrutizatoriaus žiniatinklio valdymo sąsajoje. Mano atveju IP adresas yra 192.168.0.103. Jums bus kitaip. Taigi, nuo šiol būtinai pakeiskite jį savo.
Jei turite prieigą prie „Raspberry Pi“ konsolės, galite paleisti šią komandą ir rasti IP adresą.
$ pagrindinio kompiuterio vardas -I
Kai žinosite savo „Raspberry Pi“ IP adresą, atidarykite „VLC Media Player“ programą ir eikite į Žiniasklaida > Atidaryti tinklo srautą .. kaip parodyta paveikslėlyje žemiau.
Įveskite kameros serverio URL į Įveskite tinklo URL skyrius. Mano atveju URL yra http: // 192.168.0.103: 9000.
Įvedę URL spustelėkite žaisti.
„VLC Media Player“ turėtų pradėti transliuoti vaizdo įrašą iš „Raspberry Pi“, kaip matote toliau pateiktoje ekrano kopijoje.
Dabar sustabdykite kameros serverį paspausdami
„Camera Server“ paleidimas įkrovos sistemoje
Kiekvieną kartą rankiniu būdu paleidus fotoaparato serverį, jūsų „Raspberry Pi“ įkrovimas nėra labai praktiškas. Taigi, fotoaparato serveriui galime sukurti „systemd“ paslaugą, kuri automatiškai paleis kameros serverį įkrovos metu.
Pirmiausia sukurkite a kameros srautas-HTTP. Aptarnavimas failą / etc / systemd / system / katalogą taip:
$ sudo nano / etc / systemd / system / camera-stream-http.paslaugą
Įveskite šias eilutes camera-stream-http.paslaugą failą.
[Vienetas]Aprašymas = „Raspberry Pi“ kameros srautinio perdavimo serveris
Po = tinklas.taikinys
[Paslauga]
WorkingDirectory = / namai / pi
Aplinka = APP_RES_WIDTH = 800
Aplinka = APP_RES_HEIGHT = 450
Aplinka = APP_RES_FPS = 24
Aplinka = APP_PORT = 9000
ExecStart = / bin / bash -c 'raspivid -o - -t 0 -hf -w $ APP_RES_WIDTH -h
$ APP_RES_HEIGHT-fps $ APP_RES_FPS | cvlc -vvv srautas: /// dev / stdin
--sout "#standard prieiga = http, mux = ts, dst =: $ APP_PORT": demux = h264 '
StandardOutput = paveldėti
StandardError = paveldėti
Paleisti iš naujo = visada
Vartotojas = pi
[Diegti]
WantedBy = daugeliui vartotojų.taikinys
Galite sukonfigūruoti šiuos aplinkos kintamuosius, kad sukonfigūruotumėte kameros serverį taip, kaip jums atrodo tinkama.
Aplinka = APP_RES_WIDTH = 800Aplinka = APP_RES_HEIGHT = 450
Aplinka = APP_RES_FPS = 24
Aplinka = APP_PORT = 9000
Baigę paspauskite
Perkraukite „systemd“ demonus, kad pakeitimai įsigaliotų taip:
$ sudo systemctl daemon-reload
Kaip matote, camera-stream-http „systemd“ paslauga šiuo metu neveikia.
$ sudo systemctl būsena camera-stream-http.paslaugą
Galite pradėti camera-stream-http sistemos paslauga su tokia komanda:
$ sudo systemctl start camera-stream-http.paslaugą
The camera-stream-http paslauga turėtų būti aktyvi / veikia, kaip matote toliau pateiktoje ekrano kopijoje. Taigi, camera-stream-http veikia „systemd“ paslauga.
$ sudo systemctl būsena camera-stream-http.paslaugą
Galite pridėti camera-stream-http „systemd“ paslauga „Raspberry Pi OS“ sistemos paleidimui su šia komanda:
$ sudo systemctl įgalinti camera-stream-http.paslaugą
Kad pakeitimai įsigaliotų, paleiskite „Raspberry Pi“ iš naujo naudodami šią komandą:
$ sudo perkrauti
Kai jūsų aviečių Pi batai, camera-stream-http „systemd“ paslauga turėtų būti aktyvi / veikia, kaip matote toliau pateiktoje ekrano kopijoje.
$ sudo systemctl būsena raspi-home-automation.paslaugą
Išvada
Šiame straipsnyje aš jums parodžiau, kaip sukurti „Raspberry Pi“ saugos kamerą ir pasiekti vaizdo įrašą iš namų tinklo (LAN) naudojant „VLC Media Player“. Jei norite tik paprastos „Raspberry Pi“ saugos kameros sąrankos, šis straipsnis turėtų padėti jums pradėti.