1. A method for presenting an interactive media guidance application in a user equipment device, comprising:
determining that a first portion of guide listings corresponding to guidance information for a first time period has been displayed on the user equipment device;
determining that a user is likely to use the user equipment device during a second time period based on a profile associated with the user equipment device, wherein the second time period succeeds the first time period in time order;
automatically requesting a second portion of guide listings corresponding to guidance information for the second time period from a database having guidance information in response to (1) determining that the first portion of guide listings has been displayed and (2) determining that the user is likely to use the user equipment device during the second time period;
storing, while the first portion of guide listings corresponding to guidance information for the first time period is displayed, the requested second portion of guide listings in a cache;
receiving an indication that the user has requested at least one guide listing within the requested second portion of guide listings; and
receiving the at least one guide listing within the requested second portion of guide listings from the cache in response to receiving the indication from the user.
2. The method of claim 1, wherein the interactive media guidance application is an interactive television program guide.
3. The method of claim 1, further comprising requesting a third portion of guide listings corresponding to guidance information for a third time period from the database of guidance information in response to providing the second portion of guide listings, wherein the third time period succeeds the second time period in time order.
4. The method of claim 1, wherein receiving the indication from the user comprises detecting one or more button depressions on a remote control.
5. The method of claim 1, wherein receiving the indication from the user comprises detecting one or more movements on a remote control.
6. The method of claim 1, wherein the cache is connected to the user equipment device.
7. The method of claim 1, wherein the cache is located in the user equipment device.
8. The method of claim 1, further comprising receiving an indication from the user equipment device to provide the second portion of guide listings.
9. The method of claim 8, wherein the received indication is based on a location of a highlighted region, and wherein the highlighted region selects a guide listing of the first portion of guide listings.
10. The method of claim 8, wherein the received indication is based on a given amount of time spent displaying the first portion of guide listings.
11. The method of claim 1, wherein requesting the second portion of guide listings from the database comprises transmitting the second time period to the database.
12. The method of claim 1, further comprising assigning a weight to each of the first portion of guide listings and the second portion of guide listings.
13. The method of claim 12, wherein the assigned weight is based at least in part on at least one of the first time period, the second time period, one or more of a plurality of media represented by the first portion of guide listings, and one or more of a plurality of media represented by the second portion of guide listings.
14. The method of claim 12, further comprising receiving an indication from the user equipment device to retrieve the second portion of guide listings from the cache based at least in part on the assigned weight.
15. The method of claim 1, wherein the profile indicates that the user is likely to use the media guidance application during a part of day that is associated with the second time period.
16. A device for presenting an interactive media guidance application in a user equipment device, comprising:
processing circuitry that is configured to:
determine that a first portion of guide listings corresponding to guidance information for a first time period has been displayed on the user equipment device;
determine that a user is likely to use the user equipment device during a second time period based on a profile associated with the user equipment device; wherein the second time period succeeds the first time period in time order;
automatically request a second portion of guide listings corresponding to guidance information for the second time period from a database having guidance information in response to (1) determining that the first portion of guide listings has been displayed and (2) determining that the user is likely to use the user equipment device during the second time period;
store, while the first portion of guide listings corresponding to guidance information for the first time period is displayed, the requested second portion of guide listings in a cache;
receive an indication that the user has requested at least one guide listing within the requested second portion of guide listings; and
receive the at least one guide listing within the requested second portion of guide listings from the cache in response to receiving the indication from the user.
17. The device of claim 16, wherein the interactive media guidance application is an interactive television program guide.
18. The device of claim 16, wherein the processing circuitry is further configured to request a third portion of guide listings corresponding to guidance information for a third time period from the database of guidance information in response to providing the second portion of guide listings, wherein the third time period succeeds the second time period in time order.
19. The device of claim 16, wherein the processing circuitry is further configured to detect one or more button depressions on a remote control.
20. The device of claim 16, wherein the processing circuitry is further configured to detect one or more movements on a remote control.
21. The device of claim 16, wherein the cache is connected to the user equipment device.
22. The device of claim 16, wherein the cache is located in the user equipment device.
23. The device of claim 16, wherein the processing circuitry is further configured to receive an indication from the user equipment device to provide the second portion of guide listings.
24. The device of claim 23, wherein the received indication is based on a location of a highlighted region, and wherein the highlighted region selects a guide listing of the first portion of guide listings.
25. The device of claim 23, wherein the received indication is based on a given amount of time spent displaying the first portion of guide listings.
26. The device of claim 16, wherein the processing circuitry is further configured to transmit the second time period to the database.
27. The device of claim 16, wherein the processing circuitry is further configured to assign a weight to each of the first portion of guide listings and the second portion of guide listings.
28. The device of claim 27, wherein the assigned weight is based at least in part on at least one of the first time period, the second time period, one or more of a plurality of media represented by the first portion of guide listings, and one or more of a plurality of media represented by the second portion of guide listings.
29. The device of claim 27, wherein the processing circuitry is further configured to receive an indication from the user equipment device to retrieve the second portion of guide listings from the cache based at least in part on the assigned weight.
30. The system of claim 16, wherein the profile indicates that the user is likely to use the media guidance application during a part of day that is associated with the second time period.
31. A device for presenting an interactive media guidance application in a user equipment device, comprising:
means for determining that a first portion of guide listings corresponding to guidance information for a first time period has been displayed on the user equipment device;
means for determining that a user is likely to user the user equipment device during a second time period based on a profile associated with the user equipment device, wherein the second time period succeeds the first time period in time order;
means for automatically requesting a second portion of guide listings corresponding to guidance information for the second time period from a database having guidance information in response to (1) determining that the first portion of guide listings has been displayed and (2) determining that the user is likely to use the user equipment device during the second time period;
means for storing, while the first portion of guide listings corresponding to guidance information for the first time period is displayed, the requested second portion of guide listings in a cache;
means for receiving an indication that the user has requested at least one guide listing within the requested second portion of guide listings; and
means for receiving the at least one guide listing within the requested second portion of guide listings from the cache in response to receiving the indication from the user.
32. The device of claim 31, wherein the interactive media guidance application is an interactive television program guide.
33. The device of claim 31, further comprising means for requesting a third portion of guide listings corresponding to guidance information for a third time period from the database of guidance information in response to providing the second portion of guide listings, wherein the third time period succeeds the second time period in time order.
34. The device of claim 31, further comprising means for detecting one or more button depressions on a remote control.
35. The device of claim 31, further comprising means for detecting one or more movements on a remote control.
36. The device of claim 31, wherein the cache is connected to the user equipment device.
37. The device of claim 31, wherein the cache is located in the user equipment device.
38. The device of claim 31, further comprising means for receiving an indication from the user equipment device to provide the second portion of guide listings.
39. The device of claim 38, wherein the received indication is based on a location of a highlighted region, and wherein the highlighted region selects a guide listing of the first portion of guide listings.
40. The device of claim 38, wherein the received indication is based on a given amount of time spent displaying the first portion of guide listings.
41. The device of claim 38, further comprises means for transmitting the second time period to the database.
42. The device of claim 31, further comprising means for assigning a weight to each of the first portion of guide listings and the second portion of guide listings.
43. The device of claim 42, wherein the assigned weight is based at least in part on at least one of the first time period, the second time period, one or more of a plurality of media represented by the first portion of guide listings, and one or more of a plurality of media represented by the second portion of guide listings.
44. The device of claim 42, further comprising means for receiving an indication from the user equipment device to retrieve the second portion of guide listings from the cache based at least in part on the assigned weight.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
What is claimed is:
1. A processing apparatus for simultaneously processing a plurality of transport streams that include data packets, the processing apparatus comprising:
a transport processor memory; and
a plurality of transport processor units that commonly utilize the transport processor memory, wherein each of the transport processor units comprises:
a transport interface that identifies data packets to acquire from an incoming transport stream;
a demultiplexing processor that performs processing operations on the acquired data packets; and
a demultiplexing direct memory access (DMA) unit that determines where the acquired data packets are to be transported.
2. A processing apparatus as recited in claim 1, wherein the transport interface generates a time stamp in header information of the acquired data packets to allow for clock recovery.
3. A processing apparatus as recited in claim 1, wherein the demultiplexing processor performs filtering operations on the acquired data packets.
4. A processing apparatus as recited in claim 3, further comprising a DMA switch for arbitrating transport of DMA packet information from among the demultiplexing DMA units of the plurality of transport processor units.
5. A processing apparatus as recited in claim 4, wherein the demultiplexing DMA unit has a DMA random access memory for buffering packet information for transfer through the DMA switch.
6. A processing apparatus as recited in claim 4, further comprising a playback DMA, wherein the DMA switch further comprises a playback DMA interface for sending DMA information to the playback DMA.
7. A processing apparatus as recited in claim 6, wherein the playback DMA can selectively send information back to one of the transport processor memory and a component external to the processing apparatus.
8. A processing apparatus for simultaneously processing a plurality of transport streams that include data packets, the processing apparatus comprising:
a shared context storage; and
a plurality of transport processor units that commonly utilize the shared context storage, wherein the shared context storage maintains information for data packets acquired by the transport processor units, and wherein each of the plurality of transport processor units comprises:
a transport interface that identifies data packets to acquire from an incoming transport stream;
a demultiplexing processor that performs processing operations on the acquired data packets; and
a demultiplexing direct memory access (DMA) unit that determines where the acquired data packets are to be transported.
9. A processing apparatus as recited in claim 8, wherein the shared context storage has a plurality of demultiplexing contexts for maintaining the information for the data packets acquired by the transport processor units.
10. A processing apparatus as recited in claim 9, further comprising a shared filter storage shared among the plurality of transport processor units, wherein the demultiplexing contexts point to the location of filters in the shared filter storage.
11. A processing apparatus as recited in claim 8, wherein the shared context storage has a plurality of DMA contexts for storing an address and a length of DMA buffers in which the information for the data packets is stored.
12. A processing apparatus for simultaneously processing a plurality of transport streams that include data packets, the processing apparatus comprising:
means for storing information; and
a plurality of means for processing incoming transport streams, wherein the plurality of means for processing commonly utilize the means for storing information, and wherein each of the plurality of means for processing comprises:
means for identifying data packets to acquire from an incoming transport stream;
means for performing processing operations on the acquired data packets; and
means for determining where the acquired data packets are to be transported.
13. A processing apparatus as recited in claim 12, wherein the plurality of means for processing comprise at least four transport processor units.
14. A processing apparatus as recited in claim 12, wherein:
each of the plurality of means for processing processes one of the incoming transport streams;
the incoming transport streams processed by the plurality of means for processing comprise different copies of the same incoming transport stream; and
each means for processing performs a different demultiplexing operation on the copy of the incoming transport stream that corresponds there to.
15. A processing apparatus as recited in claim 12, wherein one or more of the incoming transport streams comprise input from a playback DMA associated with the processing apparatus.
16. A processing apparatus as recited in claim 12, wherein one or more of the incoming transport streams comprise input from an external system source not originating from the processing apparatus.
17. A processing apparatus as recited in claim 12, wherein one or more of the incoming transport streams comprise input from a source external to a system that includes the processing device.
18. A processing apparatus as recited in claim 12, wherein the number of incoming transport streams exceeds the number of means for processing and wherein the processing apparatus further comprises means for selecting one of the transport streams to be processed by each of the means for processing.
19. In a video processing device configured to receive a plurality of incoming transport streams, the video processing device having a shared context storage and a plurality of transport processor units, each, a method for processing data packets comprising the acts of:
receiving data packets each having a packet identifier;
filtering the data packets by comparing the packet identifier of each of the received data packets with a data structure that specifies the packet identifiers of data packets that are to be acquired;
processing the filtered data packets using information included in one of a plurality of demultiplexing contexts stored in the shared context storage, the demultiplexing contexts maintaining status information of data packets processed by the video processing device; and
sending video data included in the data packets to buffers identified using information included in one of a plurality of direct memory access (DMA) contexts stored in the shared context storage, the DMA contexts maintaining the buffer information for data packets processed by the video processing device.
20. A method as recited in claim 19, wherein the buffers comprise ping pong buffers.
21. A method as recited in claim 19, wherein the buffers comprise ring buffers.
22. A method as recited in claim 19, wherein the information contained in each DMA context includes an address and a length of the buffer to which the video data is to be sent.
23. A method as recited in claim 22, wherein the information contained in each of the DMA contexts further includes information relating to special processing of packets, wherein the information relating to special processing is included in control fields of the DMA contexts, and wherein the information relating to special processing includes at least one of interrupt information, new buffer information, and buffer repeat information.
24. A method as recited in claim 19, wherein the method comprises performing the acts of receiving, filtering, processing and sending the data packets by each of the plurality of transport processor units substantially simultaneously such that the video processing device processes the plurality of transport streams substantially simultaneously.
25. In a video processing device configured to receive a plurality of incoming transport streams that include data packets, the video processing device having a plurality of transport processor units that utilize a common transport memory for maintaining information associated with data packets processed by the video processing device, a method for processing a data packet using an index associated with the data packet, the method comprising the acts of;
receiving a data packet at a transport interface of one of the transport processor units;
generating an index associated with the received data packet;
accessing first information from the common transport memory using the index, wherein the first information enables a demultiplexing processor of said one of the transport processor units to perform a processing operation on the data packet; and
accessing second information from the common transport memory using the index, wherein the second information enables a demultiplexing direct memory access (DMA) unit of said one of the transport processors to identify a buffer in which video data included in the data packet is to be stored.
26. A method as recited in claim 25, further comprising the act of selectively descrambling the video data included in the data packet using the first information accessed from the common transport memory.
27. A method as recited in claim 25, further comprising the act of filtering video information included the data packet using a filter from a shared filter storage, the filter being located using the first information accessed from the common transport memory.
28. A method as recited in claim 25, further comprising the act of storing the video data included in the data packet in one of a plurality of storage formats, the storage format being identified using the first information accessed from the common transport memory.
29. In a video processing device configured to receive a plurality of incoming transport streams that include data packets, the video processing device having a plurality of transport processor units that utilize shared context storage having demultiplexing contexts for maintaining information associated with the data packets processed by the video processing device and direct memory access (DMA) contexts for maintaining buffer information for the data packets processed by the video processing device, a method for processing a data packet using an index associated with the data packet, the method comprising the acts of:
receiving a data packet at a transport interface of one of the transport processor units;
generating an index associated with the received data packet;
accessing, by a demultiplexing processor of one of the plurality of transport processor units, a demultiplexing context associated with the data packet from the shared context storage using the index;
generating a DMA index associated with the data packet using the demultiplexing context; and
accessing, by a demultiplexing DMA unit of said one of the plurality of transport processor units, a DMA context associated with the data packet from the shared context storage using the DMA index such that the demultiplexing DMA unit is capable of identifying a buffer in which video data included in the data packet is to be stored.
30. A method as recited in claim 29, wherein the act of accessing a demultiplexing context comprises:
identifying a location of the demultiplexing context in the shared context storage; and
reading information in the demultiplexing context into the demultiplexing processor.
31. A method as recited in claim 29, wherein the act of generating a DMA index comprises the act of selecting a DMA channel on which to write the video data, the DMA channel being associated with the DMA context, the DMA index pointing to the DMA context.
32. A method as recited in claim 29, wherein the act of accessing the DMA context comprises:
identifying a location of the DMA context in the shared context storage, the DMA context being associated with the DMA index; and
reading information in the DMA context into the demultiplexing DMA unit.
33. A method as recited in claim 29, further comprising:
modifying the demultiplexing context and writing the modified demultiplexing context to the shared context storage; and
modifying the DMA context and writing the modified DMA context to the shared context storage.
34. In a video processing device configured to receive an incoming transport stream that includes data packets, the video processing device having a unit that utilizes a transport memory for maintaining information associated with data packets acquired by the video processing device, a method for delaying processing of data packets associated with a video program using an index associated with the data packets, the method comprising the acts of;
repeatedly performing the acts of:
receiving a data packet at a transport interface of the transport processor unit;
generating a time stamp associated with the received data packet
generating an index associated with the received data packet;
accessing information from the transport memory using the index, wherein the information enables a demultiplexing direct memory access unit of the transport processor to identify a buffer in which the data packet is to be stored;
accessing data packets associated with the video program from the buffers in which the data packets are stored; and
processing the data packets for recording or playback of the video program.
35. A method as recited in claim 34, wherein the act accessing data packets associated with the video program from the buffers in which the data packets are stored comprises reconfiguring a transport stream containing the video program utilizing the time stamps associated with the received data packet, wherein the transport stream is received by the video processing device for processing.