Enhancing a rendering system to distinguish presentation time from data time
A machine-implemented method: (A) maintains a value of a data time parameter representing an amount of time required by a rendering system to render a portion of temporal sequence presentation data at a default presentation rate; (B) provides the value of the data time parameter to a first component of the rendering system; (C) calculates, based on the value of the data time parameter, a value of a presentation time parameter representing an amount of time elapsed during rendering of the portion of the temporal sequence presentation data; and (D) provides the value of the presentation time parameter to a second component of the rendering system; wherein the value of the presentation time parameter is not equal to the value of the data time parameter.
1. A method, performed by at least one machine, for rendering temporal sequence presentation data in a machine-implemented rendering system, the temporal sequence presentation data being tangibly stored in a first computer-readable medium, the method comprising:
(A) maintaining a value of a data time parameter tangibly stored in a second computer-readable medium and representing an amount of time required by the rendering system to render a portion of the temporal sequence presentation data at a default presentation rate;
(B) providing the value of the data time parameter to a first component of the rendering system;
(C) calculating, based on the value of the data time parameter, a value of a presentation time parameter tangibly stored in a third computer-readable medium and representing an amount of time elapsed during rendering of the portion of the temporal sequence presentation data; and
(D) providing the value of the presentation time parameter to a second component of the rendering system;
wherein the value of the presentation time parameter is not equal to the value of the data time parameter.
2. The method of claim 1 , wherein the first component and the second component are the same component of the rendering system.
3. The method of claim 1 , wherein (D) comprises providing the presentation time parameter value in response to a request from the second component for a current time.
4. The method of claim 1 , wherein (B) comprises providing the data time parameter value in response to a request from the first component for a current time.
5. The method of claim 1 , wherein (A) comprises:
(A) (1) identifying a number of elements in the portion of the temporal sequence presentation data;
(A) (2) identifying a rendition period required by the rendering system to render one of the elements in the portion of the temporal sequence presentation data; and
(A) (3) maintaining a product of the number of elements multiplied by the identified rendition period as the data time parameter value in the second computer-readable medium.
6. The method of claim 1 , wherein (A) comprises:
(A) (1) for each element in the portion of the temporal sequence presentation data:
(a) identifying a default rendition period of the element; and
(A) (2) maintaining a sum of the identified default rendition periods as the data time parameter value in the second computer-readable medium.
7. The method of claim 1 , wherein (A) comprises:
(A) (1) for each element in the portion of the temporal sequence presentation data:
(a) identifying an actual rendition period of the element;
(b) identifying an actual presentation rate of the element;
(c) multiplying the actual rendition period of the element by the actual presentation rate of the element to produce a product; and
(A) (2) maintaining a sum of the products produced by (A)(1) as the data time parameter in the second computer-readable medium.
8. The method of claim 1 , wherein (A) comprises:
identifying, as the value of the data time parameter, a time integral of a presentation rate of the portion over the amount of time elapsed during rendering of the portion by the rendering system, wherein the presentation rate is equal to the ratio of a change in the value of the data time parameter over time to a change in the value of the presentation time parameter over time; and
maintaining the value of the data time parameter in the second computer-readable medium.
9. The method of claim 1 , wherein (C) comprises:
(C) (1) for each element in the portion of the temporal sequence presentation data:
(a) identifying a default rendition period of the element;
(b) identifying an actual presentation rate of the element;
(c) dividing the default rendition period of the element by the actual presentation rate of the element to produce a quotient; and
(C) (2) calculating a sum of the quotients produced by (C) (1) as the presentation time parameter value in the third computer-readable medium.
10. The method of claim 1 , wherein (D) comprises:
(D) (1) receiving an explicit request for the value of the presentation time parameter; and
(D) (2) providing the value of the presentation time parameter in response to the request.
11. The method of claim 1 , wherein (B) comprises:
(B) (1) receiving an explicit request for the value of the data time parameter; and
(B) (2) providing the value of the data time parameter in response to the request.
12. A device for rendering temporal sequence presentation data in a machine-implemented rendering system, the temporal sequence presentation data being tangibly stored in a first computer-readable medium, the device comprising at least one processor and at least one second computer-readable medium tangibly storing computer program instructions for:
(A) maintaining a value of a data time parameter tangibly stored in a second computer-readable medium and representing an amount of time required by the rendering system to render a portion of the temporal sequence presentation data at a default presentation rate;
(B) providing the value of the data time parameter to a first component of the rendering system;
(C) calculating, based on the value of the data time parameter, a value of a presentation time parameter tangibly stored in a third computer-readable medium and representing an amount of time elapsed during rendering of the portion of the temporal sequence presentation data; and
(D) providing the value of the presentation time parameter to a second component of the rendering system;
wherein the value of the presentation time parameter is not equal to the value of the data time parameter.
13. The device of claim 12 , wherein the first component and the second component are the same component of the rendering system.
14. The device of claim 12 , wherein (D) comprises providing the presentation time parameter value in response to a request from the second component for a current time.
15. The device of claim 12 , wherein (B) comprises providing the data time parameter value in response to a request from the first component for a current time.
16. The device of claim 12 , wherein (A) comprises:
(A) (1) identifying a number of elements in the portion of the temporal sequence presentation data;
(A) (2) identifying a rendition period required by the rendering system to render one of the elements in the portion of the temporal sequence presentation data; and
(A) (3) maintaining a product of the number of elements multiplied by the identified rendition period as the data time parameter value in the second computer-readable medium.
17. The device of claim 12 , wherein (A) comprises:
(A) (1) for each element in the portion of the temporal sequence presentation data:
(a) identifying a default rendition period of the element; and
(A) (2) maintaining a sum of the identified default rendition periods as the data time parameter value in the second computer-readable medium.
18. The device of claim 12 , wherein (A) comprises:
(A) (1) for each element in the portion of the temporal sequence presentation data:
(a) identifying an actual rendition period of the element;
(b) identifying an actual presentation rate of the element;
(c) multiplying the actual rendition period of the element by the actual presentation rate of the element to produce a product; and
(A) (2) maintaining a sum of the products produced by (A) (1) as the data time parameter in the second computer-readable medium.
19. The device of claim 12 , wherein (A) comprises:
identifying, as the value of the data time parameter, a time integral of a presentation rate of the portion over the amount of time elapsed during rendering of the portion by the rendering system, wherein the presentation rate is equal to the ratio of a change in the value of the data time parameter over time to a change in the value of the presentation time parameter over time; and
maintaining the value of the data time parameter in the second computer-readable medium.
20. The device of claim 12 , wherein (C) comprises:
(C) (1) for each element in the portion of the temporal sequence presentation data:
(a) identifying a default rendition period of the element;
(b) identifying an actual presentation rate of the element;
(c) dividing the default rendition period of the element by the actual presentation rate of the element to produce a quotient; and
(C) (2) calculating a sum of the quotients produced by (C) (1) as the presentation time parameter value in the third computer-readable medium.
21. The device of claim 12 , wherein (D) comprises:
(D) (1) receiving an explicit request for the value of the presentation time parameter; and
(D) (2) providing the value of the presentation time parameter in response to the request.
22. The device of claim 12 , wherein (B) comprises:
(B) (1) receiving an explicit request for the value of the data time parameter; and
(B) (2) providing the value of the data time parameter in response to the request.