[mythtv-users] Commercial Detection
Anthony Giggins
seven at seven.dorksville.net
Sat Mar 10 23:08:53 UTC 2012
On 9 March 2012 19:30, Lawrence Rust <lvr at softsystem.co.uk> wrote:
> On Fri, 2012-03-09 at 13:44 +1000, Anthony Giggins wrote:
> >
> >
> > On 8 March 2012 20:47, Lawrence Rust <lvr at softsystem.co.uk> wrote:
> > On Wed, 2012-03-07 at 23:13 +0000, Thomas Boehm wrote:
> > > Martin Moores wrote:
> > > > On 7 March 2012 21:58, Doug Lytle <support at drdos.info
> > > > <mailto:support at drdos.info>> wrote:
> > > >
> > > >
> > > > And I believe there was an external script based on
> > volume changes on a
> > > > channel that people have reported good results with.
> > > >
> > > >
> > > > Indeed, I never got around to trying that, but many said
> > they had a lot
> > > > of success with it:
> > >
> > > It works very well for me. I changed the script so that it
> > runs on all
> > > channels, not only the white listed ones. If there is really
> > a show
> > > which doesn't get marked properly, I still press the forward
> > button a
> > > few times as I did before, but most of the times it works.
> > >
> > > The mythcommflag which comes with MythTV takes much longer
> > and basically
> > > doesn't work at all in the UK.
> >
> >
> > I use a script based on the wiki article
> > www.mythtv.org/wiki/Mythcommflag-wrapper with good success on
> > most UK
> > Freesat channels.
> >
> > I found that changing the silence threshold to -76 dB from -70
> > significantly improved accuracy. Also, decreasing the
> > coalescence time
> > from 400 to 360 seconds reduced the prevalence of false
> > positives. The
> > last useful tweak is to the awk program to add 'cut to
> > beginning' or
> > 'cut to end' without leaving 'dangling' frames.
> >
> > This generally leaves a few frames of ads/titles before and
> > after each
> > cut. The only annoyance is that the post ad cut doesn't
> > position to a
> > keyframe so the cut isn't entirely invisible. I'm working on
> > that and
> > back tracking from the start of cut to detect a scene change.
> >
> > The script can be found here:
> >
> http://www.softsystem.co.uk/download/mythtv/mythcommflag-silence.sh
> >
> > To run it as a user job, start mythtv-setup and find
> > General/JobQueue
> > (Global) and set the Ad-detection command:
> > mythcommflag-silence.sh -j %JOBID% -C
> >
> > The -C option copies the list to the cutlist.
> >
> > --
> >
> > I get an error in this script when running from a command prompt
> >
> > ./mythcommflag-silence.sh -c 4010 -s "2011-09-29 21:10:00"
> > -i /storage3/recordings/4010_20110929211000.mpg
> > mythcommflag-silence.sh: line 11: syntax error near unexpected token
> > `cat'
>
> This looks like a difference in sh implementations. From the sh man
> page 'man sh|grep -A 3 Function':
>
> Functions
> The syntax of a function definition is
>
> name () command
>
> See also the POSIX doc on shell functions:
>
> http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_09_05
>
> As I understand it, a valid function can be:
>
> f1() echo "f1"
>
> Note the absence of { } around the command - these are for grouping and
> are theoretically optional although I am aware that bash requires them.
> The Help() function in mythcommflag-silence.sh doesn't include the
> braces and so is tickling this particular bug. For reference I'm
> running Ubuntu and sh is provided by dash, what distribution and sh are
> you running?
>
> Pragmatically I updated the script to include the braces which should
> fix this problem. Would you confirm that this change fixes the problem
> for you? Thanks for your feedback.
>
> --
> Lawrence
>
> I'm running mythdora 12.23 aka fedora 12
Was this right ?
Help() { cat >&2 <<END
Detect commercial breaks in a TV recording using silence detection.
Usage: ${myname##*/} [options]
Options:
-b <n> Coalesce ad breaks upto [$MAXCOMMBREAKSECS] Seconds
-c <n> Channel ID
-d <f> Min silence duration [$SILENCE_DURATION] Seconds
-i <path> Recording filename
-j <n> Job ID
-s <s> Start-time
-t <n> Silence threshold [$SILENCE_THRESHOLD] dB (-96..0)
-C Copy to cutlist [$COPYTOCUTLIST]
-M <path> MythTV settings folder [$MYTHCONFDIR]
-h Display this help and exit
-V Display version and exit
A job ID, channel ID and start-time or a recording filename must be
specified.
END
}
I tried running with with dash but it doesn't seem to do anything
$ dash ./mythcommflag-silence.sh -i
/storage3/recordings/4010_20110929211000.mpg
$
Cheers,
Anthony
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.mythtv.org/pipermail/mythtv-users/attachments/20120311/bf387201/attachment.html
More information about the mythtv-users
mailing list