Opened 19 years ago
Closed 18 years ago
#101 closed enhancement (invalid)
XVMC Colour OSD patch
Reported by: | Owned by: | danielk | |
---|---|---|---|
Priority: | minor | Milestone: | 0.20 |
Component: | mythtv | Version: | head |
Severity: | medium | Keywords: | xvmc colour color osd |
Cc: | Ticket locked: | no |
Description
This is the current version of the xvmc colour osd patch. When used with the included xvmcosd theme, a 16 colour transparent on screen display is used. Still work in progress, but quite usable. Feedback welcome.
Attachments (3)
Change History (20)
Changed 19 years ago by
Attachment: | xvmcosd-6.diff added |
---|
Changed 19 years ago by
Attachment: | xvmcosd.tar.bz2 added |
---|
comment:1 Changed 19 years ago by
What revision is the patch against? I patched against 6831 and got the following error:
distcc g++ -c -pipe -Wall -W -Wall -Wno-switch -Os -fomit-frame-pointer `freetype-config --cflags` -D_REENTRANT -DPIC -fPIC -DMMX -Di386 -DHAVE_DVDNAV -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\" -D_LARGEFILE_SOURCE -DUSING_OSS -DUSING_XV -DUSING_XVMC -DUSING_XVMCW -DUSING_XVMC_VLD -DUSING_FRONTEND -DUSING_V4L -DUSING_DVB -DUSING_DVB_EIT -DUSING_BACKEND -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -I/usr/share/qt3/mkspecs/default -I. -I../../../../../include -I../../../../../../include -I../.. -I../libmyth -I.. -Idvbdev -Impeg -I../libavcodec -I../libmythmpeg2 -I../../../../../../include/qt3 -o osdsurface.o osdsurface.cpp osdsurface.cpp: In function `void (* blendtoargb_8_init(const YUVSurface*))(const YUVSurface*, unsigned char*, unsigned char*, unsigned char*, unsigned char*, unsigned char*)': osdsurface.cpp:406: error: invalid conversion from `void (*)(YUVSurface*, unsigned char*, unsigned char*, unsigned char*, unsigned char*, unsigned char*)' to `void (*)(const YUVSurface*, unsigned char*, unsigned char*, unsigned char*, unsigned char*, unsigned char*)' osdsurface.cpp: In member function `void I44Surface::BlendToI44(unsigned char*, bool, unsigned int, unsigned int) const': osdsurface.cpp:918: warning: unused parameter `bool ifirst' osdsurface.cpp:918: warning: unused parameter `uint stride' osdsurface.cpp:918: warning: unused parameter `uint height' distcc[11371] ERROR: compile osdsurface.cpp on hermes failed make[2]: *** [osdsurface.o] Error 1 make[2]: Leaving directory `/usr/local/src/Myth/mythtv/libs/libmythtv' make[1]: *** [sub-libmythtv] Error 2 make[1]: Leaving directory `/usr/local/src/Myth/mythtv/libs' make: *** [sub-libs] Error 2
It's Ubuntu Hoary in case it matters.
comment:2 Changed 19 years ago by
Owner: | changed from Isaac Richards to ivor |
---|
Bah MMX.
Change line 306 of libs/libmythtv/osdsurface.cpp to:-
static inline void blendtoargb_8_mmx(const YUVSurface * /*surf*/, unsigned char *src,
comment:5 Changed 19 years ago by
Haven't decided on it or not. The chroma-key OSD is a better approach, IMO.
comment:7 Changed 18 years ago by
Owner: | changed from ivor to danielk |
---|---|
Status: | new → assigned |
I'm going to look at this and implementing the chroma-key OSD in 0.20.
comment:8 Changed 18 years ago by
Milestone: | → 0.20 |
---|
comment:9 Changed 18 years ago by
Hi Daniel, Let me know before you do. I have a patch against current svn and with a few more tweaks/fixes. I'll tidy it up and attach.
comment:10 Changed 18 years ago by
Ivor, a few things need to be addressed:
1/ Why break nVidia, Intel and ATI XvMC output? i.e. why break chromakeying? 2/ lots of formatting oddities, and un-needed formatting changes 3/ unrelated changes. It might be a good idea to do newline changes
earlier, but not in this patch...
4/ Compiler warning galore 5/ I marked some things with TODO that you might want to look at..
Also, if you broke this into smaller patches with as few dependencies as possible it would make my job much easier.
comment:11 Changed 18 years ago by
Hi,
- I wasn't aware that it did. I had tried to write it to only kick in when you selected a matching theme. It should't break normal xvmc, I'll look into it.
- Well the patch has been lying around for nearly a year so naturally it's got a bit dusty.
- There shouldn't be any unrelated changes in there.
- Yup.
- Added to the bottom of my todo list. Need to sort out that palette code first. :)
Cheers,
comment:12 Changed 18 years ago by
LOL. ok I see the TODO is in fact on the palette code that I can't figure out at the moment! :) I'll raise the question on the dev list, basically I want a global palette on the osd/osdsurface available to all of the OSD components.
comment:13 Changed 18 years ago by
has anyone got xvmcosd-cleanedup-v1.patch to apply against 0.19 ?
comment:14 Changed 18 years ago by
Actually, the Chromakey OSD fix (http://svn.mythtv.org/trac/changeset/7569) which is now in 0.19 allows a color OSD when using viaXvMC. The fix must be enabled by adding a setting to the database, which is described here
comment:15 Changed 18 years ago by
Sorry, the previous link should have been http://www.mythtv.org/wiki/index.php/XvMC
comment:16 Changed 18 years ago by
and that's got absolutely nothing to do with this ticket which is for rendering the osd using an XvMC surface.
comment:17 Changed 18 years ago by
Resolution: | → invalid |
---|---|
Status: | assigned → closed |
Ivor, if you feel inspired to work on this patch again, feel free to reopen the ticket with the updated patch. I'm closing the ticket for now since it looks like an effectively dead ticket...
OSD theme to go with patch