Airtop: Installing Linux Mint 19

From fit-PC wiki
Jump to: navigation, search

Supported devices

  • This guide is valid for Airtop, Airtop2

Prepare installation media

Base installation of Linux Mint

  • Follow the standard Linux Mint installation procedure - choose timezone, partitions, username, password etc.
  • Disconnect the installation media and reboot.
  • Login using previously selected username and password.

I3M Panel

  • Integrated interactive information monitor I3M is a GUI system integrated in the front panel of Airtop
  • Download and install the package for Airtop or Airtop2:
$ product_name=$(cat /sys/class/dmi/id/product_name)
$ wget http://www.fit-pc2.com/download/airtop/$product_name/airtop-fpsvc_systemd.deb
$ sudo dpkg -i airtop-fpsvc_systemd.deb
...
Created symlink /etc/systemd/system/multi-user.target.wants/airtop-fpsvc.service → /lib/systemd/system/airtop-fpsvc.service.
Created symlink /etc/systemd/system/multi-user.target.wants/gpu-thermald.service → /lib/systemd/system/gpu-thermald.service.
  • Note, the package adds "acpi_enforce_resources=lax" string to the kernel boot line
  • Reboot the Airtop after installation
  • Now you can navigate through menus between multiple screens of the I3M that display system information, temperatures, power consumption and notifications

Intel video acceleration graphic drivers

$ sudo apt update
$ sudo apt install mint-meta-codecs i965-va-driver gstreamer1.0-vaapi vainfo 

Then run vainfo command, you should see list of supported profiles, for example on Airtop2:

$ vainfo
libva info: VA-API version 1.1.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_1
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.1 (libva 2.1.0)
vainfo: Driver version: Intel i965 driver for Intel(R) Kaby Lake - 2.1.0
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSliceLP
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointEncSliceLP
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointEncSliceLP
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointEncPicture
      VAProfileVP8Version0_3          :	VAEntrypointVLD
      VAProfileVP8Version0_3          :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointEncSlice
      VAProfileVP9Profile2            :	VAEntrypointVLD

Nvidia graphics card drivers

$ sudo apt update
$ nvidia_driver=$(apt-cache search "nvidia-driver-[0-9][0-9][0-9]" | grep -o "nvidia-driver-[0-9][0-9][0-9]" | sort | tail -1)
$ sudo apt install $nvidia_driver vdpauinfo mesa-vdpau-drivers vdpau-va-driver --install-recommends

Then run nvidia-smi command, you should see current NVIDIA card status:

$ watch -n1 nvidia-smi
Thu Jul 12 02:31:03 2018       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.48                 Driver Version: 390.48                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 106...  On   | 00000000:01:00.0  On |                  N/A |
|  0%   55C    P2    38W /  95W |   1287MiB /  6075MiB |      6%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0       959      G   /usr/lib/xorg/Xorg                           376MiB |
|    0      1503      G   cinnamon                                      54MiB |
|    0     14374    C+G   mpv                                          843MiB |
+-----------------------------------------------------------------------------+

MPV media player

  • Well known free and open-source multimedia player
  • Supports GPU accelerated video decoding including CUDA decoding on NVIDIA GPUs and gives excellent playback quality
  • Compatible with the most popular video formats
$ sudo apt install mpv youtube-dl

For example, Airtop2 with GeForce GTX 1060 is capable to play 4K UHD using CUDA video decoding without significant system load:

$ mpv -fs --hwdec=cuda ~/Videos/jellyfish/jellyfish-140-mbps-4k-uhd-hevc-10bit.mkv
Playing: ~/Videos/jellyfish/jellyfish-140-mbps-4k-uhd-hevc-10bit.mkv
 (+) Video --vid=1 (*) (hevc 3840x2160 29.970fps)
 (+) Audio --aid=1 (*) (truehd 6ch 48000Hz)
AO: [pulse] 48000Hz 5.1(side) 6ch s32
Using hardware decoding (cuda).
VO: [opengl] 3840x2160 cuda[p010]
AV: 00:00:30 / 00:00:30 (99%) A-V:  0.000 Cache:  0s+0KB

Or the same content directly from the youtube:

$ mpv -fs --hwdec=cuda https://www.youtube.com/watch?v=j4oBg8capW8
Playing: https://www.youtube.com/watch?v=j4oBg8capW8
 (+) Video --vid=1 (*) (vp9 3840x2160 29.970fps)
 (+) Audio --aid=1 --alang=und (*) 'DASH audio' (aac 2ch 44100Hz) (external)
AO: [pulse] 44100Hz stereo 2ch float
Using hardware decoding (cuda).
VO: [opengl] 3840x2160 cuda[nv12]
AV: 00:00:29 / 00:00:29 (99%) A-V:  0.000 Cache:  0s+0KB