I hope to improve on the automatic commercial-skipping functionality in MythTV. The default "Classic" commercial detector works reasonably well (say, 80% success rate) for my working set (over-the-air broadcast HDTV in the US), but not reliably enough to forget about the remote control; the remote is still needed to rewind or fast-forward when commercials are falsely identified (or not identified). An optimistic goal is to achieve 100% correctness for true "play and forget" operation; playing back a recording should be as simple as playing a DVD or other commercial-free content, and should not require constant manipulation of the remote control, aside from "pause" and "resume".

I don't think there is much for me to contribute in terms of commercial-detection strategy; much is already written about that topic (and already implemented in MythTV). I simply hope to improve its accuracy. The work described below is available in 0.20 and onwards as the "Experimental" commercial flagger. If the current "Classic" commercial detector already works for you, there is no need to try the "Experimental" flagger; the "Experimental" flagger does not yet implement any strategies not already implemented by the "Classic" detector.

Scope

These algorithms operate exclusively on the video stream:

It is well-known that commercial breaks have very different audio characteristics from content (louder, more compressed, etc.). Audio processing is a project for another day.

Other Commercial Detection Software

  • Comskip. A fork of the MythTV ClassicCommDetector code, ported to Windows for integration with other PVR applications such as GB-PVR and SageTV.
  • Cbreak. Divides a recording into segments delimited by blank frames and makes guesses about commercial breaks based on segment durations.
[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon] Last updated: Wed Mar 11 21:57:16 PDT 2009