Jörn:
Yes, one would think the subtitle index designation (and color) must
be specified somewhere. The standalone dvd players (almost) always get
it right. Wouldn't this task be more suited for dvd::rip, instead of
transcode though? Transcode knows only where the vob files exist, while
dvd::rip understands the entire dvd structure, (and location of the
IFO's etc). Even so, dvd::rip uses subtitle2pgm (from subtitleripper),
and it also seems to guess the index components. The subtitle previewer
will show solid text for some, outlined text for others, etc.
I'll do a little hunting on it.
Allan
Jörn Reder wrote:
"Allan N. Snider" wrote:
Attached is a patch to add filter_nextsub. It creates two new
files, extsub/filter_nextsub.c and extsub/nextsub.h. It highjacked the
filter_extsub2 Makefile entries for building. This is a re-work of the
existing filter_extsub code, cleaning it up, and (my first attempt at)
getting it into NMS format, (and somewhat style compliant, still missing
function headers). The new functionality is described (fairly
adequately I think) in the help string.
Great that finally someone improves transcode's subtitle rendering ;) In
particular the coloring / color indexing stuff isn't really optimal.
>From the help string I see that you improved this, although I find the
magic word "guessing" here, which means, the guessing still could result
in wrong colors. Is it really necessary to guess the subtitle colors? I
don't know much details of DVD subtitle rendering, but obviously a
colormap with the correct colors must exist somewhere (AFAIK in the IFO
files), so it should be possible to get the colors from there, instead
of gussing them.
Probably it's difficult for the the extsub filter to access the IFO
files, because it just sees the VOB stream. But probably it's possible
to write an extra tool (if it doesn't exist yet somewhere in the outer
open source space... ;) to extract the colormap from the IFO structure
and pass these values to the filter.
Any chance to get your filter improved in that direction?
Regards,
Jörn