Yada allo zuwa na'urori da yawa akan hanyar sadarwa

Yada allo zuwa na'urori da yawa akan hanyar sadarwa

Ina da buƙatar nuna dashboard tare da saka idanu akan fuska da yawa a ofis. Akwai tsofaffin tsoffin Rasberi Pi Model B + da hypervisor tare da kusan adadin albarkatu marasa iyaka.

A bayyane yake Rasberi Pi Model B+ ba shi da isasshen bazuwar don ci gaba da gudanar da burauzar yanar gizo da kuma samar da hotuna da yawa a ciki, saboda abin da ke faruwa cewa shafin yana da rauni kuma sau da yawa yana faɗuwa.

Akwai mafita mai sauƙi kuma mai daɗi, wacce nake so in raba tare da ku.

Kamar yadda ka sani, duk Raspberries suna da ingantaccen mai sarrafa bidiyo mai ƙarfi, wanda yake da kyau don ƙaddamar da bidiyo na hardware. Don haka ra'ayin ya zo don ƙaddamar da mai bincike tare da dashboard a wani wuri, da kuma canja wurin rafi da aka shirya tare da hoton da aka yi zuwa rasberi.

Bugu da ƙari, wannan ya kamata ya sami sauƙin gudanarwa, tun da yake a wannan yanayin za a yi duk wani tsari akan injin kama-da-wane ɗaya, wanda ya fi sauƙi don sabuntawa da madadin.

Da zaran an fada sai aka yi.

Bangaren uwar garken

Muna amfani da shirye Hoton Cloud don Ubuntu. Ba buƙatar shigarwa ba, yana ƙunshe da duk abin da kuke buƙata don tura injin kama-da-wane da sauri, kuma Tallafin CloudInit yana taimakawa saita hanyar sadarwa kai tsaye, ƙara maɓallan ssh kuma da sauri sanya shi cikin aiki.

Muna tura sabon injin kama-da-wane kuma da farko mun sanya shi a kai Xorg, nodm и akwatin akwati:

apt-get update
apt-get install -y xserver-xorg nodm fluxbox
sed -i 's/^NODM_USER=.*/NODM_USER=ubuntu/' /etc/default/nodm

Za mu kuma yi amfani da saitin don Xorg, da kyau bayar mu Diego Ongaro, yana ƙara sabon ƙuduri kawai 1920 × 1080, tunda duk masu lura da mu za su yi amfani da shi:

cat > /etc/X11/xorg.conf <<EOT
Section "Device"
    Identifier      "device"
    Driver          "vesa"
EndSection

Section "Screen"
    Identifier      "screen"
    Device          "device"
    Monitor         "monitor"
    DefaultDepth    16
    SubSection "Display"
        Modes       "1920x1080" "1280x1024" "1024x768" "800x600"
    EndSubSection
EndSection

Section "Monitor"
    Identifier      "monitor"
    HorizSync       20.0 - 50.0
    VertRefresh     40.0 - 80.0
    Option          "DPMS"
EndSection

Section "ServerLayout"
    Identifier      "layout"
    Screen          "screen"
EndSection
EOT

systemctl restart nodm

Yanzu za mu shigar da Firefox, za mu gudanar da shi azaman sabis na tsarin, don haka abu ɗaya za mu rubuta masa fayil ɗin raka'a:

apt-get install -y firefox xdotool

cat > /etc/systemd/system/firefox.service <<EOT
[Unit]
Description=Firefox
After=network.target

[Service]
Restart=always
User=ubuntu
Environment="DISPLAY=:0"
Environment="XAUTHORITY=/home/ubuntu/.Xauthority"
ExecStart=/usr/bin/firefox -url 'http://example.org/mydashboard'
ExecStartPost=/usr/bin/xdotool search --sync --onlyvisible --class "Firefox" windowactivate key F11

[Install]
WantedBy=graphical.target
EOT

systemctl enable firefox
systemctl start firefox

Muna buƙatar Xdotool don gudanar da Firefox nan da nan a cikin cikakken yanayin allo.
Amfani da siga -url za ka iya saka kowane shafi domin ya buɗe ta atomatik lokacin da mai binciken ya fara.

A wannan mataki, kiosk ɗinmu yana shirye, amma yanzu muna buƙatar fitar da hoton akan hanyar sadarwa zuwa wasu masu saka idanu da na'urori. Don yin wannan, za mu yi amfani da damar Motsa JPEG, tsarin da aka fi amfani dashi don yawo bidiyo daga mafi yawan kyamarar gidan yanar gizo.

Don wannan muna buƙatar abubuwa biyu: FFmpeg da module x11 ku, don ɗaukar hotuna daga x's da streamEye, wanda zai rarraba shi ga abokan cinikinmu:

apt-get install -y make gcc ffmpeg 

cd /tmp/
wget https://github.com/ccrisan/streameye/archive/master.tar.gz
tar xvf master.tar.gz 
cd streameye-master/
make
make install

cat > /etc/systemd/system/streameye.service <<EOT
[Unit]
Description=streamEye
After=network.target

[Service]
Restart=always
User=ubuntu
Environment="DISPLAY=:0"
Environment="XAUTHORITY=/home/ubuntu/.Xauthority"
ExecStart=/bin/sh -c 'ffmpeg -f x11grab -s 1920x1080 -i :0 -r 1 -f mjpeg -q:v 5 - 2>/dev/null | streameye'

[Install]
WantedBy=graphical.target
EOT

systemctl enable streameye
systemctl start streameye

Tunda hoton mu baya buƙatar sabuntawa da sauri, na ƙayyade ƙimar wartsakewa: firam 1 a sakan daya (parameter -r 1) da ingancin matsawa: 5 (parameter -q:v 5)

Yanzu bari muyi kokarin zuwa http://your-vm:8080/, a mayar da martani za ka ga kullum updated screenshot na tebur. Mai girma! - abin da ake bukata.

Bangaran abokin ciniki

Har yanzu yana da sauƙi a nan, kamar yadda na faɗa, za mu yi amfani da Rasberi Pi Model B +.

Da farko, bari mu shigar da shi ArchLinux ARM, don wannan muna bi umarnin a kan gidan yanar gizon.

Hakanan za mu buƙaci ware ƙarin ƙwaƙwalwar ajiya don guntun bidiyon mu, don wannan za mu gyara a ciki /boot/config.txt

gpu_mem=128

Bari mu kaddamar da sabon tsarin mu kuma kar a manta da fara maɓallin pacman, shigar OMXPlayer:

pacman -Sy omxplayer

Abin sha'awa, OMXPlayer na iya aiki ba tare da X ba, don haka duk abin da muke buƙata shine mu rubuta fayil ɗin raka'a don shi kuma mu gudu:

cat > /etc/systemd/system/omxplayer.service <<EOT
[Unit]
Description=OMXPlayer
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
Restart=always
ExecStart=/usr/bin/omxplayer -r --live -b http://your-vm:8080/ --aspect-mode full

[Install]
WantedBy=multi-user.target
EOT

systemctl enable omxplayer
systemctl start omxplayer

A matsayin siga -b http://your-vm:8080/ muna wucewa da url daga uwar garken mu.

Wannan ke nan, hoto daga uwar garken mu yakamata ya bayyana nan da nan akan allon da aka haɗa. A cikin kowane matsala, za a sake kunna rafi ta atomatik kuma abokan ciniki za su sake haɗawa da shi.

A matsayin kari, zaku iya shigar da hoton da aka samu azaman mai adana allo akan duk kwamfutoci a ofis. Don wannan za ku buƙaci MPV и XScreenSaver:

mode:  one
selected: 0
programs:              
     "Monitoring Screen"  mpv --really-quiet --no-audio --fs       
      --loop=inf --no-stop-screensaver       
      --wid=$XSCREENSAVER_WINDOW        
      http://your-vm:8080/      n
    maze -root        n
    electricsheep --root 1       n

Yanzu abokan aikin ku za su yi farin ciki sosai 🙂

source: www.habr.com

Add a comment