stuttering?
#1
I am running Kodi on a Raspberry Pi B+ using the openElec distribution. I am using TCP to completely control the Kodi system. That is working fine. The start logo shows the system to be Gotham. A version request returns that major=14, base=6, patch=3.

When I play a movie; every 1-2 minutes, sometimes more often, the movie (Audio and Video) freezes for about 10-20 seconds and then continues. This cycle then repeats. The raspberry Pi is hardwired on a lightly loaded 10/100 LAN to my NAS server. I also have a Dune Max player which plays any movie thrown to it over the same LAN from the same source perfectly. The screen resolution is 1920x1080 and all movies are stored as mkv files at 1080P with a high def audio track e.g. DTS HD-MA.

I believe I have hardware acceleration turned on. Is there some parameter that I should also be setting / check? Is there a better performing version that I should be using?

Is this the best I should be able to get out of this hardware?

TIA for any assistance
Reply
#2
Hi,

You should include an xbmc.log file if you want better help. However, you should:
-use NFS instead of samba
-over clock your pi a bit
-try a Helix build. There are many improvements over Gotham.

I get stutter free playback of my bluray rips
Reply
#3
I am not sure if my NAS (unRaid) supports NSF, I think it does but need to check.

I will need to look into openELEC as it purposely hides the Pi to make it easy for a non-computer person. I am not sure how to overclock the Pi as the raspi-config is well hidden. Also openELEC when asked to do an update does the update so although it started as Gotham I am not sure what is running, but I am sure that the XBMC version as reported by XBMC is as I stated 14.6.3.

Thanks for the reply. Are you using OpenELEC or raspbian Wheezy + XBMC? I may just go that way as it will give me a lot more flexibility. Is there a spot on this forum or else where that you know of that details the installation and setup of Kodi on wheezy?

Thanks again.
Reply
#4
No idea what this "version request" is that you mention - 14.6.3 isn't a recognised build identifier for Kodi or OpenELEC.

Upload a debug log (wiki) as this contains all the information anyone would need to determine the exact version you are running.

If you're on a Gotham (Kodi: 13.x, OpenELEC: 4.x) build then you should consider upgrading to Helix (Kodi: 14.x, OpenELEC: 5.x) - this is currently available as a release candidate on the OE web site - download the tar file, copy it in to your Upgrade folder (enter the IP address of your Pi in Windows File - not Internet - Explorer) and reboot the Pi.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
#5
Also for easy OpenELEC overclocking, try the OpenELEC RPi Config addon.

Usual warnings about overclocking apply - it will make your device unstable if you push it too far etc.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
#6
6.14.3 is the JSON-RPC API version for Gotham (13.0-13.2).
Reply
#7
menakite: Thanks, yes the version number I posted was for the version of JSONRPC that I got back from sending Kodi a version request over TCP.

Milhouse: Thanks for the assistance. Unfortunately I am not quite there yet. I went to the OE site and could not find Kodi: Helix 14.x or OpenElec 5.x. I am obviously not looking in the correct location. Could you perhaps point me a little closer?

I assume that to request a to play movie file using NFS I just have to change the file path to begin with nfs: instead of smb: or is the form of the request different? Do I have to turn NFS on as I did SMB, or is it always on. If I have to turn it in I could not find the settings entry to do that.

I have gotten pretty far along in the week I have been playing with Kodi on Pi. I have full control over TCP, audio is fine video when it is playing is also fine. It is just the stuttering issue that has be going. I am assuming that stuttering is the correct term.

Thanks again, the assistance on this forum is superb.
Reply
#8
(2014-12-14, 04:48)barrygordon Wrote: Milhouse: Thanks for the assistance. Unfortunately I am not quite there yet. I went to the OE site and could not find Kodi: Helix 14.x or OpenElec 5.x. I am obviously not looking in the correct location. Could you perhaps point me a little closer?

There's a announcement on the openelec.tv home page... direct link.

(2014-12-14, 04:48)barrygordon Wrote: I assume that to request a to play movie file using NFS I just have to change the file path to begin with nfs: instead of smb: or is the form of the request different?

Pretty much, although you need to reference your NFS share not your SMB share which may be named differently or use slightly different paths. Depending on the make of your NAS you may need to set specific options, there's a wiki page focusing the requirements for different NAS brands.

http://kodi.wiki/view/NFS
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
#9
I upgraded my Pi OpenELEC installation to their 4.97.2 which implements Kodi 14 RC2. I have SSH running from a windows PC using putty.

A couple of questions:

Where is the setting to kill the rss feed at the bottom of the screen.

Where do I find the place where the config information is stored so I can change the overclocking I have looked and looked and looked using SSH and can't figure out where that is.

My NAS (unRaid) has a share called movies with the obvious content. Each movie is in its own folder and all the folders are in movies. The NAS has both SMB and NFS. In the configuration of the share the security aspects are set to export as public which should mean that no Userid or password are required and any one can access the share using NFS. I am using Kodi strictly to play movies and concerts in my Theater. The majority of the movies are BluRay ripped to matroska containers (.mkv). If I send over TCP a command to play a movie using the smb prefix as in:

{"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"file":"smb://Tower/Movies/Skyfall/Skyfall.mkv"}},"id":100}
I get back:
{"id":100,"jsonrpc":"2.0","result":"OK"}
{"jsonrpc":"2.0","method":"Player.OnPlay","params":
{"data":{"item":{"title":"Skyfall.mkv","type":"movie"},"player":"playerid":1,"speed":1}},"sender":"xbmc"}}

If however I try and use NFS (not knowing what I am doing) and I send:
12/16 17:56:32 Function Send: {"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"file":"nfs://Tower/Movies/Skyfall/Skyfall.mkv"}},"id":100}
I get back:
{"jsonrpc":"2.0","method":"GUI.OnScreensaverDeactivated","params":{"data":{"shuttingdown":false},"sender":"xbmc"}}
{"jsonrpc":"2.0","method":"Player.OnStop","params":{"data":{"end":false,"item":{"title":"Skyfall.mkv","type":"movies"}},"sender":"xbmc"}}
{"id":100,"jsonrpc":"2.0","result":"OK"}
Note that in the above the URC of the files are the same, just the protocol prefix differs. The share names are the same and I am wondering if it is permissible to use the same share name for nfs and sbm protocols, logically there is enough info in what is sent to Kodi over TCP to know which protocol to use.

With regard to stuttering I noticed the following when I have Codec Info showing:
On the second line of the display there is a parameter called 'aq:'. When the movie starts it is a high percentage 95-99%. As the movie plays it decreases until when it reaches about 3% the video and audio freezes, the count starts increasing again until it reaches about 93% at which time the video and audio pick right up. With my lack of detailed knowledge re Kodi, I am assuming the aq value is the percentage of buffering that the system of the movie stream. When it gets too low the system "pauses" to make the buffering to get ahead, and then resumes playing. I also assume that aq stands for acquired and is related to how full the memory buffer space is. The Pi is hardwired with a static IP address. The LAN is 10/100, with the Pi running at 100. LAN usage is about 3-5%
I will also post this at OpenELEC as I am not sure how they may have modified the environment for Kodi
Reply
#10
This is also appropriate:

Maximizing Performance on the RPi

Reply
#11
Congrats on SSHing in to your Pi. You can overclock by using an add-on as suggested above. Otherwise...

Code:
mount /flash -o remount,rw
nano /flash/config.txt

You can then edit that file to enable an overclock. Your power supply and cable (as well as your Pi) directly influence how high you can overclock. You don't need to go too high to see a performance boost in the GUI and possibly decrease your stuttering.

Most get a modest overclock without issue:
arm_freq=900
core_freq=333
sdram_freq=450
over_voltage=2

See the link to the thread just posted for more higher (maximum) values some people get. Note: some of those values can invalidate your warranty.

Now:
Code:
mount -o remount,ro /flash
reboot
and wait for the reboot to test your overclock. If you get reboots, crashes, freezes, or an unstable Kodi, you'll need to decrease the overclock. If you see a "rainbow square" in the top corner of your screen, your power supply/cable is not good enough.

Regarding using NFS, using the Kodi GUI, add a new movie source using NFS instead of Samba. Then see if you can play a movie that way (not using jsonrpc). Use a keyboard to set it up and test it. Once that's going, try with jsonrpc.

Edit:
RSS feeds can be disabled by System->Appearance->Skin (Standard, Advanced, or Expert level must be enabled).

Or create an advancedsettings.xml file in your userdata folder and paste this in:
Code:
<advancedsettings>
  <lookandfeel>
    <enablerssfeeds>false</enablerssfeeds>
  </lookandfeel>
</advancedsettings>

P.S. Google is your friend
Reply
#12
Doug,

All Fixed and working well. The GF left and I was able to concentrate on what I was doing. I found this stuff by Leopold which is an add-On that allows you to modify the rPi config file from the Kodi user interface. The add on has a nice interface for overclocking where you can choose different levels of customization. It took me a while to figure out how to get it all installed, but looking in hindsight I was thinking too complex! He starts by stating one must install the zip file he provides. I spent hours trying to understand the context of his "install" It turned out it is all taken care of very nicely by Kodi, where it allows you to install the zip file from a SMB share. I did that, then proceeded to enable his plugin and get the add-on for the rpi configuration changes. I set it to Medium which turns out to be the parameters you specified.

I checked two movies from my NAS server using smb as the protocol. I left the codec info on the screen which must obviously place an additional load on the system just to display that info. The buffering started low but ended up staying at around 85-99% and all stuttering stopped. Stuttering only occurred when buffering was at the 3-5% levels at which time rendering stopped until the buffers were completely replenished. By buffering I mean the value shown on the codec info screen as "aq;" which I assume stands for acquired.

I did not bother to investigate any further NFS as I suspect I will not need it. I did turn off the RSS feeds as I didn't want them.

Most of my problems had to do with wiki data possibly being out of date at both the OpenELEC site and the Kodi site. Documentation is usually the last thing to get done.

When my second Dune HD MAX player fails, I will have a complete replacement in the form of an rPi running Kodi or whatever will begin with L or M or . . .

This is a lot cheaper than anything else on the market. I set my Theater system up so when I am ready to watch a movie I can select either the Dune or Kodi to render it.

Thanks to all that assisted me in this.
Reply
#13
@ barrygordon, if you have a proper 5V/2.0 Amp power supply I would just Max Overclock the RPi.

It wont hurt it at all, you wont end up with a smoking mess and your house will not smell of burnt Raspberries!!
Everything will be quicker and and the RPi a joy to use.
SD card corruption issues when overclocking have been fixed for a while now too.

I've had no issues with a Max Overclock (RPi B+) in 6 months now. Its never turned off. Stable as.
Mine never gets over 65 degrees C. (Max is 85)

Also set this: Disable Dynamic Overclock (force_turbo) - enable (solid blue dot)

Reply

Logout Mark Read Team Forum Stats Members Help
stuttering?0