Comskip fine tuning

As mentioned in my previous posting, I’m using several freeware utilities on my Mac to identify and remove commercial segments from recorded TV shows. Comskip is the tool I use to identify the commercials, and it has numerous setting configurations that you can change to help fine tune the commercial identification process.

Now, these settings can vary based on where you made the recording. For example, settings for USA broadcasts may not be optimal for European broadcasts. As such, fine tuning is required if you want Comskip to catch all (or most) of the commercials without cutting out good TV show content.

There several postings regarding tuning on the Comskip forums which I’ve read over. The basic process is trial-and-error, making logical changes to the Comskip settings file and examining the results. It is a lengthy process, but well worth it if you want to get Comskip working at peak performance.

In my case, I spent a few hours getting Comskip tuned for two typical programs that I record. One is Fringe, and the other is Design to Sell. Fringe is a good example of a typical mainstream network TV show that I like to watch, and Design to Sell is a typical HGTV home improvement show.

For fine tuning, you need to change some set values in a file called comskip.ini (located in the same folder as the comskip.exe program). I changed the following three lines:

detection_method = 255

Adjusting the detection method to 255 has Comskip use all of the various commercial detection methods.

verbose = 1

Changing the verbose setting from the default 10 to 1 reduces the amount of analysis information written to the Comskip log file for the analyzed video. I could have changed this value to zero (to not write any data), but I left it at 1 so I can try to figure out why Comskip identifies certain block segments as a commercial vrs show content.

max_volume=50

The max volume setting defines whether Comskip marks a segment block as commercial or show content by the volume level. If the suspected commercial segment has a volume level higher than the max_volume setting, then Comskip marks it as show content. The idea is, when a show transitions to or from a commercial you may have a brief black-screen with very little volume being played (this will mark a commercial segment). The default value of 500 works ok for my system, but it didn’t catch the commercial segments quite right. Since I’m recording a digital signal, the creator of Comskip recommended using a value of 50 since the audio signal is clearer.

So with these settings the commercial detection for the Fringe show is very, very good. There’s only one spot in the show where the Comskip misses a commercial and that’s because the TV Network changed the location and style of the broadcast “logo” on the screen (why, I don’t know). These same settings did a very good job with the Design to Sell program also (but not perfect).

So for now I’m going to stick with these settings and see how well they work out. If they miss a few seconds of show content I’m ok with that, however, if Comskip misses several minutes of good show content I’ll have to do some more fine tuning.

Other settings that you can change are:

max_brightness
test_brightness
max_avg_brightness

If Comskip is not identifying commercials in your show, you can increase the value of these variables (by increments of 1) and see how much improvement you can get.

Another cool feature that Comskip has is the ability to look for defined words in the Closed Caption (CC) text for a TV show. You can define individual words in a file called comskip.dictionary (found in the Comskip install folder) . The words above the “——-” line identify good TV content while words below that line identify a commercial segment. I think this is a brilliant method for helping Comskip identify commercials, however, I unfortunately can’t make use of it. The reason being, I can’t seem to get EyeTV3 to store the CC text in the MPEG file. It’s either an issue with the EyeTV3 software or with my Comcast digital set top box.

Update: So far, Comskip has been able to identify the correct commercial segments using theses settings for the following TV Shows:

Fringe, Design to Sell, The Walking Dead (AMC), Stargate SG-1

What nice, is that all of these shows have a slightly different broadcast and format, yet Comskip is able to catch the commercials quite effectively. I’m actually very pleased, as I was expecting to have fiddle with the settings a bit more to accomplish this accuracy. Thanks to the author of Comskip!

Advertisements

2 Responses to Comskip fine tuning

  1. Eric R. says:

    I just built an HTPC and installed Comskip to remove commercials from programs I record in WMC. Right now the settings are not quite perfect as parts of commercials are still left in recordings, and worse, some of the show content is cut. I have not tried tweaking the settings in the .ini file yet, but plan to do so later this week and this weekend.

    I know this is an old post, but would you mind sharing the settings you’ve found to work well? I watch a lot of similar programming to what you mentioned in your post (I love SG-1!), and it would be great to have a solid starting point for tweaking.

    • zunetips says:

      Eric: First, I haven’t used Comskip in a really long time. I was missing some critical scenes from my favorite shows so I gave it up and just skip commercials manually. Who knows, the developers of Comskip may have improved the logic enough where it’s much better now. So far as my comskip settings, I basically used the default values except for those that I mentioned in this posting.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: