[mythtv-users] Commercial Flagging after Transcode
Michael Wisniewski
mikewiz38 at gmail.com
Sun Mar 13 18:37:58 UTC 2016
On Fri, Mar 11, 2016 at 1:22 PM, HP-mini <blm-ubunet at slingshot.co.nz> wrote:
> On Fri, 2016-03-11 at 12:43 -0500, Daryl McDonald wrote:
> >
> >
> > On Fri, Mar 11, 2016 at 11:40 AM, Michael Wisniewski
> > <mikewiz38 at gmail.com> wrote:
>
>
> > On Thu, Mar 10, 2016 at 7:34 PM, Mark
> > <perkins1724 at hotmail.com> wrote:
> >
> > > -----Original Message-----
> > > From: mythtv-users
> > [mailto:mythtv-users-bounces at mythtv.org] On Behalf
> > > Of Michael Wisniewski
> > > Sent: Friday, 11 March 2016 9:51 AM
> > > To: Discussion about MythTV
> > > Subject: [mythtv-users] Commercial Flagging after
> > Transcode
> > >
> > > Hi!
> > >
> > > I'm having a problem trying to do commercial
> > flagging on a transcode. After a
> > > recording job runs, I have it run the commercial
> > flagging and then a custom
> > > script that transcodes the mpeg2 to a h.264 mpeg4
> > file. You can see the full
> > > script here....
> > >
> > > http://pastebin.com/GveHsDft
> > >
> > > In particular, I have a question about these two
> > lines:
> > >
> > > mythcommflag --chanid $CHANLID --starttime $STRTTIM
> > --gencutlist
> >
> > MythTV can maintain in its database (amongst other
> > things obviously) two sets of flags (relevant to your
> > post). The first is commercial boundaries (set of
> > start and end flags) commonly called the commskiplist.
> > It is usually created by mythcommflag but there are
> > other ways. The second is cut boundaries (set of start
> > and end flags) commonly called the cutlist. It is
> > usually created by copying the commercial boundaries
> > (commskiplist) to the cutlist using --gencutlist
> > switch or can be created / edited using the editor
> > while viewing a recording in mythfrontend, but again
> > there are other ways.
> >
> > Although I thought the --gencutlist switch applied to
> > mythutil not to mythcommflag? Maybe it is undocumented
> > feature of mythcommflag? I don’t specifically recall.
> > What version MythTV are you running?
> >
> > Importantly, if your commskiplist is empty or wrong
> > then using this switch will result in a cutlist that
> > is empty or wrong. Also note that editing the cutlist
> > does not update the commskiplist.
> >
> > > mythtranscode --chanid $CHANLID --starttime $STRTTIM
> > --mpeg2 --
> > > honorcutlist --outfile $MYTHDIR/$MPGFILE.tmp
> > >
> >
> > When using mythtranscode to transcode, it can
> > optionally remove the cutlist from the transcode
> > output. The --honorcutlist is the switch to achieve
> > this. Depending on your setup once you transcode your
> > original file might be irretrievably destroyed and /
> > or overwritten.
> >
> > > When it runs these commands, does it export the
> > mpeg2 file with the
> > > commercials already removed?
> >
> > Assuming that running mythcommflag with the
> > --gencutlist switch is valid (which I can't confirm),
> > then essentially yes assuming that the original
> > commskiplist was generated and accurately marked the
> > commercials intended for removal.
> >
> > > Or, does it export the mpeg2 file as the
> > > original and puts the cutlist in a file alongside
> > the mpeg2 file?
> >
> > mythtranscode will create a new file. It may or may
> > not overwrite your original file depending on your
> > specific setup and script. Full disclosure: I didn’t
> > read your linked script. There is no text file
> > containing the cutlist generated by default, it is all
> > stored in the mythtv database.
> >
> > >
> > > Going through mythweb, I see the commercial flag for
> > the recorded
> > > programs, but when watching it through a Kodi
> > frontend, I see no dialog
> > > recognizing commercials.
> >
> > Kodi doesn't understand anything to do with mythtv
> > commskiplist or cutlist, it just plays the file as it
> > currently is.
> >
> > My two guesses would be:
> > a) using mythcommflag with --gencutlist is invalid
> > therefore your cutlist is empty therefore your
> > transcode output is the full file.
> > b) your commskiplist is empty or incorrect to begin
> > with therefore your cutlist is empty / incorrect
> > therefore your transcode output is the full file.
> >
> > Easiest way to check the commskip list is to play a
> > recording in mythfrontend, press 'e' to bring up the
> > editor then press 'z' to import the commskiplist into
> > the cutlist editor and check it there. When you exit
> > it will give you the option to save the cutlist or
> > discard changes.
> >
> > >
> > > Thanks in advanced!
> >
> >
> >
> > Thanks for the response. You did a great job explaining how
> > it all works and it was extremely helpful.
> >
> >
> > I ended up pulling up the editor and the commskiplist thing in
> > the mythfrontend. (I figured I'll worry about Kodi later).
> > The "E" doesn't do anything (says no seektable) and the "Z"
> > just skips forward. I also checked out that mythcommflag, and
> > there is no gencutlist option in it either. Since the
> > transcoded file isn't shorter and includes the commercials,
> > and the 'z' doesn't do anything except skip around, I'm
> > guessing that commercial detection isn't working for me with
> > the transcode.
> >
> >
> > Ideally, I'd like myth to flag the commercials after the
> > transcode in the database so that it doesn't cut up the
> > original file....just in case commercial detection doesn't
> > work, I can always view the show without loosing parts of it.
> > After running the transcode through handbrake, is it possible
> > to execute something like...
> >
> >
> > mythcommflag -f <file.mp4>
> >
> >
> > Will this keep the original file in tact (with the
> > commercials), but make mythtv flag the commercials properly?
> >
> >
> > Thanks for your help and responses again.
>
>
> > because commflag is not 100% accurate I would never auto transcode a
> > recording. Before transcoding is when E and Z act as previously
> > described and once a cut list is edited the recording can be
> > transcoded without losing anything you want kept. For recordings that
> > have been transcoded they may still be available if in the BE set-up
> > you haven't toggled off the switch to keep old recordings after
> > transcoding, which would make it possible to rebuild the seek table,
> > edit and save and transcode.
> >
> >
> If you transcode to AVCC format H264 mpeg PS (mpeg4 container) you then
> can not generate seektable (& then cutlist) & probably can't
> meaningfully use mythcommflag.
>
> MythTV only generates seektables for H264 video in TS container.
> You need to modify the H264 transcode script to use annexB H264 mpeg
> transport stream container.
> The other issues is that typical x264 settings has very sparse keyframes
> (potential cut points).
>
> The TS container file is a bit larger but is more robust.
>
>
Thanks for the response. So, it sounds like my problem is that I'm
creating files that aren't fully compatible with myth. I suppose I have
some more research to do on this...
If I understand you correctly, the videos have to be in an "MPEG transport
stream" and not in the mpeg4 container that I'm using.
Is there a reason myth doesn't move over to mpeg4, or something else?
Thanks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mythtv.org/pipermail/mythtv-users/attachments/20160313/17fcd7b9/attachment.html>
More information about the mythtv-users
mailing list