Announcement

Collapse
No announcement yet.

Videos tearing

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Guilo
    replied
    Thanks for your explanations.

    The only 1080p movie I ever played was Big Buck Bunny and it was running fast when played with xv but quite slowly with gl

    Leave a comment:


  • legume
    replied
    Originally posted by Guilo View Post
    I'm sorry but I don't understand what uvd and MC are.

    What projects are you talking about ?



    My CPU played 1080p fine when I had my nVIDIA card...

    Thanks
    UVD is the unified video decoder that is built in to recent radeon cards. It can releive the CPU of alot of work -



    MC is motion compensation - a part of decoding mpeg video.



    Fair enough if you could play 1080p, though 1080p may not be a good way to describe how much work your processor needs to do. It depends on the bitrate of the video as well.

    Leave a comment:


  • Guilo
    replied
    I'm sorry but I don't understand what uvd and MC are.

    What projects are you talking about ?

    I don't think a P4 3.2 will quite do 1080 h264 (with a 2.1 GHz AMD I can only get 1/2 framerate on broadcast HD) it should be fine for 720.
    My CPU played 1080p fine when I had my nVIDIA card...

    Thanks
    Last edited by Guilo; 07 August 2008, 04:23 PM.

    Leave a comment:


  • legume
    replied
    Originally posted by Guilo View Post
    Thanks for your replies.

    still plays slow HD videos.

    My CPU is P4 3.2 Ghz. Isn't it possible to use the card capabilities to decode the video ?
    Typical - I tested gl with a 1080 mpeg2 tests sream and as I said it's close to xv for CPU.

    Unfortunately it looks like there is a problem with mplayer + ffmpeg h264 + gl output which makes the VO stage eat way too much CPU. I just tried with svn and it's still broken :-(

    I don't think a P4 3.2 will quite do 1080 h264 (with a 2.1 GHz AMD I can only get 1/2 framerate on broadcast HD) it should be fine for 720.

    AMD won't say yes or no to whether fglrx will ever get uvd support, there are other projects underway to do MC with GPUs.

    Leave a comment:


  • bridgman
    replied
    There are two parts to video acceleration, typically called "decode" and "render". You can think of decode as being the first part of the playback pipeline and render being the second part, sort of like vertex and pixel processing in 3D.

    Render acceleration (scaling, colour conversion, de-interlacing, post-processing) is usually the most CPU-intensive part of the pipeline and is therefore the first thing that gets accelerated. In the X world (Linux, Solaris, FreeBSD etc..) the Xv interface is the most common API for video render acceleration.

    You can also use OpenGL to perform most of the processing by passing textures in YUV format and sending an OpenGL command to draw a rectangle (or two triangles) using that texture. OpenGL usually has a bit more CPU overhead and doesn't do any post-processing but sometimes there are other benefits.

    On older ATI/AMD parts (up to R4xx) the overlay block included dedicated video processing hardware which performed most of the render acceleration, but starting with R5xx we removed the dedicated overlay hardware and now use the 3D engine to perform the same function. This is why TexturedVideo is now the preferred approach for 5xx GPUs and up -- the hardware used by VideoOverlay is simply not there any more.

    Decode acceleration comes before render acceleration, so usually a video decode API (like XvMC) will build on a render API (like Xv). There are a number of projects underway to implement video decode acceleration on the GPU (I think Intel added some code for this to one of their drivers recently) but decode accel is nowhere near as common as render accel today.

    Leave a comment:


  • Guilo
    replied
    I searched the ubuntu forum and found a solution I will try as soon as I can restart my X :

    I?ve found the solution to the first problem (XVideo).

    As Jim say in his great post http://forum.compiz-fusion.org/showthread.php?t=6794

    The problem is that new ATI drivers set the AVIVO XVideo Render (3D engine) as "default" in Xorg config, instead of older and classic 2D engine XVideo render.
    Maybe the avivo (or TexturedVideo) could be better in modern ATI cards (specially to make compiz+videorender compatible), but not seems to has good quality for video in a Xpress 200M. Maybe someone can post some xorg options that solve the "sync problems" specially in movement scenes.

    There aren`t aticonfig command to disable this AVIVO config, called "TexturedVideo" option in xorg.conf, so you need to edit /etc/X11/xorg.conf

    Option "TexturedVideo" "off"
    Option "VideoOverlay" "on"
    Option "OpenGLOverlay" "off"

    save, and restart de computer, and then test with "xvinfo" and see classic videorender adaptor instead of AVIVO.

    Moreover, I would like to quote phoronix :

    . Avivo under Linux allows accelerated video playback using the GPU's 3D engine rather than 2D. Any Linux software that uses the X-Video extension can utilize this 3D accelerated playback. This accelerated playback can be extended to non-X1000 graphics cards by enabling TexturedVideo.
    So, isn't it possible to use the GPU to decode videos ?

    Thanks

    Leave a comment:


  • Melcar
    replied
    Originally posted by RealNC View Post
    AMD claims the support is already there and has been for a long time now. Maybe AMD's devs are blind or something

    There is (for my cards at least) no tearing with VideoOverlay + Xine, even if it tends to crash every now and then. My cards using TexturedVideo have horrible tearing, not to mention being unusable with Xine.

    Leave a comment:


  • ivanovic
    replied
    Originally posted by Guilo View Post
    My CPU is P4 3.2 Ghz. Isn't it possible to use the card capabilities to decode the video ?
    No, under Linux there is currently no way to utilize the graphic card for video decoding. That is: With the available acceleration it is just able to handle image scaling but not decoding the video stream. No support for UVD so far, no implementation in CUDA or the like to speed up video decoding. So ATM (might change in some months, who knows...) video decoding is completely done by the CPU.

    Leave a comment:


  • RealNC
    replied
    Originally posted by Guilo View Post
    Is AMD planning such a support ?
    AMD claims the support is already there and has been for a long time now. Maybe AMD's devs are blind or something

    Leave a comment:


  • Guilo
    replied
    Thanks for your replies.

    Xv currently has no vsync with fglrx, so there is no other way than using opengl as output
    Is AMD planning such a support ?

    mplayer -vo gl:yuv=5,lscale=1
    still plays slow HD videos.

    My CPU is P4 3.2 Ghz. Isn't it possible to use the card capabilities to decode the video ?

    Thanks

    Leave a comment:

Working...
X