• 1
  • 2
  • 3(current)
  • 4
  • 5
  • 9
Video stuttering in Linux
#31
So maybe XBMC team can be inspired by VLC work ?

By perfect i mean no random stutter or framedrop or judder. All of my video sources (or software player) does not exhibit problems like XBMC or Boxee.

In 3 years, and with 5 differents NMT (Divx, AcRyan, Xtreamer, Dune ...), i've never had issues that XBMC have. So i'm a little confused.

So maybe it's a good time to try something else to achieve better video playback ? (it's the basis of a video player/media center like XBMC isn't it ?)

I've got same problem of sudden stutter with another video (no DTS this time).

See the log : http://pastebin.com/L0fdJ5Mr

I will check the timecodes and post it later

Edit : audio timecodes : http://deuch.free.fr/audio_tc.txt

Only round numbers, but delay seems constant (32). Video was merged with mkvmerge 3.1.0
Reply
#32
I have to say I absolutely agree - the absolute bane of XBMC for the last few years is video stutter issues (as well as pretty atrocious SD video quality vs. the media players that clearly and successfully post process the signal into something better).

I know the devs have their reasons re:timecodes, but being precious about it isn't really helpful when stutter threads make up a big portion of this forum. It's so close, too....immensely frustrating to have such an awesome media centre with one big and obvious stumbling block - it doesn't play video as well as a $100 WDTV player, or a popcorn, etc etc.

I have no right to whinge about it since I can't code a solution but I guarantee you a lot of users are really frustrated with stutter issues with files other systems find perfectly easy to play smoothly and in sync, but XBMC can't. All these awesoem bells and whistles but it stumbles on the basics...
Addons I wrote &/or maintain:
OzWeather (Australian BOM weather) | Check Previous Episode | Playback Resumer | Unpause Jumpback | XSqueezeDisplay | (Legacy - XSqueeze & XZen)
Sorry, no help w/out a *full debug log*.
Reply
#33
Hi,

I use linux with vdpau (G210) and openelec or arch, Sony 40V4000.

For a long time i have stuttering problems (missed and droped frames) with xbmc, but only in 24p (with all the different possibilities of video/audio setup) but never when i play the files at 60/50Hz Shocked

I know it has nothing to do with subtitles cause it happens even without.

I'm pretty sure my xorg.conf is well-configured.

Before to open a new post, and like after reading all this topic you seem to know much more than me, could you tell me if except the problem with previous version of mkvmerge or a false modeline given by my TV it could be something else (problem in audio/TV clock).

I know i don't provide log but i'm just looking for a lead to dig in.

Anyway thank you for this interesting topic and all your explanations.

Bibi
Reply
#34
Well we need to separate the issues to begin with. All of them are called stutter issues but actually come from different causes and some of which are not xbmc's fault. Here are just some.

1. subtitle render on slow cpu due to subtitles being rendered in same thread as man application/render.

2. difference between display clock (video card refresh rate) and audio clock, must be compensated for to ensure a/v sync (using drop/dupe in video or audio or resampling of audio (ie no passthrough)). media players with a single unified clock don't have this issue - pc/mac based solutions do. xbmc tries to offer different options here but could do with a little improvement both in terms of getting better a/v sync and being less susceptible to making corrections when it might not have needed to. With linux modeline tweaks can be used to try to get clocks match better. Not all media players are free from this issue (older and perhaps current? realtek chips afaik don't do 23.976Hz)

3. handling of streams with incorrect timestamps. This is related to that in 2. but further exacerbates the problem. Any attempts to fix here can compromises the solution for 2. as well.

4. problems related to opengl integration with hardware implementation of video decoding eg vdpau. An example of this is the pixmap based vdpau presentation of decoded pictures - the driver tries to control the presentation to be at vblank intervals. This makes stutters more likely at low refresh rates. overlays (eg overlay subtitle) can also make this worse.

So I am not excusing the situation but trying to raise awareness of the difficulties a multi-platform opengl media player has over solutions that are custom made for a platform. And players like VLC as good as they are also have their own issues.

There is work being done to improve things and you should check out FernetMenta's vdpau re-write for improvements around issue 4. Issue 3. is solved by remux for non-live streams, or try the DTS smoothing patch. Issue 2. try modelines in linux, or custom res in Windows (nvidia). Issue 1. try shrinking or changing font, or my pre-caching/border-font-disable patch.
Reply
#35
Thank you !!!
I will try all the possibilities and solution that you gave and will report back after that.

Really thank you.

Bibi
Reply
#36
bibi Wrote:Thank you !!!
I will try all the possibilities and solution that you gave and will report back after that.

Really thank you.

Bibi

So do you have some success with suggestions made by TheSwissKnife ?
Reply
#37
I have nothing new to add but some info that often is not so accurate.

There is no such thing as constant fps playback it always fluctuates a little no matter what fps it is. Sure Theoretically if you say a movie is 24 fps it should play at that but XBMC doesn't handle it like that.

The person to clarify this would be bobo1on1
Reply
#38
It is an amazing thread and i agree with the complaints of bossanova808 in post 32. It is Frustrating to use a Linux Based HTPC, connected with large 50"+ screens and have problems with video stuttering in 24p Playback. I've tried XBMC Live and Openelec and sadly all were suffering from stutter free 24p playback.

It would be Awesome to play HD Videos exactly as in Windows Version.
Reply
#39
@ avap

I dont agree, my asrock ION 330 HT plays every movie at any fps with no stutter (dropped frames), specially in the pre-eden versions which I compile. Again in the end Linux will require you to get your hands dirty, if you cant stand the heat, stick with windows.

It did require some tweaking and lost hours at a terminal but all the issues have been addressed to death and mostly fixed in these forums.

I lost months chasing down problems, and I'm better for it because I learned a little Linux.

XBMC may be free but there is no such thing as a free lunch.
Reply
#40
X3lectric Wrote:@ avap

I dont agree, my asrock ION 330 HT plays every movie at any fps with no stutter (dropped frames), specially in the pre-eden versions which I compile. Again in the end Linux will require you to get your hands dirty, if you cant stand the heat, stick with windows.

It either does or it doesn't - there's no 'especially' about it, 0 = 0 - anyway the best current solution is probably the FernetMenta fork but even that is not perfect and I don't believe the pull request has made it back into core yet - see 163 (PR) - while this increases smoothness it has issues with de-interlacing/scaling IIRC so there's a bit of work to be done yet and apparently it's all a bit too 'ION' whatever that means.

Anyway, it's really up to the devs t get us there, I just hope they want & choose too, it would be awesome to remove the one serious and pretty fundamental niggle that most people experience...
Addons I wrote &/or maintain:
OzWeather (Australian BOM weather) | Check Previous Episode | Playback Resumer | Unpause Jumpback | XSqueezeDisplay | (Legacy - XSqueeze & XZen)
Sorry, no help w/out a *full debug log*.
Reply
#41
X3lectric Wrote:@ avap

I dont agree, my asrock ION 330 HT plays every movie at any fps with no stutter (dropped frames), specially in the pre-eden versions which I compile. Again in the end Linux will require you to get your hands dirty, if you cant stand the heat, stick with windows.

It did require some tweaking and lost hours at a terminal but all the issues have been addressed to death and mostly fixed in these forums.

I lost months chasing down problems, and I'm better for it because I learned a little Linux.

XBMC may be free but there is no such thing as a free lunch.

I'm not agree. Because stutter happends even with a drop frame counter set to 0 ... There are some problem with audio timecodes due to XBMC (sync over 70ms) which do not handle it very well. VLC in linux do not exhibit this problem with the same sample (and i've enabled GPU acceleration and do not drop frame in VLC).

I've tried everything (timing, patch for ION GPU, pre EDEN build with optimizations or not) and the only solution (but it doesn't work at 100%) is to remux the files. But sometimes it doesn't change anything.

Problem occurs with Linux or Windows, so it's not a OS problem. I've integrated VLC and/or MPC-HC with XBMC and my "bad' files were played correctly.

So there is something to fix somewhere. Maybe it's a difficult thing to fix, but i thing it must be the priority number one. As we speak, i prefer my NMT to play my video file, and far away ! (gui is not sexy, but no stutter and good PQ overall...)

You can try my samples :

http://deuch.free.fr/videos/ultra-sample.mkv
http://deuch.free.fr/videos/stutter-test.mkv

no drop frame, but stutter is present ...
Reply
#42
X3lectric Wrote:@ avap

I dont agree, my asrock ION 330 HT plays every movie at any fps with no stutter (dropped frames), specially in the pre-eden versions which I compile. Again in the end Linux will require you to get your hands dirty, if you cant stand the heat, stick with windows.

It did require some tweaking and lost hours at a terminal but all the issues have been addressed to death and mostly fixed in these forums.

I lost months chasing down problems, and I'm better for it because I learned a little Linux.

XBMC may be free but there is no such thing as a free lunch.

Of course i love the heat in Linux Versions, that's why i sold my ATI 5450 and bought an Nvidia GT 430. I want to get this to work but this is my main PC and i can't afford to "play" with it for days (my wife and son will kill me..). I thought with Openelec "..man I found my Piece" but then i found the "subtitles stuttering thing" (stuttering when first subs hit the screen) and occasionally stuttering in a movie (random stuttering after 10-15 minutes of play).

The only thing i haven't tried (..i think), is to set my screen in 60p or 50p instead of 24p and use the "adjust display refresh rate to match video option" in XBMC menu.
Reply
#43
You can avoid the stutter problem for subtitles by changing the fonts (everything except the arial.ttf default).
Reply
#44
edit: sorry, wrong topic then :p
Reply
#45
So judder it's not stutter Smile

Judder can be fix by your trick (sending 23.976 instead of 24 or 59,94 instead of 60Hz). And judder is a normal behaviour if you play a video encoded at 23.976 and display it at 59,94Hz (3:2 pulldown).

But the stutter discuss in this thread that i opened is due to a XBMC problem, not native timing of the display.

I've made a lot of test and put the exact timing of my display (i can retrieve those timings whith my scaler) and stutter stills ...

The only way is to remux (it's not perfect). Or more barbarian, remove the audio track and video is perfect ... So not a timing problem or HDMI issue.

I've test with audio via HDMI, analog or digital and all of those configuration do not change the problem.
Reply
  • 1
  • 2
  • 3(current)
  • 4
  • 5
  • 9

Logout Mark Read Team Forum Stats Members Help
Video stuttering in Linux0