Opened 12 years ago

Closed 12 years ago

#10273 closed Patch - Bug Fix (fixed)

CEA-708 captions are delayed because of incorrect byte-pair handling

Reported by: argilo@… Owned by: danielk
Priority: minor Milestone: 0.25
Component: MythTV - ATSC Version: Master Head
Severity: medium Keywords: cea-708
Cc: Ticket locked: no

Description

ATSC closed captions (CEA-708) are sometimes delayed due do a bug in the way the DTVCC transport layer is packetized. According to the CEA-708 specification:

"The end of the packet is indicated by either: (1) receipt of the header (cc_valid = 1, cc_type = 11) of the next DTVCC packet, or (2) receipt of a byte-pair where cc_valid = 0 and cc_type = 10 or cc_type = 11."

But only case (1) is handled currently. As a result, a received packet will not be processed until the next one arrives, which in some cases only occurs after a long time has passed. This usually manifests in roll-up captions that are missing the last letter or two until more text appears, on in pop-on captions that appear too late, not leaving enough time for the viewer to read them before they disappear.

The attached patch adds handling for case (2). I have tested it with the PBS test material (http://ncamftp.wgbh.org/DTV/CEA%20test%20material/) and recorded programs from various local ATSC stations. The delays are gone, and I have not observed any new problems.

Attachments (1)

cc708-null-fix.patch (2.0 KB) - added by argilo@… 12 years ago.
fix for delayed closed captions

Download all attachments as: .zip

Change History (2)

Changed 12 years ago by argilo@…

Attachment: cc708-null-fix.patch added

fix for delayed closed captions

comment:1 Changed 12 years ago by Github

Milestone: unknown0.25
Resolution: fixed
Status: newclosed

CEA-708: Fix delayed presentation of some captions.

Patch from argilo@… (received with thanks) - see #10273 for details. Fixes a number of test streams with no obvious regressions.

Closes #10273

Branch: master Changeset: f8312c35f01980be8d10a048cc23220f11864211

Note: See TracTickets for help on using tickets.