[mythtv] commdetector2

Daniel Walton dwalton at cisco.com
Fri Aug 18 18:05:40 UTC 2006


> > I tested the flagger on a 60 minute episode of Mythbusters recorded
> > on a PVR-150.  I recorded at 720x480, bitrate 6000, max bitrate
> > 8000.
>
> I am expecting parameter tuning problems with analog recordings, since
> I myself only have digital sources.
>
> I also expect problems with cable channels. I myself don't get any
> cable channels, so didn't have anything to test with.

If you have some FTP space I can send you some analog episodes for testing.


> > - The new commercial flagger found 11 commercial segments but in
> > reality there were 5 commercial breaks
>
> The beginning has some other useful stuff. In particular, there should
> be something like:

sorry, was trying not to spam the list with a huge log file :) Here are the
complete logs for the old and new engines

http://www.alliisagirl.com/mythbusters_0817/mythbusters.old_engine

http://www.alliisagirl.com/mythbusters_0817/mythbusters.new_engine
http://www.alliisagirl.com/mythbusters_0817/template.pgm
http://www.alliisagirl.com/mythbusters_0817/TemplateFinder.txt
http://www.alliisagirl.com/mythbusters_0817/TemplateMatcher-pgm.txt
http://www.alliisagirl.com/mythbusters_0817/tf-edgecounts.jpg
http://www.alliisagirl.com/mythbusters_0817/HistogramAnalyzer-pgm.txt


> >
> > Actual commercial segments (by hand)
> > ------------------------------------
> > 0:00:00-0:00:14		14sec
> > 0:08:09-0:11:45		3min 36sec
> > 0:21:08-0:23:43		2min 35sec
> > 0:29:36-0:32:58		3min 22sec
> > 0:38:50-0:41:20		2min 30sec
> > 0:51:10-0:55:40		4min 30sec
> >                   Total 16min 47sec

It looks like the old engine found the same segments that I found by hand (off
by 1 sec here and there).

> >
> > The BlankFrameDetector results are a little puzzling to me.  I
> > looked at the video and there wasn't a blank frame at all at 0:00:05
> > (incorrectly flagged as blank) but there was an obvious blank frame
> > at 0:00:14 (not flagged).
>
> Try bumping BlankFrameDetectorDebugLevel to 2 or 3, and use an OSD
> theme with a "framedisplay" element so that you can see exact frame
> numbers. These can be correlated with the BlankFrameDetector.txt file
> to see why/why not it isn't blank.
>
> If you are ambitious and have lots of disk space, you can also bump
> TemplateFinder/TemplateMatcher debugging to level 2 or 3, to get lots
> of frames dumped out.

cool, I'll give this a try

The break at 0:00:05 is from the templatematcher because there are no blank
frames detected there.  From mythbusters.new_engine

2006-08-18 12:26:19.201 CommDetector2::go pass 1 of 2 (107865 frames, 29.97 fps)
2006-08-18 12:26:19.201 PGMConverter::nuppelVideoPlayerInited using true greyscale conversion
2006-08-18 12:26:19.202 TemplateFinder::nuppelVideoPlayerInited framesize 720x480
2006-08-18 12:26:19.228 MSqlQuery: UPDATE jobqueue SET status = 4, comment = 'Performing Logo Identification' WHERE id = 98;
2006-08-18 12:26:19.241 mythcommflag: Received Event: 'COMMFLAG_START 2030 2006-08-16T21:00:00'
2006-08-18 12:26:19.243 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:26:32.735 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:26:46.194 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:27:01.079 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:27:08.733 processFrame 10680 of 107865 (10%) - 215 fps
2006-08-18 12:27:13.963 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:27:28.792 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:27:42.705 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:27:56.033 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:27:58.111 processFrame 21480 of 107865 (20%) - 218 fps
2006-08-18 12:28:09.772 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:28:23.166 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:28:36.354 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:28:46.518 processFrame 32280 of 107865 (30%) - 223 fps
2006-08-18 12:28:49.407 MSqlQuery: SELECT cmds FROM jobqueue WHERE id = 98;
2006-08-18 12:29:03.437 template_alloc wanted 0.998000, got 0.997824-0.998003
2006-08-18 12:29:03.650 bounding_box 692x452@(14,14)
2006-08-18 12:29:04.301 bounding_box 106x63@(558,377)
2006-08-18 12:29:04.303 TemplateFinder::finished wrote /myth/2030_20060816210000-debug/template.pgm and /myth/2030_20060816210000-debug/TemplateFinder.txt [106x63@(558,377)]
2006-08-18 12:29:04.304 BorderDetector::setLogoState: 106x63@(558,377)
2006-08-18 12:29:04.304 NVP Time: GetRawVideoFrame=90.234861s
2006-08-18 12:29:04.304 PGM Time: convert=1.054890s
2006-08-18 12:29:04.305 BD Time: analyze=0.209563s
2006-08-18 12:29:04.305 TF Time: analyze=72.415375s
2006-08-18 12:29:04.305 CommDetector2::go pass 2 of 2 (107865 frames, 29.97 fps)
2006-08-18 12:29:04.305 HistogramAnalyzer::nuppelVideoPlayerInited 720x480: logo 106x63@(558,377)
2006-08-18 12:29:04.434 BlankFrameDetector::nuppelVideoPlayerInited 720x480
2006-08-18 12:29:04.435 TemplateMatcher::nuppelVideoPlayerInited 106x63@(558,377), 388 edge pixels (want 217)
[snip]

2006-08-18 13:01:42.694 BlankFrameDetector::finished(107865)
2006-08-18 13:01:42.695 Blanks selecting median<=20 (77-98%), stddev<=0.576094 (85-85%)
2006-08-18 13:01:42.759 TemplateMatcher::finished wrote /myth/2030_20060816210000-debug/TemplateMatcher-pgm.txt
2006-08-18 13:01:42.759 TemplateMatcher::finished(107865)
2006-08-18 13:01:42.763 TM Break:      1-   161 (0:00:00-0:00:05, 0:00:05)
2006-08-18 13:01:42.763 TM Break:  16732- 17957 (0:09:18-0:09:59, 0:00:41)
2006-08-18 13:01:42.764 TM Break:  19511- 20307 (0:10:51-0:11:18, 0:00:27)
2006-08-18 13:01:42.764 TM Break:  38368- 39343 (0:21:20-0:21:53, 0:00:33)
2006-08-18 13:01:42.764 TM Break:  39398- 41651 (0:21:55-0:23:10, 0:01:15)
2006-08-18 13:01:42.765 TM Break:  54257- 56028 (0:30:10-0:31:09, 0:00:59)
2006-08-18 13:01:42.765 TM Break:  58095- 59468 (0:32:18-0:33:04, 0:00:46)
2006-08-18 13:01:42.765 TM Break:  71139- 71907 (0:39:34-0:39:59, 0:00:26)
2006-08-18 13:01:42.766 TM Break:  92895- 94311 (0:51:40-0:52:27, 0:00:47)
2006-08-18 13:01:42.766 TM Break:  94343- 98648 (0:52:28-0:54:52, 0:02:24)
2006-08-18 13:01:42.766 TM Break:  98650- 99995 (0:54:52-0:55:37, 0:00:45)
2006-08-18 13:01:42.771 TM Break: 107556-107865 (0:59:49-0:59:59, 0:00:10)
2006-08-18 13:01:42.771 NVP Time: GetRawVideoFrame=997.722016s
2006-08-18 13:01:42.772 PGM Time: convert=347.458743s
2006-08-18 13:01:42.772 BD Time: analyze=61.772433s
2006-08-18 13:01:42.772 HA Time: analyze=105.177493s
2006-08-18 13:01:42.772 TM Time: analyze=409.671546s
2006-08-18 13:01:42.773 TemplateMatcher has 15% breaks (wanted 20-44%)
2006-08-18 13:01:42.773 BlankFrameDetector adjusting for logo surplus
2006-08-18 13:01:42.773 BF Break:      1-   422 (0:00:00-0:00:14, 0:00:14)
2006-08-18 13:01:42.774 BF Break:      2-   428 (0:00:00-0:00:14, 0:00:14)
2006-08-18 13:01:42.774 BF Break:      3-   431 (0:00:00-0:00:14, 0:00:14)
2006-08-18 13:01:42.775 BF Break:  16732- 17526 (0:09:18-0:09:45, 0:00:27)
2006-08-18 13:01:42.775 BF Break:  16733- 18422 (0:09:18-0:10:15, 0:00:56)
2006-08-18 13:01:42.775 BF Break:  17527- 18422 (0:09:45-0:10:15, 0:00:30)
2006-08-18 13:01:42.776 BF Break:  17528- 19346 (0:09:45-0:10:46, 0:01:01)
2006-08-18 13:01:42.776 BF Break:  18423- 19346 (0:10:15-0:10:46, 0:00:31)
2006-08-18 13:01:42.776 BF Break:  18424- 20252 (0:10:15-0:11:16, 0:01:01)
2006-08-18 13:01:42.776 BF Break:  19347- 20252 (0:10:46-0:11:16, 0:00:30)
2006-08-18 13:01:42.777 BF Break:  19348- 21128 (0:10:46-0:11:45, 0:00:59)
2006-08-18 13:01:42.777 BF Break:  19349- 21138 (0:10:46-0:11:45, 0:01:00)
2006-08-18 13:01:42.777 BF Break:  20253- 21128 (0:11:16-0:11:45, 0:00:29)
2006-08-18 13:01:42.778 BF Break:  20254- 21138 (0:11:16-0:11:45, 0:00:30)
2006-08-18 13:01:42.778 BF Break:  40407- 42173 (0:22:28-0:23:27, 0:00:59)
2006-08-18 13:01:42.778 BF Break:  41919- 42384 (0:23:19-0:23:34, 0:00:16)
2006-08-18 13:01:42.779 BF Break:  57452- 58374 (0:31:57-0:32:28, 0:00:31)
2006-08-18 13:01:42.779 BF Break:  57453- 59276 (0:31:57-0:32:58, 0:01:01)
2006-08-18 13:01:42.779 BF Break:  57454- 59280 (0:31:57-0:32:58, 0:01:01)
2006-08-18 13:01:42.780 BF Break:  57455- 59292 (0:31:57-0:32:58, 0:01:01)
2006-08-18 13:01:42.780 BF Break:  58375- 59276 (0:32:28-0:32:58, 0:00:30)
2006-08-18 13:01:42.780 BF Break:  58376- 59280 (0:32:28-0:32:58, 0:00:30)
2006-08-18 13:01:42.781 BF Break:  58377- 59292 (0:32:28-0:32:58, 0:00:31)
2006-08-18 13:01:42.781 BF Break:  73598- 74172 (0:40:56-0:41:15, 0:00:19)
2006-08-18 13:01:42.781 BF Break:  73599- 74354 (0:40:56-0:41:21, 0:00:25)
2006-08-18 13:01:42.782 BF Break:  73900- 74354 (0:41:06-0:41:21, 0:00:15)
2006-08-18 13:01:42.782 BF Break:  96522- 97420 (0:53:41-0:54:11, 0:00:30)
2006-08-18 13:01:42.782 BF Break:  96523- 98340 (0:53:41-0:54:41, 0:01:01)
2006-08-18 13:01:42.783 BF Break:  96628- 97420 (0:53:44-0:54:11, 0:00:26)
2006-08-18 13:01:42.783 BF Break:  96629- 98340 (0:53:44-0:54:41, 0:00:57)
2006-08-18 13:01:42.783 BF Break:  97421- 98340 (0:54:11-0:54:41, 0:00:31)
2006-08-18 13:01:42.784 BF Break:  97422- 99246 (0:54:11-0:55:12, 0:01:01)
2006-08-18 13:01:42.784 BF Break:  98341- 99246 (0:54:41-0:55:12, 0:00:30)
2006-08-18 13:01:42.784 BF Break:  98342- 99994 (0:54:41-0:55:36, 0:00:55)
2006-08-18 13:01:42.785 BF Break:  98343-100119 (0:54:41-0:55:41, 0:00:59)
2006-08-18 13:01:42.785 BF Break:  98344-100121 (0:54:41-0:55:41, 0:00:59)
2006-08-18 13:01:42.785 BF Break:  98345-100124 (0:54:41-0:55:41, 0:00:59)
2006-08-18 13:01:42.786 BF Break:  98346-100127 (0:54:41-0:55:41, 0:00:59)
2006-08-18 13:01:42.786 BF Break:  99247-100119 (0:55:12-0:55:41, 0:00:29)
2006-08-18 13:01:42.786 BF Break:  99248-100121 (0:55:12-0:55:41, 0:00:29)
2006-08-18 13:01:42.787 BF Break:  99249-100124 (0:55:12-0:55:41, 0:00:29)
2006-08-18 13:01:42.787 BF Break:  99250-100127 (0:55:12-0:55:41, 0:00:29)
2006-08-18 13:01:42.787 BF coalescing overlapping/nearby breaks ...
2006-08-18 13:01:42.788 BF Break:      1-   161 (0:00:00-0:00:05, 0:00:05)
2006-08-18 13:01:42.788 BF Break:  16732- 17957 (0:09:18-0:09:59, 0:00:41)
2006-08-18 13:01:42.788 BF Break:  19511- 20307 (0:10:51-0:11:18, 0:00:27)
2006-08-18 13:01:42.788 BF Break:  38368- 39343 (0:21:20-0:21:53, 0:00:33)
2006-08-18 13:01:42.789 BF Break:  39398- 42385 (0:21:55-0:23:34, 0:01:40)
2006-08-18 13:01:42.789 BF Break:  54257- 56028 (0:30:10-0:31:09, 0:00:59)
2006-08-18 13:01:42.789 BF Break:  57452- 59468 (0:31:57-0:33:04, 0:01:07)
2006-08-18 13:01:42.790 BF Break:  71139- 71907 (0:39:34-0:39:59, 0:00:26)
2006-08-18 13:01:42.790 BF Break:  73598- 74355 (0:40:56-0:41:21, 0:00:25)
2006-08-18 13:01:42.791 BF Break:  92895- 94311 (0:51:40-0:52:27, 0:00:47)
2006-08-18 13:01:42.791 BF Break:  94343-100128 (0:52:28-0:55:41, 0:03:13)
2006-08-18 13:01:42.791 Break: frame      1-   161 (0:00:00-0:00:05, 0:00:05)
2006-08-18 13:01:42.792 Break: frame  16732- 17957 (0:09:18-0:09:59, 0:00:41)
2006-08-18 13:01:42.792 Break: frame  19511- 20307 (0:10:51-0:11:18, 0:00:27)
2006-08-18 13:01:42.792 Break: frame  38368- 39343 (0:21:20-0:21:53, 0:00:33)
2006-08-18 13:01:42.793 Break: frame  39398- 42385 (0:21:55-0:23:34, 0:01:40)
2006-08-18 13:01:42.793 Break: frame  54257- 56028 (0:30:10-0:31:09, 0:00:59)
2006-08-18 13:01:42.793 Break: frame  57452- 59468 (0:31:57-0:33:04, 0:01:07)
2006-08-18 13:01:42.793 Break: frame  71139- 71907 (0:39:34-0:39:59, 0:00:26)
2006-08-18 13:01:42.794 Break: frame  73598- 74355 (0:40:56-0:41:21, 0:00:25)
2006-08-18 13:01:42.794 Break: frame  92895- 94311 (0:51:40-0:52:27, 0:00:47)
2006-08-18 13:01:42.794 Break: frame  94343-100128 (0:52:28-0:55:41, 0:03:13)
2006-08-18 13:01:42.795 Flagged 107864 of 107865 frames (0:59:59 of 0:59:59), 17% commercials (0:10:23)

So it did detect the blank frame at 0:00:14 but somehow this got coalesced into
a break at 0:00:05.

Thanks
Daniel





More information about the mythtv-dev mailing list