Abstract:
A method of controlling revelation of one or more metadata items is disclosed. Each of the one or more metadata items is associated with one or more parts of an audio-visual data stream ( 101 ). The method comprises: for a given one or more parts ( 103, 105 ) of the audio-visual data stream ( 101 ), revealing one or more metadata items ( 113, 115, 117 ) associated with the given one or more parts ( 103, 105 ) of the audio-visual data stream ( 101 ) only after the given one or more parts ( 103, 105 ) of the audio-visual data stream ( 101 ) have been accessed.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention relates to a method of controlling revelation of one or more metadata items each associated with one or more parts of an audio-visual data stream. 
       BACKGROUND TO THE INVENTION 
       [0002]    Metadata is generally defined as “data about data”. In the context of audio visual (AV) content, the term metadata refers to descriptive data about that content, such as duration, programme title and synopsis. Once AV content has been created and information about the programme has been captured, the content is then available for publication by a content publisher. This could be, for example, as part of a broadcast service or as a publication on the Internet. The metadata editing process takes raw information from the content creation and publishing processes and edits this into a form that is suitable for representing the content to the end consumer. 
         [0003]    Segmentation refers to the ability to define, access and manipulate temporal locations or intervals (segments) within a piece of AV content. By associating metadata with segments, it is possible to restructure and re-purpose an input AV stream to generate alternative consumption and navigation modes. Such modes could include, for example, a summary of the content with highlights, or a set of bookmarks that point to “topic headings” within the stream. Such segmentation metadata can be provided by service providers or broadcasters as a value-added feature and/or generated by viewers themselves. 
       SUMMARY OF THE INVENTION 
       [0004]    For some content, the addition of segmentation metadata could spoil a viewer&#39;s enjoyment of the content itself. Consider, for example, two viewers who have each recorded a football match on a digital video recorder (DVR). The first viewer, Andrew, returns home and having attended the match himself, does not want to view the entire match in order to view the last minute save that the goalkeeper of his favourite team made to ensure a 2-1 victory for his team. However, the recording of the match is accompanied by segmentation metadata allowing Andrew to access a menu of navigation points (points of interest within the match (e.g. goals, fouls, yellow cards, red cards, saves etc.) from where he can select the point in the match that he is interested in—in this instance the last minute save—and jump directly to that segment of the recording. 
         [0005]    The second viewer, Bob, was not at the match and does not know the outcome of the match because he had to attend a luncheon in honour of his mother-in-law&#39;s 72 nd  birthday! Bob decides to watch the match in its entirety from the start but at half time, when the score is 1-1, his son Chris comes in to watch with him. However, Chris has not seen the first half but neither does he want to watch the entire first half from start to finish. Bob could access the menu of navigation points in order to jump directly to the various highlights of the first half so that Chris can view them but this would cause the rest of the match to be spoiled for both Bob and Chris as they would see details of all the other segments that they could jump to, including details of the segments showing the remaining goal. 
         [0006]    There is provided in accordance with an embodiment of the present invention a method of controlling revelation of one or more metadata items each associated with one or more parts of an audio-visual data stream, the method including: for a given one or more parts of said audio-visual data stream, revealing one or more metadata items associated with the given one or more parts of the audio-visual data stream only after the given one or more parts of the audio-visual data stream has been accessed. 
         [0007]    Preferably, the revealing includes also revealing one or more additional metadata items. 
         [0008]    Preferably, the one or more additional metadata items are associated with the audio-visual data stream but are not associated with the given one or more parts of the audio-visual data stream. 
         [0009]    Preferably, a metadata item includes a group metadata item associated with a plurality of parts of the audio-visual data stream, and the method includes: revealing the group metadata item only after all parts of a reveal list of parts of the audio-visual data stream have been accessed. 
         [0010]    Preferably, a metadata item includes a group metadata item associated with a plurality of parts of said audio-visual data stream, and the method includes: revealing the group metadata item after any part of a reveal list of parts of the audio-visual data stream has been accessed. 
         [0011]    Preferably, one or more parts on the reveal list are not comprised within the plurality of parts. 
         [0012]    Preferably, metadata items are associated with control metadata items usable to determine when the metadata can be revealed. 
         [0013]    Preferably, the group metadata item is associated with a group control metadata item usable to determine when parts on the reveal list of parts can be revealed, and the group control metadata item includes the reveal list. 
         [0014]    Preferably, a plurality of metadata items are each associated with a part of the audio-visual data stream, and each of the plurality of metadata items is associated with a control metadata item, and each control metadata item includes information related to a temporal location in the audio-visual data stream, and once the audio-visual data stream has been accessed beyond a reveal temporal location, each of the metadata items associated with a temporal location earlier than the reveal temporal location are revealed. 
         [0015]    Preferably, the control metadata items include information related to a temporal location in the audio-visual data stream, and the associated part is deemed to have been accessed if the associated part is accessed at a later temporal location. 
         [0016]    Preferably, a part of the audio-visual data stream is deemed to have been accessed when a predetermined portion of the part has been viewed. 
         [0017]    Preferably, a part of the audio-visual data stream is deemed to have been accessed when all of the part has been viewed. 
         [0018]    Preferably, metadata items include data describing associated one or more parts. 
         [0019]    Preferably, metadata items include data describing the audio-visual data stream. 
         [0020]    Preferably, metadata items include a reference to other data. 
         [0021]    Preferably, the one or more parts of the audio-visual data stream include one or more temporal locations within the audio-visual data stream. 
         [0022]    Preferably, the one or more parts of the audio-visual data stream include one or more temporal segments of the audio-visual data stream. 
         [0023]    Preferably, the audio-visual data stream is delivered to a viewer with the one or more metadata items. 
         [0024]    Preferably, the audio-visual data stream is delivered to a viewer separately to the one or more metadata items. 
         [0025]    Preferably, the audio-visual data stream is delivered over a communication network. 
         [0026]    Preferably, a first metadata item and a second metadata item are each associated with one part of the audio-visual data stream, and the first metadata item and the second metadata item are associated with differing reveal characteristics. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0027]    Embodiments of the present invention will now be described, by way of example only, with reference to the accompanying drawings, wherein like reference numbers refer to like parts, and in which: 
           [0028]      FIG. 1  is a pictorial illustration of a metadata schema according to embodiments of the present invention; 
           [0029]      FIG. 2  is a flow chart depicting a method of playing content according to embodiments of the present invention; 
           [0030]      FIG. 3   a  is a flow chart depicting a method of updating the viewing extent of a piece of content/a segment according to an embodiment of the present invention; 
           [0031]      FIG. 3   b  is an illustration of a programme and segments within a programme according to embodiments of the present invention; 
           [0032]      FIG. 4  is a flow chart depicting a method of marking a segment as having been viewed according to an embodiment of the present invention; 
           [0033]      FIG. 5  is a simplified pictorial illustration of an end-to-end broadcast system constructed and operative in accordance with embodiments of the present invention; and 
           [0034]      FIGS. 6   a  to  6   g  are screen shots that a viewer might see when viewing content containing reveal control metadata according to embodiments of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF EMBODIMENTS 
       [0035]    Reference is now made to  FIG. 1 , which shows in a graphical format a metadata schema according to an embodiment of the present invention. Several standards exist for the definition and carriage of metadata (including segmentation metadata) on a broadcast network or other networks such as an Internet Protocol (IP) network (e.g. the Internet). In the description that follows, reference will be made to European Telecommunications Standard Institute (ETSI) Technical Specification (TS) 102 323 “ Digital Video Broadcasting  ( DVB );  Carriage and signalling of TV - Anytime information in DVB transport streams ” and also to ETSI TS 102 822-3-1 “ Broadcast and On - line Services: Search, select, and rightful use of content on personal storage systems  ( “TV - Anytime” );  Part  3 : Metadata; Sub - part  1:  Phase  1— Metadata schemas”.  However, the metadata scheme referenced above is given as an example only and someone skilled in the art will realise that the use of any suitable metadata scheme would be appropriate. 
       Base Segmentation Metadata 
       [0036]    A programme  101  is an editorially coherent piece of content and is associated with a timeline  102  using Digital Video Broadcasting (DVB) Synchronised Auxiliary Data as described in ETSI TS 102 823, “ Digital Video Broadcasting  ( DVB );  Specification for the carriage of synchronized auxiliary data in DVB transport streams” . Alternatively, timeline  102  could be carried by an MPEG-2 video group of pictures (GOP) header timecode as described in ISO/IEC 13818-2  “Recommendation ITU - T H. 262”. Markers  103 / 105  relative to the time units on timeline  102  indicate the start time of points of interest (segments) within programme  101 . A segment is a continuous fragment of a programme. A particular segment can belong to a single programme only but a programme may contain multiple segments. Marker  103  also has a duration  109  associated with it, whereas marker  105  just indicates a point of entry into programme  101 . Preferably, the TVAMediaTime and SegmentLocator types, as described in ETSI TS 102 822-3-1, are used to define the start time metadata and duration metadata of the segments within programme  101 . A content reference ID  111 , such as a TV-Anytime CRID as described in ETSI TS 102 323 unambiguously identifies programme  101  and relates the metadata associated with markers  103 / 105  to programme  101 . Each segment also has associated with it a unique identifier. Preferably, the SegmentID type described in ETSI TS 102 822-3-1 is used to describe this unique identifier metadata. 
       Segment Group Metadata 
       [0037]    A segment group comprises a collection of segments that are grouped together for a particular purpose or due to a shared property. A segment group can contain segments or other segment groups. Segment group metadata is preferably defined using the SegmentGroupInformation type as described in ETSI TS 102 822-3-1. Referring to  FIG. 1 , the segments referenced by markers  103 / 105  form a group  107 . For example, a group of segments may consist of all the goals scored in a football match. Groups of segments could also be formed out of segments from multiple content items (e.g. all camera angles of a particular goal or a football match and the highlights package). 
       Other Descriptive Metadata 
       [0038]    Referring to  FIG. 1 , the segments indicated by markers  103 / 105  have associated with them segment descriptive metadata  113 / 115  respectively. This segment descriptive metadata  113 / 115  is preferably the metadata defined by the BasicSegmentDescription type within the SegmentInformation type as described in ETSI TS 102 822-3-1. Furthermore, segment group  107  has associated with it group descriptive metadata  117 , which is preferably the metadata defined by the BasicSegmentDescription type within the SegmentGroupInformation type as described in ETSI TS 102 822-3-1. Also, programme  101  can itself have global descriptive metadata  121  associated with it, preferably defined by the BasicContentDescription and Program-Information types as described in ETSI TS 102 822-3-1. 
       Reveal Control Metadata 
       [0039]    There is also provided a set of metadata that the target device (i.e. the device used by a user to view content item  101 ) can use to determine when it is appropriate to reveal metadata that the reveal control metadata relates to. When metadata is revealed, it can be seen/used/consumed by the viewer to whom it was revealed. 
         [0040]    Referring to  FIG. 1 , the segments indicated by markers  103 / 105  have associated with them segment reveal control metadata  123 / 125  respectively. Furthermore, segment group  107  has associated with it group reveal control metadata  127 . 
         [0041]    The segment reveal control metadata  123 / 125  preferably comprises a new type, SegmentRevealControlType, added to the BasicSegmentDescriptionType defined in ETSI TS 102 822-3-1, as shown in XML below. 
         [0000]    
       
         
               
               
             
           
               
                   
                   
               
             
             
               
                   
                 &lt;complexType name=“SegmentRevealControlType”&gt; 
               
               
                   
                  &lt;sequence&gt; 
               
               
                   
                   &lt;element name=“SpoilerFlag” type=“boolean” minOccurs=“1” 
               
               
                   
                 maxOccurs=“1”/&gt; 
               
               
                   
                   &lt;element name=“RevealPoint” type=“tva:TVAMediaTimeType” 
               
               
                   
                 minOccurs=“0” maxOccurs=“1”/&gt; 
               
               
                   
                   &lt;element name=“ViewingExtentClientModel” type=“boolean” 
               
               
                   
                 minOccurs=“1” maxOccurs=“1”/&gt; 
               
               
                   
                  &lt;/sequence&gt; 
               
               
                   
                 &lt;/complexType&gt; 
               
               
                   
                   
               
             
          
         
       
     
         [0042]    SpoilerFlag is a Boolean flag that when set, indicates that the segment descriptive metadata to which the segment reveal control metadata relates is spoiler metadata and should not be revealed until the related segment has been accessed by the target device (and displayed to a user of the target device). Spoiler metadata is metadata that would spoil/ruin/detract from a viewer&#39;s enjoyment of the content being viewed if that spoiler metadata were to be displayed prematurely. 
         [0043]    RevealPoint is a location on timeline  102  within the related segment that indicates where in the segment access is deemed to have occurred. When playback reaches this location the related segment descriptive metadata  113 / 115  can be revealed. If no reveal time is defined, the related segment is preferably deemed to have been accessed when playback reaches the end of the segment. 
         [0044]    ViewingExtentClientModel is an additional Boolean flag that when set, indicates to the client that it should adopt a model for revealing metadata based on the viewing extent—that is, the furthest reached point in programme  101 . If it is not set then the client adopts a model for revealing metadata based on access to individual segments. These two client models will be described in more detail below. 
         [0045]    It should be noted that in alternative embodiments, the presence of RevealPoint and/or ViewingClientExtentModel elements in the SegmentRevealControlType implies that the segment descriptive metadata to which the reveal control metadata relates is spoiler metadata and therefore the SpoilerFlag element may not be necessary. It should also be noted that despite ETSI TS 102 822-3-1 limiting the SegmentLiformationType to a single BasicSegmentDescriptionType, in embodiments of the present invention any particular segment may contain a plurality of BasicSegmentDescriptionType elements, some of which may contain a SegmentRevealControlType whilst some may not. 
         [0046]    The group reveal control metadata  127  preferably comprises a new type, SegmentGroupRevealControlType, added to the SegmentGroupInformationType defined in ETSI TS 102 822-3-1, as shown in XML below. 
         [0000]    
       
         
               
             
           
               
                   
               
             
             
               
                 &lt;complexType name=″SegmentGroupRevealControlType″&gt; 
               
               
                  &lt;sequence&gt; 
               
               
                   &lt;element name=″SpoilerFlag″ type=″boolean″ minOccurs=″1″ 
               
               
                 maxOccurs=″1″/&gt; 
               
               
                   &lt;element name=″RevealSegmentList″ type=″tva:SegmentsType”/&gt; 
               
               
                   &lt;element name=”LogicalAND” type=”boolean” minOccurs=”1” 
               
               
                 maxOccurs=”1”/&gt; 
               
               
                  &lt;/sequence&gt; 
               
               
                 &lt;/complexType&gt; 
               
               
                   
               
             
          
         
       
     
         [0047]    SpoilerFlag is a Boolean flag that when set, indicates that the group descriptive metadata to which the segment group reveal control metadata relates is spoiler metadata and should not be revealed until some condition is met. 
         [0048]    RevealSegmentList is a list of segments that have to be accessed before the group descriptive metadata can be revealed. The list of segments contains one or more unique segment IDs. 
         [0049]    LogicalAND is a Boolean flag that when set, indicates that the list of segments found in the RevealSegmentList should be processed according to a logical AND operation. In other words, when set, all of the segments in the segment list need to be accessed before the group descriptive metadata can be revealed. If not set, the list of segments should be processed according to a logical OR operation. In other words, when not set, the group descriptive metadata can be revealed if any of the segments in the segment list is accessed. It should be noted that a segment specified in the list of segments need not be a member of the group. 
         [0050]    With reference to  FIG. 2 , a viewer selects some content or a segment of content to view (step  201 ) on a suitable client (e.g. using an electronic programme guide (EPG) accessible via an integrated receiver decoder (IRD) connected to a display device). Once a piece of content or a segment has been selected, the client checks (step  203 ) whether or not reveal control metadata exists for the selected content/segment. 
         [0051]    If no reveal control metadata exists then the client proceeds to playback the selected content or segment (step  205 ) in a linear fashion. In this case, the viewer also has the option of viewing the content freely in a non-linear fashion either by navigating forwards or backwards through the content or, if segmentation metadata exists for the content, jumping forwards or backwards to a particular segment or opting to display a list of the content&#39;s segments (where the descriptive metadata can be freely revealed to the viewer) and selecting a particular segment to view. 
         [0052]    If reveal control metadata does exist then the client proceeds to playback the selected content or segment (step  207 ) but the descriptive metadata to which the reveal control metadata applies should not be revealed to the viewer for segments that have not yet been accessed. In order that the client can respond to reveal control metadata using either of the two models of metadata reveal control mentioned above, the client tracks both the viewing extent through the content or segment and access to the content or segment (step  209 ). The tracking of the viewing extent will be described below with reference to  FIG. 3   a . The tracking of access to the content/segment will be described below with reference to  FIG. 4 . 
         [0053]    If the ViewingExtentClientModel flag has been set, then the client adopts a model for revealing metadata based on tracking the viewing extent (i.e. the furthest point reached in the content/segment). With reference to  FIG. 3   a , when the content or segment is playing back (step  301 ), the client keeps track of the furthest point reached in the content/segment using a variable called ‘viewing extent’. The client compares the stored viewing extent with the current frame of the content/segment. If the viewing extent has been passed (i.e. if the current frame is later than the stored viewing extent), the client updates the viewing extent to the current frame (step  305 ) and then continues to check the viewing extent. If the viewing extent has not been passed (i.e. the current frame is earlier than the stored viewing extent; perhaps because the content or segment is not being viewed for the first time) then the client does not update the viewing extent but rather continues to check the viewing extent. When the content or segment is played back for the first time, it will be realised that the viewing extent is initially set to the first frame of the content or segment. 
         [0054]    If the ViewingExtentClientModel flag has not been set, then the client adopts a model for revealing metadata based on tracking access to individual segments. With reference to  FIG. 4 , when the content/segment is playing back (step  401 ), the client checks whether or not a segment reveal time has been reached (step  403 ). It will be remembered that segment reveal time (the point within the segment where access is deemed to have occurred) can be set using the RevealPoint type in the reveal control metadata. If the reveal time has been reached then the client marks the segment as having been accessed/viewed (step  405 ). This can be achieved, for example, by the client storing a boolean ‘accessed’ variable for each segment. If no reveal time has been set in the segment reveal control metadata, then the client checks whether or not the end of the segment has been reached (i.e. the reveal time is assumed to be at the end of the segment). If the reveal time has not been reached then the client continues to check whether or not the reveal time has been reached. 
         [0055]    In the extent based model described previously, once a content item has been accessed beyond the reveal time of a segment (whether this be a reveal time stipulated using RevealPoint or the end of the segment), all descriptive metadata relating to segments that (a) lie earlier on the timeline than the viewing extent; and (b) also have their ViewingExtentClientModel flag set can be revealed to a viewer. Referring to  FIG. 3   b , programme  307  comprises six segments  309 / 311 / 313 / 315 / 317 / 319  of varying duration. Segments  309 ,  315  and  317  do not have their ViewingExtentClientModel flag set (indicated by ‘T’) whilst segments  311 , 313  and  319  all do have their ViewingExtentClientModel flag set (indicated by ‘E’). Whilst watching programme  307  a viewer first watches all of segment  309  but then jumps to and watches segment  319 . The descriptive metadata for segment  309  will be revealed because segment  309  has been accessed. Moreover, the descriptive metadata for segments  311 ,  313  and  319  will also be revealed because the viewing extent (the furthest point reaches in programme  307 ) is at the end of segment  319 , which is later than the reveal times of both segments  311  and  313  and all of segments  311 ,  313  and  319  have their ViewingExtentClientModel flags set. 
         [0056]    In the ‘track access’ model described previously, in order to decide whether or not to reveal metadata associated with a segment or segment group, the client checks whether the relevant segment has been accessed (e.g. by checking the Boolean ‘accessed’ variable for the segment). If the segment has already been accessed, the client reveals any metadata associated with the segment or segment group. If, on the other hand, the segment has not yet been accessed, the client does not reveal any metadata associated with the segment or segment group to the viewer. 
         [0057]    An end-to-end broadcast system constructed and operative in accordance with embodiments of the present invention will now be described in relation to  FIG. 5 . 
         [0058]    AV content is produced in programme production facility  501 , e.g. a studio or outside broadcast facility. AV production unit  503  generates audio &amp; video content. Metadata generator  505  is used to generate metadata relating to the AV content (including segmentation metadata relating to segments within the AV content). The AV content and metadata are sent to one or more broadcast platform head-ends  507  (for simplicity, only one headend is shown in  FIG. 5 ). In headend  507 , the AV content is passed to an encoder and multiplexer where it is compressed (e.g. according to the MPEG-2 standard), packetised and combined with information for decoding, conditional access data and the metadata to form a multiplexed program transmission. 
         [0059]    Headend  507  communicates the multiplexed program transmission to a client device  511 / 513  (which will be described in more detail later) via a one-way or two-way communication network  509  that may include at least one of the following: a satellite based communication network; a cable based communication network; a conventional terrestrial broadcast television network; a telephony based communication network; a telephony based television broadcast network; a mobile-telephony based television broadcast network; an Internet Protocol (IP) television broadcast network; and a computer based communication network. An example of an appropriate telephony or IP based television broadcast network includes, for example, a Synamedia™ system, commercially available from NDS Limited, United Kingdom. 
         [0060]    In alternative embodiments, communication network  509  is implemented by a one-way or two-way hybrid communication network, such as a combination cable-telephone network, a combination satellite-telephone network, a combination satellite-computer based communication network, or by any other appropriate network. 
         [0061]    Other ways of implementing communication network  509  will be apparent to someone skilled in the art. 
         [0062]    Preferably, physical links in network  509  are implemented via optical links, conventional telephone links, radio frequency (RF) wired or wireless links, or any other suitable links. 
         [0063]    Headend  507  communicates with a plurality of client devices via communication network  509 . Additionally or alternatively, a plurality of headends  507  communicate with a single client device or with a plurality of client devices via communication network  509 . For simplicity of depiction and description, and without limiting the generality of the invention, only one client device and a single headend  507  are illustrated in  FIG. 5  and referred to below as communicating via the network  509 . 
         [0064]    Preferably, the client device comprises an integrated receiver and decoder (IRD)  511  connected to a display device  513 . In preferred embodiments, the IRD  511  includes a conventional IRD that receives, demultiplexes, decodes and decrypts/descrambles as necessary the multiplexed program transmissions under control of a conditional access device such as a removable security element  515  as is well known in the art. The removable security element  515  preferably includes a smart card as is well known in the art. 
         [0065]    In addition, IRD  511  preferably includes a processor, such as, for example, an appropriate video processor as is well known in the art. IRD  511  preferably additionally includes an onscreen display (OSD) unit for displaying messages and other information on display device  513 . 
         [0066]    In preferred embodiments, IRD  511  includes, or is associated with, a digital video recorder (DVR) that preferably includes a high capacity storage device, such as a high capacity memory. The DVR is preferably operatively associated with IRD  511  and the processor. 
         [0067]    IRD  511  preferably includes at least one audio decoder (not shown) and at least one video decoder (not shown). It is appreciated that the DVR may also preferably include at least one audio decoder (not shown) and at least one video decoder (not shown), or alternatively use an audio decoder and a video decoder comprised in the IRD  511 , in which case the IRD  511  preferably includes more than one audio decoder and more than one video decoder. 
         [0068]    IRD  511  is preferably implemented in any appropriate combination of hardware and software and at least some of the elements within IRD  511  may be comprised in a single integrated circuit (IC). 
         [0069]    The DVR preferably records at least some of the program transmissions received at IRD  511  in the storage device and displays recorded program transmissions at a discretion of a user, at times selected by the user, and in accordance with preferences of the user and parameters defined by the user as described, for example, in the published PCT Applications WO 00/01149 (corresponding to U.S. patent application Ser. No. 09/515,118), WO 01/52541 (corresponding to U.S. patent application Ser. No. 09/914,747 and also published as US 2002/0138831) and WO 02/01866 (corresponding to U.S. patent application Ser. No. 10/297,453 and also published as US 2003/0163832), the disclosures of which are hereby incorporated herein by reference. The DVR also preferably enables various trick modes that may enhance viewing experience of users such as, for example, fast forward or fast backward as described, for example, in the published PCT Applications WO 03/010970 (corresponding to U.S. patent application Ser. No. 10/479,373 and also published as US 2004/0199658) and WO 01/35669 (corresponding to U.S. patent application Ser. No. 09/574,096), the disclosures of which are hereby incorporated herein by reference. 
         [0070]    It is appreciated that the recorded program transmissions displayed by the DVR typically comprise program transmissions delayed with respect to a time of broadcast of the program transmissions by headend  507 . Therefore, program transmissions that undergo decoding at IRD  511 , and if necessary, decryption/descrambling, preferably arrive either from broadcast transmissions broadcast by headend  507  or from the storage device of the DVR. The program transmissions are preferably broadcast by headend  507  as regular scheduled transmissions or in the form of VOD or NVOD transmissions. The program transmissions that are decoded and decrypted/descrambled by IRD  511  typically require processing of a similar type whether provided by headend  507  or by the DVR, or by any other appropriate device in which the program transmissions may be stored, such as a game console or a cellular telephone. 
         [0071]    The processor preferably includes an operating system that enables processing of the program transmissions. 
         [0072]    IRD  511  preferably accepts, via an input interface, user input from an input device such as a remote control that is operated by the user. The user input is preferably provided to the processor as instructions. 
         [0073]    With reference to  FIGS. 6   a  to  6   e , a description will now be provided of how a viewer might view a piece of content that contains reveal control metadata in accordance with embodiments of the present invention. 
         [0074]    It will be remembered that a viewer called Bob was described as having not attended a particular game of football because he had to attend a luncheon in honour of his mother-in-law&#39;s 72 nd birthday! Bob also does not know the result of the match and upon returning home he decides to watch the match in its entirety from the start. The game in question is the match played between the Blues and the Whites on 27 Jul. 2005. This recording is stored in a digital video recorder (DVR) within an IRD in Bob&#39;s home. By using an electronic program guide (EPG) provided on the IRD and a remote control to navigate through the EPG, Bob can select the match that he wants to view. Once Bob has decided to view the football match and selected it via the EPG, the IRD checks whether or not the recording has been provided with segmentation metadata. In the present embodiment it has been and therefore Bob is presented with three options. Option 1 is to watch the entire match. Option 2 is to view segment information. By viewing segment information, Bob could have chosen a particular segment to view. Bob might, for example, have only wanted to watch the second half or may have only wanted to see the winning goal. Bob decides to view the whole match and highlights the relevant option by once again navigating the EPG using the remote control.  FIG. 6   a  shows that Bob has highlighted “1. View whole match”. 
         [0075]    In the present embodiment, the segmentation metadata for the football match is additionally provided with segmentation reveal control metadata that prevents a viewer from viewing the segmentation information associated with a segment (and the segments itself) until the segment has been marked as ‘viewed’ by the IRD. In the present embodiment, had Bob accidentally selected the option “2. View segment information”, his viewing experience would not have been spoiled because no segments had yet been marked as viewed. Preferably, in such an instance, Bob would have been presented with an on-screen message informing him that he had not yet viewed any segments and information about a segment will only appear/be revealed (and access to that segment will only be provided) once that segment has been viewed. This is shown in  FIG. 6   b.    
         [0076]    Preferably, an option of bypassing the reveal control and viewing the segment information is provided (for example by pressing the red button on a remote control), as is also shown in  FIG. 6   b . This would be useful in the other case described above where Andrew had been at the game and all he wanted to do was watch the last minute save.  FIG. 6   e  depicts a screenshot that would be shown to Andrew in this instance. All the segments are listed and he can select “6. Robbins (Blues) Save” in order to view the last minute save. 
         [0077]    Having selected to view the whole match, Bob settles down to watch the match and watches the entire first half. At half time, it will be remembered that his son Chris comes in to watch with him. However, Chris has not seen the first half but neither does he want to watch the entire first half from start to finish. Using the remote control and EPG, Bob now selects to view the segment information. 
         [0078]    As Bob watches the first half, the IRD marks certain segments as having been ‘viewed’ in accordance with the segment reveal control metadata and methods as described above. Those segments of the match that Bob has already viewed can thus be presented/revealed to Bob when he selects to view the segment information at the end of the first half. The metadata associated with those segments of the match that Bob has not yet viewed remains hidden from view. With reference to  FIG. 6   c , the three segments that Bob is able to view are presented on the screen to Bob. These three segments represent the highlights of the first half of the match. Thus Bob can individually select each of these three segments in turn so that Chris can see the highlights of the first half without watching the entire first half. The metadata associated with the remaining segments (representing the remaining points of interest in the match) are not visible (are not revealed) and therefore neither Bob nor Chris&#39;s enjoyment of the match is spoiled. 
         [0079]    When Bob shows Chris the third segment (“Smith (Blues) Goal”), Bob is presented with three options, as shown in the screenshot in  FIG. 6   d . Option 1 is to view the goal. The segment of the ‘goal’ also forms part of a group of segments that includes a number of different camera angles of the same ‘goal’. This ‘camera angles’ group of segments has associated with it group reveal control metadata as described above. The remaining segments in the ‘camera angles’ group are made available (revealed) to Bob once the IRD has marked the original ‘goal’ segment as having been viewed. Therefore, since Bob has watched the first half of the match and the third segment (the ‘goal’ segment) has been marked as viewed, Bob is presented with Option 2, which is to “view alternate camera angles” of the goal. These ‘alternate camera angle’ segments may already be stored on the DVR. Alternatively, the IRD may be linked to an IP network (e.g. the Internet) from where the segments can be downloaded. Moreover, the segment of the ‘goal’ may also form part of a group of segments that includes other goals scored by Smith, the goalscorer and in such a case Bob is presented with Option 3, which is to “view other goals of Smith”. 
         [0080]    Referring now to  FIG. 6   e , the second segment of the football match is “Andrews (Whites) Yellow Card”. This segment has associated with it segment reveal control metadata as described above. More specifically, in the segment reveal control metadata, the SpoilerFlag has been set but no RevealPoint is specified and the ViewingExtentClientModel flag has not been set. Thus this second segment will only be marked as viewed by the IRD once Bob has viewed the entire segment. This is advantageous because the despite the segment lasting 45 seconds (it includes the build-up to a foul committed by Andrews, an ensuing melee and the yellow card), the yellow card is not shown to Andrews until the end of the segment. 
         [0081]    The fifth segment of the football match is “Lewis (Whites) Goal”. This segment also has associated with it segment reveal control metadata as described above. More specifically, in the segment reveal control metadata, the SpoilerFlag has been set and a RevealPoint is specified. The ViewingExtentClientModel flag has also been set. The RevealPoint is set just after the goal is scored. This is advantageous because the segment includes the build-up to the goal, the goal itself and the celebrations after the goal. In other words, the critical event takes place in the middle of the segment and it is not necessary for the entire segment to be viewed in order to view the goal. Therefore, once the goal has been scored, the segment can be marked as viewed. Moreover, viewing the fifth segment means that the viewing extent has exceeded the reveal times of both the first and third segments (“Andrews (Whites) Goal” &amp; “Smith (Blues) Goal”). Since both these segments also have their ViewingExtentClientModel flag set, these segments can also now be marked as viewed. This is advantageous because once the fifth segment (a goal) has been seen, the viewer will know the score in the match and therefore marking the earlier goals in the match as viewed (and therefore revealing the descriptive metadata associated with those goals) will not spoil the enjoyment of the match for a viewer. 
         [0082]    In another embodiment of the present invention, when Bob decides to view the segment information as described above in relation to  FIG. 6   a , instead of being presented with a screen such as that shown in  FIG. 6   b , he may be presented with a screen such as that shown in  FIG. 6   f . In this embodiment, Bob is presented with a list of the segments, where each segment is provided with a generic name (e.g. Segment1, Segment2 etc.) and a duration. No further information about the segments is provided so as not to spoil Bob&#39;s viewing enjoyment of the match. Once Bob has viewed a segment (so that the remaining metadata that is subject to reveal control can be revealed) and then gone back to view it again, he might be presented with a screen such as that shown in  FIG. 6   f , which is similar to the one shown in  FIG. 6   d.    
         [0083]    From the screen shown in  FIG. 6   f , Bob might also have the option to view groups of segments associated with the football match (menu item “7. Segment Groups”). If Bob decides to view segment groups, he might be presented with a screen such as that shown in  FIG. 6   g  which is a list of the segment groups, where each group is provided with a duration and title that is descriptive of the group but not descriptive enough to spoil Bob&#39;s enjoyment of the match. For example, Bob might be given the option to watch brief highlights of the first or second half, just the major incidents of the first or second half or just the goals. This is advantageous because Bob can see the duration of the various groups and knows how long it will take the watch the group. He can therefore select a group to watch and view as much of the match that he has time to view but still without having his enjoyment spoiled. 
         [0084]    It will be apparent from the foregoing description that many modifications or variations may be made to the above described embodiments without departing from the invention. Such modifications and variations include: 
         [0085]    The above described embodiments were all described in relation to broadcast television but the invention is equally applicable in other domains (e.g. DVDs, podcasts, content consumed outside of a television (e.g. on a computer, PDA, mobile telephone). 
         [0086]    In the above described embodiments, the metadata revealed was described as being other segmentation metadata. In alternate embodiments, the revealed metadata could be other descriptive metadata. For example, if the content item was a film or drama programme, synopsis data up to the latest viewing extent could be revealed thus allowing a viewer to review/catch-up with what they have already seen. This could be provided, for example, using the Synopsis element of the BasicSegmentDescription type as described in ETSI TS 102 822-3-1. If a synopsis of more than just the particular segment was required then the Synopsis element could be used to describe the synopsis of the segment and all segments temporally up to that segment. Alternatively, a new element could be defined (e.g. ElapsedSynopsis) that could describe the elapsed synopsis data. In yet further embodiments, all viewed segments could be added to an ‘elapsed segment’ segment group and the elapsed synopsis data could be described in a new ElapsedSynopsis element within the SegmentGroupInformation type. 
         [0087]    In the above described embodiments, segments had associated with them segment reveal control metadata and segment groups had associated with them group reveal control metadata. In other embodiments, a programme itself might have associated with it global reveal control metadata In such embodiments, the elapsed programme synopsis data described above could be held as global descriptive metadata, which itself is provided with reveal control. Synopsis metadata items could be associated with various points along the timeline of the programme each having its own reveal time. The more of the programme that is viewed, the more synopsis metadata can be revealed to the viewer. 
         [0088]    In other embodiments, the revealed metadata could be a reference to other content (e.g. other AV content, text content, comic strips etc.). For example, when watching a complex drama series, other material describing related sub-plots may become available once a particular point in the main content has been reached (e.g. explaining a certain character&#39;s background/past life. Other metadata that could be revealed will be apparent to someone skilled in the art. 
         [0089]    In alternative embodiments, there may be multiple sets of metadata attached to the same point on the content timeline but having different reveal characteristics. 
         [0090]    In the above described embodiments, the AV content and metadata were described as being multiplexed and delivered together by the headend. In alternative embodiments the content and metadata might be delivered separately. For example, the content is broadcast as described above but the metadata is then retrieved by the IRD via an IP network using the CRID of the content. This is advantageous because metadata associated with programme itself (i.e. global metadata) could be delivered before the programme itself is delivered and segmentation metadata associated with the programme could either be delivered before the programme, during the broadcast of the programme or even after the programme has ended. 
         [0091]    It is appreciated that various features of the invention which are, for clarity, described in the contexts of separate embodiments may also be provided in combination in a single embodiment. Conversely, various features of the invention which are, for brevity, described in the context of a single embodiment may also be provided separately or in any suitable sub-combination. 
         [0092]    It will be appreciated by persons skilled in the art that the present invention is not limited by what has been particularly shown and described hereinabove.