EP2160899B1

Apparatus and method for storing and reading a file having a media data container and a metadata container

Abstract

An apparatus for processing stored data packets in a media data container and stored associated meta information in a metadata container, the associated meta information having transport timing information and location information indicating a storage location of the stored data packets in the media data container, the apparatus having a processor for determining, based on the stored data packets and the stored associated meta information, decoding information for a media payload of the stored data packets, wherein the decoding information indicates at which time instant to replay which payload of the stored data packets.

EP2160899B1, drawing sheet 1
Sheet 1 of 12

Term

1.8 yearsleft in the term

Expires 1 July 2028.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

21 claims: 8 independent, 13 dependent

  1. 1
    An apparatus (100) adapted to record a file (102) having a related media data container (104) and a metadata container (106), the apparatus comprising:a receiver (108) adapted to receive first streamed Real-Time Transport Protocol (RTP) packets (110) comprising packetized first media data samples based on a first clock, and for receiving second streamed RTP packets (112) comprising second media data samples based on a second clock different from the first clock, wherein the second media data samples are associated to the first media data samples, and adapted to receive first Real-Time Transport Control Protocol (RTCP) packets (114) related to the first streamed RTP packets (110) and including information for indicating a relationship of the first clock to a reference clock and for receiving second RTCP packets (115) related to the second streamed RTP packets (112) and including information for indicating a relationship of the second clock to the reference clock;and a recorder (116) adapted to store the received first and second streamed RTP packets (110;112) and at least RTCP sender reports of the received first and second RTCP packets (114;115) in the media data container (104), and for storing associated metadata (124;128) in the metadata container (106), the associated metadata comprising reception time and/or transport protocol timestamp information of the received first and second streamed RTP packets and the received first and second RTCP packets and location information indicating a location of the stored first and second RTP packets and the stored first and second RTCP packets in the media data container.
  2. 4
    The apparatus according to one of the preceding claims, wherein the recorder (116) is adapted to store the reception time and/or transport protocol timestamp information and the location information of the first and second RTP packets (110;112) in a first track (124) of the metadata container (106), and to store the reception time and/or transport protocol timestamp information and the location information of the first and second RTCP packets (114;115) in a second track (128) of the metadata container (106).
  3. 5
    The apparatus according to one of the preceding claims, wherein the recorder (116) is adapted to store the reception time and/or transport protocol timestamp information of the first and second RTP packets (110;112) in a first sample table box (stts) allowing an indexing from reception timing of a first and/or second RTP packet to its associated sample number in the first chunks (118), and to store the reception timing information of the first and second RTCP packets (114;115) in a second sample table box (stts) allowing indexing from a reception timing of a first and/or second RTCP packet to its associated sample number in the second chunks (122).
  4. 7
    The apparatus according to one of the preceding claims, wherein the apparatus (100) comprises a processor (602) configured to determine synchronization information for synchronizing the first and second media data samples using the stored reception time and/or transport protocol timestamp information of the first and second RTP packets (110;112) and Network Time Protocol (NTP) timestamps contained in the stored first and second RTCP packets (114;115) associated to the first and second RTP packets.
  5. 10
    The apparatus according to one of the preceding claims, wherein the receiver (108;1108) is adapted to further receive key stream packets (1112) comprising a plurality of cryptographic keys (k n ), wherein each cryptographic key is associated to a payload of at least one of the first and/or the second RTP packets (110;112;1110), and wherein the recorder is adapted to store the received key stream packets in the media data container (104;1104) and to store associated transport timing information in the metadata container (106;1106).
  6. 13
    The apparatus according to one of claims 10 to 12, wherein the recorder (116;1116) is adapted to store a reception time index of a key stream packet as the associated transport timing information or to store a packet timestamp of a RTP packet received in a predefined time interval around a reception time of the key stream packet as the associated timing information of the key stream packet.
  7. 14
    The apparatus according to one of claims 10 to 13, wherein the processor (602) is adapted to assign, using the stored first and second RTP packets (110;112), using the stored first and second RTCP packets (114;115), using the associated meta information (124;128) and using the stored key stream packets (1112) and the associated key stream meta information (1128), decryption information to a payload of the stored first and/or second RTP packets (110;112), wherein the decryption information indicates which cryptographic key to use at which time to replay the payload of the stored first and/or second RTP packets.
  8. 16
    A method for recording a file (102) having a related media data container (104) and a metadata container (106), the method comprising:receiving first streamed Real-Time Transport Protocol (RTP) packets (110) comprising packetized first media data samples based on a first clock, and for receiving second streamed RTP packets (112) comprising second media data samples based on a second clock different from the first clock, wherein the second media data samples are associated to the first media data samples, and for receiving first Real-Time Transport Control Protocol (RTCP) packets (114) including information for indicating a relationship of the first clock to a reference clock and for receiving second RTCP packets (115) including information for indicating a relationship of the second clock to the reference clock;and storing the received first and second streamed RTP packets (110;112) and at least RTCP sender reports of the received first and second RTCP packets (114;115) in the media data container (104), and for storing associated metadata (124;128) in the metadata container (106), the associated metadata comprising reception time and/or transport protocol timestamp information of the received first and second streamed RTP packets and the received first and second RTCP packets and location information indicating a location of the stored first and second RTP packets and the stored first and second RTCP packets in the media data container.
  9. 18
    An apparatus adapted to read a file (102), the file having stored, in a media data container (104) related to the file, first streamed Real-Time Transport Protocol (RTP) packets (110) comprising packetized first media data samples based on a first clock and second streamed RTP packets (112) comprising packetized second media data samples based on a second clock different from the first clock, wherein the second media data samples are associated to the first media data samples, and the file having stored at least a Real-Time Transport Control Protocol (RTCP) sender reportof associated first RTCP packets (114) including information for indicating a relationship of the first clock to a reference clock and having stored at least a RTCP sender report of associated second RTCP packets (115) including information for indicating a relationship of the second clock to the reference clock, the file having stored associated metadata (124; 128) in a metadata container (106) of the file, the associated metadata comprising reception time and/or transport protocol timestamp information of the received first and second streamed RTP packets (110; 112) and the received first and second RTCP packets (114; 115) and location information indicating a location of the stored first and second RTP packets and the stored first and second RTCP packets in the media data container, the apparatus comprising:a processor adapted to determine an output schedule of the stored first and second RTP packets (110;112) by accessing the metadata container (106) and by interpreting the reception time and/or transport protocol timestamp information of the stored first and second RTP packets and the stored first and second RTCP packets (114;115) in the media data container (104), wherein the processor is adapted to determine synchronization information using the stored reception time and/or transport protocol timestamp information of the first and second RTP packets (110;112) and reference timestamps contained in the RTCP sender reports of the stored first and second RTCP packets (114;115), such that an output schedule of the first RTP packets is synchronized to an output schedule of the second RTP packets with respect to media timing of the first and second media data samples, wherein the media timing is based on reference time information;and an output controller adapted to output the first and second RTP packets (110;112) in accordance to the determined output schedule by accessing metadata container (106) and by reading the RTP packets from the media data container (104).
  10. 20
    A method for reading a file (102), the file having stored, in a media data container (104) related to the file, first streamed Real-Time Transport Protocol (RTP) packets (110) comprising packetized first media data samples based on a first clock and second streamed RTP packets (112) comprising packetized second media data samples based on a second clock different from the first clock, wherein the second media data samples are associated to the first media data samples, and the file having stored at least a Real-Time Transport Control Protocol (RTCP) sender report of associated first RTCP packets (114) including information for indicating a relationship of the first clock to a reference clock and having stored at least a RTCP sender report of associated second RTCP packets (115) including information for indicating a relationship of the second clock to the reference clock, the file having stored associated metadata (124; 128) in a metadata container (106) of the file, the associated metadata comprising reception time and/or transport protocol timestamp timing information of the received first and second streamed RTP packets (110; 112) and the received first and second RTCP packets (114; 115) and location information indicating a location of the stored first and second RTP packets and the stored first and second RTCP packets in the media data container, the method comprising:determining an output schedule of the stored first and second RTP packets (110;112) by accessing the metadata container (106) and by interpreting the reception time and/or transport protocol timestamp information of the stored first and second RTP packets and the stored first and second RTCP packets (114;115) in the media data container (104), wherein synchronization information is determined using the stored reception time and/or transport protocol timestamp information of the first and second RTP packets (110;112) and reference timestamps contained in the RTCP sender reports of the stored first and second RTCP packets (114;115), such that an output schedule of the first RTP packets is synchronized to an output schedule of the second RTP packets with respect to media timing of the first and second media data samples, wherein the media timing is based on reference time information;and outputting the first and second RTP packets (110;112) in accordance to the determined output schedule by accessing metadata container (106) and by reading the RTP packets from the media data container (104).