USRE41165EExpiredUtility

Method and apparatus for identifying user-selectable regions within multiple display frames

47
Assignee: APPLE INCPriority: May 5, 1995Filed: Apr 3, 2002Granted: Mar 16, 2010
Est. expiryMay 5, 2015(expired)· nominal 20-yr term from priority
H04N 21/43072H04N 21/234318H04N 21/8455H04N 21/8583G06F 3/04842H04N 21/4725
47
PatentIndex Score
0
Cited by
33
References
131
Claims

Abstract

The method and apparatus determine a specific position of a user-selectable region at a particular point in time within a sequence of display frames. The method and apparatus first interpolate between a first matrix representing the user-selectable region at a first point in time and a second matrix representing the user-selectable region at a second point in time. In one embodiment, the matrix generated by this interpolation is then applied to a region definition for the user-selectable region to determine the specific area occupied by the region at the particular point in time. According to one embodiment, the first matrix and the second matrix are both stored within the same sample of a container track. This sample corresponds to one or more frames of the sequence of display frames. In an alternate embodiment, the first matrix and the second matrix are stored in two separate samples of the container track.

Claims

exact text as granted — not AI-modified
1. An article comprising:
 a storage medium; and  
 the storage medium having stored thereon a container track having a plurality of samples that include,  
 a key sample that includes information to initially define a user-selectable region of a corresponding track, wherein the region is selectable by a user during playback of the corresponding track and such selection does not modify the corresponding track, and  
 an override sample that includes information to modify the region definition of the key sample.  
 
     
     
       2. The article of  claim 1 , wherein the information of the key sample includes one or more of a region definition that provides an outline of the user-selectable region, a beginning transformation function that maps the region definition to a first location of a display at a first time, an ending transformation function that maps the region definition to a second location of the display at a second time subsequent to the first time, a code indicator that identifies an action to be performed if the region is selected, and a layer indicator that identifies the depth of the region relative to other user-selectable regions being displayed. 
     
     
       3. The article of  claim 2 , wherein the information of the key sample includes each of the region definition, the beginning transformation function, the ending transformation function, the code indicator, and the layer indicator. 
     
     
       4. The article of  claim 1 , wherein the information of the override sample includes one or more of a region definition that provides an outline of the user-selectable region, a beginning transformation function that maps the region definition to a first location of a display at a first time, an ending transformation function that maps the region definition to a second location of the display at a second time subsequent to the first time, a code indicator that identifies an action to be performed if the region is selected, and a layer indicator that identifies the depth of the region relative to other user-selectable regions being displayed. 
     
     
       5. The article of  claim 4 , wherein the information of the override sample includes each of the region definition, the beginning transformation function, the ending transformation function, the code indicator, and the layer indicator. 
     
     
       6. The article of  claim 1 , wherein the information in the override sample replaces at least a portion of the information in the key sample. 
     
     
       7. The article of  claim 1 , wherein the information in the override sample augments the information in the key sample. 
     
     
       8. The article of  claim 1 , wherein the storage medium also has stored thereon the corresponding track. 
     
     
       9. The article of  claim 1 , wherein the corresponding track comprises a video track. 
     
     
       10. The article of  claim 1 , wherein the storage medium also has stored thereon a key sample table to determine, for each of the plurality of samples, whether the sample is a key sample or an override sample. 
     
     
       11. The article of  claim 1 , wherein the container track further includes a second sample of the plurality of samples that includes information to define a second user-selectable region based at least in part on the information from at least one of the key sample and the override sample. 
     
     
       12. A method comprising:
 receiving an indication of a user selection;  
 determining whether information for a user-selectable region is based on a key sample alone or the key sample in combination with an override sample;  
 merging information from the key sample with information from the override sample to determine a region definition and a current transformation function if the information for the user-selectable region is based on the key sample in combination with the override sample, otherwise using the information from the key sample alone to determine the region definition and the current transformation function; and  
 determining a location of the user-selectable region at a time the user selection is made based at least in part on the region definition and the current transformation function.  
 
     
     
       13. The method of  claim 12 , further comprising:
 comparing a location on a display of the user selection with the location of the user-selectable region at the time the user selection is made; and  
 determining whether the user selection is a selection of the user-selectable region based on the comparing.  
 
     
     
       14. The method of  claim 12 , wherein the merging further comprises interpolating between a beginning transformation function and an ending transformation function to determine the current transformation function. 
     
     
       15. The method of  claim 14 , wherein the beginning transformation function is stored in the key sample and the ending transformation function is stored in the override sample. 
     
     
       16. The method of  claim 14 , wherein both the beginning transformation function and the ending transformation function are stored in the override sample. 
     
     
       17. The method of  claim 12 , further comprising determining, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user-selectable region is based on the key sample in combination with the override sample, otherwise determining, based on the key sample alone, the action to be taken in response to the user selection. 
     
     
       18. A machine-readable medium having stored thereon a series of instructions which, when executed by a processor, cause the processor to:
 receive an indication of a user selection;  
 determine whether information for a user-selectable region is based on a key sample alone or the key sample in combination with an override sample;  
 merge information from the key sample with information from the override sample to determine a region definition and a current transformation function if the information for the user-selectable region is based on the key sample in combination with the override sample, and otherwise use the information from the key sample alone to determine the region definition and the current transformation function; and  
 determine a location of the user-selectable region at a time the user selection is made based at least in part on the region definition and the current transformation function.  
 
     
     
       19. The machine-readable medium of  claim 18 , wherein the series of instructions further cause the processor to:
 compare a location on a display of the user selection with the location of the user-selectable region at the time the user selection is made; and  
 determine whether the user selection is a selection of the user-selectable region based on the comparing.  
 
     
     
       20. The machine-readable medium of  claim 18 , wherein the instructions that cause the processor to merge information from the key sample with information from the override sample further comprise instructions that cause the processor to interpolate between a beginning transformation function and an ending transformation function to determine the current transformation function. 
     
     
       21. The machine-readable medium of  claim 20 , wherein the beginning transformation function is stored in the key sample and the ending transformation function is stored in the override sample. 
     
     
       22. The machine-readable medium of  claim 20 , wherein both the beginning transformation function and the ending transformation function are stored in the override sample. 
     
     
       23. The machine-readable medium of  claim 18 , wherein the series of instructions further cause the processor to determine, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user-selectable region is based on the key sample in combination with the override sample, and otherwise determine, based on the key sample alone, the action to be taken in response to the user selection. 
     
     
       24. An apparatus comprising:
 logic embodied in computer program code on a computer-readable medium to receive an indication of a user selection;    logic embodied in computer program code on the computer-readable medium to determine whether information for a user-selectable region is based on a key sample alone or the key sample in combination with an override sample;    logic embodied in computer program code on the computer-readable medium to merge information from the key sample with information from the override sample to determine a region definition and a current transformation function if the information for the user-selectable region is based on the key sample in combination with the override sample, and otherwise to use the information from the key sample alone to determine the region definition and the current transformation function; and    logic embodied in computer program code on the computer-readable medium to determine a location of the user-selectable region at a time the user selection is made based at least in part on the region definition and the current transformation function.    
     
     
       25. The apparatus of  claim 24 , further comprising logic embodied in computer program code on the computer-readable medium to determine, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user-selectable region is based on the key sample in combination with the override sample, and otherwise to determine, based on the key sample alone, the action to be taken in response to the user selection. 
     
     
       26. An apparatus comprising  A computer program product for determining a location of a user- selectable region, the computer program product having a computer - readable storage medium having computer executable code for :
 first logic embodied in computer program code on a computer-readable medium for  receiving an indication of a user selection and determining whether information for a user-selectable region is based on a key sample alone or the key sample in combination with an override sample;  
 second logic embodied in computer program code on the computer-readable medium for  merging information from the key sample with information from the override sample to determine a region definition and a current transformation function if the information for the user-selectable region is based on the key sample in combination with the override sample, and otherwise for  using the information from the key sample alone to determine the region definition and the current transformation function; and  
 third logic embodied in computer program code on the computer-readable medium for  determining a location of the user-selectable region at a time the user selection is made based at least in part on the region definition and the current transformation function.  
 
     
     
       27. The apparatus  computer program product of  claim 26  wherein the third logic is further for  further comprising executable code for determining, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user-selectable region is based on the key sample in combination with the override sample, and otherwise for  determining, based on the key sample alone, the action to be taken in response to the user selection. 
     
     
       28. An apparatus  A computer program product having a computer- readable storage medium having computer executable code for determining a location of a user - selectable region,  comprising:
 means for receiving an indication of a user selection;  
 means for determining whether information for a user-selectable region is based on a key sample alone or the key sample in combination with an override sample;  
 means for merging information from the key sample with information from the override sample to determine a region definition and a current transformation function if the information for the user-selectable region is based on the key sample in combination with the override sample, otherwise using the information from the key sample alone to determine the region definition and the current transformation function; and  
 means for determining a location of the user-selectable region at a time the user selection is made based at least in part on the region definition and the current transformation function.  
 
     
     
       29. The apparatus  computer program product of  claim 28 , further comprising:
 means for comparing a location on a display of the user selection with the location of the user-selectable region at the time the user selection is made; and  
 means for determining whether the user selection is a selection of the user-selectable region based on the comparing.  
 
     
     
       30. The apparatus  computer program product of  claim 28 , wherein the means for merging comprises means for interpolating between a beginning transformation function and an ending transformation function to determine the current transformation function. 
     
     
       31. The apparatus  computer program product of  claim 28 , further comprising means for determining, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user-selectable region is based on the key sample in combination with the override sample, otherwise determining, based on the key sample alone, the action to be taken in response to the user selection. 
     
     
       32. An apparatus comprising:
   a storage device including a video track comprising a plurality of frames, wherein a first frame of the video track corresponds to a user - selectable region; and        a processing unit coupled to the storage device which determines an area occupied by the user - selectable region at an intermediate point in time based on interpolation between a first matrix of a key sample representing the user - selectable region at a first point in time and a second matrix of an override sample representing the user - selectable region at a second point in time, and which outputs a signal indicating whether a user selection falls within the determined area.     
     
     
       33. The apparatus of  claim 32 , wherein the storage device also includes a container track corresponding to the video track, wherein the container track includes a plurality of samples corresponding to the video track. 
     
     
       34. The apparatus of  claim 33 , wherein each sample of the plurality of samples corresponds to a single frame of the plurality of frames of the video track. 
     
     
       35. The apparatus of  claim 32 , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track. 
     
     
       36. The apparatus of  claim 32 , wherein the processing unit utilizes linear interpolation to determine the area occupied by the user- selectable region.   
     
     
       37. An apparatus for identifying a user- selectable region within a series of display frames, the apparatus comprising:      a storage device, for storing a container track sample corresponding to an input, a region definition for the container track sample, and a beginning transformation function for the container track sample; and        a processing unit, coupled to the storage device, for:        comparing a time index to a key sample table to determine whether the container track sample is a key sample or an override sample;        identifying the user - selectable region by applying the beginning transformation function to the region definition;        outputting a signal indicating the location of the user - selectable region; and        executing a set of instructions identified in the container track sample.     
     
     
       38. The apparatus of  claim 37 , wherein the beginning transformation function comprises a beginning matrix. 
     
     
       39. The apparatus of  claim 37 , wherein the input is user- actuated.   
     
     
       40. The apparatus of  claim 37 , wherein the region definition and the beginning transformation function are contained in a previous container track sample. 
     
     
       41. The apparatus of  claim 37 , wherein the storage device further comprises an ending transformation function for the container track sample and wherein the processing unit further:
   generates an interpolated transformation function by interpolating between the beginning transformation function and the ending transformation function; and        indicates the user - selectable region by applying the interpolated transformation function to the region definition.     
     
     
       42. The apparatus of  claim 37 , wherein the processing unit identifies the user- selectable region by multiplying each point of the region definition by the beginning transformation function.   
     
     
       43. A computer- implemented method comprising the steps of:      accessing a first frame of a video track stored on a storage device, wherein the video track includes a plurality of frames and wherein the first frame corresponds to a user - selectable region;        determining an area occupied by the user - selectable region at an intermediate point in time based on interpolation between a first matrix of a key sample representing the user - selectable region at a first point in time and a second matrix of an override sample representing the user - selectable region at a second point in time; and        outputting a signal indicating whether a user selection falls within the determined area.     
     
     
       44. The computer- implemented method of    claim 43   , further comprising the step of obtaining the first matrix and the second matrix by accessing a container track, stored on the storage device, corresponding to the video track, wherein the container track includes a plurality of samples corresponding to the video track.   
     
     
       45. The computer- implemented method of    claim 44   , wherein each sample of the plurality of samples corresponds to a single frame of the plurality of frames of the video track.   
     
     
       46. The computer- implemented method of    claim 43   , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track.   
     
     
       47. The computer- implemented method of    claim 43   , wherein the determining step comprises the step of using linear interpolation to determine the area occupied by the user - selectable region.   
     
     
       48. A computer- readable medium having stored thereon a plurality of instructions, designed to be executed by a processor, for implementing a function to access a first frame of a video track stored on a storage device, wherein the video track includes a plurality of frames and wherein the first frame corresponds to a user - selectable region, a function to determine an area occupied by the user - selectable region at an intermediate point in time based on interpolation between a first matrix of a key sample representing the user - selectable region at a first point in time and a second matrix of an override sample representing the user - selectable region at a second point in time, and a function to output a signal indicating whether a user selection falls within the determined area.   
     
     
       49. A computer- readable medium of    claim 48   , further comprising a plurality of instructions for implementing a function to obtain the first matrix and the second matrix by accessing a container track, stored on the storage device, corresponding to the video track, wherein the container track includes a plurality of samples corresponding to the video track.   
     
     
       50. The computer- readable medium of    claim 49   , wherein each sample of the plurality of samples corresponds to a single frame of the plurality of frames of the video track.   
     
     
       51. The computer- readable medium of    claim 48   , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track.   
     
     
       52. The computer- readable medium of    claim 48   , wherein the plurality of instructions for implementing a function to determine the area occupied by the user - selectable region at the first point in time comprises a plurality of instructions for implementing a function to determine the area occupied by the user - selectable region at the first point in time using linear interpolation.   
     
     
       53. An apparatus comprising:
   an input device, for receiving an indication of a user selection;        a region determination module, coupled to the input device, for:        determining whether information for a user - selectable region is based on a key sample alone or the key sample in combination with an override sample;        merging information from the key sample with information from the override sample to determine a region definition and a current transformation function if the information for the user - selectable region is based on the key sample in combination with the override sample otherwise using the information from the key sample alone to determine the region definition and the current transformation function;        determining a location of the user - selectable region at a time the user selection is made based at least in part on the region definition and the current transformation function; and        outputting a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       54. The apparatus of  claim 53 , further comprising:
   a comparator, coupled to the region determination module, for:        comparing a location on a display of the user selection with the location of the user - selectable region at the time the user selection is made; and        determining whether the user selection is a selection of the user - selectable region based on the comparing.     
     
     
       55. The apparatus of  claim 53 , wherein the region determination module further interpolates between a beginning transformation function and an ending transformation function to determine the current transformation function. 
     
     
       56. The apparatus of  claim 55 , wherein the beginning transformation function is stored in the key sample and the ending transformation function is stored in the override sample. 
     
     
       57. The apparatus of  claim 55 , wherein both the beginning transformation function and the ending transformation function are stored in the override sample. 
     
     
       58. The apparatus of  claim 53 , further comprising an action determination module, coupled to the region determination module, for determining, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user- selectable region is based on the key sample in combination with the override sample, otherwise determining, based on the key sample alone, the action to be taken in response to the user selection.   
     
     
       59. An apparatus comprising:
   a storage device including a video track comprising a plurality of frames, wherein a first frame of the video track corresponds to a user selectable region; and        a processing unit coupled to the storage device which determines an area occupied by the user - selectable region at an intermediate point in time, the area occupied by the user selectable region including at least one location in the first frame, based on interpolation between a key sample representing the user - selectable region at a first point in time and an override sample representing the user - selectable region at a second point in time, and which outputs a signal indicating whether a user selection falls within the determined area.     
     
     
       60. The apparatus of  claim 59 , wherein the storage device also includes a container track corresponding to the video track, wherein the container track includes a plurality of samples corresponding to the video track. 
     
     
       61. The apparatus of  claim 60 , wherein each sample of the plurality of samples corresponds to a single frame of the plurality of frames of the video track. 
     
     
       62. The apparatus of  claim 59 , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track. 
     
     
       63. The apparatus of  claim 59 , wherein the processing unit utilizes linear interpolation to determine the area occupied by the user- selectable region.   
     
     
       64. A computer- implemented method comprising the steps of:      accessing a first frame of a video track stored on a storage device, wherein the video track includes a plurality of frames and wherein the first frame corresponds to a user - selectable region;        determining an area occupied by the user - selectable region at an intermediate point in time, the area occupied by the user selectable region including at least one location in the first frame, based on interpolation between a key sample representing the user - selectable region at a first point in time and an override sample representing the user - selectable region at a second point in time; and        outputting a signal indicating whether a user selection falls within the determined area.     
     
     
       65. The computer- implemented method of    claim 64   , further comprising the step of obtaining the samples by accessing a container track, stored on the storage device, corresponding to the video track, wherein the container track includes a plurality of samples corresponding to the video track.   
     
     
       66. The computer- implemented method of    claim 64   , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track.   
     
     
       67. The computer- implemented method of    claim 64   , wherein the determining step comprises the step of using linear interpolation to determine the area occupied by the user - selectable region.   
     
     
       68. A computer- readable medium having stored thereon a plurality of instructions, designed to be executed by a processor, for implementing a function to access a first frame of a video track stored on a storage device, wherein the video track includes a plurality of frames and wherein the first frame corresponds to a user - selectable region, a function to determine an area occupied by the user - selectable region at an intermediate point in time, the area occupied by the user selectable region including at least one location in the first frame, based on interpolation between a key sample representing the user selectable region at a first point in time and an override sample representing the user - selectable region at a second point in time, and a function to output a signal indicating whether a user selection falls within the determined area.   
     
     
       69. The computer- readable medium of    claim 68   , further comprising a plurality of instructions for implementing a function to obtain the first matrix and the second matrix by accessing a container track, stored on the storage device, corresponding to the video track, wherein the container track includes a plurality of samples corresponding to the video track.   
     
     
       70. The computer- readable medium of    claim 68   , wherein each sample of the plurality of samples corresponds to a single frame of the plurality of frames of the video track.   
     
     
       71. The computer- readable medium of    claim 68   , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track.   
     
     
       72. The computer- readable medium of    claim 68   , wherein the plurality of instructions for implementing a function to determine the area occupied by the user - selectable region at the first point in time comprises a plurality of instruction is for implementing a function to determine the area occupied by the user - selectable region at the first point in time using linear interpolation.   
     
     
       73. A method comprising:
   receiving an indication of a user selection;        determining whether information for a user - selectable region is based on a first sample alone or the first sample in combination with a second sample, the first and second samples having a relationship so that combining information from the first and second samples produces a valid result;        merging information from the first sample with information from the second sample to determine a region definition if the information for the user - selectable region is based on the first sample in combination with the second sample, and otherwise using the information from the first sample alone to determine the region definition, the region definition defining at least one spatial location;        determining a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        outputting a signal indicating whether the user selection fails within the user - selectable region.     
     
     
       74. The method of  claim 73 , further comprising:
   comparing a location on a display of the user selection with the spatial location of the user - selectable region at the time the user selection is made; and        determining whether the user selection is a selection of the user - selectable region based on the comparing.     
     
     
       75. The method of  claim 73 , wherein the merging further comprises interpolating between information from the first sample and information from the second sample to determine the region definition. 
     
     
       76. The method of  claim 73 , further comprising determining, based on both samples, an action to be taken in response to the user selecting if the information for the user- selectable region is based on both samples, and otherwise determining, based on one sample alone, the action to be taken in response to the user selection.   
     
     
       77. A machine- readable medium having stored thereon a series of instructions which, when executed by a processor, cause the processor to:      receive an indication of a user selection;        determine whether information for a user - selectable region is based on a first sample alone or the first sample in combination with a second sample;        merge information from the first sample with information from the second sample to determine a region definition if the information for the user - selectable region is based on the first sample in combination with the second sample, otherwise use the information from the first sample alone to determine the region definition, the region definition defining at least one spatial location;        determine a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        output a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       78. The machine- readable medium of    claim 77   , wherein the series of instructions further cause the processor to:      compare a location on a display of the user selection with the spatial location of the user - selectable region at the time the user selection is made; and        determine whether the user selection is a selection of the user selectable region based on the comparing.     
     
     
       79. The machine- readable medium of    claim 77   , wherein the instructions that cause the processor to merge information from the first sample with information from the second sample further comprise instructions that cause the processor to interpolate between information from the first sample and information from the second sample to determine the region definition.   
     
     
       80. The machine- readable medium of    claim 77   , wherein the series of instructions further cause the processor to determine, based on both samples, an action to be taken in response to the user selection if the information for the user selectable region is based on both samples, and otherwise determine, based on one sample alone, the action to be taken in response to the user selection.   
     
     
       81. A computer program product comprising a computer- usable medium storing computer - readable code therein for identifying a user - selectable region comprising:      computer - readable program code configured to cause a computer to receive an indication of a user selection;        computer - readable program code configured to cause a computer to determine whether information for a user - selectable region is based on a first sample alone or the first sample in combination with a second sample;        computer - readable program code configured to cause a computer to merge information from the first sample with information from the second sample to determine a region definition if the information for the user - selectable region is based on the first sample in combination with the second sample, and otherwise to use the information from the first sample alone to determine the region definition, the region definition defining at least one spatial location;        computer - readable program code configured to cause a computer to determine a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        computer - readable program code configured to cause a computer to output a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       82. The computer program product of  claim 81 , further comprising computer- readable program code configured to cause a computer to determine, based on both samples, an action to be taken in response to the user selection if the information for the user - selectable region is based on both samples, and otherwise to determine based on one sample alone, the action to be taken in response to the user selection.   
     
     
       83. A computer program product for determining a location of user- selectable region, the computer program product having a computer - readable storage medium having computer executable code for:      receiving an indication of a user selection;        determining whether information for a user - selectable region is based on a first sample alone or the first sample in combination with a second sample;        merging information from the first sample with information from the second sample to determine a region definition if the information for the user - selectable region is based on the first sample in combination with the second sample, and otherwise using the information from the first sample alone to determine the region definition, the region definition defining at least one spatial location;        determining a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        outputting a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       84. The computer program product of  claim 83  further comprising computer executable code for:
   comparing a location on a display of the user selection with the spatial location of the user - selectable region at the time the user selection is made; and        determining whether the user selection is a selection of the user - selectable region based on the comparing.     
     
     
       85. The computer program product of  claim 83  wherein the computer executable code for merging comprises computer executable code for interpolating between information from the first sample and information from the second sample to determine the region definition. 
     
     
       86. The computer program product of  claim 83 , further comprising computer executable code for determining, based on both samples, an action to be taken in response to the user selection if the information for the user- selectable region is based on both samples, and otherwise determining, based on one sample alone, the action to be taken in response to the user selection.   
     
     
       87. An apparatus comprising:
   an input device, for receiving an indication of a user selection;        a region determination module, coupled to the input device, for:        determining whether information for a user - selectable region is based on a first sample alone or the first sample in combination with a second sample, the first and second samples having a relationship so that combining information from the first and second samples produces a valid result;        merging information from the first sample with information from the second sample to determine a region definition if the information for the user - selectable region is based on the first sample in combination with the second sample, and otherwise using the information from the first sample alone to determine the region definition, the region definition defining at least one spatial location;        determining a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        outputting a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       88. The apparatus of  claim 87 , further comprising:
   a comparator, coupled to the region determination module, for:        comparing a location on a display of the user selection with the spatial location of the user - selectable region at the time the user selection is made; and        determining whether the user selection is a selection of the user - selectable region based on the comparing.     
     
     
       89. The apparatus of  claim 87 , wherein the region determination module further interpolates between information from the first sample and information from the second sample to determine the region definition. 
     
     
       90. The apparatus of  claim 87 , further comprising an action determination module, coupled to the region determination module, for determining, based on both samples, an action to be taken in response to the user selection if the information for the user- selectable region is based on both samples, and otherwise determining based on one sample alone, the action to be taken in response to the user selection.   
     
     
       91. An apparatus comprising:
   a storage device including a video track comprising a plurality of frames, wherein a first frame of the video track corresponds to a user selectable region; and        a processing unit coupled to the storage device which determines an area occupied by the user - selectable region based on a combination of a key sample representing the user - selectable region at a first point in time and an override sample representing the user - selectable region at a second point in time, the area occupied by the user - selectable region including at least one location in the first frame, and which outputs a signal indicating whether a user selection falls within the determined area.     
     
     
       92. The apparatus of  claim 91 , wherein the storage device also includes a container track corresponding to the video track, wherein the container track includes a plurality of samples corresponding to the video track. 
     
     
       93. The apparatus of  claim 91 , wherein each sample of the plurality of samples corresponds to a single frame of the plurality of frames of the video track. 
     
     
       94. The apparatus of  claim 91 , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track. 
     
     
       95. A computer- implemented method comprising the steps of:      accessing a first frame of a video track stored on a storage device, wherein the video track includes a plurality of frames and wherein the first frame corresponds to a user - selectable region;        determining an area occupied by the user - selectable region at a point in time based on a combination of a key sample representing the user - selectable region at a first point in time and an override sample representing the user - selectable region at a second point in time, the area occupied by the user - selectable region including at least one location in the first frame; and        outputting a signal indicating whether a user selection falls within the determined area.     
     
     
       96. The computer- implemented method of    claim 95   , further comprising the step of obtaining the samples by accessing a container track, stored on the storage device, corresponding to the video track, wherein the container track includes a plurality of samples corresponding to the video track.   
     
     
       97. The computer- implemented method of    claim 95   , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track.   
     
     
       98. A computer- readable medium having stored thereon a plurality of instructions, designed to be executed by a processor, for implementing a function to access a first frame of a video track stored on a storage device, wherein the video track includes a plurality of frames and wherein the first frame corresponds to a user - selectable region, a function to determine an area occupied by the user - selectable region at a point in time based on a combination of a key sample representing the user - selectable region at a first point in time and an override sample representing the user - selectable region at a second point in time, the area occupied by the user - selectable region including at least one location in the first frame, and a function to output a signal indicating whether a user selection falls within the determined area.   
     
     
       99. The computer- readable medium of    claim 98   , wherein each sample of the plurality of samples corresponds to a single frame of the plurality of frames of the video track.   
     
     
       100. The computer- readable medium of    claim 98   , wherein the key sample corresponds to the first frame of the video track and the override sample corresponds to a second frame of the video track.   
     
     
       101. The computer- readable medium of    claim 98   , wherein the plurality of instructions for implementing a function to determine the area occupied by the user - selectable region at the first point in time comprises a plurality of instructions for implementing a function to determine the area occupied by the user - selectable region at the first point in time using linear interpolation.   
     
     
       102. A method comprising:
   receiving an indication of a user selection;        determining whether information for a user - selectable region is based on a key sample alone or the key sample in combination with an override sample;        merging information from the key sample with information from the override sample to determine a region definition if the information for the user - selectable region is based on the key sample in combination with the override sample, otherwise using the information from the key sample alone to determine the region definition, the region definition defining at least one spatial location; and        determining a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        outputting a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       103. The method of  claim 102 , further comprising:
   comparing a location on a display of the user selection with the spatial location of the user - selectable region at the time the user selection is made; and        determining whether the user selection is a selection of the user - selectable region based on the comparing.     
     
     
       104. The method of  claim 102 , wherein the merging further comprises interpolating between information from the key sample and information from the override sample to determine the region definition. 
     
     
       105. The method of  claim 102 , further comprising determining, based on both samples, an action to be taken in response to the user selection if the information for the user- selectable region is based on the key sample in combination with the override sample, otherwise determining, based on the key sample alone, the action to be taken in response to the user selection.   
     
     
       106. A machine- readable medium having stored thereon a series of instructions which, when executed by a processor, cause the processor to:      receive an indication of a user selection;        determine whether information for a user - selectable region is based on a key sample alone or the key sample in combination with an override sample;        merge information from the key sample with information from the override sample to determine a region definition if the information for the user - selectable region is based on the key sample in combination with the override sample, and otherwise use the information from the key sample alone to determine the region definition, the region definition defining at least one spatial location;        determine a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        output a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       107. The machine- readable medium of    claim 106   , wherein the series of instructions further cause the processor to:      compare a location on a display of the user selection with the spatial location of the user - selectable region at the time the user selection is made; and        determine whether the user selection is a selection of the user - selectable region based on the comparing.     
     
     
       108. The machine- readable medium of    claim 106   , wherein the information from the first sample comprises a beginning transformation function stored in the first sample and the information from the second sample comprises an ending transformation function stored in the second sample.   
     
     
       109. The machine- readable medium of    claim 106   , wherein the series of instructions further cause the processor to determine, based on both samples, an action to be taken in response to the user selection if the information for the user - selectable region is based on the key sample in combination with the override sample, and otherwise determine, based on the key sample alone, the action to be taken in response to the user selection.   
     
     
       110. A computer program product comprising a computer- usable medium storing computer - readable code therein for identifying a user - selectable region comprising:      computer - readable program code configured to cause a computer to receive an indication of a user selection;        computer - readable program code configured to cause a computer to determine whether information for a user - selectable region is based on a key sample alone or the key sample in combination with an override sample;        computer - readable program code configured to cause a computer to merge information from the key sample with information from the override sample to determine a region definition if the information for the user - selectable region is based on the key sample in combination with the override sample, and otherwise to use the information from the key sample alone to determine the region definition, the region definition defining at least one spatial location;        computer - readable program code configured to cause a computer to determine a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        computer - readable program code configured to cause a computer to output a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       111. The computer program product of  claim 110 , further comprising computer- readable program code configured to cause a computer to determine, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user - selectable region is based on the key sample in combination with the override sample, and otherwise to determine, based on the key sample alone, the action to be taken in response to the user selection.   
     
     
       112. A computer program product for determining a location of a user- selectable region, the computer program product having a computer - readable storage medium having computer executable code for:      receiving an indication of a user selection;        determining whether information for a user - selectable region is based on a key sample alone or the key sample in combination with an override sample;        merging information from the first sample with information from the override sample to determine a region definition if the information for the user - selectable region is based on the key sample in combination with the override sample, otherwise using the information from the key sample alone to determine the region definition, the region definition defining at least one spatial location;        determining a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        outputting a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       113. The computer program product of  claim 112 , further comprising computer executable code for:
   comparing a location on a display of the user selection with the spatial location of the user - selectable region at the time the user selection is made; and        determining whether the user selection is a selection of the user - selectable region based on the comparing.     
     
     
       114. The computer program product of  claim 112 , further comprising computer executable code for determining, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user- selectable region is based on the key sample in combination with the override sample, otherwise determining, based on the key sample alone, the action to be taken in response to the user selection.   
     
     
       115. An apparatus comprising:
   an input device, for receiving an indication of a user selection;        a region determination module, coupled to the input device for:        determining whether information for a user - selectable region is based on a key sample alone or the key sample in combination with an override sample;        merging information from the key sample with information from the override sample to determine a region definition if the information for the user - selectable region is based on the key sample in combination with the override sample, otherwise using the information from the key sample alone to determine the region definition, the region definition defining at least one spatial location;        determining a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        outputting a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       116. The apparatus of  claim 115 , further comprising:
   a comparator, coupled to the region determination module, for:        comparing a location on a display of the user selection with the spatial location of the user - selectable region at the time the user selection is made; and        determining whether the user selection is a selection of the user - selectable region based on the comparing.     
     
     
       117. The apparatus of  claim 115 , further comprising an action determination module, coupled to the region determination module, for determining, based on both the key sample and the override sample, an action to be taken in response to the user selection if the information for the user- selectable region is based on the key sample in combination with the override sample, otherwise determining, based on the key sample alone, the action to be taken in response to the user selection.   
     
     
       118. A method for defining a user- selectable region on a display device, comprising:      accessing a region definition of a user - selectable region corresponding to at least one spatial location in a first frame of a video track stored on a storage device;        applying a transformation matrix to the region definition, to obtain an area occupied by the region on the display device;        accessing a second region definition corresponding to at least one spatial location in a second frame of the video track, the first and second frames having a relationship so that combining information corresponding to the first and second frames produces a valid result;        applying a second transformation matrix to the second region definition, to obtain a second area occupied by the region on the display device;        interpolating between the first area and the second area occupied by the region, to determine an intermediate area occupied by the region on the display device; and        outputting a signal indicating whether a user selection falls within the intermediate area.     
     
     
       119. The method of  claim 118 , wherein applying a transformation matrix to the region definition comprises:
   multiplying each point in the region definition by the transformation matrix using vector multiplication.     
     
     
       120. The method of  claim 118 , further comprising:
   receiving user input indicating a pixel location; and        determining whether the indicated pixel location is within the area occupied by the region on the display device.      
     
     
       121. The method of  claim 118 , wherein the region definition is provided in a first graphical coordinate system, and wherein applying a transformation matrix to the region definition comprises transforming the region definition to a second graphical coordinate system. 
     
     
       122. An apparatus comprising:
   a storage device including a video track comprising a plurality of frames, wherein a first frame of the video track contains at least one spatial location included in a user - selectable region definition; and        a processing unit coupled to the storage device which:        determines an area occupied by the user - selectable region applying a transformation matrix to the region definition, to obtain an area occupied by the region on the display device;        accesses a second region definition corresponding to at least one spatial location in a second frame of the video track, the first and second frames having a relationship so that combining information corresponding to the first and second frames produces a valid result;        applies a second transformation matrix to the second region definition, to obtain a second area occupied by the region on the display device; and        interpolates between the first area and the second area occupied by the region, to determine an intermediate area occupied by the region on the display device; and        outputs a signal indicating whether a user selection falls within the intermediate area.     
     
     
       123. The apparatus of  claim 122 , wherein the processing unit applies the transformation matrix to the region definition by multiplying each point in the region definition by the transformation matrix using vector multiplication. 
     
     
       124. The apparatus of  claim 122 , further comprising:
   an input device, coupled to the processing unit, for receiving user input indicating a pixel location;        and wherein the processing unit determines whether the indicated pixel location is within the area occupied by the region on the display device.     
     
     
       125. The apparatus of  122 , wherein the region definition is provided in a first graphical coordinate system, and wherein the processing unit applies the transformation matrix to the region definition to transform the region definition to a second graphical coordinate system. 
     
     
       126. A computer program product comprising a computer- usable medium storing computer - readable code therein for defining a user - selectable region on a display device comprising:      computer - readable program code configured to cause a computer to access a region definition of a user - selectable region corresponding to at least one spatial location in a first frame of a video track stored on a storage device;        computer - readable program code configured to cause a computer to apply a transformation matrix to the region definition, to obtain an area occupied by the region on the display device;        computer - readable program code configured to cause a computer to access a second region definition corresponding to at least one spatial location in a second frame of the video track, the first and second frames having a relationship so that combining information corresponding to the first and second frames produces a valid result;        computer - readable program code configured to cause a computer to apply a second transformation matrix to the second region definition, to obtain a second area occupied by the region on the display device;        computer - readable program code configured to cause a computer to interpolate between the first area and the second area occupied by the region, to determine an intermediate area occupied by the region on the display device; and        computer - readable program code configured to cause a computer to output a signal indicating whether a user selection falls within the intermediate area.     
     
     
       127. The computer program product of  claim 126 , wherein the computer- readable program code configured to cause a computer to apply a transformation matrix to the region definition comprises:      computer - readable program code configured to cause a computer to multiply each point in the region definition by the transformation matrix using vector multiplication.     
     
     
       128. The computer program product of  claim 126 , further comprising:
   computer - readable program code configured to cause a computer to receive user input indicating a pixel location; and        computer - readable program code configured to cause a computer to determine whether the indicated pixel location is within the area occupied by the region on the display device.     
     
     
       129. The computer program product of  126  wherein the region definition is provided in a first graphical coordinate system, and wherein the computer- readable program code configured to cause a computer to apply a transformation matrix to the region definition comprises computer - readable program code configured to cause a computer to transform the region definition to a second graphical coordinate system.   
     
     
       130. A method comprising:
   receiving an indication of a user selection;        merging information from the first sample with information from a second sample to determine a region definition, the region definition defining at least one spatial location, the first and second samples having a relationship so that combining information from the first and second samples produces a valid result; and        determining a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        outputting a signal indicating whether the user selection falls within the user - selectable region.     
     
     
       131. An apparatus comprising:
   an input device, for receiving an indication of a user selection;        a region determination module, coupled to the input device, for:        merging information from the first sample with information from a second sample to determine a region, the including at least one spatial location, the first and second samples having a relationship so that combining information from the first and second samples produces a valid result;        determining a spatial location of the user - selectable region at a time the user selection is made based at least in part on the region definition; and        outputting a signal indicating whether the user selection falls within the user - selectable region.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.