From: Derrik P. <dp...@an...> - 2001-01-31 00:39:49
|
Anyone else tried the SPU features in the latest CVS tree? I have (with my Voodoo5 5500 AGP - which, if anyone wonders, supports Xv with the latest CVS version of XFree86). It seems to be working pretty well, but I have one minor issue with it - when using the Captain CSS DVD plugin (haven't tried the standard DVD plugin - but I only have _one_ non-CSS DVD), the subtitles don't come up at all just after a chapter change. After 15-20 seconds or so, subtitles continue to appear, but it just misses them right after a chapter starts. Derrik Pates | Sysadmin, Douglas School| _ #linuxOS on EFnet dp...@ds... | District (dsdk12.net) | | | and now OPN too! Student @ South Dakota School of Mines | __| |___ _ _ _ ___ _ _ ____ & Technology (www.sdsmt.edu) |/ _ / -_) ' \ '\/ _ \ ' \ (____) UNIX: Because you want to USE your computer.|\___,\___|_||_||_\___/_||_| |
From: Derrik P. <dp...@an...> - 2001-01-31 05:13:29
|
On Tue, 30 Jan 2001, Derrik Pates wrote: > subtitles don't come up at all just after a chapter change. After 15-20 > seconds or so, subtitles continue to appear, but it just misses them right > after a chapter starts. Ok. I'm stupid. It appears that the SPU packets for the start of the chapter are embedded in the stream data for the previous chapter. So if you jump straight to a chapter, it misses all that SPU data. Doh. However, in spudec_process_control(), the color palette needs to be reversed. In the subtitles, the text ends up with the color that should be the fill color as the edge color, and the edge color as the fill color. On Payback, for example, you end up with text that is black with a light-grey edging. I.e.: case 0x03: /* Palette */ palette[3] = &(gSpudec.clut[(control[off] >> 4)]); palette[2] = &(gSpudec.clut[control[off] & 0xf]); palette[1] = &(gSpudec.clut[(control[off+1] >> 4)]); palette[0] = &(gSpudec.clut[control[off+1] & 0xf]); off+=2; break; is how the color palette for SPU should be mapped. Also, I've noticed that, if the playlist is used to change playback items after playback has been started on something else, the video window's dimensions end up being too small (cutting off the bottom and right extents of the image). Also, pausing does not work correctly (it'll jump what appears to be the right position, but some other chapter (I don't know how it picks another one, but it seems to be the second playlist item) - or sometimes it'll just jump to the next chapter. (This happened with 0.3.6, but I'm seeing the same thing with CVS.) Derrik Pates | Sysadmin, Douglas School| _ #linuxOS on EFnet dp...@ds... | District (dsdk12.net) | | | and now OPN too! Student @ South Dakota School of Mines | __| |___ _ _ _ ___ _ _ ____ & Technology (www.sdsmt.edu) |/ _ / -_) ' \ '\/ _ \ ' \ (____) UNIX: Because you want to USE your computer.|\___,\___|_||_||_\___/_||_| |
From: Rich W. <rj...@ca...> - 2001-01-31 08:39:37
|
> However, in spudec_process_control(), the color palette needs to be > reversed. In the subtitles, the text ends up with the color that should be > the fill color as the edge color, and the edge color as the fill color. On > Payback, for example, you end up with text that is black with a > light-grey edging. I.e.: > > case 0x03: > /* Palette */ > palette[3] = &(gSpudec.clut[(control[off] >> 4)]); > palette[2] = &(gSpudec.clut[control[off] & 0xf]); > palette[1] = &(gSpudec.clut[(control[off+1] >> 4)]); > palette[0] = &(gSpudec.clut[control[off+1] & 0xf]); > off+=2; > break; > > is how the color palette for SPU should be mapped. According to my SPU spec it should be the way round that it is (for example Labyrinth & Saturn 3 & Capricorn One are OK). Does anyone know which is `right'? Rich -- ================================================================== Rich Wareham <rj...@ca...> Robinson College, Cambridge, CB3 9AN An avocado-tone refrigerator would look good on your resume. ================================================================== |
From: Christian B. <cb...@st...> - 2001-01-31 18:46:07
|
Hi! On Wed, Jan 31, 2001 at 08:39:29AM +0000, Rich Wareham wrote: > > However, in spudec_process_control(), the color palette needs to be > > reversed. > [...] > > According to my SPU spec it should be the way round that it is (for example > Labyrinth & Saturn 3 & Capricorn One are OK). Does anyone know which is > `right'? I don't have the official SPU specs but those I've found on the internet agree on the point that in the control sequences 03wxyz and 04wxyz, "z" is the background, "y" the foreground and "x" and "w" are "emphasis" 1 and 2, respectively. From the actual pixel data in the subtitles it appears that pixel value 0 is "background". So I, too, that the assignment of the palette be reversed. What is strange in any case in the code as it currently is, is that the palette and alpha values are assigned in opposite orders. Bye, Christian -- / Coding on PowerPC and proud of it \/ http://www.uni-mainz.de/~bauec002/ |