Hi,

before to get dirty with the new/old bug rush I'd like to discuss some
issues that have long-standing patches here on my CVS working copy.

The first issue is trivial but somewhat tricky. I'd like allow to disable
colorized logging (I've received some private requests for that).

Seems easy but we have two issues to address:
1) tc* tools (used by some import modules) uses colored logging too
2) error handling in some options uses colored logging.

in CVS HEAD we already have --no_log_color, but that isn't enough
since this doesn't address at all 1) and considering 2)
we can have this situation:

transcode --no_log_color -V yuv420p [...]
  gives sane behaviour
transcode -V yuv420p --no_log_color [...]
  doesn't work as expected.

I see two solutions for this:
a) drop tc_log_* in options processing, fallback to fprintf(stderr, ...)
(I don't like this soo much)
b) process --no_log_color outside main option loop, before any other option,
then remove processed options from argc/argv[] (if found), last go on
with standard option processing loop.

While this can look ugly at first glance... It's the solution that I like
more, since another important future option (--export_profile) will require
to be processed BEFORE any other option.

We already have in CVS all pieces need to implement this solution
(libtc::tc_mangle_cmdline in particular). If noone objects, I'd go on
this way during weekend.

Finally, we must address sub-issue 1).
I see two ways here too:
a) adding a command line option to every tc-tool like transcode (boring,
error prone, much code needs to be modified)
b) using an environment variabile to control log colorized output.
Maybe a little less clean but effective.

I like b) most even here.

+++

So, to summarize, what I like to do during this weekend is
1) add option pre-processing code like above to handle correctly
--no_log_color and --export_profile options
2) use an environment variable to disable colorized output on all
tc* programs (transcode included).

Comments welcome.

bests,

-- 
Francesco Romani - Ikitt ['people always complain, no matther what you do']
IM contact    : (email first, Antispam default deny!) icq://27-83-87-867
known bugs    : http://www.transcoding.org/cgi-bin/transcode?Bug_Showcase
tiny homepage : http://fromani.exit1.org (see IDEAS if you want send code!)

Reply via email to