Archive:Raspberry Pi FAQ: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
Line 188: Line 188:
| Question= Performance: video buffering, stuttering, choppiness  
| Question= Performance: video buffering, stuttering, choppiness  
| Answer=
| Answer=
{{main|Raspberry Pi#Maximizing performance}}
{{#lst:Raspberry Pi|performance}}
{{#lst:Raspberry Pi|performance}}
}}
}}

Revision as of 19:47, 18 October 2014

Template:XBMC FAQ

Home icon grey.png   ▶ Raspberry Pi ▶ Raspberry Pi FAQ

Frequently Asked Questions XBMC running on the Raspberry Pi.


General FAQ

See also: XBMC all platforms FAQ for FAQs that apply to all versions of XBMC.

Installing XBMC on the Raspberry Pi

Link

Is XBMC for Raspberry Pi different from normal XBMC?

Link
  • The current stable version of XBMC for Raspberry Pi is Kodi v20.5 Nexus. This is the same code that all of the other platforms (Linux, iOS, Mac OS X, Windows, etc) are using.

How do I find out what version of XBMC am I running?

Link
  • XBMC main menu > System > Lower submenu > System info. Note the build date.

Video and audio formats the Raspberry Pi can playback

Link
  • H.264 (up to High Profile) encoded videos are supported up to 1080P using hardware video decoding. Note: Hi10P will not work.
  • MPEG-4 encoded videos are supported up to 1080P using hardware video decoding. This includes XviD and recent versions on DivX (but not the older 3.xx DivX).
  • The Raspberry Pi Foundation offers additional video codec licenses for a few dollars. At the moment you can purchase MPEG-2 and VC1, both with support up to 1080P. Read below on how to enable these.
  • MJPEG, VP6, VP8 and OGG Theora are supported as GPU accelerated software decoders. These are limited to SD resolutions.
  • omxplayer does not support software decode of video.
  • dvdplayer can support software decode of SD resolutions of unsupported codecs like DivX 3, msmpeg and sorenson spark. Use context-menu and "play using dvdplayer"
  • DVD ISOs now default to using dvdplayer and menus should work fine
  • Software DTS audio decode was initially problematic, but works quite well in recent builds. TrueHD audio is CPU intensive and may require overclocking.

Video and audio output on the Raspberry Pi

Link
  • Video output via HDMI up to 1080P. The GUI is 1080p by default, but can be reduced in video settings without affecting video resolution.
  • Video output via the analog component video (RCA) jack will be in SD.
  • Analog audio output via the mini phone jack is supported.
  • Experimental I2S and USB audio is supported withusing paplayer (music) and dvdplayer (video). omxplayer only supports the on-board HDMI and analogue connections.
  • DTS and AC3 audio passthrough audio is supported (and recommended, as it will reduce CPU load on the R-Pi)

How about multichannel audio support?

Link
  • By default audio is downmixed to stereo.
  • If your receiver/TV supports DTS or AC3 passthrough then enable these in audio settings and you will get 6 channel audio.
  • Multichannel PCM audio is supported over HDMI. Note: not all receivers support this and toslink/optical will not.
  • Enable by setting the speaker configuration to suitable value (e.g. 5.1 or 7.1).
  • If your recevier does not support multichannel PCM, then leave this at 2.0. You will still get multichannel audio through passthrough.

Enabling additional video codecs

Link

You can buy additional video codecs (VC-1 - used in some bluray discs, and MPEG-2) from the Raspberry Pi Foundation online shop. After purchase the keys are emailed to you, looking like this (invalid keys used for example):

decode_MPG2=0x1cc591c7
decode_WVC1=0x8aa09876

In order to enable additional video codecs you should modify /boot/config.txt and add these lines literally. The method may vary per distribution:

  • Manual: Open /boot/config.txt with a text editor like nano or vi, and add the keys.
  • XBian: You can add/remote your keys using XBian-config. After reboot your keys will be entered and ready to use.
  • Raspbmc: Navigate to Programs -> Raspbmc Settings -> System Configuration -> MPEG2 codec license/VC1 codec key. Enter your keys with the onscreen keyboard then XBMC will prompt you to reboot. After reboot your keys will be entered and ready to use.
  • OpenELEC: Type mount /flash -o remount,rw to remount the boot partition in read/write mode. The file to edit is located in /flash/config.txt, and contains stubs for the license keys. Add the keys using nano or vi. There is also an unofficial add-on which can be used to enter the codec information.

Accessing media

Link
  • You can connect to media that's being shared from a computer, HTPC, or NAS device on your local network.
  • You can access media on the main SD card or from the USB ports (hard drives, USB stick drives, hubs, all supported).

Add-ons and skins

Link
  • XBMC for Raspberry Pi is a full version of XBMC and will be able to use all non-platform specific add-ons and skins. More feature rich (CPU demanding) skins might not run smoothly, so keep to "lighter" skins.
  • Recommended lite skins include: Confluence (default skin), Amber, Metropolis, Quartz, Quartz Reloaded, Slik, xTV-SAF. Aeon Nox 5 is usable on Gotham builds.

How to properly shutdown/disconnect

Link
  • It is not possible to use traditional "shutdown" on the Raspberry Pi. The only way to power it off is to disconnect the power.
  • ALWAYS select the shutdown command in XBMC before powering off the Raspberry Pi. Failure to do so can corrupt the XBMC library databases, other databases, or even other OS files.
  • Most users leave the Raspberry Pi on all the time, as it uses very little power (the cost of electricity for a year is about the price of a hamburger).

Remotes for Raspberry Pi

Link
  • Any Keyboard such as wired, wireless, bluetooth. This includes "keymotes" such as a Rii or Boxee remote.
  • Web interfaces, including add-on interfaces.
  • XBMC smartphone and tablet remote apps.
  • Other IR remotes can be used with USB IR receivers such as the Flirc.
  • CEC - Includes information about controlling your Raspberry Pi via compatible HDMI CEC products.
  • GPIO IR receiver - A simple bare IR receiver can be connected to the R-Pi's GPIO pins using these instructions.

MySQL library sharing

Link
  • If you are using MySQL library sharing features, please note that your library will only sync with the Raspberry Pi if all your other XBMC instances are running the same version (how to check your version).

Troubleshooting

Getting more help with XBMC for Raspberry Pi

Link

Userdata folder and logs

Link
See How-to:Submit a proper bug report for bug reporting details and Debug log for how to post the debug log.
  • Userdata folder:
    • OpenELEC: /storage/.xbmc/userdata/
    • Raspbmc: /home/pi/.xbmc/userdata/
    • XBian: /home/xbian/.xbmc/userdata/
  • Debug log:
    • OpenELEC: /storage/.xbmc/temp/xbmc.log
    • Raspbmc: /home/pi/.xbmc/temp/xbmc.log
    • XBian: /home/xbian/.xbmc/temp/xbmc.log

Wrong language displayed in XBMC

Link

Raspberry Pi known issues

Link

Frodo issues

Performance: video buffering, stuttering, choppiness

Link

Note: Some of these tweaks are more aimed at the Pi 1 CPUs (A, B, A+, B+, Compute Module, Zero) as they only have a slow single-core CPU. Raspberry Pi 2/3 probably doesn't need some of these tweaks to run Kodi really well, but it also won't hurt anything, if you really want to push things to their limit.

  • Avoid "heavy" skins and lots of "service" type add-ons that run in the background.
  • Turn off RSS feeds and any scrolling text options for your skin. Depending on the skin/text, this can really boost a Pi 1, sometimes even a Pi 2/3.
  • Use an SD card with good rewrite speeds. The class of the SD card doesn't always mean it will be better, as that speed classification is for sustained reading and writing, whereas for Kodi, random read/write speeds are more important.
  • You can also try a combination of SD and fast USB drive for your Kodi install, but with the recent software improvements even just using a good SD card is about as fast as using a fast USB drive.
  • Avoid using wifi. If you do use wifi, use a wifi adapter that contains two antennae (internal or external) that advertises "300 Mbps". Otherwise, stick to wired ethernet, local USB drives, or ethernet-over-power devices (like Homeplug).
  • Try using NFS file shares instead of SMB file shares.
  • Overclock. Most Pi's can handle a significant overclock, as long as they have a good power supply. There is no universal setting that will work for everyone (except for the default speed that you get without overclocking). Try various overclocking settings and run Kodi for a while to see if it's stable. If one group of overclocking settings causes crashes, try a group of lower settings.
Note: Overclocking is pretty important for the Raspberry Pi 1 (A, B, A+, B+) and Zero, but much less so on the Pi 2/3 due to the multiple CPU cores as well as increased speed per core. You can still overclock the Pi 2 if you really want to, but for most users it makes little difference.
  • By default, "Extract thumbnails from video files" (in Media Video Settings) is disabled on the Pi, improving browsing performance.
  • For smoother video playback, enable "Adjust display refresh rate" in |playback settings
  • When using dvdplayer, "Sync playback to display" for sync method are recommended; see playback settings.
  • Make sure the video is using H.264 (up to High Profile — Hi10P will not work), or MPEG-4, or, if additional codecs have been enabled, MPEG-2 or VC-1.
  • Passthrough is recommended as it lowers CPU usage for DTS and AC3. Use audio passthrough if your TV/receiver supports it.
  • To determine which audio passthrough formats your HDMI-connected TV supports, you can log in via SSH and run this command: /opt/vc/bin/tvservice a (on LibreELEC: tvservice -a).
  • For locally connected drives containing videos and music, the filesystem can have an impact on read and write speeds. NTFS for example tends to be much slower on any Linux-based system than the more native ext2, ext3, etc.
  • If you use MySQL, you will want to make sure that your images are pre-cached using the Texture Cache Maintenance utility tool. Local libraries typically don't need this as their images are cached when videos are scanned in. Using MySQL can improve performance as the database queries are handled by another machine.
  • Organizing your movies in single folders for each movie, rather than all movies in one folder, is recommended. The individual folders reduce the time it takes for Kodi to look for supporting media like external subtitles, which makes browsing, scanning and starting playback a little faster. You might also want to consider pre-scraping the meta data using a Library manager to reduce the time it takes to scan in both movies and TV shows.

Memory usage (especially with 256M Pi)

Link
  • gpu_mem should be set to 128M minimum on Gotham. On a 512M Pi it may be worth increasing this if you are running heavy skins, using dvdplayer for HD videos or if you want to increase the default fanart resolution or colour depth. 256M should be more than enough.
  • A 256M Pi is quite short on memory. Be careful with running other apps in the background (e.g. torrents) or installing add-ons that consume memory.
  • The default cachemembuffersize is too high for a 256M Pi. Reduce it in advancedsettings to 2097152 (or use 0 to cache to sdcard).
  • Reducing the "GUI resolution limit" (e.g. to 720p) in settings/system/video will save memory. Video will still play at full resolution (e.g. 1080p).
  • Enabling "higher colour depth artwork" will use more memory. It should be disabled on 256M Pi.
  • Reducing imageres/fanartres will reduce memory usage.

TV is not detected unless powered on first

Link
  • Some TVs/receivers only report their capabilities (EDID) through HDMI when powered on before the Pi.
  • If TV doesn't get the right resolution or CEC doesn't work when Pi is powered before the TV/receiver then you can:
  • Run: sudo tvservice -d edid.dat (after booting with TV/receiver powered on first)
  • copy the edid.dat to the FAT partition (/boot on raspbmc and /flash on openelec)
  • and add to config.txt: hdmi_edid_file=1 and hdmi_force_hotplug=1
  • Note: if you change TV/receiver or use a different HDMI input you should capture a new edid.dat file