[mythtv-users] Lossless-cut Not Ubuntu
r.d.vaughan at rogers.com
Fri Nov 2 12:23:01 UTC 2012
On 12-11-01 11:00 PM, Jason But wrote:
> As an aside, I'm currently using mythnuv2mkv
> (http://www.mythtv.org/wiki/Mythnuv2mkv) to do my cutting. With
> regards to lossless_cut, I see mention that cuts "should" be made on
> key-frames, what happens if they are not?
> I have made a number of recordings which I've cut and compressed,
> selecting good frames to end/start cuts on is difficult and you often
> get artifacts of commercials in the final cut. Alternatively,
> sometimes the nearest key-frame means that audio and images are cut
> from the final copy.
> I suppose what I am trying to say is that it would be nice to be able
> to do frame-accurate cutting (or at least near). If we are re-encoding
> to h264 anyway, is there any reason you aren't decoding all frames and
> re-encoding them?
Maybe I can rephrase the comment "should", no matter if you chose
keyframes in the MythTV UI or just let commflag decide your cut points,
the utility that does the cutting "mkvmerge" picks the nearest keyframe
based ontheinput time stamp value.
Those time stamps are calculated "Frame number * Frames-per-sec =
HH:MM:SS.nnnnnnnnn" time code(the decimals are nanosecond accurate).So
if you had concerns about loosing some video and/or audio because you
are forced to use a keyframe the point is moot.
No matter what, a keyframe will always be used so it is better that YOU
choose which keyframe. You are right that sometimes choosing a keyframe
does chop off video. I use a HDPVR and found that with a 720p59.940 FPS
recording that the keyframes are approximately 2.48 seconds apart which
definitely means I experience some unwanted chop now and again. This is
an issue no matter which tool I used (ffmpeg, mkvmerge or Avidemux).
In the end I do not want to see video artefacts at cut points so
chose the tools which deliver that and accept the downside. My
understanding is that with other video encoding types the amount of
video time that passes between keyframes varies and are usually shorter.
With the Lossless Cut script, even if you have not actively set your cut
points on keyframes it adjusts what it is given to the nearest cut
pointsautomatically. This is done so that the cut segments better
reflect the cut points input from MythTV.
- The start cut frames are adjusted to the nearest keyframe less than or
equal to the start skip or cut frame number
- The end cut frames are adjusted to the nearest keyframe greater than
or equal to the end skip or cut frame number
As for the comment "If we are re-encoding to h264 anyway", well in my
case I already have h264 recordings. The point of Lossless Cut was to
provide a consistent, MythTV integrated, method of producing lossless
cut video files from as many different recording encoding types as
possible. What you do after you have a lossless cut video, such as
re-transcoding to different encoding types, it up to you.
When I started the project the MythTV developers commented that I should
concentrate on lossless cuts for h264 recordings as the current
solutions were wanting. That is what I did but I found out that mkvmerge
handlesa wider range of video, audio and subtitle types than just h264.
So the script was generic by virtue of the tools used.
Previously I was using Avidemux to manually cut commercials and it took
about 5-7 minutes per 60 minute TV show. Now with a commflagged video
and using Mythtv UI to manually verify and adjust the cut points (if
required)it takes 2 minutes tops. For me this has been a worthy effort.
More information about the mythtv-users