[mythtv-commits] Ticket #12051: Fix CEA-608 preamble access codes that indent.

MythTV noreply at mythtv.org
Fri Feb 7 08:52:10 UTC 2014


#12051: Fix CEA-608 preamble access codes that indent.
---------------------------------------+------------------------
     Reporter:  faginbagin <mythtv@…>  |      Owner:  stichnot
         Type:  Patch - Bug Fix        |     Status:  new
     Priority:  minor                  |  Milestone:  unknown
    Component:  MythTV - Captions      |    Version:  0.27-fixes
     Severity:  medium                 |   Keywords:
Ticket locked:  0                      |
---------------------------------------+------------------------
 PACs that indent were off by one column. Without the fix, the indent will
 be a multiple of 4 minus 1. For example: an indent of 4 will be an indent
 of 3, an indent of 8 will be an indent of 7, etc.

 The problem was caused by inconsistent treatment of unicode chars in the
 range 0x7000 to 0x7030. These codes are used to mark attribute changes in
 a QString, and sometimes, but not always spaces. The fix was to change
 them so they ONLY mark attribute changes, and spaces are added as needed
 to increment the column position.

 To verify the problem and test the fix:
 * add the following video clip to your video storage group:
 http://ncamftp.wgbh.org/DTV/CEA%20test%20material/Iteration_1/CEAv1.2zero.trp
 Be sure to change the filename extension from .trp to .mpg,
 * Scan for changes.
 * Start to play the clip, then pause.
 * Press M/menu. Select Subtitles -> Select VBI CC -> CC 1: English
 * Play and fast forward to LTCR 01:02:10:00 (a timecode in video)
 * Use play/pause to carefully observe the "Indent" captions.
 * When the caption "Indent0 UL" is displayed, take note of the location of
 the second "n". It is in column 4.
 * Resume play, then pause when the next caption, "Indent4", is displayed.
 The "I" should be in the same position as the second "n" of the previous
 caption. Without the fix, it will instead be in column 3, the same
 location as the previous caption's "e".

 The attached patch should apply cleanly to either fixes/0.27 or master
 branches. FWIW, I tested it on a modified fixes/0.27 that contains the
 latest versions from master of these files:
 mythtv/libs/libmythtv/cc608decoder.cpp
 mythtv/libs/libmythtv/cc708reader.cpp
 mythtv/libs/libmythtv/cc708window.cpp
 mythtv/libs/libmythtv/cc708window.h
 mythtv/libs/libmythtv/mythccextractorplayer.cpp
 mythtv/libs/libmythtv/subtitlescreen.cpp
 mythtv/libs/libmythtv/subtitlescreen.h

--
Ticket URL: <https://code.mythtv.org/trac/ticket/12051>
MythTV <http://www.mythtv.org>
MythTV Media Center


More information about the mythtv-commits mailing list