Video instellingen ION XBMC 1080p@24Hz

Video instellingen voor een ION moederbord met XMBC Live 9.11 aangesloten op een FullHD TV.
Zie dit artikel om 24p te configureren.

System instellingen:

  • Video output: 1920x1080p@24hz.
  • Vertical blank sync: Always enabled

Video playback instellingen:

  • Render method: VDPAU
  • Adjust display refresh rate to match video: Yes
  • Sync playback to display: Yes
  • A/V sync method: Video clock (resample audio)
  • Allowed error in aspect ratio to minimize black bars: None

24p in XBMC met Nvidia ION.

Inleiding.

De meeste 1080p mkv’s hebben een refreshrate van 24p, maar XBMC stuurt standaard 1080p60 naar Cellie’s Full HDTV als er 24p content word afgespeeld.
De ION chipset en de TV zijn allebei in staat 24p weer te geven, maar toch is de deze refreshrate niet te kiezen in de instellingen van XBMC. Daar gaan we wat aan doen.

Let op, 24p werkt alleen als je een TV hebt die ook 24p content aan kan. Het voorbeeld gaat uit van een Samsung LE40A565 TV verbonden via hdmi met een PC met een POV ION moederbord met XBMC 9.11 Live op de harde schijf geinstalleerd.

Backup.

We gaan de geldige resoluties van de monitor door X window server laten opslaan en dan deze gegevens in /etc/X11/xorg.conf toevoegen. Dit is het hoofd configuratie bestand van X.
Daarom maken we als eerste een backup van /etc/X11/xorg.conf.

cellie@XBMCLive:~$ cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup

Resoluties loggen.

Voeg daarna het volgende toe aan het bestand /etc/X11/xorg.conf in de “Screen” sectie om de multi-monitor support uit te schakelen:

Section "Screen"
    Option         "DynamicTwinView" "false"
    ...
EndSection

Dan stoppen we XBMC en daarmee(?) de X server.
Daarna starten we X weer op en sturen de uitvoer naar ons eigen logbestand.

cellie@XBMCLive:~$ sudo stop xbmc-live
cellie@XBMCLive:~$ sudo X -verbose 6 > ~/xlog.txt 2>&1

Stop X na ongeveer 5 seconden met ‘CTRL+c’.

HSync/VRefresh.

Dan zoeken we in het bestand xlog.txt naar de HSync en VRefresh van de TV:

(--) Jan 31 13:12:47 NVIDIA(0): Valid HSync Range            : 26.0 kHz - 68.0 kHz
(--) Jan 31 13:12:47 NVIDIA(0): Valid VRefresh Range         : 23 Hz - 61 Hz

Dit gebruiken we in xorg.conf. Vul de waarden in die je op je eigen HTPC ziet! Gebruik alleen de waarden uit het voorbeeld als je ook een Samsung LE40A565 TV hebt, anders loop je grote kans zonder beeld te komen zitten.

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Samsung"
    ModelName      "LE40A565"
    HorizSync       26.0 - 68.0
    VertRefresh     23.0 - 61.0
    ...
EndSection

ModeLines toevoegen.

Daarna zoeken we in xlog.txt de juiste resolutie op. De 24p resolutie op een Samsung LE40A565 ziet er als volgt uit:

(II) Jan 31 13:12:47 NVIDIA(0):   Validating Mode "1920x1080":
(II) Jan 31 13:12:47 NVIDIA(0):     1920 x 1080 @ 24 Hz
(II) Jan 31 13:12:47 NVIDIA(0):     For use as DFP backend.
(II) Jan 31 13:12:47 NVIDIA(0):     Mode Source: EDID
(II) Jan 31 13:12:47 NVIDIA(0):       Pixel Clock      : 74.16 MHz
(II) Jan 31 13:12:47 NVIDIA(0):       HRes, HSyncStart : 1920, 2558
(II) Jan 31 13:12:47 NVIDIA(0):       HSyncEnd, HTotal : 2602, 2750
(II) Jan 31 13:12:47 NVIDIA(0):       VRes, VSyncStart : 1080, 1084
(II) Jan 31 13:12:47 NVIDIA(0):       VSyncEnd, VTotal : 1089, 1125
(II) Jan 31 13:12:47 NVIDIA(0):       H/V Polarity     : +/+
(II) Jan 31 13:12:47 NVIDIA(0):     Mode is valid.

Let er op dat de mode die je toevoegt valid is!

Met deze gegevens kunnen we nu een Modeline in de sectie “Monitor” maken.
De getallen vanaf PixelClock tot en met VTotal achter de naam van de resolutie invullen, gescheiden door een spatie. Daarachter nog de horizontale en verticale synchronisatie.

Section "Monitor"
    ...
    ModeLine "1920x1080@24p" 74.16 1920 2558 2602 2750 1080 1084 1089 1125 +hsync +vsync
    ModeLine "1920x1080@60p" 148.35 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
    ModeLine "1920x1080@50p" 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
EndSection

Resoluties beschikbaar maken.

Nu alleen nog de resoluties beschikbaar maken in de “Screen” sectie, onder  SubSection "Display". Gebruik de exacte naam van de ModeLine.

Section "Screen"
    ...
    SubSection     "Display"
        Depth       24
        Modes       "1920x1080@24p" "1920x1080@50p" "1920x1080@60p"
        ...
    EndSubSection
EndSection

Zet de composite uitgang uit.

Als extra schakelen we nog de composite video uit, dit _zou_ het renderen ten goede komen. We voegen een extra sectie toe aan xorg.conf:

Section "Extensions"
    Option         "Composite" "Disable"
EndSection

Sla /etc/X11/xorg.conf op.
Nu kun je XBMC weer opstarten met de volgende commando:

cellie@XBMCLive:~$ sudo /etc/init.d/xbmc-live restart

Nu zou XMBC 1080p op 24p, 50p en 60p moeten kunnen uitsturen.

Met de ‘Z’ toets kun je in XBMC de refreshrate weergeven.

Deze thread op het AVS forum en deze op het XBMC forum zijn onder andere gebruikt als uitgangspunt.
http://www.xbmcfreak.nl/xbmc-artikelen/xbmc-en-auto-refresh-rate/