From: "Chris Pinkham" <[EMAIL PROTECTED]>
Just to give you an idea of what other things I may be looking into
shortly, here are a few things from my TODO:
* Keep track of min/max brightness found during logo detection so we can
use that information later to determine what is really a blank screen and
what is not. (ie, if the min is only 50, we might want to try to
compensate in some of our other thresholds)
* Fade detection, checking the last X number of frames to see if the
brightness is constantly increasing or decreasing.
* Better logo detection. I looked into this for a while but haven't messed
with that code at all recently. Detecting the logo is easy using something
like sobeil, checking for the logo in each frame after you've found what
the logo looks like that is the part that is a bit harder since we're
dealing with video.
Another idea that might deserve some thought: Looking for the sudden
disappearance of closed-captioning information.
At least on the channels I see in the US, most ads don't have CC info
(rarely, some do). And sure, it depends on users enabling CC, but at
least for -x50's and ivitv 0.4.0, this seems to work well (although
0.18.1's UI doesn't). And it depends on mythtranscode not running,
or being changed not to lose this info (which I'd be all in favor of).
But assuming that all this -is- in place, a sudden precipitous drop
in the density of CC data might be another thing to toss into the pot
when trying to decide if something's an ad. It won't be 100% reliable
(since some ads have CC, and some programs have stretches of no dialog),
but it might be worth having the commflagger notice whether there's
-any- CC data in the stream, and, if so, flipping on something that
keeps track of its general envelope. One nice thing about this
computationally is that processing CC data should take extremely
few CPU cycles... :)
I use commflagging for all my channels, the results depend highly on the
channel.
There are several options which are global. Would it make sense a user can set the options on each channel, which are provided as a
parameter to mythcommflag. A bit-wise encoded value would do.
To receive the best results, the user could run mythcommflag in verbose mode, where the commercial detection types found are
protocolized. The user can check this and optimize the settings.
Further, there could be a Wiki-like database for those commflag values based on
region and channel.
Chris, what is your opinion.
Pascal
_______________________________________________
mythtv-dev mailing list
[email protected]
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev