Skip to content

Media-player🔗

Baas info🔗

Windows, sest siis KODI toetab HDR, aga hetkel HDR ei tööta päris nii nagu vaja
Ei tea kas asi selleles, et Nvidia kaart ja draiverid ei anna õiget HDR infot v mis, aga pilt on väga tuhm

Seadistada saad kui Display on pandud VirGL-GPU sättele

VM seadistus Prox-is🔗

Memory 8.00 GiB [balloon=0]
Processors 6 (1 sockets, 6 cores) [x86-64-v3-AES]
BIOS UEFI
Display Alguses VirGL-GPU, aga siis kui oled serveri püsti seadistanud ja ssh töötab, siis võta ära ja pane None (none), sest muidu prox saab display õiguse ja üle HDMI pilti ei tule
Machine q65
GPU Täpsemalt GPU võiks olla terve device, selles mõttes, et mul näiteks on ID 0000:10:00.0 kui GPU,seal on ka veel 0000:10:00.1 kui audio controller, ei taha, et see maha jääks, lisaks on vaja GPU lisades valida All Funtsions, ROM-Bar, Primary GPU ja PCI-Express linnukesed
Lisa seadmed Ja kui lisad mingi hiire või klava, siis see lisa USB Device alt

Staatiline IP - 192.168.1.30

KODI seadistamine🔗

Skin Repo - https://jurialmunkey.github.io/repository.jurialmunkey/
Jellyfin plugin - https://jellyfin.org/docs/general/clients/kodi/ > selle repo - https://kodi.jellyfin.org
Peale repode lisamist peab neid installima KODIs ZIP valiku alt
Küsib luba "Unknown sources", see vaja lubada, aga luba ka allpool, "All sources" võib uuendada addon-e, muidu skin ei lase installida
Weather plugin on Gismetoo või multi-weather
KODI kasutab Windowsi API, et öelda kui aeg lülitada ümber HDR peale, on vaja KODI sätetes panna, et tegemist on HDR ekraaniga, kasutasin siit soovitatud sätteid ja muutsin vastavalt sellele, et töötaks nii nagu soovin:
Kodi Matrix 19.0 HDR Windows API (merged in Kodi 19 alpha master)

RECOMMENDED SETTINGS (kopeeritud lingitud foorumist)

KODI:
Settings > System > Display:

  • Resolution 3840 x 2160 (4K)
  • Use full screen window = OFF (real full screen)
  • Delay after change refresh rate = 2 seconds
  • Use limited color range = OFF (full range)
    Settings > Player:
  • Adjust display refresh rate = On start/stop
  • Render method = Auto detect
  • Allow hardware acceleration DXVA2 = ON
  • Use display HDR capabilities = ON (enable auto switch HDR mode and color space)

GRAPHICS CONTROL PANEL:

  • Refresh rate: 59 or 60 Hz (for Windows desktop and Kodi GUI)
  • Color space: RGB 8bit (driver auto-switch 10 or 12 bit when is output HDR10 signal)
  • Signal range: 0 - 255 / full range
  • Video settings (HW decoding): All default or "application controlled". All contrast / color enhancements = OFF (cancause artifacts)

TV:

  • HDMI video range: Auto detection or full range / black level high
  • Color space: Auto detection
  • HDR mode: Auto detection

TROUBLESHOOTING / ALTERNATIVE SETTINGS
Some setups do not support HDR at 60Hz because one element of chain doesn't support it (usually by HW limitations)
Then should be used alternate settings:

  • Set Windows desktop refresh to 30 Hz <= this may be the safest way
  • Set "Delay after change refresh rate" to 0 s. <= try these first
  • Set Full screen mode to windowed full screen
  • Set graphics control panel to YCbCr 4:2:2 or 4:2:0 <= when everything else doesn't work
    Since almost all movies are at 24 fps and is only need avoid HDR 60 fps (SDR 60 fps for Kodi GUI still is possible) Set"delay after change refresh rate" to 0 s. is a better workaround (if works) because allows fast switch from SDR 60 Hz =>HDR 24 Hz without intermediate state HDR 60 Hz not allowed

SETUPS WITH AVR
Configuration may NOT be trivial because:

  • AVRs may not support HDR passthrough on all input/output ports
  • AVRs may not support all HDR formats (4K 60Hz RGB 8bit)
  • AVRs may require activating one o more options in the menu settings (Enhanced mode)
  • Others

Alternatiiv / kasutasin varem Jellyfin Media Player
Ei soovita kasutada

OS oli ubuntu, aga nüüd kõige uuema peal asi ei tööta kui ei taha ise kompileerida tarkvara või kasutada flatpak (flatpak-il ei ole midagi viga), aga mulle ei meeldinud tarkvara välimus ja kehv TV välimus
Lisaks oleks tulevikus olnud probleem meedia kuvamisega kuna nende MPV implementatsioon on kehv

Seadistamine

Juhend Lisainfo
Peamiselt kogusin infot nendest allikatest:
https://forum.kodi.tv/showthread.php?tid=231955
https://forum.odroid.com/viewtopic.php?t=22386
Installi GPU draiver, kõige lihtsam on kasutada ubuntu-drivers installimist:
sudo ubuntu-drivers install
Ja testimiseks kirjuta nvidia-smi ja peaks kuvama GPU infot, kui sul AMD kaart, siis istu sisse lol
Kui mingi jama, siis lihtsalt proovi installida kõige uuem nvidia draiver
Vaata mis kõige uuem ja siis installi:apt search nvidia-driver``sudo apt install nvidia-drivers-550 nvidia-dkms-550
Lae alla ja installi JMP
mkdir JMP
cd JMP
wget [https://github.com/jellyfin/jellyfin-media-player/releases](https://github.com/jellyfin/jellyfin-media-player/releases)
sudo apt install ./faili-nimi
Või kasuta Flatpak - https://flathub.org/apps/com.github.iwalton3.jellyfin-media-player
Ei tea kas sellega sama autostart seadistus töötab muidugi :)
JMP vajab mõndasid asju, seega pead selle ka vb jooksutama, ma ei tea mida ma tegin vahepeal :)
sudo apt install build-essential autoconf automake libtool libharfbuzz-dev libfreetype6-dev libfontconfig1-dev libx11-dev libxrandr-dev libvdpau-dev libva-dev mesa-common-dev libegl1-mesa-dev yasm libasound2-dev libpulse-dev libuchardet-dev zlib1g-dev libfribidi-dev git libgnutls28-dev libgl1-mesa-dev libsdl2-dev cmake wget meson nasm ninja-build python3 g++ qtwebengine5-dev qtquickcontrols2-5-dev libqt5x11extras5-dev libcec-dev qml-module-qtquick-controls qml-module-qtwebengine qml-module-qtwebchannel qtbase5-private-dev curl unzip
Installida mõned vajalikud asjad, et JMP-it saaks jooksutada:
sudo apt install ssh software-properties-common xorg xserver-xorg-legacy alsa-utils mesa-utils git librtmp1 libmad0 lm-sensors libmpeg2-4 avahi-daemon libnfs13 libva2 vainfo linux-firmware dbus-x11 udisks2 openbox pastebinit udisks2
Anna xserver-i kasutamis õigus non-root kasutajale (vali 3. Anyone):
sudo dpkg-reconfigure xserver-xorg-legacy
Ja lisa Xwrapper-is kõige alla see juurde:
sudo nano /etc/X11/Xwrapper.config``needs_root_rights=yes
Adding needs_root_rights=yes to /etc/X11/Xwrapper.config allows the X server to run with root privileges, which might be necessary for certain hardware configurations or legacy applications. However, it comes with security trade-offs, so it should only be used when absolutely necessary and with a good understanding of the risks involved.
Teeme JMP jaoks eraldi konto kus saame hoida JMP conf faile:
sudo adduser --disabled-password --disabled-login --gecos "" jellyfin``sudo usermod -a -G cdrom,audio,video,plugdev,users,dialout,dip,input jellyfin
Anna õigus masin resada või sulgeda:
nano /etc/polkit-1/localauthority/50-local.d/custom-actions.pkla

[Actions for jellyfin user]
Identity=unix-user:jellyfin
Action=org.freedesktop.login1.*;org.reedesktop.udisks2.*
ResultAny=yes
ResultInactive=yes
ResultActive=yes

[Untrusted Upgrade]
Identity=unix-user:jellyfin
Action=org.debian.apt.upgrade-packages;org.debian.apt.update-cache
ResultAny=yes
ResultInactive=yes
ResultActive=yes
Ei ole vajalik, sest JMP sees ei ole shutdown ja restart valikuid nagu Kodis
Loo systemd teenus fail:nano /etc/systemd/system/jmp.service
[Unit]
Description = jellyfin-standalone using xinit
Requires = dbus.service
After = systemd-user-sessions.service sound.target network-online.target

[Service]
User = jellyfin
Group = jellyfin
Type = simple
PAMName=login
ExecStart = /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/bin/openbox-session -- :0 -nolisten tcp vt7
Restart = on-abort

[Install]
WantedBy = multi-user.target
ja "lülita see sisse":
sudo systemctl enable jmp
See on mis käivitab JMP automaatselt kui jellyfin konto sisse logib???
Ma tegelt ei tea mida see teeb :D

ChatGPT kirjeldus selle kohta:
This systemd service is set up to run JMP as a standalone application using xinit and Openbox as the window manager. It ensures that essential services like D-Bus, sound, and network are available before starting, and it restarts Kodi if it aborts unexpectedly. The service runs under the kodi user and group to ensure proper permissions and isolation.

See restart = on-abort ei tööta ja tegelt ei taha ka, et töötaks
Muidu kui peaks juhtuma, et JMP on vigane ja crash'ib peale käivitamist, siis läheks VM restart loop'i :)
Ilmselt peaks muuta selliseks, kui tahab, et töötab:
ExecStart = /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/bin/jellyfin-standalone -- :0 -nolisten tcp vt7
Muudame ressursi limiitide confi, et anda jellyfin kontole suurem audio luba, et ei tekiks liigset latency't:
nano /etc/security/limits.conf
Lisa kõige alla juurde:
jelly - nice -1
Mida see tähendab:
nice: This parameter sets the default nice value for the user's processes. Negative nice values increase priority. Here, -1 means higher priority compared to the default.
Kasutame openbox kui display manager'ina ja jooksutame JMP:
sudo mkdir -p /home/jellyfin/.config/openbox
sudo touch /home/jellyfin/.config/openbox/autostart
sudo chown jellyfin:jellyfin /home/jellyfin/.config -R

nano /home/jelly/.config/openbox/autostart

OUTPUT=`xrandr -display :0 -q \| sed '/ connected/!d;s/ .*//;q'
xrandr -display :0 --output $OUTPUT --set "Broadcast RGB" "Full"
xsetroot #000000
xset s off -dpms
/usr/bin/jellyfinmediaplayer --scale-factor 2
while \[ $? -ne 0 ]; do
/usr/bin/jellyfinmediaplayer --scale-factor 2
done
openbox --exit
VÄGA TÄHTIS, ET KÕIK ÜLALKOMAD ON JUST NEED ÕIGED ÜLALKOMAD, ÄRA PROOVI ISE KIRJUTADA
Tee copy-paste, siis on kõige kindlam, et on õige
--scale-factor 2 on ise lisatud, 4k reso telekaga on ilma selleta tekst väga väike
Et JMP-il ei oleks seda ülemist riba nagu igal tava rakenduse aknal on:
sudo nano /etc/xdg/openbox/rc.xml

Lisa kõige alla, enne kõige viimast sissekannet, aga peale > application:
<!-- Jellyfin sätted-->
<application name="jellyfinmediaplayer">

<!--eemalda ülemine toolbar-->
    <decor>no</decor>
<!--aken on fullscreen-->
    <fullscreen>yes</fullscreen>
<!--aken on maksimeeritud-->
    <maximized>true</maximized>

</application>
Ja siis JMP-is F11, et oleks fullscreen
Leitsin siit
https://www.youtube.com/watch?v=E0WmNxIFcVg
Kõige viimasena tee reboot kui mingi asi ei ole seda vahepeal juba küsinud:
sudo reboot