[mythtv] Ticket #8631: Treat cutlists like lossless transcoding

Michael T. Dean mtdean at thirdcontact.com
Mon Jul 5 17:55:56 UTC 2010


  On 07/04/2010 11:10 AM, Jim Stichnoth wrote:
> On Thu, Jul 1, 2010 at 7:06 PM, MythTV<mythtv at cvs.mythtv.org>  wrote:
>> #8631: Treat cutlists like lossless transcoding
>> ------------------------------------------------+---------------------------
>>   Reporter:  Jim Stichnoth<stichnot@…>            |       Owner:  ijr
>>      Type:  enhancement                         |      Status:  new
>>   Priority:  minor                               |   Milestone:  unknown
>> Component:  MythTV - General                    |     Version:  Unspecified
>>   Severity:  medium                              |     Mlocked:  0
>> ------------------------------------------------+---------------------------
>>   This patch makes playback when a cutlist is present behave much more like
>>   after lossless transcoding.  In particular:
>>
>>   1. The playback progress indicator reflects the cutlist.  For example, it
>>   might display "Play 7:43 of 42:44" instead of "Play 9:39 of 60:00".
>>
>>   2. Seek operations, such as jumping forward or backward or to a particular
>>   minute mark, also take the cutlist into account.
>>
>>   I'm a little concerned that this introduces even more conversions back and
>>   forth between frames and seconds, but that cleanup is beyond the scope of
>>   this patch...
> I thought this description might deserve more commentary.
>
> Before watching a recording, I usually quickly create a cutlist to
> edit out the commercials.  When looking at the status during playback,
> I prefer to see the current position and total length as though the
> cut sections were permanently deleted.  That's what the changes in
> NuppelVideoPlayer.cpp do.
>
> Then I noticed that jumping and seeking were inconsistent.  After
> pressing "30i" to jump to the 30-minute mark, the status indicator
> might report only being at the 22-minute mark.  Jumping forward 10
> minutes might appear to only jump 8 minutes.  The changes in
> tv_play.cpp make seeking and jumping consistent again.
>
> Editing, bookmark setting/seeking, etc. continue to use untranslated
> frame numbers.
>
> If this kind of presentation is judged to be outside the design
> principles, feel free to close the ticket.  Otherwise, I'll continue
> to maintain the patch.

Jim, I like the idea of making the information available, but I think it 
should be available as just another piece of data in the map, so that 
themers can choose to display it or not--or, more likely, to decide 
where to display each piece of data.  It would also be nice to factor in 
the flag list, even if a cut list isn't specified (once it becomes an 
alternative/additional/optional display element).

As far as the jumping and seeking goes, though, I'm not sure if that's a 
good thing.  I know that 3/4 of the way through a 1-hr TV show is the 
45-min mark.  If I have a cutlist applied and the 1-hr show is now 38min 
of content, I have no clue what 3/4 is--let alone the fact that I have 
no idea how long various programs are after cutting commercials.  
Therefore, I'd like to make this "optional" by the use of different key 
bindings (i.e. LEFT/RIGHT/UP/DOWN work as they always have, but 
LEFTIGNORECUTS (or whatever--better name appreciated) seeks while 
factoring in the cutlist.  (And, of course, the other key binding 
wouldn't factor in the flag list for seeking/jumping since you may need 
to seek to find parts of the show that the flagger mistakenly removed.)

The biggest problem with the alternative keybindings approach is that 
doing it elegantly requires some changes to keybindings I have planned 
to unroll the overloaded bindings into separate bindings.  Until then, 
though, just adding another case(s) to the TV::SeekHandleAction() 
function would be fine.

Mike


More information about the mythtv-dev mailing list