Embodiments relate generally to communications networks. More specifically, embodiments relate to Open System Interconnection (OSI) Layer 1 (physical layer) (L1) and OSI Layer 2 (data link layer) (L2) information.
Digital broadcast or multicast networks enable end users to receive digital content including video, audio, and data. A receiver device may receive a transport stream carrying digital content over a wireless digital broadcast network. The transport stream carries individual elements of the service such as audio, video and data components. The receiver device locates the different components of a particular program or service by processing Program Specific Information (PSI) or Service Information (SI) embedded in the transport stream.
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.
Example embodiments may be directed to systems and methods for receiving a baseband frame comprising one or more Layer 2 signaling sections and an encapsulation protocol packet encapsulating: a service discovery real time transport protocol packet, and a real time transport protocol packet comprising at least one physical layer pipe transporting at least one service component for at least one service, wherein the one or more Layer 2 signaling sections include a service list comprising one or more service names each associated with a respective physical layer pipe identifier of the at least one physical layer pipe; processing the one or more Layer 2 signaling sections to obtain the service list; determining a desired service name of the one or more service names, the desired service name being associated with a first service component of the at least one service component; and identifying a first physical layer pipe identifier associated with the desired service name to initiate decoding of the first service component.
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:
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.
Digital content sources 204 may provide digital services (for example, programs, channels, content, etc.) to a transmitter, which may be, for example, a head end system 206 for broadcasting to one or more mobile terminals 210. Head end system 206 may incorporate the digital services into a transport stream carrying baseband frames or baseband superframes. A baseband superframe may be composed of a predetermined number of baseband frames. The transport stream may be a data stream transporting fixed length packets. The transport stream may carry audio, video and data components of each service. The head end system 206 may forward one or more transport streams to digital broadcast tower 208 (or other physical transmission component) for wireless transmission to one or more mobile terminals 210.
The digital broadcast transmission of the baseband frames may be time sliced, such as in DVB-H technology. Time-slicing may reduce the average power consumption of the mobile terminal 210 and may enable smooth and seamless handover. Time-slicing may entail 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 terminal 210 may have one or more buffer memories for storing the decoded time sliced transmission before presentation. To reduce the amount of time required for the mobile terminal 210 to discover available services being broadcast, the head end system 206 may employ an improved protocol for the baseband frames that reduces protocol overhead.
The mobile terminal 210 may be configured to do service discovery without accessing and/or decoding Electronic Service Guide (ESG) metadata. Conventionally, DVB systems require accessing and decoding of the ESG prior to accessing services. The services described herein may be accessed and rendered directly due to the baseband frames 314 carrying the information for opening the service inband within the services themselves and partially outband in L2 and L1 signaling. Thus, accessing and decoding of the ESG prior to accessing services may be avoided.
The baseband frame 314 may include signaling data 302 to permit the mobile terminal 210 to discover available services and to decode their corresponding service components 304. Examples of signaling data 302 include L1 and L2 signaling information in a DVB system. The signaling data 302 includes parameters to enable the mobile terminal 210 to process received baseband frames to discover and decode available services being broadcast. The signaling data 302 may be provided within an L2 signaling section 306 and/or within a service discovery real-time transport protocol (SDRTP) packet 308.
The signaling data 302 may contain similar data to that carried in Open Mobile Alliance Broadcast (OMA-BCAST) signaling.
Service components 304 may be encapsulated into one or more real-time transport protocol (RTP) packets 310, such as RTP packets in accordance with Request for comment (RFC) 3550, titled “RTP: A Transport Protocol for Real-Time Applications,” July 2003, the contents of which are hereby incorporated by reference in their entirety. Examples of service components 304 include video components (for example, base layer and enhancement layer for scalable video coding (SVC)), audio components, data components, subtitles, and any further data or metadata.
The RTP packets 310 and SDRTP packets 308, but not the L2 signaling section 306, are further encapsulated within Minimal Encapsulation Protocol (MEP) packets 312. MEP is minimal due to carrying only the minimum information needed by the mobile terminal 210 to decapsulate RTP streams from MEP packets 312. The L2 signaling section 306 may be carried in a dedicated physical layer pipe (PLP) 402 and identified by a table identifier table_id 522, discussed below, and hence do not need to be encapsulated with MEP. The L2 signaling section 306 and the MEP packets 312 are then encapsulated in one or more baseband frames 314.
The service components 304 for a particular broadcast or multicast service may be assigned to one or more physical layer pipes (PLP) 402 within the MEP packet 312. This assignment may be done by a network head-end, multiplexer, IP encapsulator, or similar equipment. A PLP 402 may be a physical layer TDM channel that is carried by one or more time subslices of the baseband frame 314.
Initially, the mobile terminal 210 may present the available services listed in the service list 502 for user selection. The mobile terminal 210 may then identify a MEP packet 312 transporting service components 304 associated with a selected service. The mobile terminal 210 may then process the SDRTP packet 308 contained in the MEP packet 312 to extract information for decoding the service components 304 associated with the selected service.
With reference to
The service list 502 may specify a service name 504 for each available service being broadcast. The service name 504 may be information presented to aide a user in selecting a service of interest. A service name 504 may be, for example, ‘News’ for a news service/channel, ‘Sports’ for a sports channel, etc. Each service name 504 may have an associated service_id 506 that is a unique identifier for the service. The service_id 506 is associated with one or more physical layer pipe identifiers PLP_id 508_1 to 508—n uniquely identifying the respective PLPs 402-1 to 402-n within a baseband frame 314 that transport service components 304 of a particular service. For example, in
In
In
Referring again to
The MEP packet encapsulates service components of a particular PLP. In
In
In
In
The mobile terminal 210 may use the information carried in the SDRTP packet 308 to re-construct UDP and IP packets to enable a distribution of the service and/or service components to other modules via a specific protocol. The mobile terminal 210 may re-construct headers for UDP/IP packets and hence function as an encapsulator to transmit the data onward with the UDP/IP protocol. The re-construction is possible due to the parameters signaled and assigned to particular services within the SDRTP packet 308.
A services module 1002 may receive one or more services from a digital content source 204 and split the services into one or more service components 304. A service mapping module 1004 may perform preliminary scheduling to create the L1 signaling packet 512 and the L2 signaling section 306, which includes the service list 502, for the services and service components and to allocate time slices in the baseband frame 314 to one or more PLPs 402.
An encapsulation of Signaling and Service Data (ESSG) module 1006 may encapsulate the service components 304 in RTP to form one or more RTP packets 310. The ESSG module 1006 may then encapsulate the RTP packets 310 and the SDRTP packet 308 using the minimal encapsulation protocol (MEP) to form the MEP packets 312. The ESSG module 1006 then may encapsulate the L2 signaling section 306 and the MEP packet 312 to form a baseband frame 314. A scheduler module 1008 may then schedule one or more baseband frames 314 for transmission. A MUltipexor (MUX) module 1010 may multiplex the baseband frames 314 to form a superframe 316 and a modulator module 1012 may cause transmission of a digital broadcast transmission signal carrying the superframe 316 to the mobile terminal 210.
Computer executable instructions and data used by processor 128 and other components within mobile terminal 210 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 for enabling mobile terminal 210 to perform various functions. Some or all of mobile terminal 210 computer executable instructions may be embodied in hardware or firmware.
A digital broadcast receiver 141 of the mobile terminal 210 may be configured to receive, decode and process digital broadcast transmissions that are based, for example, on a digital video broadcast standard, such as DVB-H, DVB-T, or the like. The mobile terminal 210 may also be provided with other types of receivers for digital broadcast transmissions. Additionally, mobile terminal 210 may also be configured to receive, decode and process transmissions through FM/AM Radio receiver 142, WLAN transceiver 143, and telecommunications transceiver 144.
In block 1302, the method may include generating signaling data 302.
In block 1304, the method may include encapsulating the signaling data 302 in a L2 signaling section 306 and in an SDRTP packet 308.
In block 1306, the method may include encapsulating one or more service components 304 in one or more RTP packets 310.
In block 1308, the method may include encapsulating the RTP packet 310 and the SDRTP packet 308 in an MEP packet 312.
In block 1310, the method may include encapsulating the L2 signaling section 306 and the MEP packet 312 in a baseband frame 314.
In block 1312, the method may include causing transmission of the baseband frame 314 via a network. The method may then end.
These steps may be performed by the structures shown in
In block 1402, the method may include seeking for a signal. In an example embodiment, the signal may be a radio frequency signal carrying baseband frames 314. The baseband frame 314 may include a plurality of physical layer pipes 402 transporting a plurality of service components 304 for a plurality of services.
In block 1404, the method may include determining whether the signal has been found. If not found, the method may return to block 1402 to continue seeking for the signal. If found, the method may continue to block 1406.
In block 1406, the method may include processing the signal to identify a baseband frame 314 including L1 and L2 signaling information. For example, the mobile terminal 210 may process the signal to identify header synchronization information in the baseband frame 314 process the baseband frames 314 to identify the L2 signaling section 306 and the SDRTP packet 308. The L2 signaling section 306 may include a service list 502 comprising a plurality of service names 504 each associated with a respective physical layer pipe identifier 508 of the plurality of physical layer pipes 402. The L1 signaling information may be carried within an L1 signaling packet 512 of the baseband frame 314.
In block 1408, the method may include determining whether all of the L1 and L2 signaling information has been received. For example, the L1 signaling packet 512 and the L2 signaling section 306 may indicate how much L1 and L2 signaling information there is to permit the mobile terminal 210 to determine whether all of the L1 and L2 signaling information has been received. If not all has been received, the method may return to block 1406; otherwise, the method may continue to block 1410.
In block 1410, the method may include presenting service names 504 from the service list 502 for user selection. The service names 504 may be defined, for example, by a content provider or a mobile operator.
In block 1412, the method may include determining whether the desired service that may be selected by a user is available. In an example embodiment, the mobile terminal 210 may present to the user at display 136 the service names 504 of each service available on the service list 502. If a desired service is not available, the method may continue to block 1414, and if available, the method may continue to block 1416.
In block 1414, the method may include prompting a user whether to exit service discovery. In an example embodiment, the mobile terminal 210 may prompt to the user via display 136 to exit service discovery and the user may supply user input. If the user input indicates a desire by the user to exit service discovery, the method may proceed to block 1420 and end. If the user input indicates a desire not to exit, the method may return to block 1410.
In block 1416, the method may include identifying a PLP_id 508 of a PLP 402 carrying a service component 304 associated with the selected service name 504 to initiate decoding of the service component 304.
In block 1418, the method may include proceeding to MEP and SDRTP discovery for decoding of the encapsulated service component 304. For example, the mobile terminal 210 may initiate accessing and decoding of the MEP packet 312 and the SDRTP packet 308. The method may then proceed to block 1420 and end.
In block 1502, the method may include identifying the MEP packet 312 corresponding to the PLP_id 508 associated with a selected service name 504.
In block 1504, the method may include inspecting component loop length 702 to identify the service component 304 of the MEP packet 312 carrying the SDRTP packet 308.
In block 1506, the method may include decoding the service component 304 carrying the SDRTP packet 308 to identify the service discovery metadata 520 for decoding the service components 304 of the service associated with the selected service name 504.
In block 1508, the method may include decoding the service components 304. For example, the mobile terminal 210 may identify the service components 304 based on their location within the baseband frame 314 specified in the MEP packet 312. The mobile terminal 210 may then apply the service discovery metadata 520 to determine how to decode the service components 304 of the desired service.
In block 1510, the method may include rendering the decoded service components 304 as one or more services. The method may then end.
One or more aspects of the above examples may be embodied in computer-executable instructions, such as in one or more program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device. The computer executable instructions may be stored on a computer readable medium such as a hard disk, optical disk, removable storage media, solid state memory, RAM, etc. As will be appreciated by one of skill in the art, the functionality of the program modules may be combined or distributed as desired in various embodiments. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGA), application specific integrated circuits (ASIC), and the like.
While embodiments have 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.