SYSTEM AND METHOD FOR TRANSCODING LIVE CLOSED CAPTIONS AND SUBTITLES
A method is provided in one example and includes receiving video data from a video source in a first format, where the video data includes associated text to be overlaid on the video data as part of a video stream. The method also includes generating a plurality of fragments based on the text. The fragments include respective regions having a designated time duration. The method also includes using the plurality of fragments to convert the video data into a second format to be provided as an output, which is based on the video data that was received. In more specific embodiments, the first format is associated with a Paint-On caption or a Roll-Up caption, and the second format is associated with a Pop-On caption. The first format can also be associated with subtitles.
1 . A method, comprising:
receiving video data from a video source in a first format, wherein the video data includes associated text to be overlaid on the video data as part of a video stream;
generating a plurality of fragments based on the text, wherein the fragments include respective regions having a designated time duration; and
using the plurality of fragments to convert the video data into a second format to be provided as an output, which is based on the video data that was received.
2 . The method of claim 1 , wherein the first format is associated with a Paint-On caption or a Roll-Up caption, and the second format is associated with a Pop-On caption.
3 . The method of claim 1 , wherein the first format is associated with subtitles.
4 . The method of claim 1 , wherein a sum of particular time durations of particular regions in a particular fragment of the text is equal to an entire time duration of the particular fragment.
5 . The method of claim 1 , further comprising:
evaluating timestamps associated with caption data; and
reordering the caption data to match an ordering of video frames for the output.
6 . The method of claim 1 , further comprising:
determining a level of space that a video processing module should reserve in a particular video frame associated with the video data.
7 . The method of claim 1 , further comprising:
providing a target bit rate based on an amount of caption data being processed at a packaging agent that converts the video data between the first format and the second format.
8 . The method of claim 1 , further comprising:
correcting errors in caption data that includes the text and control codes.
9 . The method of claim 1 , further comprising:
communicating information concerning frame ordering and frame timing for the video data.
10 . Logic encoded in one or more non-transitory media that includes instructions for execution and when executed by a processor is operable to perform operations, comprising:
receiving video data from a video source in a first format, wherein the video data includes associated text to be overlaid on the video data as part of a video stream;
generating a plurality of fragments based on the text, wherein the fragments include respective regions having a designated time duration; and
using the plurality of fragments to convert the video data into a second format to be provided as an output, which is based on the video data that was received.
11 . The logic of claim 10 , the operations further comprising:
communicating a status for the particular device from the server in response to a request status update from a user interface.
12 . The logic of claim 10 , wherein the first format is associated with a Paint-On caption or a Roll-Up caption, and the second format is associated with a Pop-On caption.
13 . The logic of claim 10 , wherein the first format is associated with subtitles.
14 . The logic of claim 10 , wherein a sum of particular time durations of particular regions in a particular fragment of the text is equal to an entire time duration of the particular fragment.
15 . The logic of claim 10 , the operations further comprising:
evaluating timestamps associated with caption data; and
reordering the caption data to match an ordering of video frames for the output.
16 . The logic of claim 10 , the operations further comprising:
determining a level of space that a video processing module should reserve in a particular video frame associated with the video data.
17 . The logic of claim 10 , the operations further comprising:
providing a target bit rate based on an amount of caption data being processed at a packaging agent that converts the video data between the first format and the second format.
18 . The logic of claim 10 , the operations further comprising:
correcting errors in caption data that includes the text and control codes.
19 . An apparatus, comprising:
a memory element configured to store instructions;
a processor coupled to the memory; and
a packaging agent, wherein the processor is operable to execute the instructions such that the apparatus is configured for:
receiving video data from a video source in a first format, wherein the video data includes associated text to be overlaid on the video data as part of a video stream;
generating a plurality of fragments based on the text, wherein the fragments include respective regions having a designated time duration; and
using the plurality of fragments to convert the video data into a second format to be provided as an output, which is based on the video data that was received.
20 . The apparatus of claim 19 , the apparatus being further configured for:
correcting errors in caption data that includes the text and control codes;
communicating information concerning frame ordering and frame timing for the video data; and
providing a target bit rate based on an amount of caption data being processed at the packaging agent that converts the video data between the first format and the second format.