[MPlayer-users] RE : Re: Opaque VOBSUB playback in XV mode and?colorspaces

Nicolas George nicolas.george at normalesup.org
Sun Aug 16 18:00:28 CEST 2009


Le nonidi 29 thermidor, an CCXVII, Richard Monk a écrit :
> I'm having exactly this problem with the semi-transparent vobsubs under xv
> but opaque (and actually readable) ones under everything else.

There are two causes for translucent OSD:

- The OSD can actually be translucent: each of the four colors of a vobsub
  has a 4-bit alpha value. If the value is not extreme, the vobsub is
  translucent, and that is normal. You can see that for yourself by giving
  the "-v -v" options to mplayer, and you will see, among a lot of other
  things:
  cmd=4  Alpha 15, 15, 15, 0
  That means three opaque colors and one transparent (the background, of
  course): this vobsub is opaque.

- The other cause is that, in certain colorspace, including the omnipresent
  YV12, the OSD is drawn only in the luminance channel, the chrominance
  channels stay unchanged.

  You can fix that either by hacking the vo_draw_alpha_yv12 function in
  libvo/osd_template.c, or force the OSD to be done in a colorspace where it
  is done completely, for example with:
  -vf scale=-2:-1,format=rgb32,expand=::::1,scale
  (The scale filters do the colorspace change, the format filter sets the
  colorspace at its point of the chain, the expand filter draws the OSD).
  This is very inefficient.

Note that the -ass option will do nothing for you, since it only affects
text subtitles.

Regards,

-- 
  Nicolas George
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-users/attachments/20090816/86a14176/attachment.pgp>


More information about the MPlayer-users mailing list