Light jerkiness when playing videos with XBMC (compared to MPC-HC)
#1
EDIT: Jitter problems for videos have been solved. However there is now a constant audio offset problem - see this thread please: http://forum.xbmc.org/showthread.php?p=5...post561889

Hello,

My first post here so I hope I'm doing everything right.

Just last weeked I got myself an HTPC, Asus EEE Box 1501, which is based on Nvidia ION -chipset and graphics adapter and Intel Atom 330 dualcore CPU and 2 GB memory and so forth. It's running a fresh install of Windows 7 Home Premium and currently only has a very light software load on it and I'd like to keep things that way (meaning: not many background processes such as antivirus).

Drivers for Nvidia ION chipsets, graphics adapter, Realtek LAN-chip and Realtek audio are the newest found on thei respective official driver sites.

I have the newest MPC-HC nightly build installed and I also installed XBMC Nightly Build version R31198 (found here: http://mirrors.xbmc.org/nightlies/win32/ ). I got the Nigtly Build because I needed the DXVA(2)-support because my HTPC will not be able to decode HD-video with software. I have installed 0 codecs / codec packs of any sort.

The problem is that when I play 720p video on MPC-HC it looks just fine. No problems there. Most of the MPC-HC settings are still on default because I haven't had too much time to tune things.

But with XBMC, there is some jitter/stutter/lag that's almost not noticeable, but still I can see it's there and it distracts me a lot when I'm trying to watch shows. It's almost some sort of "microstutter" and I'm quite certain it's not about ION not being able to handle my videos but it's some setting or bug or some other issue there. How can I fix this? Is it some kind of sync issue? The display I'm using is Sony Bravia 40V4000 (40" LCD).

The test video I'm using is a 720p h.264-video on an MKV-container encoded with x.264.

By the way, what's the difference between DXVA (MPC-HC) and DXVA2 (XBMC)?

Bonus-question: Do I need Haali Media Splitter on my computer? So far everything I've tried has played well even without Haali installed, so what would I need it for? Before I thought it's required to play videos in MKV-containers.
Reply
#2
Bonus answer - you do not need Haali. Big Grin Some guides for MPC-HT require you to install Haali but I can play EVERYTHING in MPC-HT without anything extra installed.

Try to install svn 31009 as it is the last build for me that doesn't have that microstutter. There is a known bug confirmed by more than a few that, at least for me, hadn't been fixed by the next few builds but may be fixed by now..BUT..and for me this is a big BUT, there is now a problem with the TVDB addon so new TV shows aren't being added. Oh the joys of living on the edge!

DXVA2 requires Win7 I believe. Technically, I don't know but it must be better..is has a "2" in it. LOL

Hope this helps you out.
Reply
#3
Thanks, that clarified a few things and it's kind of always good to know you're not the only one having certain problem.

What do you mean by SVN build 31009? Where can I find that? Are SVN builds the same as nightly builds? There isn't such version at least in here: http://mirrors.xbmc.org/nightlies/win32/

So should I try something earlier than rev 31009, say 30898?
Reply
#4
hyperionfin Wrote:Thanks, that clarified a few things and it's kind of always good to know you're not the only one having certain problem.

What do you mean by SVN build 31009? Where can I find that? Are SVN builds the same as nightly builds? There isn't such version at least in here: http://mirrors.xbmc.org/nightlies/win32/

So should I try something earlier than rev 31009, say 30898?

31009 can be found here. It's stable for me and all the scrapers work.

http://sshcs.com/xbmc/?mode=Notes

It is an "unofficial" build but works just fine. I update to the latest build pretty much daily and have a few strict requirements:

- all the scrapers I use have to work - IMDB & TVDB
- playback should be smooth Smile

If anything is borked I revert back to the last one that worked..in this case 31009. YMMV
Reply
#5
I haven't had enough time yet to test the build you suggested. Thanks for the tip anyway, I'm going to try it out today.

I did some testing yesterday though with my current build. On another forum people suggested that I should enable both, "Sync playback to display" and "Adjust display refresh rate to match video" from settings to smoothen the video. They didn't exactly tell me which method to use in syncing playback to display but I gathered "Video Clock (Resample Audio)" would be good.

Test results:

Video #1: h.264 in .mkv, encoded with x264. Profile: [email protected], Framerate: 23.976 frames/s, Ref. Frames: 3, Resolution: 1280x720

Both settings enabled, I pushed play and my TV told me that it had moved into 24p mode. In the beginning video stuttered hell of a lot. When I pushed 'O' on the keyboard I saw almost every second frame was dropped and FPS was around 12. Then suddenly after 2-4 minutes video smoothened instantaneously and was perfect for the rest of the show (around 40 minutes).

Video #2: Same specs as above

The initial stuttering was the same as above, but in this case it just didn't smoothen out at any point, or I didn't wait enough (I waited around 5 mins). First I was thinking that maybe parts of the video files were in different FPS for some reason (I don't know if that's even possible) maybe for instance until "In Last Episode" recaps were running, but that wasn't the case, at least the smoothening didn't happen when the new episode begun. I thought this because I've seen plenty of videos where those parts of videos have audio track in stereo and it then moves into Dolby Digital when the new episode begins.

With Video #2 I tried to enable only "Adjust display refresh rate to match video" and disable "Sync playback to display". This didn't help as the heavy heavy stuttering with FPS around 12 was there. But when I enabled/disabled them other way around, video played almost perfectly. I mean, It basically was smooth enough, but still I think some panning scenes etc. were tough for that syncing.

I'd really prefer syncing my TV to the video rather than syncing my video to the TV (which supposedly distorts the audio for a bit etc.).

I don't know if there's any question here, but any tips or thoughts anyone?
Reply
#6
Try tonight's build, it is very good so far. Curious, what CPU usage do you see while playing a movie in XBMC? I don't set any of those setting you were playing with, sorry.
Reply
#7
clipper99 Wrote:Try tonight's build, it is very good so far. Curious, what CPU usage do you see while playing a movie in XBMC? I don't set any of those setting you were playing with, sorry.

Thanks for the info, I'm gonna give it a go today when I get home from work.

CPU Usage is on OK levels, around 1-10% and most likely almost all of that is caused by background processes and possibly audio decoding (I'm not sure if DXVA accelerates that), so DXVA2 should be working / is working properly.

I read from some other threads that probably I shouldn't use both of the syncing options I mentioned in earlier post at the same time, it's supposed to be one or the other. So I'm going to double-check that again.

I also found number of issues* similar to mine but all of them were with ATI cards, and mine is Nvidia... curious. Anyway, another thing that worked sometimes with ATI according to posts elsewhere on this forum was to disable Aero theme in Windows 7. Going to test that also. I'm gonna report the success here later on. One dev stated somewhere that "Adjust display refresh rate to match video" is a bit unstable with DXVA(2) on.

* The main issue is now being FPS being around 10-12 when "Adjust display refresh rate to match video" is on. And the reason I'm using that option is the first place is this barely noticeable but irritating "microstutter" I'm getting with no syncing options on. The solution I can live with is to use the other syncing option, but it's still not perfect, not the same way it was with my Test Video #1 one post earlier. It's watchable, but I'm perfectionist. Smile
Reply
#8
hyperionfin Wrote:I'm perfectionist. Smile[/i]

I hear that! At those CPU levels and with Nvidia it should be smooth sailing but that's probably not what you came here for! LOL
Disabling Aero would surprise me if it works.
I take it you are streaming your movies over a network but you've also tried a 720p movie from the local HD though right? I had a sudden brain fart and realized your problem is very similar to my neighbours who I just got set up. For whatever reason his network wasn't up to snuff so he just purchased a 2TB external HD to run of his HTPC in the living room and that fixed the issues up.

good luck!
Reply
#9
clipper99 Wrote:I take it you are streaming your movies over a network but you've also tried a 720p movie from the local HD though right? I had a sudden brain fart and realized your problem is very similar to my neighbours who I just got set up. For whatever reason his network wasn't up to snuff so he just purchased a 2TB external HD to run of his HTPC in the living room and that fixed the issues up.

All files I've tested so far have been on the local HDD (internal, not even external USB-drive) for testing purposes (eliminating possible bottlenecks).
Reply
#10
Okay, I got it working! Now there is no stutter and "Adjust display refresh rate to match video" works perfectly from the very beginning of both of my test videos -> TV states it has changed into 24p mode and video plays with like 15 frames dropped in whole 45 minute episode (and 99% of those 15 dropped frames are dropped during first second after pushing play).

I did two things: as you suggested, I instelled the newest nightly build (31294) AND disabled Windows Aero from the shortcut of XBMC. I'm not sure which one was the one that did it, I think it was the newer nightly build but I'm just happy that it works now.
Reply
#11
Do you mind sharing ALL your settings (windows aero, xbmc, etc.)?
I tried the 31294 build and still get stuttering when playing videos (no dropped frames though). I'm using Windows 7 32-bit with an ATI card (HD5450).
I'm using a 1366x768 TV @ 1360x768/60Hz (it's not exactly 59.94Hz, but MPC-HC can play all files without any noticeable stuttering).

Sorry to hijack the thread :o... but since you figured out how to fix the same problem, i thing it's better to ask here than to start a new thread.

Thanks.
Reply
#12
Unfortunately for you too, I just came here to tell that after some testing (I was away from home for several days) I have noticed it's still not perfect. Now I got audio sync issues. However it seems there is an almost constant offset and it's around -0,175s = 175 ms, which is easily fixable through offset feature (by pressing 'A' on keyboard).

However, I'm not happy that it exists in the first place and I'd like to find a robust solution here (= reason why there is this offset), not just configure each video invidually to have this certain offset balanced... The compromise would be achieved if there was a way to make a certain audio offset as default value, but is there and how can I find it?

I'm using S/PDIF output (optical) which goes to a Pioneer VSX-416 receiver. It is Dolby Digital capable and all of my test videos have DD soundtracks.
Reply
#13
hyperionfin Wrote:Okay, I got it working! Now there is no stutter and "Adjust display refresh rate to match video" works perfectly from the very beginning of both of my test videos -> TV states it has changed into 24p mode and video plays with like 15 frames dropped in whole 45 minute episode (and 99% of those 15 dropped frames are dropped during first second after pushing play).

I did two things: as you suggested, I instelled the newest nightly build (31294) AND disabled Windows Aero from the shortcut of XBMC.

Excuse me, how do you get an option to disable aero from xbmc?
Dual screen setup - HDMI/TV (sound on Digital Audio toslink) - DVI/PC Monitor
AMD PII 955 (3.2GHz) - 4GB DDR3 - Geforce GT 240 - Win7 x64
Reply
#14
On DVD's it was normal that there was an offset between video and sound. When ripping you in the old days, you have to enter this offset (-175 or whatever) to have your new encode be in sync. So this might be a wrong encode or perhaps XBMC does not read such values AND/OR uses it.
Not sure if this applies nowadays though...
Reply
#15
Carlos ze Dwarf Wrote:Excuse me, how do you get an option to disable aero from xbmc?

I didn't exactly disable Aero from XBMC (not that I earlier would have claimed that I did)...

But what I did was that I created a shortcut of XBMC, placed it on my desktop and from the settings of this shortcut, I disabled Windows Aero. Now, always whan I launch XBMC, Aero gets disabled automatically and whenever I shut XBMC down, Aero returns.

Here are the instructions: http://www.howtogeek.com/howto/windows-v...ideo-game/
Reply

Logout Mark Read Team Forum Stats Members Help
Light jerkiness when playing videos with XBMC (compared to MPC-HC)0