ما اړتیا درلوده چې په دفتر کې په څو سکرینونو کې د څارنې سره ډشبورډ ښکاره کړم. ډیری زاړه Raspberry Pi ماډل B + او یو هایپروایسر شتون لري چې نږدې غیر محدود سرچینې لري.
په ښکاره ډول د Raspberry Pi ماډل B+ دومره تصادفي نه لري چې براوزر په دوامداره توګه پرمخ بوځي او په دې کې ډیری ګرافیکونه وړاندې کړي، د دې له امله دا پیښیږي چې پاڼه په جزوي ډول خرابه وي او ډیری وختونه خرابیږي.
یو خورا ساده او په زړه پوری حل و ، کوم چې زه غواړم تاسو سره شریک کړم.
لکه څنګه چې تاسو پوهیږئ، ټول راسبیري یو خورا پیاوړی ویډیو پروسیسر لري، کوم چې د هارډویر ویډیو کوډ کولو لپاره خورا ښه دی. نو دا مفکوره راپورته شوه چې د ډشبورډ سره یو براوزر په بل ځای کې پیل کړئ ، او راسبیري ته د چمتو شوي عکس سره چمتو شوی جریان لیږدئ.
برسیره پردې، دا باید ساده مدیریت ولري، ځکه چې پدې حالت کې به ټول ترتیبات په یو مجازی ماشین کې ترسره شي، کوم چې تازه کول او بیک اپ کول اسانه دي.
د هغه نه زر نه کیږی.
د سرور برخه
موږ چمتو کاروو
موږ یو نوی مجازی ماشین ځای په ځای کوو او لومړی یې په دې کې نصب کوو
apt-get update
apt-get install -y xserver-xorg nodm fluxbox
sed -i 's/^NODM_USER=.*/NODM_USER=ubuntu/' /etc/default/nodm
موږ به په مهربانۍ سره د Xorg لپاره تشکیل هم وکاروو
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
اوس به موږ فایرفاکس نصب کړو، موږ به دا د سیسټم خدمت په توګه پرمخ یوسو، نو د یو شی لپاره به موږ د دې لپاره د یونټ فایل ولیکو:
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
موږ Xdotool ته اړتیا لرو ترڅو سمدستي په بشپړ سکرین حالت کې فایرفاکس چل کړو.
د پیرامیټر کارول -url
تاسو کولی شئ هره پاڼه مشخص کړئ ترڅو دا په اتوماتيک ډول خلاص شي کله چې براوزر پیل شي.
پدې مرحله کې ، زموږ کیوسک چمتو دی ، مګر اوس موږ اړتیا لرو چې عکس د شبکې له لارې نورو څارونکو او وسیلو ته صادر کړو. د دې کولو لپاره، موږ به د امکاناتو څخه کار واخلو
د دې لپاره موږ دوه شیانو ته اړتیا لرو:
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
څنګه چې زموږ عکس ګړندي تازه کولو ته اړتیا نلري ، ما د ریفریش نرخ مشخص کړ: په هر ثانیه کې 1 چوکاټ (پیرامیټ -r 1
) او د کمپریشن کیفیت: 5 (پیرامیټ -q:v 5
)
اوس راځئ هڅه وکړو چې لاړ شو
د پیرودونکي اړخ
دا لاهم دلته اسانه دی ، لکه څنګه چې ما وویل ، موږ به د راسبیري پای ماډل B + وکاروو.
لومړی، راځئ چې دا نصب کړو
موږ به د خپل ویډیو چپ لپاره نور حافظه تخصیص ته هم اړتیا ولرو، د دې لپاره به موږ ترمیم کړو /boot/config.txt
gpu_mem=128
راځئ چې خپل نوی سیسټم بوټ کړو او د Pacman کیرینګ پیل کول مه هیروئ، نصب کړئ
pacman -Sy omxplayer
د پام وړ، OMXPlayer کولی شي پرته له x کار وکړي، نو ټول هغه څه چې موږ ورته اړتیا لرو د دې لپاره د یونټ فایل ولیکئ او پرمخ بوځو:
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
د پیرامیټر په توګه -b http://your-vm:8080/
موږ له خپل سرور څخه یو آر ایل لیږدوو.
دا ټول، زموږ د سرور څخه یو انځور باید سمدلاسه په تړل شوي سکرین کې ښکاره شي. د کومې ستونزې په صورت کې، جریان به په اوتومات ډول بیا پیل شي او پیرودونکي به ورسره وصل شي.
د بونس په توګه، تاسو کولی شئ پایله لرونکی انځور په دفتر کې په ټولو کمپیوټرونو کې د سکرین سیور په توګه نصب کړئ. د دې لپاره تاسو اړتیا لرئ
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
اوس ستاسو همکاران به ډیر خوشحاله وي 🙂
سرچینه: www.habr.com