Opened 16 years ago
Closed 15 years ago
Last modified 14 years ago
#4792 closed defect (fixed)
"Wrong" Fallback Video Renderer playing MPEG4(NUV)
Reported by: | Owned by: | danielk | |
---|---|---|---|
Priority: | minor | Milestone: | unknown |
Component: | mythtv | Version: | head |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
Summary: Using the latest SVN (date 27 Feb08) when the playback profile is setup to use XVMC (with renderer set to xvmc-blit) and trying to play an MPEG4(NUV) created using the internal transcoder. The internal player falls back to using the "opengl" renderer (as xvmc can't be used with MPEG4).
VideoOutputXv?: Desired video renderer 'xvmc-blit' not available.
codec 'NUV MPEG4' makes 'opengl,xv-blit,xshm,xlib,' available, using 'opengl' instead.
2008-02-26 22:25:16.703 VDP: SetVideoRenderer?(opengl)
Unfortunately my system (P3 900mhz + Nvidia FX5200) is not capable of playing using OpenGL so playback stalls completely.
WORKAROUNDS:
1) Recompile without OpenGL support. This is OK for me but would be unsuitable for users using packaged builds. 2) Don't use XVMC. Partially acceptable however, produces occasional frame drops on my system on MPEG2.
SUGGESTIONS FOR FIX: (In INCREASING order of personal preference)
1) Change the order of the fallback video renderers so that xv-blit is chosen in preference to opengl. 2) Intelligently fallback.... if the user selects "xvmc-blit" (rather than "xvmc-opengl") as their renderer for xvmc, then choose "xv-blit" as the non-mpeg2 renderer (and "opengl" if set to "xvmc-opengl"). 3) Extend the current playback profile mechanism to allow profiles per codec. I.e. if codec = "MPEG4/NUV" use renderer=X , if codec = "XVID/AVI" use renderer="Y", if container="MKV" use external program="mplayer" etc etc.
(I will try to work on option 2 myself)
Attaching playback logs...
Attachments (5)
Change History (14)
Changed 16 years ago by
Attachment: | front_log_mpeg2_noxvmc.txt added |
---|
Changed 16 years ago by
Attachment: | front_log_mpeg2_xvmc.txt added |
---|
Changed 16 years ago by
Attachment: | front_log_mpeg4_noxvmc.txt added |
---|
Changed 16 years ago by
Attachment: | front_log_mpeg4_xvmc.txt added |
---|
Changed 16 years ago by
Attachment: | mythtv-0.21-ticket-4792.patch added |
---|
comment:1 Changed 16 years ago by
comment:2 follow-up: 3 Changed 16 years ago by
Owner: | changed from Isaac Richards to danielk |
---|---|
Status: | new → assigned |
Version: | unknown → head |
I would prefer to add VIA video adapter specific video display profile if someone with a VIA can write one for me...
comment:3 Changed 16 years ago by
Replying to danielk:
I would prefer to add VIA video adapter specific video display profile if someone with a VIA can write one for me...
Forgive my ignorance, but I how to make that work. I have patched the code to add a video display profile for the VIA video to make things easier for MiniMyth? users. It does XvMC-VLD then Xv.
However, as far as I can tell from my brief look at the source and from the behavior of MythTV, the display profiles are not consulted when falling back due to a codec not supporting the preferred renderer. As a result, even though the first entry is XvMC-VLD and the second entry is Xv, Xv is not selected when the codec does not support XvMC-VLD. As a result, I created the patch that I attached.
What am I missing?
comment:4 Changed 16 years ago by
I think pebender@... has it right, please can we have his patch in release-0-21-fixes?
comment:5 Changed 16 years ago by
While using XvMC only on my VIA Epia En12000 I see in the frontend log similar messages:
VideoOutputXv?: Desired video renderer 'xvmc-blit' not available. codec 'None' makes 'xv-blit,xshm,xlib,' available, using 'xv-blit' instead.
Also here xvmc-blit is not used while it should be there? (openchrome driver, fully supporting the VIA videochip)
comment:6 Changed 15 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
(In [19440]) Fixes #4792. Implements solution #2.
Solution #3 would be nicer, but require a bit more coding. (See ticket for details.)
(This just rejiggers the video renderer fallback priority in the case of XvMC to help out the folks still using VIA HW, so that when they encounter files the XvMC can't handle opengl is not used as the first fallback).
comment:8 follow-up: 9 Changed 15 years ago by
Can we get this backported to 0.21 fixes branch? At some point along fixes this broke my ability to play transcoded recordings (to MPEG4) because it insists on using opengl instead of xv-blit.
comment:9 Changed 14 years ago by
Replying to chasejunk@…:
Can we get this backported to 0.21 fixes branch? At some point along fixes this broke my ability to play transcoded recordings (to MPEG4) because it insists on using opengl instead of xv-blit.
I am seeing this problem playing xvid files nuvexport. Is this going to be fixed ?
Patch implementing suggestion 2.