කාර්යාලයේ තිර කිහිපයක නිරීක්ෂණ සහිත උපකරණ පුවරුවක් ප්රදර්ශනය කිරීමට මට අවශ්ය විය. අප සතුව පැරණි Raspberry Pi Model B+ කිහිපයක් සහ අසීමිත සම්පත් ප්රමාණයක් සහිත හයිපර්වයිසරයක් ඇත.
පෙනෙන විදිහට Raspberry Pi Model 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
)
දැන් අපි යන්න උත්සාහ කරමු
සේවාදායකයාගේ පැත්ත
මෙන්න සෑම දෙයක්ම ඊටත් වඩා සරලයි, මම දැනටමත් පවසා ඇති පරිදි, අපි Raspberry Pi Model 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/
අපි අපගේ සේවාදායකයෙන් URL යවමු.
එපමණයි, අපගේ සේවාදායකයේ පින්තූරයක් වහාම සම්බන්ධිත තිරයේ දිස්විය යුතුය. කිසියම් ගැටළුවක් ඇති වුවහොත්, ප්රවාහය ස්වයංක්රීයව නැවත ආරම්භ වන අතර සේවාදායකයින් එයට නැවත සම්බන්ධ වනු ඇත.
ප්රසාද දීමනාවක් ලෙස, ඔබට ලැබෙන රූපය කාර්යාලයේ සියලුම පරිගණකවල තිර සුරැකුමක් ලෙස ස්ථාපනය කළ හැකිය. මේ සඳහා ඔබට අවශ්ය වනු ඇත
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