• 1
  • 2
  • 3
  • 4(current)
  • 5
  • 6
  • 7
[PATCH] Deinterlacing support for DXVA2 accelerated playback
#46
This line caught my attention:
ffmpeg[674]: [vc1] Interlaced frames/fields support is not implemented

Looks like it's a problem with ffmpeg? From my patch's point of view, there is no difference between formats and deinterlace handling. Do you have deinterlace options (Bob/Best available)? What happens if you manually select a deinterlace option?

Also next time, please enable debug logging, then restart XBMC before posting the debug log.
Reply
#47
Hmmm, interesting. I don't have ffmpeg installed, unless its part of the install package of XBMC. Do I need to install it separately, or is there a place to edit the settings?? I did look, but I saw nothing resembling the ffmpeg settings.

Edit: I assume I should be finding deinterlace options in the settings in XBMC, but I found none.
Reply
#48
ffmpeg is (at the moment) part of XBMC install. There is nothing you can change in how it works. However, it is interesting that you don't have deinterlace options. If you bring up the video settings window when playing a video, you should see this: (screenshot).

There is nothing in XBMC global settings that can be changed. You have to activate deinterlacing when watching an interlaced video in video settings. By default, "Interlaced handling" is set to none. You should be able to select something else here (Bob/Best available/Auto).
Reply
#49
Thank you! I've been waiting for a dxva deinterlacer for quite sometime now :-)

I only have interlaced HD mpeg2 streams, and my test on an ION/Atom330 shows that 1080i mpeg2 only works well with Deinterace "BOB"

Setting deinterlacer to "Auto select" looks notice-ably better, but there are many green/blocky frames so its not usable. Can I hope that the patch may be improved to allow "Auto Select" on 1080i content on an ION??

Note:Scaler was always set to DXVA, and the GPU load as shown by gpu-z never went beyond 60%
Reply
#50
Actually, it's even more interesting. I don't have any of the options that you do in your screen shot. The only thing that looks similar is the DXVA option, but it's called video rendering method under my settings.

Edit: Just to remove all assumptions, where exactly do I find these settings?? I've gone through XBMC top to bottom, nothing even remotely close.
Reply
#51
GRSHOPR Wrote:Edit: Just to remove all assumptions, where exactly do I find these settings?? I've gone through XBMC top to bottom, nothing even remotely close.

It seems you are looking for it at the wrong place. You have to click the highlighted movie roll icon as shown on this screenshot during video playback. There you will find the deinterlace options.
Reply
#52
topsyturvy Wrote:I only have interlaced HD mpeg2 streams, and my test on an ION/Atom330 shows that 1080i mpeg2 only works well with Deinterace "BOB"

I have tested with 1080i h.264 on Ion and it does Bob only. Even though the gfx driver provides the temporal-spatial deinterlacer, in reality it will do Bob only with all deinterlace options, so I have not seen those problems here. I will try to look for some mpeg-2 streams and see how it works out.

Maybe the Ion is too weak for high quality HD deinterlacing (like most of the low-end cards) in XBMC. GPU load might not show the full story and the card is not fast enough to deinterlace and render the XBMC GUI in one frame.

I think some advancedsettings to limit automatic deinterlacer to Bob based on resolution/fps might be a fix.
Reply
#53
a11599 Wrote:It seems you are looking for it at the wrong place. You have to click the highlighted movie roll icon as shown on this screenshot during video playback. There you will find the deinterlace options.

Found it! Many thanks. However, nothing changed, and the only deinterlace options I had were "deinterlace" and "auto detect". BOB and the other options were only available in movies, but not TV shows. I read you next post as well. You're saying that most low end graphics cards won't handle this very well? I ask, as I'm only running an onboard GPU.
Reply
#54
a11599 Wrote:I have tested with 1080i h.264 on Ion and it does Bob only. Even though the gfx driver provides the temporal-spatial deinterlacer, in reality it will do Bob only with all deinterlace options, so I have not seen those problems here. I will try to look for some mpeg-2 streams and see how it works out.

Maybe the Ion is too weak for high quality HD deinterlacing (like most of the low-end cards) in XBMC. GPU load might not show the full story and the card is not fast enough to deinterlace and render the XBMC GUI in one frame.

I think some advancedsettings to limit automatic deinterlacer to Bob based on resolution/fps might be a fix.

BOB is better than no interlacing but I feel that it causes flickering sometimes.

Is it safe to assume that a more powerful video card will allow for better deinterlacing? Can you give some examples as I'm thinking of building an htpc and don't know much on this. (how would the hd3000 graphics of the new icore work?)
Reply
#55
If you see the "deinterlace" option only, then the video is not decoded with DXVA. If you press "o" during playback, you will see the info OSD. If the video codec name does not contain "dxva", then it is software decoding and DXVA (hardware) deinterlace options are not available.

As far as I know, unlike decoding, deinterlacering is not done by dedicated hardware but rather using shaders in most cards. So especially in the past, high quality deinterlacing with HD material was a no-go for low-end cards. In the Ati range if I know correctly the first entrly-level card which supports vector-adaptive deinterlacing of HD material is the 5450.

Unfortunately I only have access to some older video hardware, but according to my short tests, the HD3850 in my desktop PC has no problems with 1080i30 h.264 decoding, vector-adaptive deinterlacing and XBMC HQ scaling at once. The HD5145 can either do vector-adaptive deinterlacing and DXVA scaling or bob deinterlace with HQ scaling for 1080i30 material, but not both (causes stutter).

And you also need to take into account the GPU load of the XBMC UI itself. So while the statement "every discrete GPU is good enough for video playback" is generally true for movie playback (which is usually not interlaced), an entry level GPU can become a bottleneck if you want advanced deinterlacing and/or video scaling with high fps material.
Reply
#56
Which is probably wherein my issue lies, as I'm running the ATI 4300. An interesting side note, though. DXVA IS running. and I still only get the deinterlace option. The OSD definitely said it was using DXVA, so maybe it's my GPU. I'll get a 5400 series card and try again.
Reply
#57
This is really interesting.
Reply
#58
What is?
Reply
#59
That you have the deinterlace option with DXVA decoded content. Could you upload an interlaced VC-1 sample somewhere? Also as I know interlaced VC-1 is not supported by ffmpeg, so upgrading your video hardware will most likely not solve the problem in XBMC.
Reply
#60
Damn i just found out about yout build a11599, great to see (well, hear) the 24Hz audio delay bug fixed ! Thank you so much.

Also tried the DXVA deinterlacing on 1080i content (AVC encoded 1080i @ 15Mbps/29.97fps from a canon hd cam), and with my GT 240 it displays bob or inverted bob for choice selection.


One thing though:
If i leave the deinterlace option on "auto select", then those 1080i videos start but freeze instantly, with the sound playing, but the first frame displayed stays on screen until i stop. I need to have the deinterlacing option turned on before playing the video.

Here is a debug log where Xbmc is started, goes to play a 1080i video with auto deinterlace enabled.
http://paste2.org/p/1389092

Best regards Smile
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
  • 1
  • 2
  • 3
  • 4(current)
  • 5
  • 6
  • 7

Logout Mark Read Team Forum Stats Members Help
[PATCH] Deinterlacing support for DXVA2 accelerated playback3