This application claims the benefit, under 35 U.S.C. §365 of International Application PCT/EP2010/058082, filed Jun. 9, 2010, which was published in accordance with PCT Article 21(2) on Dec. 16, 2010 in English and which claims the benefit of European patent application No. 09305524.2, filed Jun. 10, 2009.
The present invention relates to data communication, and more particularly, relates to a method for providing multicast services.
An Electronic Programme Guide (EPG) or Interactive Programme Guide (IPG) or Electronic Service Guide (ESG) is a digital guide to multicast and broadcast programs, typically displayed on-screen with functions allowing a viewer to navigate, select, and discover content (also called program, channel, service) by time, title, channel, genre, etc. by use of their remote control, a keyboard, or other input devices such as a phone keypad. The on-screen information may be delivered by a dedicated channel or assembled by the receiving equipment from information sent by each program channel.
By navigating through an ESG on a receiving device, users can see more information about the current program and about future programs. Typical elements of an ESG comprise a graphical user interface which enables the display of program titles, descriptive information such as a synopsis, actors, directors, year of production, and so on, the channel name and the programs on offer from subchannels such as pay-per-view and VOD (video-on-demand) services, program start times, genres and other descriptive metadata.
The ESG information is typically displayed on a grid with the option to select more information on each program. The ESG allows viewers to browse program summaries, to search by genre or channel, immediate access to the selected program, reminders, and parental control functions.
The ESG is typically sent within a broadcast transport stream, or in a special data channel alongside it. Of course, it can also be multicast to a selected groups of client devices. For example, The ATSC (American Television Standards Committee) standard for DTV (digital TV) uses tables sent in each station's PSIP (program and system information protocol). Herein, the PSIP is the protocol used for carrying metadata about each channel in the broadcast transport stream of a TV station and for publishing information about television programs so that viewers can select what to watch by title and description. Further, these tables are capable of containing the program start time and title, and additional program descriptive “metadata”.
In the broadcast network, all channels are always existent (or called available) on wire or wireless medium, thus the latency of channel changing is usually small. However, in a multicast network, upon a channel change request, the Internet Group Management Protocol (IGMP) is used to leave the current channel and join the selected channel. The IGMP is a communication protocol used to manage the membership of Internet Protocol multicast groups. The IGMP is used by a client device and its adjacent multicast routers to establish multicast group memberships when the client intends to join a multicast channel.
Further, U.S. Pat. No. 6,563,830 discloses multicast registration of all multicast flows in an asynchronous transfer mode based emulated LAN, and in the application, it briefs the IGMP snooping.
WO2005045603 discloses a method for service selection and sorting. Specifically, service is attached with a type of a group comprising subscribed and unsubscribed. In order to facilitate a user to distinguish subscribed services from services of other types, the list of services is modified, e.g. highlighting subscription items, based on locally stored information concerning the accessibility of services (i.e. being stored in the user terminal) and user's service accessibility setting or input.
It is desirable to reduce the average time for tuning to a program.
According to an aspect of present invention, it provides a method for providing a service guide in a network providing a plurality of multicast services, said network comprising at least one client device connected to an intermediate device, wherein a subset of said plurality of multicast services is being multicast to said at least one client device via said intermediate device, and the service guide provides a list of the plurality of multicast services in a second order; and at the side of a client device, the method comprises the steps of determining a list of the plurality of multicast services in a first order, wherein the order is changed from the second order to the first order based on the multicast services of the subset; and presenting said list of multicast services in said first order.
According to the aspect of present invention, it reduces average time for tuning to a multicast service.
It is to be understood that more aspects and advantages of the invention will be found in the following detailed description of the present invention.
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate embodiment of the invention together with the description which serves to explain the principle of the invention. Therefore, the invention is not limited to the embodiment. In the drawings:
The embodiment of the present invention will now be described in detail in conjunction with the drawings. In the following description, some detailed descriptions of known functions and configurations may be omitted for clarity and conciseness.
An embodiment of present invention described below is placed in a wireless network that provides multicast services.
In the step 201, a user device establishes a relationship with a server, for example, by establishing a connection with the server. The connection may be a TCP connection, a UDP connection etc. Other types of connections could also be used. The connection is used to convey service contents and/or signals. There are two kinds of servers in the mobile TV network, i.e. the service management server for managing the ESG and its delivery, and the streaming server for streaming programs to user devices. Here, the server in relationship with the user device is the service management server. In this embodiment, the service management server and the streaming server are incorporated into a single server device.
After the establishment of the relationship, the user device receives a server announcement, i.e. channel guide information comprising a list of channels and information for accessing these channels in the step 202. For example, the channel guide information is in the form of an ESG. The ESG can be used to navigate the channels. The
In the step 203, the user device obtains information about channels currently being multicast within the receiving coverage of the user device, which is normally equal to the channels being multicast by the access device, such as a base station as shown in the
In the step 401, the user device sets the filter of the user device to snoop multicast packets. It is known to a person skilled in the art that the network card driver can be configured to or programmed to receive all packets, or certain packets satisfying some conditions, such as the destination address is equal to a certain value. In this example, the user device is configured to only receive the multicast data packets whose destination address belongs to multicast group addresses contained in an ESG received in the step 201, so as to avoid the calculation burden caused by the unicast packets or other irrelevant multicast packets, such as a multicast service not contained in the ESG.
In the step 402, the user device collects multicast packets according to the multicast group addresses of services in the ESG. To be specific, the user device captures all multicast packets and analyzes destination addresses thereof. The filter is used to make sure packets whose destination address belong to multicast group addresses of services are collected.
In the step 403, the user device determines available channels based on the collected multicast packets, i.e. the channels are determined based on the destination addresses of the collected packets. The determined channels are the channels currently being multicast within the receiving coverage of the user device, and they are also deemed as the channels being multicast by the access device.
Other methods can also be used for determining the channels being multicast within the receiving coverage of the user device. For example, the filter is set to collect all packets including unicast packets and multicast packets, and then the multicast addresses contained in the ESG are used to match the destination addresses of the collected packets. In this way, the channels being multicast within the receiving coverage of the user device can also be determined.
Alternatively, due to contents of these channels that are all available through the wireless access point (i.e. the wireless access point is currently receiving content of these channels from one or more servers), the user device may derive a list of channels currently available through the wireless access point. The list of channels is, for example, sent to the user device through a message.
In the step 204, the user device generates reordered channel guide information based on the received service announcement from the step 202 and available channel information from the step 203. Assuming the channels with identifiers of m, j and k are currently being multicast by the wireless access point, the
In the step 205, the user device sends an instruction for requesting a selected channel upon the user's selection of a channel among the reordered channel guide information.
In the step 206, the user device receives content of requested channel.
In addition, the steps 203 and 204 are periodically carried out while the user views a channel, so that the channel guide information displayed on the user device is dynamically updated. Alternatively, the channel guide information is dynamically updated by receiving an update message about channel guide information from the wireless access point, the update message is sent when the availability of channels on wireless access point changes. For example, a channel changes from available state to unavailable state, and vice versa.
According to a variant of the present embodiment, instead of steps of 202, 203 and 204, the wireless access device itself generates the reordered channel guide information based on the information about channels being multicast by itself, and transmits the reordered channel guide information to the user device through a message.
Since the users within coverage of a wireless access point that are very likely to view the same or similar channels related to the location of the user device, e.g. the user in or by a shopping mall is likely to view the advertisement or discount information of this shopping mall, such channels of great interest are presented at the top of the channel list so that the user can easily select them. In addition, users are prone to select the channel at the top of the channel list. So the time period for tuning to or changing to any one of the channels that are available in the wireless access point is shorter than other channel that is unavailable because obtaining the content of an unavailable channel introduces additional time for requesting the new channel from the server as shown in
Furthermore, the user device can generate a list of available channels from the whole list of channels for channel surfing based on the result of the step 203.
Upon receiving an instruction for surfing, the user device displays the channels within available channel list one by one in the step 601.
In the step 602, the user device determines if an instruction for surfing the rest of the channels is received. Herein, the rest channels are channels that are unavailable in the wireless access point.
Upon receiving an instruction for surfing the rest, the user device displays the rest of the channels one after another in the step 603.
According to a variant of the present embodiment, the user device still uses the original single list with an added field in the list, the field being used to indicate whether the corresponding channel is currently available or not.
Because a user is likely to find a channel of interest during the surfing of available channels, it's sometimes unnecessary to surf the unavailable channels so that the overall time used for channel changing including sending leave/join IGMP messages by the wireless access point is reduced.
According to a variant of the present embodiment, the method can be used in a wired network wherein the user device is in wired connection with the network. The user device can obtain a list of channels available in the adjacent router or switcher by snooping the packets when its network card set to promiscuous mode. Besides, the list can also be informed by the adjacent router or switcher.
The ESG receiver 701 is configured to receive channel guide information from a server and store it in the global table 702;
The Snooping module 704 is configured to snoop multicast packets based on the channel guide information stored in the global table 702 or detect multicast service information presented in physical-layer frame (e.g. Although in IEEE 802.16e wireless network, the multicast frame is used to carry the multicast packets in the physical layer and the multicast frames of unselected multicast services are discarded at physical layer, yet the multicast service information of unselected multicast services can be detected in a frame, e.g. by modifying the physical driver protocol, before the frame is discarded) so as to generate a list of available channels, and store information about the list of available channels into the local table 703; and
The ESG render 705 is configured to present the channels based on the received channel guide information and generated available channel list, wherein, the available channels is presented at the top of the presentation list.
According to the present embodiment, the apparatus for providing a multicast service contains the device 700 for rendering the EPG. In addition, the apparatus may further comprise a channel surfing module. The channel surfing module is configured to surf channels by changing channels one after another in such a manner that the available channels are presented prior to the displays of unavailable channels. Moreover, a prompt of “whether or not to surf the unavailable channels” can be added between the displays of available channels and unavailable channels. In this case, only upon the positive response, the channel surfing module surfs the unavailable channels.
A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. For example, elements of different implementations may be combined, supplemented, modified, or removed to produce other implementations. Additionally, one of ordinary skill will understand that other structures and processes may be substituted for those disclosed and the resulting implementations will perform at least substantially the same function(s), in at least substantially the same way(s), to achieve at least substantially the same result(s) as the implementations disclosed. Accordingly, these and other implementations shall fall in the scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
09305524 | Jun 2009 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2010/058082 | 6/9/2010 | WO | 00 | 12/8/2011 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2010/142722 | 12/16/2010 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5623489 | Cotton et al. | Apr 1997 | A |
6442598 | Wright et al. | Aug 2002 | B1 |
6563830 | Gershon et al. | May 2003 | B1 |
6839757 | Romano et al. | Jan 2005 | B1 |
7149772 | Kalavade | Dec 2006 | B1 |
7549160 | Podar et al. | Jun 2009 | B1 |
7681680 | Ishikawa et al. | Mar 2010 | B2 |
7873710 | Kiley et al. | Jan 2011 | B2 |
7912485 | Sinnarajah et al. | Mar 2011 | B2 |
8374172 | Jana et al. | Feb 2013 | B2 |
8804720 | Rainovic et al. | Aug 2014 | B1 |
8893174 | Parker et al. | Nov 2014 | B2 |
20050177853 | Williams et al. | Aug 2005 | A1 |
20050201321 | Sinnarajah et al. | Sep 2005 | A1 |
20050204042 | Banerjee et al. | Sep 2005 | A1 |
20050265374 | Pelt | Dec 2005 | A1 |
20050289589 | Vermola | Dec 2005 | A1 |
20060117342 | Park et al. | Jun 2006 | A1 |
20060155850 | Ma et al. | Jul 2006 | A1 |
20060156370 | Parantainen | Jul 2006 | A1 |
20070204312 | Wheelock | Aug 2007 | A1 |
20070232221 | Miyata | Oct 2007 | A1 |
20080198847 | Yamagishi et al. | Aug 2008 | A1 |
20080276276 | Lim et al. | Nov 2008 | A1 |
20090100467 | Cake | Apr 2009 | A1 |
20090113476 | Vogel | Apr 2009 | A1 |
20090144768 | Nagaraja | Jun 2009 | A1 |
20090307719 | Clark et al. | Dec 2009 | A1 |
20100014661 | Terekhova et al. | Jan 2010 | A1 |
20100180314 | Kim et al. | Jul 2010 | A1 |
Number | Date | Country |
---|---|---|
1335018 | Feb 2002 | CN |
1839650 | Sep 2006 | CN |
101120597 | Feb 2008 | CN |
101141588 | Mar 2008 | CN |
101299805 | Nov 2008 | CN |
101322407 | Dec 2008 | CN |
101404780 | Apr 2009 | CN |
1901457 | Mar 2008 | EP |
2001036834 | Feb 2001 | JP |
2003143587 | May 2003 | JP |
2007124177 | May 2007 | JP |
2007274650 | Oct 2007 | JP |
2008125033 | May 2008 | JP |
2008199541 | Aug 2008 | JP |
2006115423 | Nov 2006 | KR |
2006099765 | Jul 2007 | KR |
WO0040017 | Jul 2000 | WO |
WO2005032128 | Apr 2005 | WO |
WO2005045603 | May 2005 | WO |
WO2008029230 | Mar 2008 | WO |
WO2008044142 | Apr 2008 | WO |
WO2008119436 | Oct 2008 | WO |
Entry |
---|
Search Report: Aug. 9, 2010. |
Jieun Lee, et al., “Advanced Scheme to Reduce IPTV Channel Zapping Time,” Proceedings 10th Asia-Pacific Network Operations and Management Symposium, APNOMS 2007. (Lecture Notes in Computer Science vol. 4773), 235-243. |
Number | Date | Country | |
---|---|---|---|
20120084815 A1 | Apr 2012 | US |