logo       

xvmc patch: msg#00139

video.xine.devel

Subject: xvmc patch

hi,

i have ported XvMC patch by Jack S Kelliher (pcHDTV) to current cvs. the
patch (with some cleanups) is attached.

i'd like to hear how do you feel about commiting this patch. i have a
couple of comments about it:

1) a modified xine-lib is available at:
http://pchdtv.com/downloads.html
it includes patch for xine-beta10

2) the patch consist of:
- adding MM_ACCEL_XVMC_IDCT acceleration constant
- adding VO_CAP_XVMC_IDCT video driver capability
- adding xine_macroblocks_t type
- adding set_context() method to vo drivers
- adding proc_macro_block() method to frames
- adding a new video_out_xvmc.c
- adding new libmpeg2 file (slice_xvmc.c)

3) the patched libmpeg2 checks for xvmc on runtime (by probing vo
capabilities). it will fallback to normal software decoder without
performance penalties.

4) i tested xine with this patch applied and it worked fine (normal
software decoder). nevertheless, it makes some small changes to libmpeg2
init code that _might_ break mlib/altivec. i have no way of testing that
but i think it is unlikely (or at least easily fixable).

5) i'm not sure about how post processing filters would handle that.
they would probably report "no XvMC" to force going software only.
anyway, i updated the post.c helper code.

6) i did not increased api versions since we did that recently (after
rc0a release)

7) i did not actually tested the xvmc acceleration. video_out_xvmc.c is
conditionally compiled (if xvmc headers are present) but libmpeg2 has no
dependencies on X11/XvMC headers.

8) maybe rename "set_context()" to "set_macroblock_context()" ?

regards,

Miguel

Attachment: xine-lib-xvmc1.patch.gz
Description: GNU Zip compressed data

<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise