On Sun, Jan 30, 2005 at 11:27:12AM -0500, Chris Pinkham wrote: > commercials and eliminate false positives. I've got code started in > my source tree to try using aspect ratio changes to help detect when > commercials start and stop. There are also a few other detection ideas > on my TODO to add that will help the ALL method be more accurate.
There is -- though it's certainly not a small project -- a near-perfect algorithm for commercial detection. Namely, you watch people. You arrange so that as people watch a show, you see what they watch at 1x speed, and what they skip over. You upload this live (and anonymously) to a server. Nicer early-watchers might even take the effort to hit specific remote codes (not just the skipping/FF/rewind buttons) to say "yes, this is exactly where a commercial starts." They would do this because they appreciate others doing it when then watch a show delayed. On a popular PVR, many people will watch the show near-live or just after airing (before mythcommflag can even run in most cases.) Once you have data from enough such people -- the more people who watch the sooner that happens -- you will find that the data converges. There will be outliers to discard of course, but eventually you will see most user's data pointing at some very specific points in the show. That's where the commercials are, and no amount of trickery can fool thousands of natural intelligences. You can combine this data, if desired, with the usual techniques of looking for transitions and groups of transitions, blank frames etc. But I suspect it would be enough on its own. In addition, if people are not watching soon, you can have the automatic algorithms make their guesses and just notice where the human viewers correct it. This is something even easier to do, the screen pops up "I think a commercial starts here" and the user clicks, "No, that's wrong" etc. Also you want to do the blank detection etc. to provide time bases so that user actions are timed relative to these events, so you don't have to worry about clock drift etc. This is of course an entirely new system of doing things, and a considerable coding project. It ends the arms race on commercial elimination entirely. It can also do more than commercial skipping. For example, in sports, it can provide skipping of boring elements like pitching changes, and single 15 and 30 second commercial breaks that are very hard to auto-detect. Imagine that they change pitchers and ZOOM, you are at the pitch, perhaps with a summry of the closed caption of what the announcers said displayed on the side of your screen. If you like this of course, it would be an optional mode. Imagine a football game that's nothing but plays. Imagine the academy awards where they zoom at fast forward (you would want this rather than skipping) up to the podium. Or imagine more manual use, where your co-watchers are simply putting in mark points -- like the end of an academy awards acceptance speech, so you can just press a button to zip to it. This is bluesky for now, but I expect something like this will happen in the future. Today, however, I will put in one suggestion that I have made before but may bear repetition. Quite often, and almost always on HDTV, commercials are in a different aspect ratio from the regular show, and if you can detect the black bars, you can have very accurate elimination.
_______________________________________________ mythtv-users mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users
