====== Raspberry PI mediacenter con OpenELEC ====== Home page: [[http://openelec.tv/]] ===== Accesso SSH ===== Per impostazione predefinita l'accesso SSH è disabilitato, dall'interfaccia grafica è possibile abilitarlo, oppure modificando il file **''/storage/.cache/services/ssh.conf''**: SSHD_START=true SSHD_DISABLE_PW_AUTH=false Accesso **root**, password **openelec**. ===== Configurazione ===== Il filesystem principale viene montato in read-only, tutte le configurazioni e i dati utente sono salvati nella partizione montata su **''/storage/''**. Vedere ad esempio le directory: * **''/storage/.cache/''** * **''/storage/.config/''** * **''/storage/.kodi/''** ==== WiFi ==== Le configurazioni del WiFi vengono salvate nella directory **''/storage/.cache/connman/''**, una sottocartella per ogni connessione. ===== Autostart ===== Questa funzione pare che non sia consigliata, vedere in proposito i commenti nel file ''/etc/init.d/93_xbmc''. Ad ogni modo se si crea uno script di ''/bin/sh'' di nome **''/storage/.config/autostart.sh''** e lo si rende eseguibile, questo verrà lanciato alla fine del processo di bootstrap. È possibile ad esempio aggiungere un IP alias (cosa che connman non supporta nativamente) oppure connettersi ad uno storage di rete. ===== Autoplay ===== Creare il file **''/storage/.xbmc/userdata/autoexec.py''**. Per mandare in loop tutti i video contenuti in una directory (verificato con OpenELEC 3.2.4, XBMC 12.2 Frodo): #!/usr/bin/python import xbmc xbmc.executebuiltin('xbmc.PlayMedia("/storage/videos/loop","isdir")') xbmc.executebuiltin('xbmc.playercontrol(RepeatAll)') Altra ricetta (da verificare) che manda in esecuzione una playlist: #!/usr/bin/python import xbmc xbmc.executebuiltin("PlayMedia(/storage/.xbmc/userdata/playlists/video/autoplay.m3u)") xbmc.executebuiltin("PlayerControl(repeat)") Ecco invece un esempio di come si dovrebbe mettere in esecuzione automatica un plugin: xbmc.executebuiltin("RunAddon(plugin.video.youtube)") Per lanciare automaticamente la **lista file** della finestra **video** ci sono diversi metodi basati su ''ActivateWindow''. Nell'esempio che segue i primi due comandi sono equivalenti (versione 11 Eden); fanno riferimento rispettivamente al nome della sotto-sezione o al percorso logico. Il terzo comando invece apre direttamente la vista file di una sottodirectory. Con il quarto comando si apre invece la lista file da un server remoto: #!/usr/bin/python import xbmc #xbmc.executebuiltin('xbmc.ActivateWindow(Videos,Files)') #xbmc.executebuiltin('xbmc.ActivateWindow(Videos,sources://video/)') xbmc.executebuiltin('xbmc.ActivateWindow(Videos,"/home/media/videos/cartoni_animati/")') #xbmc.executebuiltin('xbmc.ActivateWindow(Videos,"smb://server/videos")') ===== Uscita HDMI ===== Se il Raspberry viene acceso con il cavo HDMI scollegato o con il televisore spento, si attiva l'uscita composita. Per verificarlo: tvservice -s state 0x40001 [NTSC 4:3], 720x480 @ 60Hz, interlaced ecco invece un esempio di output in HDMI: tvservice -s state 0x12001a [HDMI DMT (39) RGB full 16:9], 1360x768 @ 60Hz, progressive Per forzare l'uscita video e audio su connettore HDMI (anche se il Raspberry PI viene acceso prima del televisore) bisogna modificare il file **''/flash/config.txt''**, che però è montato read-only. Quindi prima si rimonta il filesystem in read-write: mount -o remount,rw /flash e poi si aggiungono le opzioni in ''config.txt'': # Force HDMI even if unplugged or powered off hdmi_force_hotplug=1 #Normal DVI mode (No sound) #hdmi_drive=1 #Normal HDMI mode (Sound will be sent if supported and enabled) hdmi_drive=2 è possibile anche pre-selezionare la risoluzione, se il monitor è collegato si interroga sui possibili modi video supportati, tra quelli del gruppo CEA (di solito per i TV) oppure del gruppo DMT (per i monitor): tvservice -m CEA tvservice -m DMT altrimenti vedere i [[http://elinux.org/RPiconfig#Video_mode_options|modi video]] possibili. Quindi nel file ''config.txt'' si mette: # Select CEA (TV) mode group, mode = 16 (1920x1080 @ 60Hz) #hdmi_group=1 #hdmi_mode=16 # Select DMT (monitor) mode group, mode = 39 (1360x768 @ 60Hz) hdmi_group=2 hdmi_mode=39 ===== Telecomando CEC via HDMI ===== In teoria dovrebbe essere possibile controllare XBMC su Raspberry PI con il telecomando del televisore, via cavo HDMI grazie al protocollo [[http://wiki.xbmc.org/index.php?title=CEC|CEC]]. Nel mio caso **non ha funzionato**. Potrebbe trattarsi del cavo HDMI con il pin 13 scollegato, oppure una mancanza del televisore (Samsung LE32D400E). Il menu in questione si trova su //Sistema// => //Impostazioni// => //Sistema// => //Dispositivi di input// => //Periferiche// => //CEC Adapter//. ===== Ottimizzazione ===== Vedere questo [[http://www.gaducated.com/the-perfect-xbmc-setup-on-the-raspberry-pi/|howto]] che pare ben fatto. In particolare: * System => Settings => Videos => Playback and set Adjust display refresh rate to match video to Always. * System => Settings => Appearance (disable RSS feeds) ===== Overclocking ===== Per effettuare l'overclocking si deve accedere via ssh e modificare **''/flash/config.txt''**: mount /flash -o remount,rw vi /flash/config.txt quindi si impostano i valori: # Overclock mode settings. # # default recommended values are: arm_freq | core_freq | sdram_freq | over_voltage # no overclocking : 700 | 250 | 400 | 0 # mode 'Modest' : 800 | 300 | 400 | 0 # mode 'Medium' : 900 | 333 | 450 | 2 # mode 'High' : 950 | 450 | 450 | 6 # mode 'Turbo' : 1000 | 500 | 500 | 6 arm_freq=900 core_freq=333 sdram_freq=450 over_voltage=2