System and method for providing graphics using graphical engine
Systems and methods that provide graphics using a graphical engine are provided. In one example, a system may provide layered graphics in a video environment. The system may include a bus, a graphical engine and a graphical pipeline. The graphical engine may be coupled to the bus and may be adapted to composite a plurality of graphical layers into a composite graphical layer. The graphical engine may include a memory that stores the composite graphical layer. The graphical pipeline may be coupled to the bus and may be adapted to transport the composite graphical layer.
1. A method for providing a composite display comprising video and graphical layers, the method comprising:
when sufficient bandwidth is available:
in real-time, compositing a plurality of graphical layers into a real-time composite graphical layer; and
in real-time, combining a real-time video layer, cursor graphics and the real-time composite graphical layer; and
when sufficient bandwidth is not available:
in non-real-time, compositing a plurality of graphical layers into a non-real-time composite graphical layer; and
in real-time, combining a real-time video layer, cursor graphics and a previous composite graphics layer stored in memory and corresponding to the non-real-time composite graphical layer.
2. The method of claim 1 , wherein combining a real-time video layer, cursor graphics and the real-time composite graphical layer comprises alpha-blending at least the real-time video layer and the real-time composite graphical layer.
3. The method of claim 2 , wherein combining a real-time video layer, cursor graphics and the real-time composite graphical layer comprises positioning the cursor graphics on top of the alpha-blended real-time video layer and real-time composite graphical layer.
4. The method of claim 2 , wherein at least a portion of the cursor graphics is transparent.
5. The method of claim 1 , further comprising outputting the combined video layer, cursor graphics and real-time or non-real-time composite graphical layer in one of a plurality of independent video output streams.
6. The method of claim 1 , further comprising resizing at least the real-time or non-real-time composite graphical layer.
7. The method of claim 1 , further comprising converting an aspect ratio of at least the real-time or non-real-time composite graphical layer.
8. The method of claim 1 , further comprising converting visual information to conform to a particular standard.
9. The method of claim 1 , further comprising windowing graphical and/or video information.
10. The method of claim 1 , wherein in non-real-time, compositing a plurality of graphical layers into a non-real-time composite graphical layer comprises compositing a plurality of graphical layers into a non-real-time composite graphical layer as a background processing operation.
11. The method of claim 1 , wherein compositing a plurality of graphical layers in a graphical engine comprises compositing graphical information from a plurality of respective graphics streams corresponding to the plurality of graphical layers.
12. A system for providing a composite display comprising video and graphical layers, the system comprising at least one circuit that is operable to, at least:
when sufficient bandwidth is available:
in real-time, composite a plurality of graphical layers into a real-time composite graphical layer; and
in real-time, combine a real-time video layer, cursor graphics and the real-time composite graphical layer; and
when sufficient bandwidth is not available:
in non-real-time, composite a plurality of graphical layers into a non-real-time composite graphical layer; and
in real-time, combine a real-time video layer, cursor graphics and a previous composite graphics layer stored in memory and corresponding to the non-real-time composite graphical layer.
13. The system of claim 12 , wherein the at least one circuit is operable to combine a real-time video layer, cursor graphics and the real-time composite graphical layer by, at least in part, alpha-blending at least the real-time video layer and the real-time composite graphical layer.
14. The system of claim 13 , wherein the at least one circuit is operable to combine a real-time video layer, cursor graphics and the real-time composite graphical layer by, at least in part, positioning the cursor graphics on top of the alpha-blended real-time video layer and real-time composite graphical layer.
15. The system of claim 13 , wherein at least a portion of the cursor graphics is transparent.
16. The system of claim 12 , wherein the at least one circuit is operable to output the combined video layer, cursor graphics and real-time or non-real-time composite graphical layer in one of a plurality of independent video output streams.
17. The system of claim 12 , wherein the at least one circuit is operable to resize at least the real-time or non-real-time composite graphical layer.
18. The system of claim 12 , wherein the at least one circuit is operable to convert an aspect ratio of at least the real-time or non-real-time composite graphical layer.
19. The system of claim 12 , wherein the at least one circuit is operable to convert visual information to conform to a particular standard.
20. The system of claim 12 , wherein the at least one circuit is operable to window graphical and/or video information.
21. The system of claim 12 , wherein the at least one circuit is operable to composite a plurality of graphical layers into a non-real-time composite graphical layer by, at least in part, compositing a plurality of graphical layers into a non-real-time composite graphical layer as a background processing operation.
22. The system of claim 12 , wherein the at least one circuit is operable to composite a plurality of graphical layers by, at least in part, compositing graphical information from a plurality of respective graphics streams corresponding to the plurality of graphical layers.
23. A method for providing a composite display comprising video and graphical layers, the method comprising:
when sufficient bandwidth is available:
in real-time, compositing a plurality of graphical layers into a real-time composite graphical layer;
in real-time, combining a real-time video layer, cursor graphics and the real-time composite graphical layer by, at least in part, alpha-blending the real-time video layer and the real-time composite graphical layer; and
outputting information regarding the combined real-time video layer, cursor graphics and real-time composite graphical layer; and
when sufficient bandwidth is not available:
in non-real-time, compositing a plurality of graphical layers into a non-real-time composite graphical layer;
in real-time, combining a real-time video layer, cursor graphics and a previous composite graphics layer stored in memory and corresponding to the non-real-time composite graphical layer by, at least in part, alpha-blending the real-time video layer and the previous composite graphics layer; and
outputting information regarding the combined real-time video layer, cursor graphics and non-real-time composite graphical layer.
24. The method of claim 23 , wherein combining a real-time video layer, cursor graphics and the real-time composite graphical layer comprises positioning the cursor graphics on top of the alpha-blended real-time video layer and real-time composite graphical layer.
25. The method of claim 23 , wherein outputting information regarding the combined real-time video layer, cursor graphics and non-real-time composite graphical layer comprises outputting the information regarding the combined real-time video layer, cursor graphics and non-real-time composite graphical layer in one of a plurality of independent video output streams.
26. A system for providing a composite display comprising video and graphical layers, the system comprising at least one circuit that is operable to, at least:
when sufficient bandwidth is available:
in real-time, composite a plurality of graphical layers into a real-time composite graphical layer;
in real-time, combine a real-time video layer, cursor graphics and the real-time composite graphical layer by, at least in part, alpha-blending the real-time video layer and the real-time composite graphical layer; and
output information regarding the combined real-time video layer, cursor graphics and real-time composite graphical layer; and
when sufficient bandwidth is not available:
in non-real-time, composite a plurality of graphical layers into a non-real-time composite graphical layer;
in real-time, combine a real-time video layer, cursor graphics and a previous composite graphics layer stored in memory and corresponding to the non-real-time composite graphical layer by, at least in part, alpha-blending the real-time video layer and the previous composite graphics layer; and
output information regarding the combined real-time video layer, cursor graphics and non-real-time composite graphical layer.
27. The system of claim 26 , wherein the at least one circuit is operable to combine a real-time video layer, cursor graphics and the real-time composite graphical layer by, at least in part, positioning the cursor graphics on top of the alpha-blended real-time video layer and real-time composite graphical layer.
28. The system of claim 26 , wherein the at least one circuit is operable to output information regarding the combined real-time video layer, cursor graphics and non-real-time composite graphical layer by, at least in part, outputting the information regarding the combined real-time video layer, cursor graphics and non-real-time composite graphical layer in one of a plurality of independent video output streams.