[mythtv-commits] Ticket #9410: Positioning problems with BBC HD and BBC ONE HD recordings

MythTV noreply at mythtv.org
Tue Jan 11 19:33:47 UTC 2011


#9410: Positioning problems with BBC HD and BBC ONE HD recordings
-------------------------------------+-----------------------------
 Reporter:  mythtv@…                 |          Owner:  janne
     Type:  Bug Report               |         Status:  assigned
 Priority:  critical                 |      Milestone:  0.24.1
Component:  MythTV - Video Playback  |        Version:  Unspecified
 Severity:  medium                   |     Resolution:
 Keywords:                           |  Ticket locked:  0
-------------------------------------+-----------------------------

Comment (by mythtv@…):

 I now have at least a partial fix for this, in that I've found
 two aspects of the spec not implemented, and added code to handle
 them. Results, after making these changes (plus one of John Poet's),
 and then running "mythcommflag --rebuild", look promising. Most of the
 recordings I've tested now search perfectly. I did have some strange
 behaviour during Live playback of the news this evening, so there
 may be further problems to address.

 There are three changes:

 1) Prior to parsing the bodies of the various NALs, remove
 any emulation-prevention bytes. This should improve results
 for all H264, not just BBC HD. To keep the initial implementation
 simple, I've had to allocate a buffer to copy into, while performing
 the removal. It might be better, at some stage, to make a version
 of the getbits library that can jump over these bytes as it goes,
 but that would be quite difficult. I also removed all increments
 to byteP: provided it is incremented past the start code, there
 is no need to move it any further, and to do so carries the risk
 of miscalculating and moving it too far.

 2) I've updated the code for reading profile>=100 versions of the
 SPS. The scaling-list-present flag was being read, but not the lists
 themselves, and since the log2_max_frame_num_minus4 field occurs
 after, frame numbers were not being read correctly from slices.
 That was probably the biggest contributor to BBC HD problems.

 3) I've added John Poet's change that looks for nal_ref_idc changes
 only in slices.

 The three change are in my fork at: https://github.com/Glidos/mythtv
 They are the last three commits on branch fix9410-bbc-hd. I'm also
 attaching a patch.

-- 
Ticket URL: <http://code.mythtv.org/trac/ticket/9410#comment:5>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center


More information about the mythtv-commits mailing list