IP Library Granted Patent US 11,877,036
Granted Patent B2
US 11,877,036 · App. 17/573,697 · Granted Jan 16, 2024

Rendering scrolling captions

Inventor: Aurovind Sagar Epari (Karnataka, IN)
Assignee: ARRIS Enterprises LLC
H04N21/4884H04N21/42653H04N21/44004H04N21/44008
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,877,036
App. No.
17/573,697
Filed
Jan 12, 2022
Granted
Jan 16, 2024
Kind
B2
Art Unit
2424
USPC
725/37
Abstract

A method, system, and computer program product for rendering scrolling captions for media content includes a processor to receive a first request to display a first line of text associated with a media file. The processor may generate a framebuffer object (FBO) and a first texture per-line (TPL) for the first line of text. The processor may draw one or more glyphs on the first TPL, and render the first TPL in a first position of the FBO. The processor may receive a second request to display a second line of text. The processor may generate a second TPL for the second line of text, draw one or more glyphs on the second TPL, render the first TPL in a second position and the second TPL in the first position.

Claims (68)

1. A method for rendering scrolling captions for media content, the method comprising:

receiving, by a computing device, a first request to display a first line of text associated with a media file, the first line of text being caption data for a first portion of audio content of the media file;

generating, by the computing device, a framebuffer object (FBO), the FBO being an active framebuffer for the media file;

generating, by the computing device, a first texture per-line (TPL) for the first line of text;

drawing, by the computing device, one or more glyphs on the first TPL;

rendering, by the computing device, the first TPL in a first position of the FBO;

displaying, by the computing device, the first TPL on a display at the first position;

receiving, by the computing device, a second request to display a second line of text associated with the media file, the second line of text being caption data for a second portion of the audio content of the media file;

generating, by the computing device, a second texture per-line (TPL) for the second line of text;

drawing, by the computing device, one or more glyphs on the second TPL;

rendering the first TPL in a second position and the second TPL in the first position; and

displaying the second TPL on the display in the first position and the first TPL in the second position.

2. A method according to claim 1 , wherein the first TPL and the second TPL are bound to the FBO.

3. A method according to claim 1 , wherein the first TPL and the second TPL are generated using OpenGL.

4. A method according to claim 1 , wherein the displaying the second TPL on the display in the first position and the first TPL in the second position comprises:

scrolling, by the computing device, the first TPL from the first position to the second position on the display.

5. A method according to claim 1 , wherein the second position is partially visible on the display.

6. A method according to claim 1 , comprising:

storing, by the computing device, the first TPL and the second TPL in an active TPL list, the active TPL list stored in a memory of the computing device.

7. A method according to claim 6 , comprising:

determining, by the computing device, the second position is not visible on the display; and

removing, by the computing device, the first TPL from the active TPL list.

8. A system for rendering scrolling captions for media content, the system comprising:

a processor configured to receive a first request to display a first line of text associated with a media file, the first line of text being caption data for a first portion of audio content of the media file;

the processor configured to generate a framebuffer object (FBO), the FBO being an active framebuffer for the media file,

the processor configured to generate a first texture per-line (TPL) for the first line of text;

a graphics processing unit of the processor configured to:

draw one or more glyphs on the first TPL;

render the first TPL in a first position of the FBO;

a display unit configured to display the first TPL on a display at the first position;

the processor configured to receive a second request to display a second line of text associated with the media file, the second line of text being caption data for a second portion of the audio content of the media file;

the processor configured to generate a second texture per-line (TPL) for the second line of text;

the graphics processing unit of the processor configured to:

draw one or more glyphs on the second TPL;

render the first TPL in a second position and the second TPL in the first position; and

the display unit configured to display the second TPL on the display in the first position and the first TPL in the second position.

9. A system according to claim 8 , wherein the first TPL and the second TPL are bound to the FBO.

10. A system according to claim 8 , wherein the first TPL and the second TPL are generated using OpenGL.

11. A system according to claim 8 , wherein the display unit is configured to display the second TPL on the display in the first position and the first TPL in the second position comprises:

the processor configured to scroll the first TPL from the first position to the second position on the display.

12. A system according to claim 8 , comprising:

a memory configured to store the first TPL and the second TPL in an active TPL list, the active TPL list.

13. A system according to claim 12 , comprising:

the processor configured to determine the second position is not visible on the display; and

the processor configured to remove the first TPL from the active TPL list stored in the memory.

14. A computer program product for rendering scrolling captions for media content, the computer program product comprising:

a non-transitory computer-readable storage medium having program instructions embodied therewith, the program instructions executable by a computer to cause the computer to perform a method, comprising:

receiving, by a computing device, a first request to display a first line of text associated with a media file the first line of text being caption data for a first portion of audio content of the media file;

generating, by the computing device, a framebuffer object (FBO), the FBO being an active framebuffer for the media file;

generating, by the computing device, a first texture per-line (TPL) for the first line of text;

drawing, by the computing device, one or more glyphs on the first TPL;

rendering, by the computing device, the first TPL in a first position of the FBO;

displaying, by the computing device, the first TPL on a display at the first position;

receiving, by the computing device, a second request to display a second line of text associated with the media file, the second line of text being caption data for a second portion of the audio content of the media file;

generating, by the computing device, a second texture per-line (TPL) for the second line of text;

drawing, by the computing device, one or more glyphs on the second TPL;

rendering the first TPL in a second position and the second TPL in the first position; and

displaying the second TPL on the display in the first position and the first TPL in the second position.

15. A computer program product according to claim 14 , wherein the first TPL and the second TPL are bound to the FBO.

16. A computer program product according to claim 14 , wherein the first TPL and the second TPL are generated using OpenGL.

17. A computer program product according to claim 14 , wherein the displaying the second TPL on the display in the first position and the first TPL in the second position comprises:

scrolling, by the computing device, the first TPL from the first position to the second position on the display.

18. A computer program product according to claim 14 , wherein the second position is partially visible on the display.

19. A computer program product according to claim 14 , comprising:

storing, by the computing device, the first TPL and the second TPL in an active TPL list, the active TPL list stored in a memory of the computing device.

20. A computer program product according to claim 19 , comprising:

determining, by the computing device, the second position is not visible on the display; and

removing, by the computing device, the first TPL from the active TPL list.