WO2007069009A2 - Codec and session parameter change - Google Patents

Codec and session parameter change Download PDF

Info

Publication number
WO2007069009A2
WO2007069009A2 PCT/IB2006/003268 IB2006003268W WO2007069009A2 WO 2007069009 A2 WO2007069009 A2 WO 2007069009A2 IB 2006003268 W IB2006003268 W IB 2006003268W WO 2007069009 A2 WO2007069009 A2 WO 2007069009A2
Authority
WO
WIPO (PCT)
Prior art keywords
time
parameters
sdp
timestamp
service
Prior art date
Application number
PCT/IB2006/003268
Other languages
French (fr)
Other versions
WO2007069009A3 (en
Inventor
Reino Juhani Hiltunen
Jani Poikela
Matti Takala
Original Assignee
Nokia Corporation
Nokia, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Corporation, Nokia, Inc. filed Critical Nokia Corporation
Priority to JP2008545123A priority Critical patent/JP2009519654A/en
Priority to EP06820920A priority patent/EP1961217A4/en
Publication of WO2007069009A2 publication Critical patent/WO2007069009A2/en
Publication of WO2007069009A3 publication Critical patent/WO2007069009A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • H04N21/2358Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages for generating different versions, e.g. for different recipient devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/12Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]

Definitions

  • the invention relates generally to communications networks. More specifically, the invention provides for providing updated parameters corresponding to a session of a program or service.
  • ESG Electronic Service Guide
  • SDP Session Description Protocol
  • textual file or an image.
  • the ESG fragments describe one or several aspects of currently available (or future) service or broadcast programs. Such aspects may include for example: free text description, schedule, geographical availability, price, purchase method, genre, and supplementary information such as preview images or clips.
  • Audio, video and other types of data comprising the ESG fragments may be transmitted through a variety of types of networks according to many different protocols.
  • data can be transmitted through a collection of networks usually referred to as the "Internet” using protocols of the Internet protocol suite, such as Internet Protocol (IP) and User Datagram Protocol (UDP).
  • IP Internet Protocol
  • UDP User Datagram Protocol
  • Data is often transmitted through the Internet addressed to a single user. It can, however, be addressed to a group of users, commonly known as multicasting. In the case in which the data is addressed to all users it is called broadcasting.
  • the ESG data may be transmitted using different types of wireless digital networks including digital broadband broadcast and/or multicast networks.
  • a service provider provides information on current or future services or content by transmission of corresponding ESG fragments in a data stream corresponding to an event to a subscriber terminal.
  • changes may be made to the event by the service provider.
  • the service provider may alter the corresponding service guide or parts thereof, change the service schedule, or promote a specific broadcast service.
  • it may be desired to change parameters describing a session during the session rather than having static parameters that remain valid only during the availability of the corresponding service.
  • the precise time of the parameter change may be unknown such that corresponding session description files may be loaded at improper times or desired content may be unexpectedly unavailable. Users or groups of users often have a need to be notified of such information or parameter changes to currently supplied information.
  • a transmitter is provided for transmitting parameters corresponding to a session of a program or service.
  • a timestamp may be included in a Session Description Protocol (SDP) file and may be transmitted to a receiver or subscriber terminal.
  • SDP Session Description Protocol
  • a receiver for receiving timing information in an SDP file.
  • the timing information may correspond to a time when a set of parameters corresponding to a session of a program or service may be valid. At this time, the set of parameters may be loaded at a receiver.
  • the updated or new parameters may be transported in an SDP file prior to the time indicated by the timing information in the SDP file.
  • the SDP file may further be included in an ESG fragment.
  • a transmitter is provided for transmitting a data packet corresponding to a program or service and for transmitting an SDP file containing timing information for loading parameters associated with the program or service at a receiver.
  • a receiver for receiving a data packet corresponding to a program or service and for loading updated parameters at a time indicated by a timing parameter in an SDP file received from a network.
  • a computer-readable medium for controlling a device for receiving timing information in an SDP file and for loading updated parameters at a desired time.
  • FIG. 1 illustrates a block diagram of a wireless communication system in which various aspects of the present invention may be implemented.
  • FIG. 2 illustrates a suitable digital broadcast receiver in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 3 illustrates a schematic diagram of an example of a transport object in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 4 illustrates examples of transporting single transport objects in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 5 illustrates an example of a system for creating an SDP file for signaling a time of a parameter change associated with a program or service in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 6 illustrates an example of a receiver or subscriber terminal receiving an ESG fragment containing an SDP file in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 7 illustrates an example of an SDP file for transporting parameters corresponding to a program or service in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 8 illustrates an example of an SDP file containing a timestamp parameter in which one or more illustrative embodiments of the invention may be implemented
  • FIG. 9 illustrates an example of an extension of an SDP file for describing audio parameters in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 10 illustrates the example of FIGS. 7, 8, and 9 in which new parameters may be sent to the receiver or subscriber terminal in the SDP file in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 11 illustrates an example of an updated SDP file in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 12 is a flowchart illustrating an example of a receiving and loading updated parameters in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 13 is a timing diagram illustrating an example of a receiving and loading updated parameters in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 14 is a timing diagram illustrating another example of a receiving and loading updated parameters in which one or more illustrative embodiments of the invention may be implemented.
  • FIG. 1 illustrates an example of a wireless communication system 110 in which the systems and methods of the invention may be employed.
  • One or more network-enabled mobile devices 112 such as a personal digital assistant (PDA), cellular telephone, mobile terminal, personal video recorder, portable television, personal computer, digital camera, digital camcorder, portable audio device, portable radio, or combinations thereof, are in communication with a service source 122 through a broadcast network 114 and/or cellular network 116.
  • the mobile terminal/device 112 may comprise a digital broadband broadcast receiver device.
  • the service source 122 may be connected to several service providers that may provide their actual program content or information or description of their services and programs to the service source that further provides the content or information to the mobile device 112.
  • the several service providers may include but are not limited to one or more television and/or digital television service providers, digital AM/FM radio service providers, SMS/MMS push service providers, Internet content or access providers.
  • IPDC IP datacasting
  • ESG electronic service guide
  • EPG electronic program guide
  • DVB Digital video broadcasting-handheld
  • the DVB-H is designed to deliver 10 Mbps of data to a battery- powered terminal device.
  • DVB transport streams deliver compressed audio and video and data to a user via third party delivery networks.
  • Moving Picture Expert Group is a technology by which encoded video, audio, and data within a single program is multiplexed, with other programs, into a transport stream (TS).
  • the TS is a packetized data stream, with fixed length packets, including a header.
  • the individual elements of a program, audio and video are each carried within packets having a unique packet identification (PID).
  • PID packet identification
  • PSI Program Specific Information
  • SI Service Information
  • SI Service Information
  • aspects of the present invention are also applicable to other digital broadband broadcast systems such as, for example, T-DAB, T/S-DMB, ISDB-T, ATSC, FLO (Forward Link Only), 3GPP MBMS, and 3GPP2BCMCS.
  • the exemplary broadcast network 114 may include a radio transmission of IP datacasting over DVB-H.
  • the broadcast network 114 may broadcast a service such as a digital or analog television signal and supplemental content related to the service via transmitter 118.
  • the broadcast network may also include a radio, television or IP datacasting broadcasting network.
  • the broadcast network 114 may also transmit supplemental content which may include a television signal, audio and/or video streams, data streams, video files, audio files, software files, and/or video games.
  • the service source 122 may communicate actual program content to user device 112 through the broadcast network 114 and additional information such as user right and access information for the actual program content through the cellular network 116.
  • the mobile device 112 may also contact the service source 122 through the cellular network 116.
  • the cellular network 116 may comprise a wireless network and a base transceiver station transmitter 120.
  • the cellular network may include a second/third-generation (2G/3G) cellular data communications network, a Global System for Mobile communications network (GSM), a Universal Mobile Telecommunications System (UMTS) or other wireless communication network such as a WLAN network.
  • 2G/3G second/third-generation
  • GSM Global System for Mobile communications network
  • UMTS Universal Mobile Telecommunications System
  • mobile device 112 may comprise a wireless interface configured to send and/or receive digital wireless communications within cellular network 116.
  • the information received by mobile device 112 through the cellular network 116 or broadcast network 114 may include user selection, applications, services, electronic images, audio clips, video clips, and/or WTAI (Wireless Telephony Application Interface) messages.
  • WTAI Wireless Telephony Application Interface
  • one or more base stations may support digital communications with receiver device 112 while the receiver device is located within the administrative domain of cellular network 116.
  • mobile device 112 may include processor 128 connected to user interface 130, memory 134 and/or other storage, and display 136. Mobile device 112 may also include battery 150, speaker 152 and antennas 154. User interface 130 may further include a keypad, touch screen, voice interface, one or more arrow keys, joy-stick, data glove, mouse, roller ball, touch screen, or the like.
  • Computer executable instructions and data used by processor 128 and other components within mobile device 112 may be stored in a computer readable memory 134.
  • the memory may be implemented with any combination of read only memory modules or random access memory modules, optionally including both volatile and nonvolatile memory.
  • Software 140 may be stored within memory 134 and/or storage to provide instructions to processor 128 for enabling mobile device 112 to perform various functions.
  • some or all of mobile device 112 computer executable instructions may be embodied in hardware or firmware (not shown).
  • Mobile device 112 may be configured to receive, decode and process digital broadband broadcast transmissions that are based, for example, on the Digital Video Broadcast (DVB) standard, such as DVB-H, DVB-T or DVB-MHP, through a specific DVB receiver 141.
  • the mobile device may also be provided with other types of receivers for digital broadband broadcast transmissions.
  • receiver device 112 may also be configured to receive, decode and process transmissions through FM/AM Radio receiver 142, WLAN transceiver 143, and telecommunications transceiver 144.
  • mobile device 112 may receive radio data stream (RDS) messages.
  • RDS radio data stream
  • one DVB 10 Mbit/s transmission may have 200, 50 kbit/s audio program channels or 50, 200 kbit/s video (TV) program channels.
  • the mobile device 112 may be configured to receive, decode, and process transmission based on the Digital Video Broadcast-Handheld (DVB-H) standard or other DVB standards, such as DVB-MHP, DVB-Satellite (DVB-S), DVB-Terrestrial (DVB-T) or DVB-Cable (DVB-C).
  • DVD-H Digital Video Broadcast-Handheld
  • DVB-MHP DVB-Satellite
  • DVD-T DVB-Terrestrial
  • DVD-Cable DVB-Cable
  • digital transmission formats may alternatively be used to deliver content and information of availability of supplemental services, such as ATSC (Advanced Television Systems Committee), NTSC (National Television System Committee), ISDB-T (Integrated Services Digital Broadcasting - Terrestrial), DAB (Digital Audio Broadcasting), DMB (Digital Multimedia Broadcasting), FLO (Forward Link Only) or DIRECTV.
  • the digital transmission may be time sliced, such as in DVB-H technology. Time-slicing may reduce the average power consumption of a mobile terminal and may enable smooth and seamless handover. Time-slicing consists of sending data in bursts using a higher instantaneous bit rate as compared to the bit rate required if the data were transmitted using a traditional streaming mechanism.
  • the mobile device 112 may have one or more buffer memories for storing the decoded time sliced transmission before presentation.
  • ESG fragments may be delivered to a subscriber terminal in one or more data streams or channels.
  • a plurality of channels can be used to deliver ESG information to the subscriber terminal.
  • the ESG fragment may provide the subscriber terminal with notification of upcoming events to be provided by a service provider, changes in current events provided by a service provider or updated or on-going information for a user or group of users.
  • ESG fragments may be delivered in a transport object which may transport ESG information in a container.
  • ESG fragments may be placed in a container that may be delivered in its own transport object.
  • the container may further include a container header and a container payload, for example, in which the container header may provide information on where each container is located within the transport object.
  • the transport object may contain a single container or a plurality of containers, each container including at least one ESG fragment.
  • FIG. 3 is a diagram of an example transport object in accordance with at least one aspect of the present invention. As illustrated in the example of FIG. 3, a transport object 300 may comprise a container that may include a container header 310 and a container payload 320.
  • the container header 310 and the container payload 320 are incorporated into a single container 305 which may be incorporated into a single transport object 300 so that the container header 310 need not be recombined with information regarding where each container is located within different transported objects.
  • the transport object 300 may contain a plurality of containers and a container may contain any number of ESG fragments 340.
  • the container header 310 may contain information associated with a corresponding ESG fragment such as, for example, information regarding the container header 310 itself and/or the container payload 320.
  • the ESG fragment 340 is contained in the container payload 320.
  • the container header 310 may contain descriptors for identifying and describing ESG fragments in the corresponding container payload 320.
  • the characteristics of the ESG fragment may be identified, such as but not limited to the position of the ESG fragment in the transport object 300 or the length of each contained ESG fragment 340.
  • a field specifies where the particular ESG begins within the container payload 320 by providing, for example, an offset value, start and end points, or the like.
  • metadata 350 may be associated with the individual ESG fragments 340, located within or proximate to the header 310, descriptor entries, an ESG fragment 340 or a mixture thereof.
  • the association of a 3GPP metadata envelope with an ESG fragment 340 may substitute for, or negate the need of additional metadata to be located in the header 310 in relation to that particular ESG fragment.
  • FIG. 4 illustrates an example of transmitting a plurality of single Transport Objects.
  • the Transport Objects (TO) of the current invention may be carried in, for example, FLUTE (File Delivery over Unidirectional Transport) sessions, or a pure Asynchronous Layered Coding (ALC) session.
  • the ESG Root Channel data such as IP Address, port number and Transport Session Identifier (TSI)
  • TSI Transport Session Identifier
  • INT Table IP/MAC Notification Table
  • the FLUTE session of the ESG Root Channel comprises a File Delivery Table (FDT) of the session and one or more Transport Objects (TO).
  • FDT File Delivery Table
  • TO Transport Objects
  • Transport Objects that may be delivered in announcement carousels contain mapping between the different parts of ESGs and access parameters to the different ESG methods in which the ESG data is transmitted.
  • the ESGs may differ from each other. For example, ESGs may be in different languages, genres or encoding.
  • Examples of access parameters may include, for example, IP Addresses, port numbers, TSIs, start and end times etc.
  • the FLUTE session thus declares how the ESG data is distributed to different sessions.
  • the TOs of the FLUTE session carrying this mapping data are described in the FDT of the FLUTE session.
  • the ESG mapping data may be delivered in one or multiple TOs.
  • the mapping can be made using XML Schema, plain ASCII text, Structured ASCII text such as multipart MIME or MIME headers, as binary with enumerated types or through various other means as is known in the art.
  • the ESG data is in this example may be delivered in one or more TOs, which may be within pure ALC sessions, for example.
  • the ESG data or parts of it may be delivered in some embodiments of the invention in one or more FLUTE sessions in addition to or instead of ALC sessions.
  • the ESG may further contain a timestamp associated with a transmitted or received data stream.
  • a Real-Time Protocol (RTP) timestamp is one such example of a timestamp.
  • the timestamp may, for example, may indicate a time in which data may be presented or utilized.
  • an audio or video data stream may contain a timestamp representing the time that the data may be played.
  • the time of presentation or display of the data associated with the timestamp may further be presented with respect to previously received data packets.
  • a transmitted data stream may further contain parameters for describing the session.
  • An example of such parameters includes session and/or decoding parameters that describe the corresponding session.
  • These parameters may further be transmitted to receivers within SDP files which may, in turn, be grouped with other files within the ESG fragment.
  • SDP files may be transmitted to a receiver in a variety of ways. For example, one way of transmitting SDP files is in a burst that is separate from the data stream.
  • a time-slice for each service may be created that transports the parameters (e.g., service parameters) in an SDP file.
  • the time-slice that transports the parameters may be separate but close to a burst or time-slice corresponding to the service.
  • a receiver may receive the burst containing the parameters in an SDP file associated with a service in advance of receiving the separate time-slice burst transporting the service.
  • the SDP file may be included in the same burst as the session.
  • the SDP file may be included, for example, at the beginning of the time-slice burst for the service.
  • a receiver or subscriber station receiving the service may receive the corresponding SDP file (and corresponding parameters) at approximately the same time as the service.
  • the SDP file and corresponding parameters may be transmitted in an ESG fragment.
  • the parameters in the SDP file may describe characteristics of the corresponding program or service including, for example, session name, purpose, time, type of media, format, transport protocol, port number, bandwidth requirements, etc.
  • it may be difficult to effectively update parameters if changes or updates to the parameters are necessary. This may be particular problematic in the event of schedule changes because the exact moment of the parameter changes may not be known.
  • the corresponding program or service may become loaded at the wrong time or a receiver or subscriber terminal may be unable to play the program or service content.
  • a time of a desired parameter change associated with a transmitted program or service may be signaled in advance of the time the change is to be implemented.
  • the time of a parameter change is signaled in a timestamp (e.g., RTP timestamps) of a media stream.
  • the timestamp may be included, for example, in an SDP file which may be within an ESG fragment.
  • the SDP file may thus provide session and parameter information as well as timing information corresponding to the program or service.
  • the SDP file may contain a parameter or information corresponding to an origin of the session which may include, for example, a name, a session identifier, an indication of a version of the session, an address of the origin, etc.
  • the SDP file may also contain a parameter or identifier for a location of any information of interest.
  • the SDP file may contain a reference to a web page associated with the program or service.
  • the SDP file may also contain a reference to an ESG fragment associated with the program or service.
  • the SDP file may also contain other parameters or identifiers such as a destination address or a start time for a program or service.
  • the corresponding program or service may become available after the indicated start time but may not be available prior to the indicated start time.
  • the SDP file may also contain media- specific parameters.
  • the SDP file may further contain a parameter for a timestamp.
  • a parameter may be provided in the SDP file for indicating a time in which parameters are changed.
  • the timestamp may be transmitted to a receiver as soon as a decision on the timestamp has been made and in advance of the parameter change time.
  • the new or changed parameters may be set as described herein.
  • an ESG fragment containing a parameter for a timestamp may be received at a receiver or subscriber terminal.
  • the parameter may be contained in an SDP file within the ESG fragment.
  • the timestamp in the ESG fragment may indicate a time that the corresponding program or service may be provided or played.
  • the corresponding program or service may be associated with new (or changed) parameters which may be changed at the start time of the program or service.
  • the ESG fragment contains a timestamp that signals the parameter change in advance of the time of the parameter change.
  • the receiver or subscriber terminal may receive the parameter change information in advance.
  • the receiver or subscriber terminal may have internal delays such as buffering delays which may affect the precise time of the parameter change.
  • the parameter change is signaled in advance such that the new or changed parameters may be loaded at the proper time.
  • FIG. 5 illustrates an example of a system for creating an SDP file for signaling a time of a parameter change associated with a program or service.
  • a service is created in the service creation module 501.
  • the service may be created with associated parameters for describing the corresponding session.
  • the service created may have multiple components including a video component and an audio component.
  • the service may include multiple audio components or multiple video components.
  • two audio components (502, 503) are provided in the service and one video component is provided (504).
  • Each of the audio components are encoded in an audio encoder (505, 506) and the video component is encoded in a video encoder (507).
  • Data packets corresponding to the service or media stream may be packetized in packetizers (508, 509, 510).
  • packetizers 508, 509, 510.
  • AAC Advanced Audio Coding
  • AMR-WB Adaptive Multi-Rate Wide-Band
  • MP3 MP3
  • Digitally encoded audio may be transcoded with different codecs and parameters.
  • the resulting audion may have codec and parameters suitable for the terminals.
  • a video signal is provided and the encoding may include, for example, H.264 or Moving Pictures Expert Group 4 (MPEG-4), Advanced Video Coding (AVC) or VC-I, to name a few.
  • MPEG-4 Moving Pictures Expert Group 4
  • AVC Advanced Video Coding
  • VC-I Video Coding-I
  • the service may have associated session information.
  • session information the service may have a corresponding expected duration of usage. Any description of the session associated with the service may be described as one or more parameters which may be included in a corresponding SDP file.
  • An SDP file corresponding to the service may be created at the SDP creator module 511.
  • the SDP creator module may receive the corresponding parameters from the service creation module 501 and may incorporate the parameters in an SDP file.
  • the SDP creator module 511 may send the SDP file to a receiver or subscriber terminal.
  • the SDP file may be incorporated in an ESG fragment. As set forth above, the SDP file may be transmitted in the same burst as program or service information or may be transmitted in a separate burst.
  • the time when the new parameters are to be used in this example is added to the SDP file.
  • the SDP file thus created may be sent to a receiver or subscriber terminal.
  • the parameters may be updated or changed accordingly.
  • the parameters may be changed and sent to the SDP creator module 511 from the encoders (505, 506, 507). Also, a corresponding timestamp may be sent to the SDP creator module 511 at the time of the parameter change.
  • FIG. 6 illustrates an example of a receiver or subscriber terminal receiving an ESG fragment containing an SDP file.
  • the SDP file received at the receiver or subscriber terminal may contain parameters associated with a program or service.
  • the program or service may be associated with parameters that may change based on various factors such as but not limited to duration of the session or time of start of a session.
  • the ESG fragment is received and the SDP information is detected at the SDP manager module 601.
  • data packets associated with the program or service may be received at an unpacketizer (602, 603, 604) which may transmit the data packets to decoders (605, 606, 607).
  • the decoders (605, 606, 607) may further receive parameters from the SDP manager module 601.
  • the received parameters may describe a corresponding program or service.
  • a timestamp and/or buffering information may be received at the SDP manager module 601 from the unpacketizers (602, 603, 604).
  • FIG. 7 illustrates an example of an SDP file for transporting parameters corresponding to a program or service.
  • the SDP file may contain different fields or lines for providing desired information.
  • a typical SDP file may contain an "o" line for providing an origin of the session for the program or service. This line may include a name, a session ID, a version and an address of the origin as illustrated in the example of FIG. 7.
  • the SDP file may contain a "u" line for providing an identifier or a location of additional information.
  • the SDP file may further contain a "c" line for providing a destination address. This destination address may describe the location where the data stream is to be delivered.
  • a "t" line may also be provided for providing traditional coarse timing information. This traditional coarse timing information may be a decimal representation of Network Time Protocol (NTP) and may provide a time at which a session may be available. This field may provide timing information to an accuracy of one second.
  • NTP Network Time Protocol
  • the SDP file as illustrated in FIG. 7 may also include an "m" line which may provide any media-specific parameters associated with the program or service.
  • the media-specific parameters provided in the SDP file may be multiple and may continue from an "m" line to the end of the SDP file or may continue to a subsequent "m" line.
  • Media-specific parameters may include any parameters for describing characteristics of the program or service. This may include, for example, parameters for indicating audio encoding, video encoding, etc. Examples of media- specific parameters include IP address and port, encoding (codec), sampling frequency, bit rate, mode (e.g., mono, stereo, etc), to name a few.
  • a timestamp parameter is provided in the SDP file.
  • the timestamp in this example is an RTP timestamp for providing an exact start time of the corresponding program or service.
  • the RTP timestamp is named startRtpStamp and is provided with an exemplary value of 12345678.
  • an extended SDP file is illustrated including a description of video parameters including a startRtpStamp RTP timestamp.
  • FIG. 9 illustrates an example of an extension of an SDP file for describing audio parameters including a startRtpStamp exemplary timestamp.
  • an SDP file with the timestamp parameters as described e.g., a video timestamp parameter of 12345678 and an audio timestamp parameter of 12345432
  • a receiver or subscriber terminal receiving the SDP file may utilize the coarse timing parameter "t" as an approximation of the time of commencement of the program or service.
  • FIG. 10 illustrates the example of FIGS. 7, 8, and 9 in which new parameters may be sent to the receiver or subscriber terminal in the SDP file.
  • a new session version is indicated.
  • the new session version data may indicate that the SDP contains new information.
  • the SDP file contains new information including new information in the "u" line for indicating an address for additional information corresponding to the ESG fragment.
  • the "t" line i.e., coarse timing information
  • FIG. 11 illustrates an example of an updated SDP file after the exact time stamp of a parameter change is known.
  • the session version is updated as well as the timestamp parameter.
  • FIG. 12 illustrates another example of one aspect of the invention.
  • a timestamp is included in an ESG fragment for providing a time at which a parameter describing a program or service in an ESG fragment may change or may be updated.
  • the timestamp may be included in an SDP file within an ESG fragment.
  • a receiver or a subscriber terminal may receive a data packet containing a timestamp (STEP 1201).
  • the receiver may also receive a timestamp in an SDP file in an ESG fragment signaling a time for a change in parameters associated with the corresponding program or service (STEP 1202).
  • the receiver may compare the timestamp in the data packet to the timestamp received in the SDP file indicating a time for a parameter change (STEP 1203). If the timestamp in the data packet is less than the timestamp in the SDP file indicating a time for a parameter change ("NO" branch of STEP 1203), then the receiver may wait as the timestamp in subsequent data packets may increase. If the timestamp in the data packet is greater than or equal to the timestamp in the SDP file indicating a time for a parameter change ("YES" branch of STEP 1203), then the time for the parameter change has been reached and the new parameters may be loaded (STEP 1205). Additionally, the receiver may estimate a processing delay (STEP 1204) and wait the proper amount of time prior to loading the new parameters.
  • a processing delay may include a buffering delay.
  • FIG. 13 is a timing diagram illustrating another example.
  • an encoder produces a data stream at time t(0).
  • the initial data stream may include an ESG fragment containing parameters describing the session.
  • the parameters may be within an SDP file in the ESG fragment.
  • the parameters have initial values and may include a timestamp parameter, RTP(O) as illustrated.
  • the data stream may be transmitted to a receiver or subscriber terminal as illustrated in FIG. 13.
  • the receiver/terminal receives the data stream with the initial parameters at time t(0) when the data stream is transmitted in the network.
  • the data stream may contain the timestamp parameter (e.g., RTP(O)).
  • a change in parameters in the SDP file or ESG fragment may be desired at some time.
  • the new parameters may be determined but the time of implementation of the new parameters may not have been decided. For example, an exact time of a new program or an end of a current program or service may not have yet been determined at time t(l) so that the time for implementation of the corresponding new parameter is not known at time t(l).
  • new parameters include, for example, schedule information or validity information.
  • the receiver/terminal receives the new parameters beginning at time t(l) via the network.
  • the time for implementation of the new parameters is not yet known so the receiver/terminal does not load the new parameters at this time. Rather, the receiver/terminal loads the current parameters which are currently valid.
  • the new parameters or future parameters may be available but may not be designated as valid at this time.
  • the precise time for the parameter change is determined and the parameters in the SDP file or ESG fragment may be updated accordingly.
  • the timestamp parameter in the SDP file in the ESG fragment may be updated to indicate the time for the parameter change.
  • the timestamp parameter is updated at time t(2) and sent to the receiver/terminal.
  • the time for the parameter change is time t(3) which is after time t(2).
  • the data stream received at the receiver/terminal at time t(2) contains a timestamp parameter indicating time t(3) as the time for the parameter change.
  • the receiver/terminal continues to load the current parameters because the time for the parameter change (i.e., time t(3) in this example) has not yet occurred.
  • the receiver/terminal receives the ESG fragment and SDP in this example containing the timestamp parameter indicating the exact time for the parameter change (e.g., RTP(I) in this example) at time t(2). Also at this time, the receiver/terminal receives the new parameters with the timestamp RTP(I) indicating the precise time for implementation of the new parameters.
  • the time for the parameter change in the ESG fragment is indicated by the timestamp parameter in the SDP file in the ESG fragment as RTP(I) in this example.
  • the new parameters may be implemented at time t(3) at the receiver/terminal based on the timestamp RTP(I) received in the ESG fragment.
  • the new parameters are set to the encoders and the receiver/terminal sets the new parameters in the decoder.
  • FIG. 14 illustrates timing diagrams of another example.
  • data or RTP packets are transmitted from a transmitter to a receiver or subscriber terminal.
  • Each of the RTP packets contains an RTP timestamp for indicating a time of the RTP packet.
  • SDP files are transmitted to the receiver/terminal.
  • the SDP file, SDP currl is transmitted to the receiver/terminal and contains parameter set 1 for describing a corresponding session.
  • the parameters in SDP currl are valid for the current RTP packet stream.
  • each of the RTP timestamps in the RTP packet stream is compared to the timestamp parameter in SDP currl. At this time, the timestamp parameter in SDP currl is less than the timestamp in the RTP packet stream.
  • SDP nextl represents an SDP file transmitted when a parameter change is determined to occur.
  • SDP nextl is transmitted prior to the time that the parameter change is to occur as illustrated in FIG. 14, however, the precise time of the parameter change may not be known at this time.
  • SDP nextl may also contain the new parameter set (i.e., parameter set 2 in this example) and coarse timing information for providing an approximate time of the parameter change.
  • the precise time of the parameter change may be determined.
  • SDP next 1.1 is transmitted that contains the exact time information.
  • SDP nextl.1 may contain an updated timestamp parameter for indicating the precise time of the parameter change. Any number of updates to the time for parameter change may be made.
  • additional SDP files subsequent to SDP nextl.1 may be transmitted with additionally updated timestamp information as the precise time of the parameter change may be changed.
  • the precise time of the parameter change may be known initially and the updated RTP timestamp indicating the precise time may be included in the SDP nextl SDP file.
  • the timestamp in the RTP packet stream may be compared to the timestamp parameter in the SDP file (in this example, SDP next 1.1).
  • the timestamp in the RTP packet stream being less than or equal to the timestamp parameter in the SDP file may indicate to the receiver/terminal that the time for the parameter change has been reached.
  • the receiver/terminal may be informed from the timestamp information which parameter set is current.
  • parameter set 2 is now the current parameter set in the present example.
  • there may be different versions of the parameters and the different versions of parameter sets may overlap in time. There are many ways of determining the proper parameter set when different versions exist. For example, a version number may be associated with SDP files or parameter sets in SDP files. In one example, the highest version number indicates the current parameter set. Alternatively, additional information may indicate the current parameter set such as information corresponding to an ESG fragment.
  • the new parameter set (parameter set 2) is loaded after the time of the parameter change.
  • SDP curr2 contains the new parameter set 2.
  • SDP next2 may be transmitted that may contain the exact time for the second parameter change.
  • SDP next 2 may further include coarse timing information for indicating an approximate time for the parameter change.
  • the timestamp parameter may be updated in the SDP file and SDP next2 may be transmitted.
  • SDP next 2 may include the next set of parameters.
  • the next parameter set may be implemented.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

Provided are apparatuses and methods for transmitting and receiving timing information corresponding to updating parameters in an Electronic Service Guide (ESG) fragment. The parameters may be associated with a session of a program or service corresponding to the ESG fragment. In one example, the parameters may be updated and a timing information such as an RTP timestamp may be provided for indicating a time when the parameters may be loaded or implemented. In this example, when the RTP timestamp is greater than or equal to a timestamp of a data packet in a data stream, the time for the parameter change may have been achieved. At this time, the new or updated parameters may be loaded at a receiver.

Description

CODEC AND SESSION PARAMETER CHANGE
FIELD OF THE INVENTION
[1] The invention relates generally to communications networks. More specifically, the invention provides for providing updated parameters corresponding to a session of a program or service.
BACKGROUND OF THE INVENTION
[2] Generally, an Electronic Service Guide (ESG) enables a terminal to communicate what services are available to end users and how the services may be accessed. ESG fragments are independently existing pieces of the ESG. Traditionally, ESG fragments comprise XML documents, but more recently they have encompassed a vast array of items, such as for example, a SDP (Session Description Protocol) description, textual file, or an image. The ESG fragments describe one or several aspects of currently available (or future) service or broadcast programs. Such aspects may include for example: free text description, schedule, geographical availability, price, purchase method, genre, and supplementary information such as preview images or clips. Audio, video and other types of data comprising the ESG fragments may be transmitted through a variety of types of networks according to many different protocols. For example, data can be transmitted through a collection of networks usually referred to as the "Internet" using protocols of the Internet protocol suite, such as Internet Protocol (IP) and User Datagram Protocol (UDP). Data is often transmitted through the Internet addressed to a single user. It can, however, be addressed to a group of users, commonly known as multicasting. In the case in which the data is addressed to all users it is called broadcasting. The ESG data may be transmitted using different types of wireless digital networks including digital broadband broadcast and/or multicast networks.
[3] A service provider provides information on current or future services or content by transmission of corresponding ESG fragments in a data stream corresponding to an event to a subscriber terminal. However, over time, changes may be made to the event by the service provider. For example, the service provider may alter the corresponding service guide or parts thereof, change the service schedule, or promote a specific broadcast service. In addition, it may be desired to change parameters describing a session during the session rather than having static parameters that remain valid only during the availability of the corresponding service. However, the precise time of the parameter change may be unknown such that corresponding session description files may be loaded at improper times or desired content may be unexpectedly unavailable. Users or groups of users often have a need to be notified of such information or parameter changes to currently supplied information.
[4] Thus, there exists a need for a method and system for signaling a change in parameters associated with a session or any other program or service change such as a change in the content.
BRIEF SUMMARY OF THE INVENTION
[5] The following presents a simplified summary in order to provide a basic understanding of some aspects of the invention. The summary is not an extensive overview of the invention. It is neither intended to identify key or critical elements of the invention nor to delineate the scope of the invention. The following summary merely presents some concepts of the invention in a simplified form as a prelude to the more detailed description below.
[6] In one example, a transmitter is provided for transmitting parameters corresponding to a session of a program or service. In this example, a timestamp may be included in a Session Description Protocol (SDP) file and may be transmitted to a receiver or subscriber terminal.
[7] In another example, a receiver is provided for receiving timing information in an SDP file. The timing information may correspond to a time when a set of parameters corresponding to a session of a program or service may be valid. At this time, the set of parameters may be loaded at a receiver.
[8] In another example, the updated or new parameters may be transported in an SDP file prior to the time indicated by the timing information in the SDP file. The SDP file may further be included in an ESG fragment. [9] In another example, a transmitter is provided for transmitting a data packet corresponding to a program or service and for transmitting an SDP file containing timing information for loading parameters associated with the program or service at a receiver.
[10] In another example, a receiver is provided for receiving a data packet corresponding to a program or service and for loading updated parameters at a time indicated by a timing parameter in an SDP file received from a network.
[11] In another example, a computer-readable medium is provided for controlling a device for receiving timing information in an SDP file and for loading updated parameters at a desired time.
BRIEF DESCRIPTION OF THE DRAWINGS
[12] A more complete understanding of the present invention and the advantages thereof may be acquired by referring to the following description in consideration of the accompanying drawings, in which like reference numbers indicate like features, and wherein:
[13] FIG. 1 illustrates a block diagram of a wireless communication system in which various aspects of the present invention may be implemented.
[14] FIG. 2 illustrates a suitable digital broadcast receiver in which one or more illustrative embodiments of the invention may be implemented.
[15] FIG. 3 illustrates a schematic diagram of an example of a transport object in which one or more illustrative embodiments of the invention may be implemented.
[16] FIG. 4 illustrates examples of transporting single transport objects in which one or more illustrative embodiments of the invention may be implemented.
[17] FIG. 5 illustrates an example of a system for creating an SDP file for signaling a time of a parameter change associated with a program or service in which one or more illustrative embodiments of the invention may be implemented. [18] FIG. 6 illustrates an example of a receiver or subscriber terminal receiving an ESG fragment containing an SDP file in which one or more illustrative embodiments of the invention may be implemented.
[19] FIG. 7 illustrates an example of an SDP file for transporting parameters corresponding to a program or service in which one or more illustrative embodiments of the invention may be implemented.
[20] FIG. 8 illustrates an example of an SDP file containing a timestamp parameter in which one or more illustrative embodiments of the invention may be implemented
[21] FIG. 9 illustrates an example of an extension of an SDP file for describing audio parameters in which one or more illustrative embodiments of the invention may be implemented.
[22] FIG. 10 illustrates the example of FIGS. 7, 8, and 9 in which new parameters may be sent to the receiver or subscriber terminal in the SDP file in which one or more illustrative embodiments of the invention may be implemented.
[23] FIG. 11 illustrates an example of an updated SDP file in which one or more illustrative embodiments of the invention may be implemented.
[24] FIG. 12 is a flowchart illustrating an example of a receiving and loading updated parameters in which one or more illustrative embodiments of the invention may be implemented.
[25] FIG. 13 is a timing diagram illustrating an example of a receiving and loading updated parameters in which one or more illustrative embodiments of the invention may be implemented.
[26] FIG. 14 is a timing diagram illustrating another example of a receiving and loading updated parameters in which one or more illustrative embodiments of the invention may be implemented. DETAILED DESCRIPTION OF THE INVENTION
[27] In the following description of the various embodiments, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration various embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural and functional modifications may be made without departing from the scope and spirit of the present invention.
[28] Aspects of the present invention may be utilized across a broad array of networks and communication protocols. FIG. 1 illustrates an example of a wireless communication system 110 in which the systems and methods of the invention may be employed. One or more network-enabled mobile devices 112, such as a personal digital assistant (PDA), cellular telephone, mobile terminal, personal video recorder, portable television, personal computer, digital camera, digital camcorder, portable audio device, portable radio, or combinations thereof, are in communication with a service source 122 through a broadcast network 114 and/or cellular network 116. The mobile terminal/device 112 may comprise a digital broadband broadcast receiver device. The service source 122 may be connected to several service providers that may provide their actual program content or information or description of their services and programs to the service source that further provides the content or information to the mobile device 112. The several service providers may include but are not limited to one or more television and/or digital television service providers, digital AM/FM radio service providers, SMS/MMS push service providers, Internet content or access providers.
[29] One way of broadcasting data is to use an IP datacasting (IPDC) network. IPDC is a combination of digital broadcast and Internet Protocol. Through such an IP-based broadcasting network, one or more service providers can supply different types of IP services including on-line newspapers, radio, and television. These IP services are organized into one or more media streams in the form of audio, video and/or other types of data. To determine when and where these streams occur, users refer to an electronic service guide (ESG). One example used in digital video broadcasting (DVB) streams is an electronic program guide (EPG). One type of DVB is Digital video broadcasting-handheld (DVB-H), a recently developed technology that increases the capabilities and services available on small handheld devices, such as mobile telephones. The DVB-H is designed to deliver 10 Mbps of data to a battery- powered terminal device.
[30] DVB transport streams deliver compressed audio and video and data to a user via third party delivery networks. Moving Picture Expert Group (MPEG) is a technology by which encoded video, audio, and data within a single program is multiplexed, with other programs, into a transport stream (TS). The TS is a packetized data stream, with fixed length packets, including a header. The individual elements of a program, audio and video, are each carried within packets having a unique packet identification (PID). To enable a receiver device to locate the different elements of a particular program within the TS, Program Specific Information (PSI), which is embedded into the TS, is supplied. In addition, additional Service Information (SI), a set of tables adhering to the MPEG private section syntax, may be incorporated into the TS. This enables a receiver device to correctly process the data contained within the TS.
[31] Aspects of the present invention, however, are also applicable to other digital broadband broadcast systems such as, for example, T-DAB, T/S-DMB, ISDB-T, ATSC, FLO (Forward Link Only), 3GPP MBMS, and 3GPP2BCMCS.
[32] The exemplary broadcast network 114 may include a radio transmission of IP datacasting over DVB-H. The broadcast network 114 may broadcast a service such as a digital or analog television signal and supplemental content related to the service via transmitter 118. The broadcast network may also include a radio, television or IP datacasting broadcasting network. The broadcast network 114 may also transmit supplemental content which may include a television signal, audio and/or video streams, data streams, video files, audio files, software files, and/or video games. In the case of transmitting IP datacasting services, the service source 122 may communicate actual program content to user device 112 through the broadcast network 114 and additional information such as user right and access information for the actual program content through the cellular network 116. [33] The mobile device 112 may also contact the service source 122 through the cellular network 116. The cellular network 116 may comprise a wireless network and a base transceiver station transmitter 120. The cellular network may include a second/third-generation (2G/3G) cellular data communications network, a Global System for Mobile communications network (GSM), a Universal Mobile Telecommunications System (UMTS) or other wireless communication network such as a WLAN network.
[34] In one aspect of the invention, mobile device 112 may comprise a wireless interface configured to send and/or receive digital wireless communications within cellular network 116. The information received by mobile device 112 through the cellular network 116 or broadcast network 114 may include user selection, applications, services, electronic images, audio clips, video clips, and/or WTAI (Wireless Telephony Application Interface) messages. As part of cellular network 116, one or more base stations (not shown) may support digital communications with receiver device 112 while the receiver device is located within the administrative domain of cellular network 116.
[35] As shown in Figure 2, mobile device 112 may include processor 128 connected to user interface 130, memory 134 and/or other storage, and display 136. Mobile device 112 may also include battery 150, speaker 152 and antennas 154. User interface 130 may further include a keypad, touch screen, voice interface, one or more arrow keys, joy-stick, data glove, mouse, roller ball, touch screen, or the like.
[36] Computer executable instructions and data used by processor 128 and other components within mobile device 112 may be stored in a computer readable memory 134. The memory may be implemented with any combination of read only memory modules or random access memory modules, optionally including both volatile and nonvolatile memory. Software 140 may be stored within memory 134 and/or storage to provide instructions to processor 128 for enabling mobile device 112 to perform various functions. Alternatively, some or all of mobile device 112 computer executable instructions may be embodied in hardware or firmware (not shown). [37] Mobile device 112 may be configured to receive, decode and process digital broadband broadcast transmissions that are based, for example, on the Digital Video Broadcast (DVB) standard, such as DVB-H, DVB-T or DVB-MHP, through a specific DVB receiver 141. The mobile device may also be provided with other types of receivers for digital broadband broadcast transmissions. Additionally, receiver device 112 may also be configured to receive, decode and process transmissions through FM/AM Radio receiver 142, WLAN transceiver 143, and telecommunications transceiver 144. In one aspect of the invention, mobile device 112 may receive radio data stream (RDS) messages.
[38] In an example of the DVB standard, one DVB 10 Mbit/s transmission may have 200, 50 kbit/s audio program channels or 50, 200 kbit/s video (TV) program channels. The mobile device 112 may be configured to receive, decode, and process transmission based on the Digital Video Broadcast-Handheld (DVB-H) standard or other DVB standards, such as DVB-MHP, DVB-Satellite (DVB-S), DVB-Terrestrial (DVB-T) or DVB-Cable (DVB-C). Similarly, other digital transmission formats may alternatively be used to deliver content and information of availability of supplemental services, such as ATSC (Advanced Television Systems Committee), NTSC (National Television System Committee), ISDB-T (Integrated Services Digital Broadcasting - Terrestrial), DAB (Digital Audio Broadcasting), DMB (Digital Multimedia Broadcasting), FLO (Forward Link Only) or DIRECTV. Additionally, the digital transmission may be time sliced, such as in DVB-H technology. Time-slicing may reduce the average power consumption of a mobile terminal and may enable smooth and seamless handover. Time-slicing consists of sending data in bursts using a higher instantaneous bit rate as compared to the bit rate required if the data were transmitted using a traditional streaming mechanism. In this case, the mobile device 112 may have one or more buffer memories for storing the decoded time sliced transmission before presentation.
[39] In one example of the present invention, ESG fragments may be delivered to a subscriber terminal in one or more data streams or channels. In this example, a plurality of channels (such as IP-packet streams) can be used to deliver ESG information to the subscriber terminal. For example, the ESG fragment may provide the subscriber terminal with notification of upcoming events to be provided by a service provider, changes in current events provided by a service provider or updated or on-going information for a user or group of users.
[40] ESG fragments may be delivered in a transport object which may transport ESG information in a container. Thus, ESG fragments may be placed in a container that may be delivered in its own transport object. The container may further include a container header and a container payload, for example, in which the container header may provide information on where each container is located within the transport object. In one example, the transport object may contain a single container or a plurality of containers, each container including at least one ESG fragment. FIG. 3 is a diagram of an example transport object in accordance with at least one aspect of the present invention. As illustrated in the example of FIG. 3, a transport object 300 may comprise a container that may include a container header 310 and a container payload 320. In one example, the container header 310 and the container payload 320 are incorporated into a single container 305 which may be incorporated into a single transport object 300 so that the container header 310 need not be recombined with information regarding where each container is located within different transported objects. Alternatively, the transport object 300 may contain a plurality of containers and a container may contain any number of ESG fragments 340. The container header 310 may contain information associated with a corresponding ESG fragment such as, for example, information regarding the container header 310 itself and/or the container payload 320.
[41] In the example illustrated in FIG. 3, the ESG fragment 340 is contained in the container payload 320. The container header 310 may contain descriptors for identifying and describing ESG fragments in the corresponding container payload 320. Thus, the characteristics of the ESG fragment may be identified, such as but not limited to the position of the ESG fragment in the transport object 300 or the length of each contained ESG fragment 340. For example, in one embodiment, a field specifies where the particular ESG begins within the container payload 320 by providing, for example, an offset value, start and end points, or the like. In other embodiments, metadata 350 may be associated with the individual ESG fragments 340, located within or proximate to the header 310, descriptor entries, an ESG fragment 340 or a mixture thereof. In one exemplary embodiment, the association of a 3GPP metadata envelope with an ESG fragment 340 may substitute for, or negate the need of additional metadata to be located in the header 310 in relation to that particular ESG fragment.
[42] FIG. 4 illustrates an example of transmitting a plurality of single Transport Objects. As illustrated in Figure 4, the Transport Objects (TO) of the current invention may be carried in, for example, FLUTE (File Delivery over Unidirectional Transport) sessions, or a pure Asynchronous Layered Coding (ALC) session. In the example of FIG. 4, the ESG Root Channel data, such as IP Address, port number and Transport Session Identifier (TSI), are announced in the IP/MAC Notification Table (INT Table) which may be, for example, carried in the SI/PSI stream in DVB-H as one of the SI tables of DVB-H. The FLUTE session of the ESG Root Channel comprises a File Delivery Table (FDT) of the session and one or more Transport Objects (TO). These Transport Objects that may be delivered in announcement carousels contain mapping between the different parts of ESGs and access parameters to the different ESG methods in which the ESG data is transmitted. The ESGs may differ from each other. For example, ESGs may be in different languages, genres or encoding.
[43] Examples of access parameters may include, for example, IP Addresses, port numbers, TSIs, start and end times etc. The FLUTE session thus declares how the ESG data is distributed to different sessions. The TOs of the FLUTE session carrying this mapping data are described in the FDT of the FLUTE session. The ESG mapping data may be delivered in one or multiple TOs. The mapping can be made using XML Schema, plain ASCII text, Structured ASCII text such as multipart MIME or MIME headers, as binary with enumerated types or through various other means as is known in the art. The ESG data is in this example may be delivered in one or more TOs, which may be within pure ALC sessions, for example. The ESG data or parts of it may be delivered in some embodiments of the invention in one or more FLUTE sessions in addition to or instead of ALC sessions.
[44] The ESG may further contain a timestamp associated with a transmitted or received data stream. A Real-Time Protocol (RTP) timestamp is one such example of a timestamp. The timestamp may, for example, may indicate a time in which data may be presented or utilized. For example, an audio or video data stream may contain a timestamp representing the time that the data may be played. The time of presentation or display of the data associated with the timestamp may further be presented with respect to previously received data packets.
[45] A transmitted data stream may further contain parameters for describing the session. An example of such parameters includes session and/or decoding parameters that describe the corresponding session. These parameters may further be transmitted to receivers within SDP files which may, in turn, be grouped with other files within the ESG fragment. SDP files may be transmitted to a receiver in a variety of ways. For example, one way of transmitting SDP files is in a burst that is separate from the data stream. In this example, a time-slice for each service may be created that transports the parameters (e.g., service parameters) in an SDP file. The time-slice that transports the parameters may be separate but close to a burst or time-slice corresponding to the service. Thus, a receiver may receive the burst containing the parameters in an SDP file associated with a service in advance of receiving the separate time-slice burst transporting the service.
[46] In another example of transmitting an SDP file, the SDP file may be included in the same burst as the session. In this example, the SDP file may be included, for example, at the beginning of the time-slice burst for the service. In this way, a receiver or subscriber station receiving the service may receive the corresponding SDP file (and corresponding parameters) at approximately the same time as the service.
[47] The SDP file and corresponding parameters may be transmitted in an ESG fragment. The parameters in the SDP file may describe characteristics of the corresponding program or service including, for example, session name, purpose, time, type of media, format, transport protocol, port number, bandwidth requirements, etc. However, it may be difficult to effectively update parameters if changes or updates to the parameters are necessary. This may be particular problematic in the event of schedule changes because the exact moment of the parameter changes may not be known. Hence, because the precise time of the parameter (or program or service content) change might not be known, the corresponding program or service may become loaded at the wrong time or a receiver or subscriber terminal may be unable to play the program or service content.
[48] In one example of the present invention, a time of a desired parameter change associated with a transmitted program or service may be signaled in advance of the time the change is to be implemented. In this example, the time of a parameter change is signaled in a timestamp (e.g., RTP timestamps) of a media stream. The timestamp may be included, for example, in an SDP file which may be within an ESG fragment.
[49] The SDP file may thus provide session and parameter information as well as timing information corresponding to the program or service. As one example of an SDP file for providing such information, the SDP file may contain a parameter or information corresponding to an origin of the session which may include, for example, a name, a session identifier, an indication of a version of the session, an address of the origin, etc. The SDP file may also contain a parameter or identifier for a location of any information of interest. For example, the SDP file may contain a reference to a web page associated with the program or service. The SDP file may also contain a reference to an ESG fragment associated with the program or service.
[50] The SDP file may also contain other parameters or identifiers such as a destination address or a start time for a program or service. In this example, the corresponding program or service may become available after the indicated start time but may not be available prior to the indicated start time. The SDP file may also contain media- specific parameters.
[51] In an example of the present invention, the SDP file may further contain a parameter for a timestamp. For example, a parameter may be provided in the SDP file for indicating a time in which parameters are changed. The timestamp may be transmitted to a receiver as soon as a decision on the timestamp has been made and in advance of the parameter change time. Thus, in this example, when the exact time for the parameter change arrives, the new or changed parameters may be set as described herein. [52] Likewise, an ESG fragment containing a parameter for a timestamp may be received at a receiver or subscriber terminal. The parameter may be contained in an SDP file within the ESG fragment. In this example, after a data packet is received at the receiver or subscriber terminal, the timestamp in the ESG fragment may indicate a time that the corresponding program or service may be provided or played. The corresponding program or service may be associated with new (or changed) parameters which may be changed at the start time of the program or service. In this example, the ESG fragment contains a timestamp that signals the parameter change in advance of the time of the parameter change. Hence, even if the exact time of the parameter change is not known, the receiver or subscriber terminal may receive the parameter change information in advance. Also, the receiver or subscriber terminal may have internal delays such as buffering delays which may affect the precise time of the parameter change. In this example, the parameter change is signaled in advance such that the new or changed parameters may be loaded at the proper time.
[53] FIG. 5 illustrates an example of a system for creating an SDP file for signaling a time of a parameter change associated with a program or service. In this example, a service is created in the service creation module 501. The service may be created with associated parameters for describing the corresponding session. In this example, the service created may have multiple components including a video component and an audio component. As illustrated in the example of FIG. 5, the service may include multiple audio components or multiple video components. In this example, two audio components (502, 503) are provided in the service and one video component is provided (504). Each of the audio components are encoded in an audio encoder (505, 506) and the video component is encoded in a video encoder (507). Data packets corresponding to the service or media stream may be packetized in packetizers (508, 509, 510). There are many types of encoding that may be implemented. For example, if the original audio is in analog format, a digital encoding (e.g., Advanced Audio Coding (AAC), Adaptive Multi-Rate Wide-Band (AMR-WB) and/or MP3 (MPEG-2, layer 3)). Digitally encoded audio may be transcoded with different codecs and parameters. The resulting audion may have codec and parameters suitable for the terminals. In another example, a video signal is provided and the encoding may include, for example, H.264 or Moving Pictures Expert Group 4 (MPEG-4), Advanced Video Coding (AVC) or VC-I, to name a few. The resulting data packets may be transmitted to a receiver or subscriber terminal.
[54] Also, the service may have associated session information. As one example of session information, the service may have a corresponding expected duration of usage. Any description of the session associated with the service may be described as one or more parameters which may be included in a corresponding SDP file. An SDP file corresponding to the service may be created at the SDP creator module 511. The SDP creator module may receive the corresponding parameters from the service creation module 501 and may incorporate the parameters in an SDP file. The SDP creator module 511 may send the SDP file to a receiver or subscriber terminal. The SDP file may be incorporated in an ESG fragment. As set forth above, the SDP file may be transmitted in the same burst as program or service information or may be transmitted in a separate burst.
[55] The time when the new parameters are to be used in this example is added to the SDP file. The SDP file thus created may be sent to a receiver or subscriber terminal. At the indicated time, the parameters may be updated or changed accordingly. The parameters may be changed and sent to the SDP creator module 511 from the encoders (505, 506, 507). Also, a corresponding timestamp may be sent to the SDP creator module 511 at the time of the parameter change.
[56] FIG. 6 illustrates an example of a receiver or subscriber terminal receiving an ESG fragment containing an SDP file. In this example, the SDP file received at the receiver or subscriber terminal may contain parameters associated with a program or service. The program or service may be associated with parameters that may change based on various factors such as but not limited to duration of the session or time of start of a session. In this example, the ESG fragment is received and the SDP information is detected at the SDP manager module 601. Also, data packets associated with the program or service may be received at an unpacketizer (602, 603, 604) which may transmit the data packets to decoders (605, 606, 607). The decoders (605, 606, 607) may further receive parameters from the SDP manager module 601. The received parameters may describe a corresponding program or service. Also, a timestamp and/or buffering information may be received at the SDP manager module 601 from the unpacketizers (602, 603, 604).
[57] In one example of the present invention, session and parameter information and timing information for describing a precise time for a parameter change associated with a program or service is provided in an SDP file. FIG. 7 illustrates an example of an SDP file for transporting parameters corresponding to a program or service. In this example, the SDP file may contain different fields or lines for providing desired information. For example, a typical SDP file may contain an "o" line for providing an origin of the session for the program or service. This line may include a name, a session ID, a version and an address of the origin as illustrated in the example of FIG. 7. In addition, the SDP file may contain a "u" line for providing an identifier or a location of additional information. This may include, for example, a reference to a web page or ESG fragment associated with or describing the program or service. The SDP file may further contain a "c" line for providing a destination address. This destination address may describe the location where the data stream is to be delivered. A "t" line may also be provided for providing traditional coarse timing information. This traditional coarse timing information may be a decimal representation of Network Time Protocol (NTP) and may provide a time at which a session may be available. This field may provide timing information to an accuracy of one second.
[58] The SDP file as illustrated in FIG. 7 may also include an "m" line which may provide any media-specific parameters associated with the program or service. The media-specific parameters provided in the SDP file may be multiple and may continue from an "m" line to the end of the SDP file or may continue to a subsequent "m" line. Media-specific parameters may include any parameters for describing characteristics of the program or service. This may include, for example, parameters for indicating audio encoding, video encoding, etc. Examples of media- specific parameters include IP address and port, encoding (codec), sampling frequency, bit rate, mode (e.g., mono, stereo, etc), to name a few.
[59] As illustrated in the example of FIG. 8, a timestamp parameter is provided in the SDP file. The timestamp in this example is an RTP timestamp for providing an exact start time of the corresponding program or service. In the example illustrated in FIG. 8, the RTP timestamp is named startRtpStamp and is provided with an exemplary value of 12345678. In this example, an extended SDP file is illustrated including a description of video parameters including a startRtpStamp RTP timestamp.
[60] FIG. 9 illustrates an example of an extension of an SDP file for describing audio parameters including a startRtpStamp exemplary timestamp. In the examples illustrated in FIGS. 7, 8, and 9, an SDP file with the timestamp parameters as described (e.g., a video timestamp parameter of 12345678 and an audio timestamp parameter of 12345432), a receiver or subscriber terminal receiving the SDP file may utilize the coarse timing parameter "t" as an approximation of the time of commencement of the program or service.
[61] FIG. 10 illustrates the example of FIGS. 7, 8, and 9 in which new parameters may be sent to the receiver or subscriber terminal in the SDP file. In this example, a new session version is indicated. The new session version data may indicate that the SDP contains new information. In this example, the SDP file contains new information including new information in the "u" line for indicating an address for additional information corresponding to the ESG fragment. Also, the "t" line (i.e., coarse timing information) has been updated in this example as will as various media- specific parameters.
[62] After an exact time for a parameter change is known, an updated SDP file may be provided. FIG. 11 illustrates an example of an updated SDP file after the exact time stamp of a parameter change is known. In this example, the session version is updated as well as the timestamp parameter.
[63] FIG. 12 illustrates another example of one aspect of the invention. In this example, a timestamp is included in an ESG fragment for providing a time at which a parameter describing a program or service in an ESG fragment may change or may be updated. The timestamp may be included in an SDP file within an ESG fragment. As illustrated in FIG. 12, a receiver or a subscriber terminal may receive a data packet containing a timestamp (STEP 1201). The receiver may also receive a timestamp in an SDP file in an ESG fragment signaling a time for a change in parameters associated with the corresponding program or service (STEP 1202). The receiver may compare the timestamp in the data packet to the timestamp received in the SDP file indicating a time for a parameter change (STEP 1203). If the timestamp in the data packet is less than the timestamp in the SDP file indicating a time for a parameter change ("NO" branch of STEP 1203), then the receiver may wait as the timestamp in subsequent data packets may increase. If the timestamp in the data packet is greater than or equal to the timestamp in the SDP file indicating a time for a parameter change ("YES" branch of STEP 1203), then the time for the parameter change has been reached and the new parameters may be loaded (STEP 1205). Additionally, the receiver may estimate a processing delay (STEP 1204) and wait the proper amount of time prior to loading the new parameters. One example of a processing delay may include a buffering delay.
[64] FIG. 13 is a timing diagram illustrating another example. In this example, an encoder produces a data stream at time t(0). The initial data stream may include an ESG fragment containing parameters describing the session. The parameters may be within an SDP file in the ESG fragment. The parameters have initial values and may include a timestamp parameter, RTP(O) as illustrated. The data stream may be transmitted to a receiver or subscriber terminal as illustrated in FIG. 13. In this example, the receiver/terminal receives the data stream with the initial parameters at time t(0) when the data stream is transmitted in the network. As described above, the data stream may contain the timestamp parameter (e.g., RTP(O)).
[65] At time t(l), which is later than time t(0), a change in parameters in the SDP file or ESG fragment may be desired at some time. In this example, the new parameters may be determined but the time of implementation of the new parameters may not have been decided. For example, an exact time of a new program or an end of a current program or service may not have yet been determined at time t(l) so that the time for implementation of the corresponding new parameter is not known at time t(l). Examples of new parameters include, for example, schedule information or validity information. Hence, in this example, the receiver/terminal receives the new parameters beginning at time t(l) via the network. However, at time t(l), the time for implementation of the new parameters is not yet known so the receiver/terminal does not load the new parameters at this time. Rather, the receiver/terminal loads the current parameters which are currently valid. The new parameters or future parameters may be available but may not be designated as valid at this time.
[66] At time t(2) in this example (later than time t(l)), the precise time for the parameter change is determined and the parameters in the SDP file or ESG fragment may be updated accordingly. In this example, the timestamp parameter in the SDP file in the ESG fragment may be updated to indicate the time for the parameter change. The timestamp parameter is updated at time t(2) and sent to the receiver/terminal. In this example, the time for the parameter change is time t(3) which is after time t(2). Hence, the data stream received at the receiver/terminal at time t(2) contains a timestamp parameter indicating time t(3) as the time for the parameter change. At this time, the receiver/terminal continues to load the current parameters because the time for the parameter change (i.e., time t(3) in this example) has not yet occurred.
[67] Thus, as described, the receiver/terminal receives the ESG fragment and SDP in this example containing the timestamp parameter indicating the exact time for the parameter change (e.g., RTP(I) in this example) at time t(2). Also at this time, the receiver/terminal receives the new parameters with the timestamp RTP(I) indicating the precise time for implementation of the new parameters. Thus, the time for the parameter change in the ESG fragment is indicated by the timestamp parameter in the SDP file in the ESG fragment as RTP(I) in this example. The new parameters may be implemented at time t(3) at the receiver/terminal based on the timestamp RTP(I) received in the ESG fragment. For example, when the timestamp in a received data packet is greater than or equal to the timestamp RTP(I) received in the ESG fragment (i.e., t(3) is reached), the new parameters are set to the encoders and the receiver/terminal sets the new parameters in the decoder.
[68] FIG. 14 illustrates timing diagrams of another example. In this example, data or RTP packets are transmitted from a transmitter to a receiver or subscriber terminal. Each of the RTP packets contains an RTP timestamp for indicating a time of the RTP packet. In addition, SDP files are transmitted to the receiver/terminal. As FIG. 14 illustrates in this example, the SDP file, SDP currl, is transmitted to the receiver/terminal and contains parameter set 1 for describing a corresponding session. The parameters in SDP currl are valid for the current RTP packet stream. In this example, each of the RTP timestamps in the RTP packet stream is compared to the timestamp parameter in SDP currl. At this time, the timestamp parameter in SDP currl is less than the timestamp in the RTP packet stream.
[69] SDP nextl represents an SDP file transmitted when a parameter change is determined to occur. SDP nextl is transmitted prior to the time that the parameter change is to occur as illustrated in FIG. 14, however, the precise time of the parameter change may not be known at this time. SDP nextl may also contain the new parameter set (i.e., parameter set 2 in this example) and coarse timing information for providing an approximate time of the parameter change. At a subsequent time, the precise time of the parameter change may be determined. In this example, after the precise time of the parameter change is determined, SDP next 1.1 is transmitted that contains the exact time information. For example, SDP nextl.1 may contain an updated timestamp parameter for indicating the precise time of the parameter change. Any number of updates to the time for parameter change may be made. For example, additional SDP files subsequent to SDP nextl.1 may be transmitted with additionally updated timestamp information as the precise time of the parameter change may be changed. Alternatively, the precise time of the parameter change may be known initially and the updated RTP timestamp indicating the precise time may be included in the SDP nextl SDP file.
[70] At the time of the parameter change, the timestamp in the RTP packet stream may be compared to the timestamp parameter in the SDP file (in this example, SDP next 1.1). The timestamp in the RTP packet stream being less than or equal to the timestamp parameter in the SDP file may indicate to the receiver/terminal that the time for the parameter change has been reached. At this time, the receiver/terminal may be informed from the timestamp information which parameter set is current. Because the time of the parameter change has been reached, parameter set 2 is now the current parameter set in the present example. In another example, there may be different versions of the parameters and the different versions of parameter sets may overlap in time. There are many ways of determining the proper parameter set when different versions exist. For example, a version number may be associated with SDP files or parameter sets in SDP files. In one example, the highest version number indicates the current parameter set. Alternatively, additional information may indicate the current parameter set such as information corresponding to an ESG fragment.
[71] In the present example illustrated in FIG. 14, the new parameter set (parameter set 2) is loaded after the time of the parameter change. Hence, SDP curr2 contains the new parameter set 2. If a subsequent parameter change is desired, SDP next2 may be transmitted that may contain the exact time for the second parameter change. SDP next 2 may further include coarse timing information for indicating an approximate time for the parameter change. When the precise time for the parameter change is known, the timestamp parameter may be updated in the SDP file and SDP next2 may be transmitted. In this example, SDP next 2 may include the next set of parameters. When the time for the second parameter change is reached (e.g., based on comparison of the timestamps in the RTP packet stream with the timestamp parameters in the SDP files), the next parameter set may be implemented.
[72] The present invention includes any novel feature or combination of features disclosed herein either explicitly or any generalization thereof. While the invention has been described with respect to specific examples including presently preferred modes of carrying out the invention, those skilled in the art will appreciate that there are numerous variations and permutations of the above described systems and techniques. Thus, the spirit and scope of the invention should be construed broadly as set forth in the appended claims.

Claims

We claim:
1. A method for transmitting parameters for describing a session of a program or service, the method comprising: receiving a timestamp corresponding to a time for updating a parameter corresponding to the program or service; inserting the timestamp in a Session Description Protocol (SDP) file; transmitting the SDP file.
2. The method of claim 1 wherein transmitting the SDP file comprises transmitting the SDP file in an Electronic Service Guide (ESG) fragment.
3. The method of claim 1 wherein the timestamp is a Real-Time Protocol (RTP) timestamp.
4. The method of claim 1 wherein the timestamp corresponds to a precise time for updating the parameter.
5. A method for changing a first set of parameters corresponding to a session of a program or service to a second set of parameters, the method comprising: receiving a data packet corresponding to the program or service, the data packet including a time of the data packet; receiving a Session Description Protocol (SDP) file, the SDP file comprising a first timing information corresponding to a time for changing the first set of parameters; and changing the first set of parameters based on the first timing information and the time of the data packet.
6. The method of claim 5 wherein the changing comprises comparing the first timing information to the time of the data packet and updating the first set of parameters based on the comparing.
7. The method of claim 6 wherein the SDP file comprises the second set of parameters.
8. The method of claim 7 wherein the updating comprises loading the second set of parameters if the first timing information is greater than or equal to the time of the data packet.
9. The method of claim 5 further comprising estimating a processing delay wherein the changing step includes updating the first set of parameters after the processing delay has elapsed.
10. The method of claim 5 wherein the SDP file comprises the second set of parameters and the step of changing comprises loading the second set of parameters at a receiver.
11. The method of claim 5 wherein the first set of parameters comprises at least one of an origin of a session, a name of a session, a version, an address, an identifier, a location of additional information, a destination address, coarse timing, schedule information, validity information, or a media-specific parameter.
12. The method of claim 5 wherein the time of the data packet comprises a Real-Time Protocol (RTP) timestamp.
13. The method of claim 5 wherein the SDP file comprises the first set of parameters and the step of receiving the SDP file comprises receiving the SDP file at a current time, the current time being prior to a time corresponding to the first timing information.
14. The method of claim 13 wherein the SDP file comprises the second set of parameters prior to the time corresponding to the first timing information, the second set of parameters corresponding to the changed first set of parameters.
15. The method of claim 13 further comprising receiving the second set of parameters at the current time.
16. The method of claim 13 wherein the SDP file comprises the second set of parameters after the current time.
17. The method of claim 14 further comprising loading the second set of parameters at a receiver at or after the time corresponding to the first timing information.
18. A transmitter for transmitting parameters for describing a session of a program or service comprising: an Session Description Protocol (SDP) module for creating an SDP file; an encoder for transmitting a data packet corresponding to the program or service, wherein the SDP file comprises a first set of parameters at a first time and a second set of parameters and a time parameter at a second time, the second time being subsequent to the first time, wherein the time parameter indicates when the second set of parameters are valid.
19. The transmitter of claim 18 wherein the time parameter indicates a third time corresponding to when the second set of parameters are valid, the third time being subsequent to the second time.
20. The transmitter of claim 19 wherein the SDP file comprises the second set of parameters between the second time and the third time.
21. A receiver for receiving parameters corresponding to a session of a program or service comprising: an SDP manager for receiving an SDP file, the SDP file comprising a first set of parameters corresponding to the session of the program or service and a time parameter; a decoder for decoding a data packet corresponding to the program or service, the data packet comprising a timestamp, wherein the SDP manager loads the first set of parameters into the decoder when the time parameter is greater than or equal to the timestamp.
22. The receiver of claim 21 wherein the SDP manager loads the first set of parameters into the decoder after a delayed period of time after the timestamp.
23. The receiver of claim 22 wherein the period of time corresponds to a buffering delay.
24. The receiver of claim 21 wherein the SDP manager receives the timestamp from the decoder and compares the timestamp to the time parameter received in the SDP file.
25. The receiver of claim 21 wherein the timestamp comprises a Real Time Protocol (RTP) timestamp.
26. The receiver of claim 21 wherein the SDP file comprises the first set of parameters at a first time, the first time corresponding to the time indicated by the timestamp and being less than the time indicated by the time parameter.
27. The receiver of claim 26 wherein the SDP file comprises the time parameter at the first time.
28. A computer-readable medium having computer-readable instructions that when executed perform the steps of: receiving a data packet corresponding to a program or service at a receiver, the data packet including a time of the data packet; receiving a Session Description Protocol (SDP) file, the SDP file comprising a first set of parameters and a first timing information corresponding to a time for loading the first set of parameters at a receiver; and loading the first set of parameters at the receiver based on the first timing information and the time of the data packet.
29. The computer-readable medium of claim 28 wherein the first set of parameters is loaded at the receiver when the time of the data packet is greater than or equal to the first timing information.
30. The computer-readable medium of claim 29 wherein the SDP file comprises the first set of parameters prior to a time corresponding to the timing information.
PCT/IB2006/003268 2005-12-16 2006-11-16 Codec and session parameter change WO2007069009A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008545123A JP2009519654A (en) 2005-12-16 2006-11-16 Change codec and session parameters
EP06820920A EP1961217A4 (en) 2005-12-16 2006-11-16 Codec and session parameter change

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/304,639 US20070168534A1 (en) 2005-12-16 2005-12-16 Codec and session parameter change
US11/304,639 2005-12-16

Publications (2)

Publication Number Publication Date
WO2007069009A2 true WO2007069009A2 (en) 2007-06-21
WO2007069009A3 WO2007069009A3 (en) 2007-09-27

Family

ID=38163277

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2006/003268 WO2007069009A2 (en) 2005-12-16 2006-11-16 Codec and session parameter change

Country Status (6)

Country Link
US (1) US20070168534A1 (en)
EP (1) EP1961217A4 (en)
JP (1) JP2009519654A (en)
KR (1) KR100978050B1 (en)
CN (1) CN101529895A (en)
WO (1) WO2007069009A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1871092A2 (en) * 2006-06-20 2007-12-26 Samsung Electronics Co., Ltd. Method and system for providing esg in a digital video broadcasting system
WO2011161603A2 (en) * 2010-06-21 2011-12-29 Nokia Corporation Method and apparatus for changing the configuration of an ongoing streaming session
EP3063943A4 (en) * 2013-11-01 2017-06-21 LG Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
CN110099088A (en) * 2018-01-31 2019-08-06 国广融合(北京)传媒科技发展有限公司 A kind of system adaptive recognition method based on fusion Transmission system

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE0402876D0 (en) * 2004-11-25 2004-11-25 Ericsson Telefon Ab L M TV-like standards-compliant unicast streaming over IP
FR2880716A1 (en) * 2005-01-13 2006-07-14 Gemplus Sa CUSTOMIZATION OF SERVICE IN A TERMINAL DEVICE
US7624417B2 (en) * 2006-01-27 2009-11-24 Robin Dua Method and system for accessing media content via the internet
WO2007089108A1 (en) * 2006-02-01 2007-08-09 Samsung Electronics Co., Ltd. Method and apparatus for transmitting and receiving notification message in a mobile broadcast system
CN100571438C (en) * 2006-02-22 2009-12-16 华为技术有限公司 The method of subscribing purchasing object in the mobile broadcast and multicast service
US20070260674A1 (en) * 2006-05-02 2007-11-08 Research In Motion Limited Push framework for delivery of dynamic mobile content
KR101419287B1 (en) * 2006-07-07 2014-07-14 삼성전자주식회사 Apparatus and method for providing IPDC service and apparatus and method for processing IPDC service
KR100800857B1 (en) * 2006-08-18 2008-02-04 삼성전자주식회사 Method for providing notification message in dvb-h system and the system therefor
EP1901455B1 (en) * 2006-09-18 2018-10-31 Samsung Electronics Co., Ltd. Digital video broadcasting system, digital video broadcasting terminal, and method for providing file information in file download service
KR100810359B1 (en) * 2006-09-19 2008-03-04 삼성전자주식회사 Method for transmitting notification data in dvb-h system and the system therefor
US8046479B2 (en) * 2006-11-07 2011-10-25 Telefonaktiebolaget Lm Ericsson (Publ) Media channel management
US7903574B2 (en) * 2007-03-15 2011-03-08 Nokia Corporation Service discovery mechanism in broadcast telecommunication network
EP2171891A1 (en) * 2007-06-01 2010-04-07 Thomson Licensing Apparatus and method for performing power management in a receiver
KR101461958B1 (en) * 2007-06-29 2014-11-14 엘지전자 주식회사 Digital broadcasting system and method of processing data in digital broadcasting system
KR101429767B1 (en) * 2007-09-21 2014-08-19 삼성전자주식회사 Method for transmitting and receiving electronic service guide and digital broadcasting system therefor
CN100550860C (en) * 2007-11-27 2009-10-14 华为技术有限公司 Media resource reservation method and business packet information getting method and device
WO2011075670A1 (en) * 2009-12-18 2011-06-23 Google Inc. Matching encoder output to network bandwidth
US9712891B2 (en) * 2011-11-01 2017-07-18 Nokia Technologies Oy Method and apparatus for selecting an access method for delivery of media
US9608893B2 (en) * 2012-02-27 2017-03-28 The Boeing Company Methods and systems for parsing data objects
US9544641B2 (en) * 2012-05-10 2017-01-10 Humax Co., Ltd. Hybrid transmission method through MMT packet format extension
US9258287B2 (en) * 2012-12-20 2016-02-09 Broadcom Corporation Secure active networks
WO2015129181A1 (en) * 2014-02-28 2015-09-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Voice communication terminal, intermediate node, processing device, connection method, and program
KR101880468B1 (en) * 2014-10-12 2018-07-20 엘지전자 주식회사 Device for transmitting broadcast signal, device for receiving broadcast signal, method for transmitting broadcast signal, and method for receiving broadcast signal
GB2540946B (en) * 2015-07-31 2019-12-11 Imagination Tech Ltd Estimating processor load

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100450176C (en) * 2001-12-11 2009-01-07 艾利森电话股份有限公司 Method of rights management for streaming media
US20030211856A1 (en) * 2002-05-08 2003-11-13 Nokia Corporation System and method for facilitating interactive presentations using wireless messaging
GB2390785B (en) * 2002-07-12 2005-10-19 Nokia Corp Information service broadcasting or multicasting
US9485044B2 (en) * 2002-12-18 2016-11-01 Nokia Technologies Oy Method and apparatus of announcing sessions transmitted through a network
CN100583880C (en) * 2003-02-26 2010-01-20 Nxp股份有限公司 System for broadcasting multimedia content
US20040260827A1 (en) * 2003-06-19 2004-12-23 Nokia Corporation Stream switching based on gradual decoder refresh
US8145120B2 (en) * 2003-10-27 2012-03-27 Nokia Corporation Apparatus, system, method and computer program product for service selection and sorting
KR20060104995A (en) * 2003-10-27 2006-10-09 노키아 코포레이션 Apparatus, system, method and computer program product for service selection and sorting
GB2407745A (en) * 2003-10-28 2005-05-04 Nokia Corp Method of providing an electronic service guide in a datacasting system
US20050283535A1 (en) * 2004-06-17 2005-12-22 Michele Covell Method and system for interactive control of media over a network
US7827579B2 (en) * 2004-09-09 2010-11-02 Nokia Corporation Mobile television electronic service guide delivery system
US7613112B2 (en) * 2005-06-28 2009-11-03 Nokia Corporation Optimizing playback startup time of bursty real-time streams
WO2007050259A2 (en) * 2005-10-21 2007-05-03 Thomson Licensing Method and apparatus for audio and video synchronization timestamp rollover correction

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of EP1961217A4 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1871092A2 (en) * 2006-06-20 2007-12-26 Samsung Electronics Co., Ltd. Method and system for providing esg in a digital video broadcasting system
EP1871092A3 (en) * 2006-06-20 2009-11-11 Samsung Electronics Co., Ltd. Method and system for providing esg in a digital video broadcasting system
WO2011161603A2 (en) * 2010-06-21 2011-12-29 Nokia Corporation Method and apparatus for changing the configuration of an ongoing streaming session
WO2011161603A3 (en) * 2010-06-21 2012-06-28 Nokia Corporation Method and apparatus for changing the configuration of an ongoing streaming session
EP3063943A4 (en) * 2013-11-01 2017-06-21 LG Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
US10313716B2 (en) 2013-11-01 2019-06-04 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
US10652598B2 (en) 2013-11-01 2020-05-12 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
US11070858B2 (en) 2013-11-01 2021-07-20 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
CN110099088A (en) * 2018-01-31 2019-08-06 国广融合(北京)传媒科技发展有限公司 A kind of system adaptive recognition method based on fusion Transmission system

Also Published As

Publication number Publication date
US20070168534A1 (en) 2007-07-19
KR100978050B1 (en) 2010-08-25
EP1961217A2 (en) 2008-08-27
JP2009519654A (en) 2009-05-14
KR20080073330A (en) 2008-08-08
CN101529895A (en) 2009-09-09
EP1961217A4 (en) 2011-02-09
WO2007069009A3 (en) 2007-09-27

Similar Documents

Publication Publication Date Title
KR100978050B1 (en) Codec and session parameter change
US8316132B2 (en) Method to determine the completeness of a service guide
US8763036B2 (en) Method for indicating service types in the service guide
EP1941724B1 (en) Notification as a service or as an access to a service
US9331802B2 (en) Identifying scope ESG fragments and enabling hierarchy in the scope
US20060123099A1 (en) Enhanced electronic service guide container
US7870377B2 (en) Automatic electronic-service-guide selection
US20070123244A1 (en) Declaring Terminal Provisioning with Service Guide
US20070240189A1 (en) Utilizing presence service for service discovery in mobile broadcast
EP1861999A1 (en) Implicit signaling for split-toi for service guide
US20070053291A1 (en) Optimized Broadcast of ESG with Simple Fragment Management Scheme
CA2619930A1 (en) Mapping between uri and id for service guide
AU2005311013A1 (en) Enhanced electronic service guide container
US20070298756A1 (en) Optimized acquisition method
US20060123097A1 (en) Enhanced electronic service guide container

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200680050457.7

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006820920

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020087014185

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2008545123

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

WWP Wipo information: published in national office

Ref document number: 2006820920

Country of ref document: EP