EP2335413A1 - A peripheral device for communication over a communications system - Google Patents

A peripheral device for communication over a communications system

Info

Publication number
EP2335413A1
EP2335413A1 EP09782558A EP09782558A EP2335413A1 EP 2335413 A1 EP2335413 A1 EP 2335413A1 EP 09782558 A EP09782558 A EP 09782558A EP 09782558 A EP09782558 A EP 09782558A EP 2335413 A1 EP2335413 A1 EP 2335413A1
Authority
EP
European Patent Office
Prior art keywords
network
peripheral device
data packets
client
user interface
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
EP09782558A
Other languages
German (de)
French (fr)
Other versions
EP2335413B1 (en
Inventor
Kaido Kert
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Skype Ltd Ireland
Original Assignee
Skype Ltd Ireland
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
Priority claimed from GB0816278A external-priority patent/GB2463107A/en
Priority claimed from GB0816279.4A external-priority patent/GB2463108B/en
Priority claimed from GB0816280.2A external-priority patent/GB2463109B/en
Priority claimed from GB0816275A external-priority patent/GB2463104A/en
Priority claimed from GB0816276A external-priority patent/GB2463105A/en
Priority claimed from GB0816271A external-priority patent/GB2463103A/en
Priority claimed from GB0816281.0A external-priority patent/GB2463110B/en
Application filed by Skype Ltd Ireland filed Critical Skype Ltd Ireland
Publication of EP2335413A1 publication Critical patent/EP2335413A1/en
Application granted granted Critical
Publication of EP2335413B1 publication Critical patent/EP2335413B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • 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/41Structure of client; Structure of client peripherals
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/418External card to be used in combination with the client device, e.g. for conditional access
    • H04N21/4183External card to be used in combination with the client device, e.g. for conditional access providing its own processing capabilities, e.g. external module for video decoding
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • 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/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Definitions

  • This invention relates to a peripheral device for communication in a communications system.
  • Packet-based communication systems allow the user of a device, such as a personal computer (PC), to communicate across a computer network such as the Internet.
  • Packet-based communication systems include voice over internet protocol (“VoIP”) communication systems. These systems are beneficial to the user as they are often of significantly lower cost than fixed line or mobile networks. This may particularly be the case for long-distance communication.
  • VoIP voice over internet protocol
  • the user installs and executes client software on their device.
  • the client software provides the VoIP connections as well as other functions such as registration and authentication.
  • the client may also provide further features such as video calling, instant messaging (“IM”), voicemail and file transfer.
  • IM instant messaging
  • P2P peer-to-peer
  • P2P client software provided by a P2P software provider on their computer
  • P2P system the client software is provided with a digital certificate from a server.
  • communication can subsequently be set up and routed between users of the P2P system without the further use of a server.
  • the users can establish their own communication routes through the P2P system based on the exchange of one or more digital certificates (or user identity certificates, "UIC”), which enable access to the P2P system.
  • UICC user identity certificates
  • the exchange of the digital certificates between users provides proof of the users' identities and that they are suitably authorised and authenticated in the P2P system. Therefore, the presentation of digital certificates provides trust in the identity of the user. It is therefore a characteristic of peer-to-peer communication that the communication is not routed using a server but directly from end-user to end-user. Further details on such a P2P system are disclosed in WO 2005/009019.
  • a user's device may include input means such as a microphone and/or a camera to capture data (such as audio and/or video data) from the user, and output means such as a speaker and/or a display to convey data to the user (such as audio and/or video data).
  • the user's device typically also includes the communication client software which is executed on a processor of the device, and means for connecting to the communication system, such as a network interface. In this way the user's device typically includes all of the components necessary to communicate over the network.
  • firewall software executed on the processor of the device, or on the gateway of a Local Area Network (LAN) to block the user from downloading certain types of software onto the device.
  • LAN Local Area Network
  • a user may purchase a device with the communication client preinstalled on the processor of the device and it may not be possible to download updated versions of the communication client.
  • the user's device typically includes all of the components necessary to communicate over the network, if it is desired to replace one component with a new or upgraded version of the component then it is necessary to replace the whole device including all of the other components.
  • the quality of each individual component in the device is often lower than the quality of corresponding components in devices that are dedicated to performing the function of the component in question.
  • the display and speakers of the user's device may be of lower quality than the display and speakers of a device whose primary purpose is to display pictures and to play sounds to a user, such as a television.
  • the cost of the user's device including all of the components necessary to communicate over the P2P system may be relatively high, when compared to other devices which may be used for communicating in different ways. In some cases the increased cost of the user's device may put off some users from purchasing the device, as they may be content to use other forms of communication that are available. A reduction in new users to the P2P communication system may detract from the popularity of the P2P communication system, which in turn may reduce the desirability of the P2P communication system for existing users of the P2P system.
  • Updated versions of the communication client may be released from time to time. Due to the relatively high cost of the user's device and the need to replace all of the components necessary to communicate over the P2P system, the user may decide not to update his communication client every time an updated version is released. It is desirable for the users of the communication system to have the most up to date version of the communication client as this will give the users the benefit of the latest advances and should provide greater user satisfaction.
  • a method of communicating over a network using a first device and a peripheral device the first device comprising a user interface and a network interface for connecting to the network, the peripheral device having a local connection to the first device, the local connection being independent of the network, the method comprising: receiving data packets from the network at the network interface of the first device; forwarding the received data packets from the first device to the peripheral device via the local connection; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; and sending processed data packets from the peripheral device to the first device via the local connection such that data contained in the received data packets is conveyed to a user of the first device using the user interface of the first device.
  • a system for communicating over a network comprising: a first device having a local connection to a peripheral device, the local connection being independent of the network, the first device comprising: user interface means; network interface means for connecting to the network and for receiving data packets from the network; means for forwarding the received data packets from the first device to the peripheral device via the local connection; and means for receiving processed data packets from the peripheral device via the local connection such that data contained in the received data packets is conveyed to a user of the first device using the user interface means; and the peripheral device comprising: means for receiving the received data packets from the first device via the local connection; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection.
  • a peripheral device for communicating over a network, the peripheral device comprising: means for receiving data packets from a first device via a local connection that is independent of the network, the data packets originating from the network; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection, the processed data packets being for conveying data contained in the received data packets to a user of the first device.
  • a method of communicating over a network using a first device and a peripheral device the first device comprising a user interface and a network interface for connecting to the network, the peripheral device having a local connection to the first device that is independent of the network, the method comprising: receiving data at the peripheral device; encoding the received data at the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending the processed data packets from the peripheral device to the first device via the local connection; and forwarding the received data packets from the first device to the communication network via the network interface.
  • a method of establishing a bidirectional communication over a network using a first device and a peripheral device the first device comprising a user interface, the peripheral device comprising a network interface for connecting to the network and a local connection to the first device that is independent of the network, the method comprising: receiving data packets from the network at the network interface of the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending processed data packets from the peripheral device to the first device via the local connection; and decoding the data at the first device such that data contained in the received data packets is conveyed to a user of the first device using the user interface of the first device; and wherein the method further comprises: receiving data at the peripheral device; encoding the received data at the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending the processed data packets from the peripheral device to the first device via the local connection;
  • a system for communicating over a network comprising: a first device having a local connection to a peripheral device, the local connection being independent of the network, the peripheral device comprising: network interface means for connecting to the network and for receiving data packets from the network; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection, the first device comprising: means for receiving the processed data packets from the peripheral device; means for decoding the processed data packets; and user interface means for conveying data contained in the processed data packets to a user of the first device.
  • Figure 1 shows a packet-based communication system
  • Figure 2a shows a television of a first embodiment
  • Figure 2b shows a television of another embodiment
  • Figure 2c shows a television of a further embodiment
  • Figure 3 shows a webcam of a preferred embodiment
  • Figure 4 shows a flowchart of a process for receiving and displaying data
  • Figure 5 shows a flowchart of a process for capturing and sending data
  • Figure 6 shows a user interface of a communication client
  • Figure 7 shows a packet-based communication system according to a second embodiment
  • Figure 8 shows a flowchart of a process for receiving and displaying data according to the second embodiment
  • Figure 9 shows a packet-based communication system according to a further embodiment.
  • FIG. 1 illustrates a packet-based communication system 100 according to an embodiment of the present invention.
  • a first user of the communication system (named “Tom Smith" 102 in figure 1 ) is associated with a device 104, which is shown connected to a network 106.
  • the communication system 100 utilises a network such as the Internet.
  • the device 104 is a television.
  • the device 104 may be, for example, a mobile phone, a personal digital assistant ("PDA”), a personal computer (“PC”) (including, for example, WindowsTM, Mac OSTM and LinuxTM PCs), a gaming device or other embedded device able to connect to the network 106.
  • the television 104 has a user interface which is capable of outputting information to a user 102 of the device through for example a display 118 and speakers 120.
  • a peripheral device 108 is connected to the television 104 using a local connection 124, which may be a wired connection such as a Universal Serial Bus (USB) connection using USB protocol, or may alternatively be a wireless connection such as a Bluetooth connection.
  • USB Universal Serial Bus
  • connection 124 is "local" in the sense that it is not a network connection using the network 106. Indeed the local connection 124 is separate from the network 106. In other words the local connection 124 is independent of the network 106. In fact, the peripheral device 108 might not have a direct connection to the network 106. If the peripheral device 108 does have a direct connection to the network 106, it does not use the direct connection for communication with the main device 104.
  • the television 104 can connect to the communication network 106 via additional intermediate networks not shown in Figure 1.
  • the device 104 is a mobile device, then it can connect to the communication network 106 via a cellular mobile network (for example a GSM or UMTS network).
  • a cellular mobile network for example a GSM or UMTS network.
  • the television 104 and the peripheral device 108 are used within the vicinity of the user 102, such that data can be conveyed to the user 102 through the television 104, and data can be captured from the user 102 by the peripheral device 108 using for example a camera 122 to capture image or video data and a microphone to capture audio data.
  • the peripheral device 108 has a communication client 110 embedded within it which is provided by the software provider.
  • the communication client 110 is a software program executed on a processor in the peripheral device 108.
  • the peripheral device executes a client engine of the communication client 110 in order to communicate with other users of the network (such as the user 112 called "Kevin Jackson" in figure 1 ).
  • the peripheral device 108 is a web camera (webcam).
  • the peripheral device may be an alternative data capture device such as a microphone, or a processor dedicated to running the client engine of the communication client.
  • a client user interface 212 installed on the television is configured to provide an interface for the user 102 to receive information from, and to provide information to the client engine.
  • the webcam 108 can connect to the network 106 via the television 104. Therefore the webcam 108 does not require a separate, direct connection to the network 106.
  • FIG. 2a illustrates a detailed view of the television 104.
  • the television 104 comprises a central processing unit (“CPU") 202, to which is connected a display 118 such as a screen, and speakers 120.
  • the display 118 and the speakers 120 are integrated into the television 104.
  • at least one of the display 118 and the speakers 120 may not be integrated into the device 104 and may be connected to the CPU 202 via respective interfaces (e.g. a USB interface).
  • a remote controller may be connected to the CPU 202 via an interface (not shown).
  • the CPU 202 is connected to a network interface 204 such as a modem for communication with the network 106.
  • the CPU 202 is connected to a local connection interface, such as a USB interface or a Bluetooth interface 206 for communication with the peripheral device 108.
  • the CPU 202 may be connected to various other input or output devices through the I/O interface 208.
  • the network interface 204, local connection interface 206 and I/O interface 208 may be integrated into the device 104 as shown in Figure 2a. In alternative devices 104 at least one of the network interface 204, local connection interface 206 and I/O interface 208 are not integrated into the device 104.
  • FIG 2a also illustrates an operating system ("OS") 210 executed on the CPU 202.
  • OS operating system
  • the operating system 210 manages the hardware resources of the television and handles data being transmitted to and from the network via the network interface 204.
  • a television application 214 which is used to allow the device 104 to operate as a conventional television.
  • a decoder 216 is used to decode broadcast television video data.
  • the decoder 216 may also be used to decode encoded video data received from the client engine 312 as described in more detail below.
  • FIG. 3 illustrates a detailed view of the webcam 108.
  • the webcam 108 comprises a central processing unit (“CPU") 302, to which is connected input means such as a camera 122 and a microphone 304 for capturing data from the user.
  • the camera 122 and the microphone 304 are integrated into the webcam 108.
  • the CPU 302 is connected to a local connection interface, such as a USB interface or a Bluetooth interface 306 for communication with the device 104.
  • the local connection interface 306 may be integrated into the webcam 108 as shown in Figure 3.
  • one or more of the camera 122, microphone 304 and local connection interface 306 are not integrated into the peripheral device 108.
  • Figure 3 also illustrates an operating system ("OS") 308 executed on the CPU 302.
  • OS operating system
  • the client protocol layer 314 of the client software communicates with the operating system 308 and manages the connections over the P2P communication system. Processes requiring higher level processing are passed to the client engine layer 312.
  • the client engine 312 may be arranged to control the client user interface layer 212 of the device 104 to present information to the user.
  • the client user interface layer 212 of the device 104 is used to interact with the user 102. For example, the user will interact with the client user interface 212 to initiate and answer calls.
  • Instructions are transmitted between the client user interface layer 212 of the device 104 and the client engine layer 312 of the peripheral device 108 over the local connection 124 to allow the user to interact with the client 110, For example, when a call request is received at the client engine 312 of the peripheral device 108 via the network interface 204 of the device 104 from another user (e.g. "Kevin Jackson" 112) of the network 106 requesting that a call is established with the user 102, the client engine 312 sends an instruction over the local connection 124 to the client user interface 212 of the device 108 to instruct the client user interface 212 to ask the user 102 whether to accept the call. The user 102 can input a response to the client user interface 212 to either accept or reject the call.
  • another user e.g. "Kevin Jackson" 112
  • the response is sent to the client engine 312 over the local connection 124 and the client engine 312 will either accept or reject the incoming call accordingly.
  • the user 102 if the user 102 would like to initiate a call with another user of the network 106 (for example user 112) then the user 102 can input a call request to the client user interface 212 at the device 104.
  • the call request is transmitted to the client engine 312 of the peripheral device 108 over the local connection 124.
  • the client engine 312 can then send the call request to a device 1 14 of the user 112 over the network 106 via the local connection 124 and the network interface 204 of the device 104 to set up the call.
  • the operating system 308 manages the hardware resources of the peripheral device 108 and handles data being transmitted to and from the device 104 via the local connection interface 306. Also running on top of the OS 308 is a voice encoder 310, a voice decoder 320 and a video encoder 316. The encoders 310 and 316 may be used to encode data as described in more detail below.
  • the users 102 (“Tom Smith”) and 112 (“Kevin Jackson”) are users of the P2P communication system.
  • the user 112 (“Kevin Jackson”) may want to send data, such as audio and video data, to the user 102 ("Tom Smith") through the network 106.
  • a call set up request message is transmitted from a communication client 116 of device 114 operated by user 1 12 to the client engine 312 of device 104.
  • the client engine 312 instructs the client user interface 212 to display an incoming call notification to the user 102 at device 104.
  • the user 102 can accept the call by interacting with the client user interface 212. If the user accepts the call a call accept message is transmitted from the client engine to the device 114.
  • step S402 data packets are transmitted from the communication client 116 to the television 104 via the network 106.
  • step S402 the data packets are received at the television 104.
  • the data packets are received via the network interface 204 of the television 104.
  • the received data packets are routed to the local connection interface 206 of the television 104.
  • step S404 the received data packets are forwarded to the webcam 108 over the local connection 124.
  • the data packets are received at the local connection interface 306 of the webcam 108.
  • the data packets are routed to the CPU 302 of the webcam 108.
  • the client engine 312 is executed on the CPU 302 of the webcam 108 in order to handle the data packets in accordance with protocols of the P2P communication system.
  • the received data packets may contain for example textual, image, video and/or audio data.
  • the client engine 312 decrypts the data in the data packets, identifies the type of data retrieved from the data packets and provides the data to the appropriate module. For example, encoded video data is provided to the video decoder 216, encoded audio data is provided to the audio decoder 320 and textual data is provided to the IM (instant messaging module) 318.
  • IM instant messaging module
  • the data contained in the data packets is intended to be conveyed to the user 102 then the data is sent from the webcam 108 to the television 104 using the local connection 124 via the local connection interface 306 of the webcam 108 and the local connection interface 206 of the television 104.
  • encoded video data received from the client engine is decoded by the video decoder 216 located in the television, as shown in Figure 2.
  • encoded video data is sent via the local connection from the client engine to the video decoder 216 of the television CPU 202 for decoding, thus minimising the bandwidth requirements of the local connection.
  • the decoded video data may be conveyed to the user 102 using the client user interface 212 of the television 104 through the display 118.
  • encoded audio data received from the client engine is decoded by the voice decoder 320 located in the webcam. Since audio data transmitted from the television is also encoded in the webcam, acoustic echo cancellation may be applied to the transmitted audio data based on the decoded received audio data.
  • the method described above allows data received from the network 106 to be conveyed to the user 102.
  • step S502 data is captured from the user 102 at the webcam 108.
  • the captured data may be video or image data captured using the camera 122 of the webcam 108.
  • the captured data may be audio data captured using the microphone 304.
  • the peripheral device 108 may allow textual data to be captured from the user 102 using for example a keypad of the peripheral device 108.
  • step S504 The captured voice data and video data are encoded by the voice encoder 310 and the video encoder 316 respectively. Encoded data packets are output from the voice and video encoders.
  • the client engine 312 running on the operating system 302 of the webcam 108 handles the encoded data packets according to the requirements and protocols of the P2P communication system on which the data will be transmitted. As described above, in preferred embodiments, the webcam 108 is not directly connected to the network 106.
  • step S508 the captured data packets are sent to the television 104 using the local connection 124 which is distinct from the network 106, and then the data packets are forwarded from the television 104 to the network using the network interface 204 of the television 104. In this way, the webcam 108 is configured to use the network interface 204 of the television to send data captured from the user 102 to the network 106.
  • the webcam 108 includes the video encoder 316 and the television 104 includes the video decoder 216. Therefore video data sent between the webcam 108 and the television 104 on the local connection 124 is always encoded.
  • User interface instructions are sent from the television CPU 202 to the webcam 108 via the local connection 124.
  • User interface notifications are sent from the client engine 312 of the webcam 108 to the user interface 212 of the television via the local connection 124.
  • driver software is stored on the peripheral device.
  • the operating system 202 of the television 104 retrieves a driver suitable for the operating system from the peripheral device 108 and sets up the network configuration.
  • the client user interface 212 may be stored on the peripheral device together with the driver software.
  • the operating system of the device 104 may be arranged to retrieve the client user interface 212 together with the driver when the peripheral device is attached.
  • a client user interface API Application Programming Interface
  • the operating system of the device 104 may be arranged to retrieve the client user interface API 213 together with the driver when the peripheral device is attached.
  • the client user interface API 213 provides an interface between the client engine 312 and a user interface 212'.
  • the client user interface 212 may be preinstalled on the device and form part of the user interface of the television application 214.
  • the client user interface API 213 is executed on the CPU of the device 104 and is arranged to provide an interface between a user interface 212' of the television application 214 and the client engine 312.
  • the client user interface API is arranged to recognise inputs from the user interface 212' of the television application 214 and to control the client engine accordingly, for example a notification that the red button of a remote control is pressed may be provided to the client user interface API 213.
  • the client user interface API 213 may be arranged to interpret this notification as a request for the contact list to be displayed.
  • the client user interface API may instruct the client engine to provide the contact list via the local connection to the client user interface API 213.
  • the client user interface API In response to receiving the contact list at the client user interface API 213, the client user interface API is arranged to provide a text list of the user's contact list that can be interpreted by the user interface 212' of the television application 214. The user may then scroll up and down the list to select a contact that the user wishes to call using the controls of the remote control. Actuation of another function button of the remote control, for example the blue button, may be interpreted by the client user interface API that the user wishes to place a call to the selected contact.
  • the client user interface 212' may be provided by a webpage. This embodiment will now be described with reference to Figure 2c and Figure 9.
  • the operating system of the user device 104 is arranged to retrieve driver software for the peripheral device 108 from the memory of the peripheral device 108.
  • the client user interface API 213 is provided together with the driver software to the device 104. As shown in Figure 2c the client user interface API 213 is executed on the CPU of the device.
  • the client user interface API is arranged to access the web server 113 shown in Figure 9 via the network interface 204.
  • the client user interface API is further arranged to download a user interface application 212' from the web server 1 13.
  • the user interface application may be a Java programme which may be downloaded to the CPU of the device without being blocked by firewalls on the device 104.
  • the user interface 212' may be displayed on the display 118 of the device 104 and used to communicate with the client engine via the client user interface API.
  • Executing the client engine 312 on a peripheral device (such as the webcam 108) attached to a device (such as the television 104) has several advantages over a system in which the client engine is executed on the device 104 itself.
  • Executing the client engine 312 on the peripheral device 108 means that it is not necessary to install a client engine in the processor of the device 104.
  • the user 102 can use the communication client simply by connecting the peripheral device 108 to the device 104.
  • the user may nevertheless use the device to communicate via the communication system by connecting the device to the peripheral device.
  • the user may connect the peripheral device to communicate via the communication system using the user interface of the device.
  • updated versions of the communication client engine may be used without having to purchase a new television 104. Users are likely to already have televisions, with the primary use being for watching (and listening to) television programs. The quality of the display and the speakers of existing televisions is high (when compared to the display and speakers of a device which is to be used primarily as a communication device).
  • the user may therefore prefer to use the display and speakers of the television to convey data that is received from the network 106.
  • existing televisions are often capable of connecting to the network 106 through a network interface (e.g. network interface 204). Therefore a user who owns a television (such as television 104) already has in his possession some of the components necessary to communicate over the P2P system (e.g. a display, speakers, a network interface).
  • the peripheral device 108 of the present invention provides the remaining components necessary to communicate over the P2P system (e.g. the webcam 108 provides the client engine 312 to handle received data packets from the P2P system, and means for capturing data from the user such as a camera 122 and a microphone 304).
  • the peripheral device 108 includes the client engine 312 of a client for communicating over a P2P system.
  • the peripheral device does not need its own network interface for connecting to the network 106 because it can use the existing network interface 204 of the device 104.
  • the peripheral device 108 therefore requires only a local connection interface 306 for connecting with the device 104.
  • the cost of the webcam 108 is likely to be lower than a dedicated device that includes all of the components necessary to communicate over the P2P system.
  • a lower cost gives users more incentive to purchase the webcam 108 and they are also more likely to purchase the latest updates of the communication client engine, as they are not required to purchase a whole new television. It is beneficial to user satisfaction for the users to be using the most up to date versions of the client software.
  • Another aspect of the webcam that can reduce its cost is that it does not require a separate network interface for connecting to the network 106.
  • the webcam 108 can connect to the television using the local connection 124 (e.g. a USB connection) such that it can use the network interface 204 of the television 104 to connect to the network 106.
  • the webcam 108 may be built into the casing of the television 104 to make the system compact. It may still be simple to replace the webcam with an updated version by removing the webcam from the casing of the television 104. Alternatively, the webcam 108 may be physically separate from the television.
  • User data such as chat history, may be stored on the webcam 108.
  • the webcam 108 is detachable from the television 104 the privacy of the user data may be improved as the user is able to remove the webcam, storing the user data.
  • Figure 6 shows an embodiment of the client user interface 212.
  • the user interface 600 can be different depending on the type of device 104.
  • the user interface can be smaller or display information differently on a mobile device, due to the small screen size.
  • the client user interface 600 displays the username 602 of "Tom Smith" 102 in the communication system, and the user can set his own presence state (that will be seen by other users) using a drop down list by selecting icon 604.
  • the client user interface 600 comprises a button 606 labelled "contacts", and when this button is selected the contacts stored by the user in a contact list are displayed in a pane below the button 606.
  • a button 606 labelled "contacts"
  • the contacts stored by the user in a contact list are displayed in a pane below the button 606.
  • four contacts of other users of the communication system are shown listed in contact list 608. Each of these contacts have authorised the user 102 of the client 110 to view their contact details and presence state.
  • Each contact in the contact list 608 has a presence status icon associated with it.
  • the presence status icon for "Kevin Jackson” 610 indicates that this contact is “online”
  • the presence icon for "Rosie” 612 indicates that this contact is “away”
  • the presence icon for "Amy” 614 indicates that this contact's state is “do not disturb” (“DND”)
  • the presence icon for "Sarah Rowling” 616 indicates that this contact is "offline”.
  • Further presence state indications can also be included.
  • Presence information in packet-based communication systems can additionally be supplemented by "mood messages”. Mood messages are traditionally short text strings that are composed by the users to distribute information about themselves to their contacts to supplement their presence status.
  • the mood message of a contact is generally displayed next to the contact's name in the list of contacts 608.
  • the presence status of the contact is displayed with the mood message next to the name of the contact in the list of contacts 608.
  • the mood messages 622 and 624 of the contacts are shown displayed next to the names of the contacts in the contact list 608.
  • the user 102 may also select a picture 628 to represent the user (known as an avatar).
  • the client 110 periodically requests the presence state information for each of the contacts in the contact list 608 directly over the communication system.
  • the current mood message e.g. "in London” 622 for "Kevin Jackson”
  • a picture e.g. picture 630 for "Kevin Jackson”
  • the presence states and mood messages of the contacts are therefore determined using a "pull” technique, as the data is requested from the clients of each of the contacts.
  • the presence state, mood message and avatar of a user can be "pushed" to each of the user's contacts over the communication network, either periodically or whenever the presence state is changed.
  • a further advantage of the present invention is that the CPU resources of the processor 202 of the television 104 are not required to maintain presence states, avatar or mood message changes of contacts in the contact list 608. Changes to the presence states, avatar or mood messages of the contacts in the contact list 608 are maintained by the client engine 312 of the webcam 108 and it is only necessary to provide these changes to the user interface 212 of the television 104 when the user 102 chooses to view the contact list 608 on the television 104. This reduces the processing resources of the television 104 that are used, as compared to executing the entire communication client on the television 104.
  • the peripheral device 708 includes a network interface 702 for connecting to the network 106 and the device 704 does not include a network interface. Other elements of the embodiment shown in figure 7 are the same as those described above (and as shown in figures 1 to 3) and are not described in further detail here.
  • the peripheral device 708 When the network interface is in the peripheral device 708 then the peripheral device 708 is used to connect to the network 106 and data is communicated between the device 704 and the network 106 via the local connection 124 and the network interface 702.
  • step S802 the data packets are received at the webcam 708.
  • the data packets are received via the network interface 702 of the webcam 708.
  • the client engine 312 is executed on the CPU 302 of the webcam 708 in order to handle the data packets in accordance with protocols of the P2P communication system.
  • the client engine 312 has processed the data packets, if the data contained in the data packets is intended to be conveyed to the user 102 then at step S806 the processed data packets are sent from the webcam 708 to the television 704 using the local connection 124 via the local connection interface 306 of the webcam 708 and the local connection interface 206 of the television 704.
  • step S808 the processed data packets received at the television 704 can be conveyed to the user 102.
  • the method described above allows data received from the network 106 to be conveyed to the user 102.
  • the peripheral device is a data capture device it is desirable to compress the data captured by the peripheral device for transmission over both the local connection and the network.
  • data may be encoded in dependence on conditions on the P2P network - for example the client engine may communicate network conditions e.g. channel bandwidth, to the voice and video encoders of the peripheral device - in this case the encoders may encode the data at a lower bit rate if the channel bandwidth is low.
  • the client engine may make further decisions that affect the data rate, for example the client may chose not to send data packets in dependence on network conditions.
  • the network interface when the network interface is in the TV (as shown in figure 2) and data is sent to the network from the peripheral device via the local connection 124, the data will be compressed as far as possible. If however the network interface resides in the peripheral device (as shown in figure 7), the data captured from the peripheral device (e.g. webcam) can be sent directly to the network without having to send this data via the local connection (unless a preview view is required in which case the client engine can send a preview view over the local connection to the television so that the user of the television can see an image of the data that is to be sent). Furthermore any data received from the network may be provided over the local connection to the television as encoded data since there is a decoder in the television.
  • the data captured from the peripheral device e.g. webcam
  • executing the communication client in the data capture device include: (i) improved real-time scheduling of communication applications on a dedicated processor and operating system in the peripheral device (e.g. webcam) than on a general purpose PC; and (ii) improved synchronization between audio and video data streams in the communications system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

A method and corresponding system for communicating over a network using a first device and a peripheral device, wherein the first device comprises a user interface and a network interface for connecting to the network, and the peripheral device has a local connection to the first device, the local connection being independent of the network. The method comprises receiving data packets from the network at the network interface of the first device and forwarding the received data packets from the first device to the peripheral device via the local connection. A client engine of a communication client is executed on a processor of the peripheral device to process the received data packets. Processed data packets are sent from the peripheral device to the first device via the local connection such that data contained in the received data packets is conveyed to a user of the first device using the user interface of the first device.

Description

A PERIPHERAL DEVICE FOR COMMUNICATION OVER A COMMUNICATIONS SYSTEM
This invention relates to a peripheral device for communication in a communications system.
Background
Packet-based communication systems allow the user of a device, such as a personal computer (PC), to communicate across a computer network such as the Internet. Packet-based communication systems include voice over internet protocol ("VoIP") communication systems. These systems are beneficial to the user as they are often of significantly lower cost than fixed line or mobile networks. This may particularly be the case for long-distance communication. Typically, to use a VoIP system, the user installs and executes client software on their device. The client software provides the VoIP connections as well as other functions such as registration and authentication. In addition to voice communication, the client may also provide further features such as video calling, instant messaging ("IM"), voicemail and file transfer.
One type of packet-based communication system uses a peer-to-peer ("P2P") topology built on proprietary protocols. To enable access to a peer-to-peer system, the user must execute P2P client software provided by a P2P software provider on their computer, and register with the P2P system. When the user registers with the P2P system the client software is provided with a digital certificate from a server. Once the client software has been provided with the certificate, communication can subsequently be set up and routed between users of the P2P system without the further use of a server. In particular, the users can establish their own communication routes through the P2P system based on the exchange of one or more digital certificates (or user identity certificates, "UIC"), which enable access to the P2P system. The exchange of the digital certificates between users provides proof of the users' identities and that they are suitably authorised and authenticated in the P2P system. Therefore, the presentation of digital certificates provides trust in the identity of the user. It is therefore a characteristic of peer-to-peer communication that the communication is not routed using a server but directly from end-user to end-user. Further details on such a P2P system are disclosed in WO 2005/009019.
A user's device may include input means such as a microphone and/or a camera to capture data (such as audio and/or video data) from the user, and output means such as a speaker and/or a display to convey data to the user (such as audio and/or video data). The user's device typically also includes the communication client software which is executed on a processor of the device, and means for connecting to the communication system, such as a network interface. In this way the user's device typically includes all of the components necessary to communicate over the network.
However some user devices, typically corporately owned PCs, have firewall software executed on the processor of the device, or on the gateway of a Local Area Network (LAN) to block the user from downloading certain types of software onto the device. In this case the user may be prevented from installing the communication client software on his or her device and is therefore prevented from connecting to the communication system.
In some cases a user may purchase a device with the communication client preinstalled on the processor of the device and it may not be possible to download updated versions of the communication client. Since the user's device typically includes all of the components necessary to communicate over the network, if it is desired to replace one component with a new or upgraded version of the component then it is necessary to replace the whole device including all of the other components. Furthermore, the quality of each individual component in the device is often lower than the quality of corresponding components in devices that are dedicated to performing the function of the component in question. For example the display and speakers of the user's device may be of lower quality than the display and speakers of a device whose primary purpose is to display pictures and to play sounds to a user, such as a television. Furthermore, there are currently many different methods for communicating between users, for example phone calls, emails, etc. The cost of the user's device including all of the components necessary to communicate over the P2P system may be relatively high, when compared to other devices which may be used for communicating in different ways. In some cases the increased cost of the user's device may put off some users from purchasing the device, as they may be content to use other forms of communication that are available. A reduction in new users to the P2P communication system may detract from the popularity of the P2P communication system, which in turn may reduce the desirability of the P2P communication system for existing users of the P2P system.
Updated versions of the communication client may be released from time to time. Due to the relatively high cost of the user's device and the need to replace all of the components necessary to communicate over the P2P system, the user may decide not to update his communication client every time an updated version is released. It is desirable for the users of the communication system to have the most up to date version of the communication client as this will give the users the benefit of the latest advances and should provide greater user satisfaction.
It is an aim of the present invention to address the problems with the prior art described above.
Summary of Invention
In a first aspect of the invention there is provided a method of communicating over a network using a first device and a peripheral device, the first device comprising a user interface and a network interface for connecting to the network, the peripheral device having a local connection to the first device, the local connection being independent of the network, the method comprising: receiving data packets from the network at the network interface of the first device; forwarding the received data packets from the first device to the peripheral device via the local connection; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; and sending processed data packets from the peripheral device to the first device via the local connection such that data contained in the received data packets is conveyed to a user of the first device using the user interface of the first device.
In a second aspect of the invention there is provided a system for communicating over a network comprising: a first device having a local connection to a peripheral device, the local connection being independent of the network, the first device comprising: user interface means; network interface means for connecting to the network and for receiving data packets from the network; means for forwarding the received data packets from the first device to the peripheral device via the local connection; and means for receiving processed data packets from the peripheral device via the local connection such that data contained in the received data packets is conveyed to a user of the first device using the user interface means; and the peripheral device comprising: means for receiving the received data packets from the first device via the local connection; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection.
In a third aspect of the invention there is provided a peripheral device for communicating over a network, the peripheral device comprising: means for receiving data packets from a first device via a local connection that is independent of the network, the data packets originating from the network; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection, the processed data packets being for conveying data contained in the received data packets to a user of the first device. In a fourth aspect of the invention there is provided a method of communicating over a network using a first device and a peripheral device, the first device comprising a user interface and a network interface for connecting to the network, the peripheral device having a local connection to the first device that is independent of the network, the method comprising: receiving data at the peripheral device; encoding the received data at the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending the processed data packets from the peripheral device to the first device via the local connection; and forwarding the received data packets from the first device to the communication network via the network interface.
In a fifth aspect of the invention there is provided a method of establishing a bidirectional communication over a network using a first device and a peripheral device, the first device comprising a user interface, the peripheral device comprising a network interface for connecting to the network and a local connection to the first device that is independent of the network, the method comprising: receiving data packets from the network at the network interface of the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending processed data packets from the peripheral device to the first device via the local connection; and decoding the data at the first device such that data contained in the received data packets is conveyed to a user of the first device using the user interface of the first device; and wherein the method further comprises: receiving data at the peripheral device; encoding the received data at the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending the processed data packets from the peripheral device to the first device via the local connection; and forwarding the received data packets from the first device to the communication network via the network interface.
In a sixth aspect of the invention there if provided a system for communicating over a network comprising: a first device having a local connection to a peripheral device, the local connection being independent of the network, the peripheral device comprising: network interface means for connecting to the network and for receiving data packets from the network; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection, the first device comprising: means for receiving the processed data packets from the peripheral device; means for decoding the processed data packets; and user interface means for conveying data contained in the processed data packets to a user of the first device.
For a better understanding of the present invention and to show how the same may be put into effect, reference will now be made, by way of example, to the following drawings in which:
Figure 1 shows a packet-based communication system;
Figure 2a shows a television of a first embodiment;
Figure 2b shows a television of another embodiment;
Figure 2c shows a television of a further embodiment;
Figure 3 shows a webcam of a preferred embodiment; Figure 4 shows a flowchart of a process for receiving and displaying data;
Figure 5 shows a flowchart of a process for capturing and sending data;
Figure 6 shows a user interface of a communication client;
Figure 7 shows a packet-based communication system according to a second embodiment; Figure 8 shows a flowchart of a process for receiving and displaying data according to the second embodiment; and
Figure 9 shows a packet-based communication system according to a further embodiment.
Detailed Description
Reference is first made to Figure 1 , which illustrates a packet-based communication system 100 according to an embodiment of the present invention. Note that whilst this illustrative embodiment is described with reference to a P2P communication system, other types of communication system could also be used, such as non-P2P, VoIP or IM systems which employ client software for communication. A first user of the communication system (named "Tom Smith" 102 in figure 1 ) is associated with a device 104, which is shown connected to a network 106. Note that the communication system 100 utilises a network such as the Internet. In the preferred embodiment shown in figure 1 the device 104 is a television. However, in alternative embodiments the device 104 may be, for example, a mobile phone, a personal digital assistant ("PDA"), a personal computer ("PC") (including, for example, Windows™, Mac OS™ and Linux™ PCs), a gaming device or other embedded device able to connect to the network 106. The television 104 has a user interface which is capable of outputting information to a user 102 of the device through for example a display 118 and speakers 120. A peripheral device 108 is connected to the television 104 using a local connection 124, which may be a wired connection such as a Universal Serial Bus (USB) connection using USB protocol, or may alternatively be a wireless connection such as a Bluetooth connection. The connection 124 is "local" in the sense that it is not a network connection using the network 106. Indeed the local connection 124 is separate from the network 106. In other words the local connection 124 is independent of the network 106. In fact, the peripheral device 108 might not have a direct connection to the network 106. If the peripheral device 108 does have a direct connection to the network 106, it does not use the direct connection for communication with the main device 104.
Note that in alternative embodiments, the television 104 can connect to the communication network 106 via additional intermediate networks not shown in Figure 1. For example, if the device 104 is a mobile device, then it can connect to the communication network 106 via a cellular mobile network (for example a GSM or UMTS network).
Typically the television 104 and the peripheral device 108 are used within the vicinity of the user 102, such that data can be conveyed to the user 102 through the television 104, and data can be captured from the user 102 by the peripheral device 108 using for example a camera 122 to capture image or video data and a microphone to capture audio data. The peripheral device 108 has a communication client 110 embedded within it which is provided by the software provider. The communication client 110 is a software program executed on a processor in the peripheral device 108. The peripheral device executes a client engine of the communication client 110 in order to communicate with other users of the network (such as the user 112 called "Kevin Jackson" in figure 1 ).
In the preferred embodiment shown in Figure 1 the peripheral device 108 is a web camera (webcam). However, in alternative embodiments the peripheral device may be an alternative data capture device such as a microphone, or a processor dedicated to running the client engine of the communication client. A client user interface 212 installed on the television is configured to provide an interface for the user 102 to receive information from, and to provide information to the client engine. The webcam 108 can connect to the network 106 via the television 104. Therefore the webcam 108 does not require a separate, direct connection to the network 106.
Figure 2a illustrates a detailed view of the television 104. The television 104 comprises a central processing unit ("CPU") 202, to which is connected a display 118 such as a screen, and speakers 120. The display 118 and the speakers 120 are integrated into the television 104. In alternative devices 104 at least one of the display 118 and the speakers 120 may not be integrated into the device 104 and may be connected to the CPU 202 via respective interfaces (e.g. a USB interface). A remote controller may be connected to the CPU 202 via an interface (not shown). The CPU 202 is connected to a network interface 204 such as a modem for communication with the network 106. The CPU 202 is connected to a local connection interface, such as a USB interface or a Bluetooth interface 206 for communication with the peripheral device 108. The CPU 202 may be connected to various other input or output devices through the I/O interface 208. The network interface 204, local connection interface 206 and I/O interface 208 may be integrated into the device 104 as shown in Figure 2a. In alternative devices 104 at least one of the network interface 204, local connection interface 206 and I/O interface 208 are not integrated into the device 104.
Figure 2a also illustrates an operating system ("OS") 210 executed on the CPU 202. Running on top of the OS 210 is a client user interface 212 for the communication client 110. The operating system 210 manages the hardware resources of the television and handles data being transmitted to and from the network via the network interface 204. Also running on top of the OS 210 is a television application 214 which is used to allow the device 104 to operate as a conventional television. Also running on top of the OS 210 is a decoder 216. The decoder 216 is used to decode broadcast television video data. The decoder 216 may also be used to decode encoded video data received from the client engine 312 as described in more detail below.
Figure 3 illustrates a detailed view of the webcam 108. The webcam 108 comprises a central processing unit ("CPU") 302, to which is connected input means such as a camera 122 and a microphone 304 for capturing data from the user. The camera 122 and the microphone 304 are integrated into the webcam 108. The CPU 302 is connected to a local connection interface, such as a USB interface or a Bluetooth interface 306 for communication with the device 104. The local connection interface 306 may be integrated into the webcam 108 as shown in Figure 3. In alternative peripheral devices 108 one or more of the camera 122, microphone 304 and local connection interface 306 are not integrated into the peripheral device 108.
Figure 3 also illustrates an operating system ("OS") 308 executed on the CPU 302. Running on top of the OS 308 is a client engine 312 and a client protocol layer 314 for the communication client 110. The client protocol layer 314 of the client software communicates with the operating system 308 and manages the connections over the P2P communication system. Processes requiring higher level processing are passed to the client engine layer 312. The client engine 312 may be arranged to control the client user interface layer 212 of the device 104 to present information to the user. The client user interface layer 212 of the device 104 is used to interact with the user 102. For example, the user will interact with the client user interface 212 to initiate and answer calls. Instructions are transmitted between the client user interface layer 212 of the device 104 and the client engine layer 312 of the peripheral device 108 over the local connection 124 to allow the user to interact with the client 110, For example, when a call request is received at the client engine 312 of the peripheral device 108 via the network interface 204 of the device 104 from another user (e.g. "Kevin Jackson" 112) of the network 106 requesting that a call is established with the user 102, the client engine 312 sends an instruction over the local connection 124 to the client user interface 212 of the device 108 to instruct the client user interface 212 to ask the user 102 whether to accept the call. The user 102 can input a response to the client user interface 212 to either accept or reject the call. The response is sent to the client engine 312 over the local connection 124 and the client engine 312 will either accept or reject the incoming call accordingly. In a similar way, if the user 102 would like to initiate a call with another user of the network 106 (for example user 112) then the user 102 can input a call request to the client user interface 212 at the device 104. The call request is transmitted to the client engine 312 of the peripheral device 108 over the local connection 124. The client engine 312 can then send the call request to a device 1 14 of the user 112 over the network 106 via the local connection 124 and the network interface 204 of the device 104 to set up the call.
The operating system 308 manages the hardware resources of the peripheral device 108 and handles data being transmitted to and from the device 104 via the local connection interface 306. Also running on top of the OS 308 is a voice encoder 310, a voice decoder 320 and a video encoder 316. The encoders 310 and 316 may be used to encode data as described in more detail below.
With reference to figure 4, there is now described the operation of the communication system 100 in a preferred embodiment. The users 102 ("Tom Smith") and 112 ("Kevin Jackson") are users of the P2P communication system. The user 112 ("Kevin Jackson") may want to send data, such as audio and video data, to the user 102 ("Tom Smith") through the network 106. As described above, to initiate a call, a call set up request message is transmitted from a communication client 116 of device 114 operated by user 1 12 to the client engine 312 of device 104. The client engine 312 instructs the client user interface 212 to display an incoming call notification to the user 102 at device 104. The user 102 can accept the call by interacting with the client user interface 212. If the user accepts the call a call accept message is transmitted from the client engine to the device 114.
When a call accept message is received at the communication client 116 from the client engine 312, data packets are transmitted from the communication client 116 to the television 104 via the network 106. At step S402 the data packets are received at the television 104. The data packets are received via the network interface 204 of the television 104. The received data packets are routed to the local connection interface 206 of the television 104. In step S404 the received data packets are forwarded to the webcam 108 over the local connection 124. The data packets are received at the local connection interface 306 of the webcam 108. The data packets are routed to the CPU 302 of the webcam 108. The client engine 312 is executed on the CPU 302 of the webcam 108 in order to handle the data packets in accordance with protocols of the P2P communication system. The received data packets may contain for example textual, image, video and/or audio data. The client engine 312 decrypts the data in the data packets, identifies the type of data retrieved from the data packets and provides the data to the appropriate module. For example, encoded video data is provided to the video decoder 216, encoded audio data is provided to the audio decoder 320 and textual data is provided to the IM (instant messaging module) 318.
If the data contained in the data packets is intended to be conveyed to the user 102 then the data is sent from the webcam 108 to the television 104 using the local connection 124 via the local connection interface 306 of the webcam 108 and the local connection interface 206 of the television 104.
In a preferred embodiment of the invention encoded video data received from the client engine is decoded by the video decoder 216 located in the television, as shown in Figure 2. In this case encoded video data is sent via the local connection from the client engine to the video decoder 216 of the television CPU 202 for decoding, thus minimising the bandwidth requirements of the local connection. The decoded video data may be conveyed to the user 102 using the client user interface 212 of the television 104 through the display 118.
In one embodiment of the invention, encoded audio data received from the client engine is decoded by the voice decoder 320 located in the webcam. Since audio data transmitted from the television is also encoded in the webcam, acoustic echo cancellation may be applied to the transmitted audio data based on the decoded received audio data.
The method described above allows data received from the network 106 to be conveyed to the user 102.
During a communication event, such as a video call, data may be sent from the user 102 ("Tom Smith") to the user 112 ("Kevin Jackson"). With reference to figure 5 a method of capturing data from the user 102 is described. In step S502 data is captured from the user 102 at the webcam 108. The captured data may be video or image data captured using the camera 122 of the webcam 108. The captured data may be audio data captured using the microphone 304. In other embodiments the peripheral device 108 may allow textual data to be captured from the user 102 using for example a keypad of the peripheral device 108.
In step S504 The captured voice data and video data are encoded by the voice encoder 310 and the video encoder 316 respectively. Encoded data packets are output from the voice and video encoders. In step S506 the client engine 312 running on the operating system 302 of the webcam 108 handles the encoded data packets according to the requirements and protocols of the P2P communication system on which the data will be transmitted. As described above, in preferred embodiments, the webcam 108 is not directly connected to the network 106. In step S508 the captured data packets are sent to the television 104 using the local connection 124 which is distinct from the network 106, and then the data packets are forwarded from the television 104 to the network using the network interface 204 of the television 104. In this way, the webcam 108 is configured to use the network interface 204 of the television to send data captured from the user 102 to the network 106.
As described above, in a preferred embodiment of the invention, the webcam 108 includes the video encoder 316 and the television 104 includes the video decoder 216. Therefore video data sent between the webcam 108 and the television 104 on the local connection 124 is always encoded. User interface instructions are sent from the television CPU 202 to the webcam 108 via the local connection 124. User interface notifications are sent from the client engine 312 of the webcam 108 to the user interface 212 of the television via the local connection 124.
In one embodiment of the invention, driver software is stored on the peripheral device. When the peripheral device is first connected to the television, the operating system 202 of the television 104 retrieves a driver suitable for the operating system from the peripheral device 108 and sets up the network configuration.
In one embodiment of the invention the client user interface 212 may be stored on the peripheral device together with the driver software. The operating system of the device 104 may be arranged to retrieve the client user interface 212 together with the driver when the peripheral device is attached.
In a further embodiment of the invention a client user interface API (Application Programming Interface) 213 may be stored on the peripheral device. The operating system of the device 104 may be arranged to retrieve the client user interface API 213 together with the driver when the peripheral device is attached. The client user interface API 213 provides an interface between the client engine 312 and a user interface 212'. In one exemplary embodiment the client user interface 212 may be preinstalled on the device and form part of the user interface of the television application 214.
As shown in Figure 2b the client user interface API 213 is executed on the CPU of the device 104 and is arranged to provide an interface between a user interface 212' of the television application 214 and the client engine 312. The client user interface API is arranged to recognise inputs from the user interface 212' of the television application 214 and to control the client engine accordingly, for example a notification that the red button of a remote control is pressed may be provided to the client user interface API 213. The client user interface API 213 may be arranged to interpret this notification as a request for the contact list to be displayed. In response, the client user interface API may instruct the client engine to provide the contact list via the local connection to the client user interface API 213. In response to receiving the contact list at the client user interface API 213, the client user interface API is arranged to provide a text list of the user's contact list that can be interpreted by the user interface 212' of the television application 214. The user may then scroll up and down the list to select a contact that the user wishes to call using the controls of the remote control. Actuation of another function button of the remote control, for example the blue button, may be interpreted by the client user interface API that the user wishes to place a call to the selected contact.
In a further exemplary embodiment of the invention the client user interface 212' may be provided by a webpage. This embodiment will now be described with reference to Figure 2c and Figure 9.
When the peripheral device 108 is connected to the device 104, the operating system of the user device 104 is arranged to retrieve driver software for the peripheral device 108 from the memory of the peripheral device 108. The client user interface API 213 is provided together with the driver software to the device 104. As shown in Figure 2c the client user interface API 213 is executed on the CPU of the device. The client user interface API is arranged to access the web server 113 shown in Figure 9 via the network interface 204. The client user interface API is further arranged to download a user interface application 212' from the web server 1 13. The user interface application may be a Java programme which may be downloaded to the CPU of the device without being blocked by firewalls on the device 104. The user interface 212' may be displayed on the display 118 of the device 104 and used to communicate with the client engine via the client user interface API.
Executing the client engine 312 on a peripheral device (such as the webcam 108) attached to a device (such as the television 104) has several advantages over a system in which the client engine is executed on the device 104 itself.
Executing the client engine 312 on the peripheral device 108 means that it is not necessary to install a client engine in the processor of the device 104.
Indeed, in preferred embodiments there is not a communication client installed on the television 104. The user 102 can use the communication client simply by connecting the peripheral device 108 to the device 104.
Therefore if the user is prevented from downloading communication client software on the device due to firewall restrictions, the user may nevertheless use the device to communicate via the communication system by connecting the device to the peripheral device. Furthermore instead of having to purchase a new television 104 with the desired communication client preinstalled the user may connect the peripheral device to communicate via the communication system using the user interface of the device. Additionally, updated versions of the communication client engine may be used without having to purchase a new television 104. Users are likely to already have televisions, with the primary use being for watching (and listening to) television programs. The quality of the display and the speakers of existing televisions is high (when compared to the display and speakers of a device which is to be used primarily as a communication device). The user may therefore prefer to use the display and speakers of the television to convey data that is received from the network 106. Furthermore, existing televisions are often capable of connecting to the network 106 through a network interface (e.g. network interface 204). Therefore a user who owns a television (such as television 104) already has in his possession some of the components necessary to communicate over the P2P system (e.g. a display, speakers, a network interface). The peripheral device 108 of the present invention provides the remaining components necessary to communicate over the P2P system (e.g. the webcam 108 provides the client engine 312 to handle received data packets from the P2P system, and means for capturing data from the user such as a camera 122 and a microphone 304). Since the user is likely to already own a television 104, it is advantageous to provide only the remaining components necessary for using the P2P communication system in a peripheral device that can connect to the television. The present invention exploits that fact users often own devices (such televisions) which can connect to the network through a network interface. The peripheral device 108 includes the client engine 312 of a client for communicating over a P2P system. The peripheral device does not need its own network interface for connecting to the network 106 because it can use the existing network interface 204 of the device 104. The peripheral device 108 therefore requires only a local connection interface 306 for connecting with the device 104.
The cost of the webcam 108 is likely to be lower than a dedicated device that includes all of the components necessary to communicate over the P2P system. A lower cost gives users more incentive to purchase the webcam 108 and they are also more likely to purchase the latest updates of the communication client engine, as they are not required to purchase a whole new television. It is beneficial to user satisfaction for the users to be using the most up to date versions of the client software. Another aspect of the webcam that can reduce its cost is that it does not require a separate network interface for connecting to the network 106. The webcam 108 can connect to the television using the local connection 124 (e.g. a USB connection) such that it can use the network interface 204 of the television 104 to connect to the network 106. The webcam 108 may be built into the casing of the television 104 to make the system compact. It may still be simple to replace the webcam with an updated version by removing the webcam from the casing of the television 104. Alternatively, the webcam 108 may be physically separate from the television.
User data, such as chat history, may be stored on the webcam 108. When the webcam 108 is detachable from the television 104 the privacy of the user data may be improved as the user is able to remove the webcam, storing the user data.
Figure 6 shows an embodiment of the client user interface 212. Note that the user interface 600 can be different depending on the type of device 104. For example, the user interface can be smaller or display information differently on a mobile device, due to the small screen size. In the example of Figure 6, the client user interface 600 displays the username 602 of "Tom Smith" 102 in the communication system, and the user can set his own presence state (that will be seen by other users) using a drop down list by selecting icon 604.
The client user interface 600 comprises a button 606 labelled "contacts", and when this button is selected the contacts stored by the user in a contact list are displayed in a pane below the button 606. In the example user interface in Figure 6, four contacts of other users of the communication system are shown listed in contact list 608. Each of these contacts have authorised the user 102 of the client 110 to view their contact details and presence state. Each contact in the contact list 608 has a presence status icon associated with it. For example, the presence status icon for "Kevin Jackson" 610 indicates that this contact is "online", the presence icon for "Rosie" 612 indicates that this contact is "away", the presence icon for "Amy" 614 indicates that this contact's state is "do not disturb" ("DND"), the presence icon for "Sarah Rowling" 616 indicates that this contact is "offline". Further presence state indications can also be included. Presence information in packet-based communication systems can additionally be supplemented by "mood messages". Mood messages are traditionally short text strings that are composed by the users to distribute information about themselves to their contacts to supplement their presence status. The mood message of a contact is generally displayed next to the contact's name in the list of contacts 608. The presence status of the contact is displayed with the mood message next to the name of the contact in the list of contacts 608. In Figure 6, the mood messages 622 and 624 of the contacts are shown displayed next to the names of the contacts in the contact list 608.
The user 102 may also select a picture 628 to represent the user (known as an avatar). The client 110 periodically requests the presence state information for each of the contacts in the contact list 608 directly over the communication system. Similarly, the current mood message (e.g. "in London" 622 for "Kevin Jackson") for each of the contacts, as well as a picture (avatar - e.g. picture 630 for "Kevin Jackson") that has been chosen to represent the contact, are also retrieved by the client 110 directly from the respective clients of each of the contacts over the communication system. The presence states and mood messages of the contacts are therefore determined using a "pull" technique, as the data is requested from the clients of each of the contacts. In alternative embodiments, the presence state, mood message and avatar of a user can be "pushed" to each of the user's contacts over the communication network, either periodically or whenever the presence state is changed.
A further advantage of the present invention is that the CPU resources of the processor 202 of the television 104 are not required to maintain presence states, avatar or mood message changes of contacts in the contact list 608. Changes to the presence states, avatar or mood messages of the contacts in the contact list 608 are maintained by the client engine 312 of the webcam 108 and it is only necessary to provide these changes to the user interface 212 of the television 104 when the user 102 chooses to view the contact list 608 on the television 104. This reduces the processing resources of the television 104 that are used, as compared to executing the entire communication client on the television 104. In a second embodiment shown in figure 7, the peripheral device 708 includes a network interface 702 for connecting to the network 106 and the device 704 does not include a network interface. Other elements of the embodiment shown in figure 7 are the same as those described above (and as shown in figures 1 to 3) and are not described in further detail here.
When the network interface is in the peripheral device 708 then the peripheral device 708 is used to connect to the network 106 and data is communicated between the device 704 and the network 106 via the local connection 124 and the network interface 702.
With reference to figure 8, there is now described the operation of the communication system in the second preferred embodiment. At step S802 the data packets are received at the webcam 708. The data packets are received via the network interface 702 of the webcam 708. At step S804 the client engine 312 is executed on the CPU 302 of the webcam 708 in order to handle the data packets in accordance with protocols of the P2P communication system. When the client engine 312 has processed the data packets, if the data contained in the data packets is intended to be conveyed to the user 102 then at step S806 the processed data packets are sent from the webcam 708 to the television 704 using the local connection 124 via the local connection interface 306 of the webcam 708 and the local connection interface 206 of the television 704. In step S808 the processed data packets received at the television 704 can be conveyed to the user 102. The method described above allows data received from the network 106 to be conveyed to the user 102.
The methods and systems described above advantageously limit the amount of data that is sent via the local connection. In embodiments of the invention where the peripheral device is a data capture device it is desirable to compress the data captured by the peripheral device for transmission over both the local connection and the network. By providing the communication client in the data capture device, data may be encoded in dependence on conditions on the P2P network - for example the client engine may communicate network conditions e.g. channel bandwidth, to the voice and video encoders of the peripheral device - in this case the encoders may encode the data at a lower bit rate if the channel bandwidth is low. Furthermore the client engine may make further decisions that affect the data rate, for example the client may chose not to send data packets in dependence on network conditions. As such, when the network interface is in the TV (as shown in figure 2) and data is sent to the network from the peripheral device via the local connection 124, the data will be compressed as far as possible. If however the network interface resides in the peripheral device (as shown in figure 7), the data captured from the peripheral device (e.g. webcam) can be sent directly to the network without having to send this data via the local connection (unless a preview view is required in which case the client engine can send a preview view over the local connection to the television so that the user of the television can see an image of the data that is to be sent). Furthermore any data received from the network may be provided over the local connection to the television as encoded data since there is a decoder in the television.
Other technical advantages provided by executing the communication client in the data capture device include: (i) improved real-time scheduling of communication applications on a dedicated processor and operating system in the peripheral device (e.g. webcam) than on a general purpose PC; and (ii) improved synchronization between audio and video data streams in the communications system.
While this invention has been particularly shown and described with reference to preferred embodiments, it will be understood to those skilled in the art that various changes in form and detail may be made without departing from the scope of the invention as defined by the appendant claims. For example, it will be appreciated that embodiments of the invention described herein can be employed in an IM system, a VoIP system, a video call system or any combination thereof.

Claims

1. A method of communicating over a network using a first device and a peripheral device, the first device comprising a user interface and a network interface for connecting to the network, the peripheral device having a local connection to the first device, the local connection being independent of the network, the method comprising: receiving data packets from the network at the network interface of the first device; forwarding the received data packets from the first device to the peripheral device via the local connection; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; and sending processed data packets from the peripheral device to the first device via the local connection such that data contained in the received data packets is conveyed to a user of the first device using the user interface of the first device.
2 The method as claimed in claim 1 wherein the peripheral device is a data capture device.
3. The method of claim 1 or claim 2 wherein the received data packets are encoded and the method further comprises decoding the processed data packets at a decoder of the first device.
4. The method of any of claims 1 to 3 further comprising: capturing data from the user at the peripheral device; processing the captured data using the client engine of the client at the peripheral device; sending the captured data to the first device via the local connection; and forwarding the captured data from the first device to the network using the network interface.
5. The method of any preceding claim further comprising storing user data on the peripheral device.
6. The method of any preceding claim wherein the received data comprises at least one of video data and audio data.
7. A system for communicating over a network comprising: a first device having a local connection to a peripheral device, the local connection being independent of the network, the first device comprising: user interface means; network interface means for connecting to the network and for receiving data packets from the network; means for forwarding the received data packets from the first device to the peripheral device via the local connection; and means for receiving processed data packets from the peripheral device via the local connection such that data contained in the received data packets is conveyed to a user of the first device using the user interface means; and the peripheral device comprising: means for receiving the received data packets from the first device via the local connection; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection.
8 The system as claimed in claim 7 wherein the peripheral device is a data capture device.
9. The system of claim 7 or claim 8 wherein the peripheral device is not connected directly to the network.
10. The system of any of claims 7 to 9 wherein the first device does not comprise a client engine.
11. The system of any of claims 7 to 10 wherein the user interface of the first device is a client user interface of the communication client executed on a processor of the first device.
12. The system of any of claims 7 to 10 wherein the user interface of the first device is a native user interface of the first device, the native user interface being independent of the communication client.
13. The system of any of claims 7 to 10 wherein the user interface of the first device is downloaded from a web server.
14. The system of claim 12 or 13 wherein an application programming interface is arranged to handle communication between the user interface of the first device and the client engine.
15. The system as claimed in claim 11 wherein client user interface of the communication client executed on the processor of the first device is retrieved from the peripheral device by an operating system of the first device together with driver software for the peripheral device.
16. The system as claimed in 14 wherein the application programming interface executed on the processor of the first device is retrieved from the peripheral device by an operating system of the first device together with driver software for the peripheral device.
17. The system of any of claims 7 to 16 wherein the peripheral device is detachable from the first device.
18. The system of any of claims 7 to 16 wherein the peripheral device is integrated with the first device.
19. The system of any of claims 7 to 18 wherein the first device is a television and the peripheral device is a webcam.
20. A peripheral device for communicating over a network, the peripheral device comprising: means for receiving data packets from a first device via a local connection that is independent of the network, the data packets originating from the network; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection, the processed data packets being for conveying data contained in the received data packets to a user of the first device.
21. A peripheral device as claimed in claim 20 wherein the peripheral device is a data capture device.
22. A peripheral device as claimed in claim 20 or claim 21 wherein the peripheral device further comprises: driver software; and user interface software, wherein the driver software and the user interface software are provided for installation on the first device.
23. A peripheral device as claimed in claim 22 wherein the user interface software comprises either a user interface of the communication client or application programming interface for handling communication between the client engine and a third party user interface.
24 A peripheral device as claimed in claim 23 wherein the third party user interface is downloaded from a web server.
25. A method of communicating over a network using a first device and a peripheral device, the first device comprising a user interface and a network interface for connecting to the network, the peripheral device having a local connection to the first device that is independent of the network, the method comprising: receiving data at the peripheral device; encoding the received data at the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending the processed data packets from the peripheral device to the first device via the local connection; and forwarding the received data packets from the first device to the communication network via the network interface.
26. A method of establishing a bidirectional communication over a network using a first device and a peripheral device, the first device comprising a user interface, the peripheral device comprising a network interface for connecting to the network and a local connection to the first device that is independent of the network, the method comprising: receiving data packets from the network at the network interface of the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending processed data packets from the peripheral device to the first device via the local connection; and decoding the data at the first device such that data contained in the received data packets is conveyed to a user of the first device using the user interface of the first device; and wherein the method further comprises: receiving data at the peripheral device; encoding the received data at the peripheral device; executing a client engine of a communication client on a processor of the peripheral device to process the received data packets; sending the processed data packets from the peripheral device to the first device via the local connection; and forwarding the received data packets from the first device to the communication network via the network interface.
27. A system for communicating over a network comprising: a first device having a local connection to a peripheral device, the local connection being independent of the network, the peripheral device comprising: network interface means for connecting to the network and for receiving data packets from the network; processing means for executing a client engine of a communication client to process the received data packets; and means for sending processed data packets to the first device via the local connection, the first device comprising: means for receiving the processed data packets from the peripheral device; means for decoding the processed data packets; and user interface means for conveying data contained in the processed data packets to a user of the first device.
EP09782558.2A 2008-09-05 2009-09-03 A peripheral device for communication over a communications system Active EP2335413B1 (en)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
GB0816279.4A GB2463108B (en) 2008-09-05 2008-09-05 Communication system and method
GB0816280.2A GB2463109B (en) 2008-09-05 2008-09-05 Communication system and method
GB0816275A GB2463104A (en) 2008-09-05 2008-09-05 Thumbnail selection of telephone contact using zooming
GB0816276A GB2463105A (en) 2008-09-05 2008-09-05 Viewer activity dependent video telephone call ringing
GB0816271A GB2463103A (en) 2008-09-05 2008-09-05 Video telephone call using a television receiver
GB0816278A GB2463107A (en) 2008-09-05 2008-09-05 A remote control unit of a media device for placing/receiving calls, comprising activating one of the two wireless transceivers when needed.
GB0816281.0A GB2463110B (en) 2008-09-05 2008-09-05 Communication system and method
GB0907818.9A GB2463124B (en) 2008-09-05 2009-05-06 A peripheral device for communication over a communications sytem
PCT/EP2009/061398 WO2010026185A1 (en) 2008-09-05 2009-09-03 A peripheral device for communication over a communications system

Publications (2)

Publication Number Publication Date
EP2335413A1 true EP2335413A1 (en) 2011-06-22
EP2335413B1 EP2335413B1 (en) 2018-03-07

Family

ID=40802203

Family Applications (1)

Application Number Title Priority Date Filing Date
EP09782558.2A Active EP2335413B1 (en) 2008-09-05 2009-09-03 A peripheral device for communication over a communications system

Country Status (5)

Country Link
US (2) US8421839B2 (en)
EP (1) EP2335413B1 (en)
JP (1) JP5611950B2 (en)
GB (1) GB2463124B (en)
WO (1) WO2010026185A1 (en)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2463107A (en) 2008-09-05 2010-03-10 Skype Ltd A remote control unit of a media device for placing/receiving calls, comprising activating one of the two wireless transceivers when needed.
GB2463109B (en) 2008-09-05 2013-03-13 Skype Communication system and method
GB2463124B (en) 2008-09-05 2012-06-20 Skype Ltd A peripheral device for communication over a communications sytem
GB2463110B (en) 2008-09-05 2013-01-16 Skype Communication system and method
GB2463103A (en) * 2008-09-05 2010-03-10 Skype Ltd Video telephone call using a television receiver
GB2463108B (en) 2008-09-05 2012-08-29 Skype Communication system and method
GB2463105A (en) 2008-09-05 2010-03-10 Skype Ltd Viewer activity dependent video telephone call ringing
GB2463104A (en) 2008-09-05 2010-03-10 Skype Ltd Thumbnail selection of telephone contact using zooming
GB201005454D0 (en) 2010-03-31 2010-05-19 Skype Ltd Television apparatus
US8712390B2 (en) * 2010-04-08 2014-04-29 Qualcomm Incorporated Enhanced telephony services
GB201006726D0 (en) * 2010-04-22 2010-06-09 Skype Ltd Establishing a call between a first user and a second user
US9717090B2 (en) 2010-12-31 2017-07-25 Microsoft Technology Licensing, Llc Providing notifications of call-related services
US10291660B2 (en) 2010-12-31 2019-05-14 Skype Communication system and method
US10404762B2 (en) 2010-12-31 2019-09-03 Skype Communication system and method
US8963982B2 (en) * 2010-12-31 2015-02-24 Skype Communication system and method
US9019336B2 (en) 2011-12-30 2015-04-28 Skype Making calls using an additional terminal
TWI511540B (en) * 2012-11-30 2015-12-01 Wistron Corp Electronic device with multi-axis operation interface and information display method
WO2014179598A1 (en) * 2013-05-01 2014-11-06 Vidyo, Inc. Split endpoints in video communication systems
US20170374188A1 (en) * 2016-06-23 2017-12-28 Microsoft Technology Licensing, Llc User Peripheral
US10015594B2 (en) 2016-06-23 2018-07-03 Microsoft Technology Licensing, Llc Peripheral device transducer configuration
WO2021230948A2 (en) * 2020-02-28 2021-11-18 Dicosola Michele Smart city smart drone uass/uav/vtol smart mailbox landing pad
JP2022162457A (en) 2021-04-12 2022-10-24 レノボ・シンガポール・プライベート・リミテッド Information processor and control method
US12088646B1 (en) * 2021-06-04 2024-09-10 mmhmm inc. User grouping via immersive add-on applications for extended video conferencing experiences and feedback

Family Cites Families (151)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2693444B2 (en) 1987-07-02 1997-12-24 キヤノン株式会社 Door phone
JPH0522339A (en) 1991-07-16 1993-01-29 Toshiba Corp Electronic mail system
US5506572A (en) 1993-06-23 1996-04-09 Lodgenet Entertainment Corporation Low battery detection system
US6594688B2 (en) 1993-10-01 2003-07-15 Collaboration Properties, Inc. Dedicated echo canceler for a workstation
US5587928A (en) 1994-05-13 1996-12-24 Vivo Software, Inc. Computer teleconferencing method and apparatus
JPH08263251A (en) 1995-03-23 1996-10-11 Fuji Photo Film Co Ltd Method and device for displaying image
CA2170429C (en) 1995-03-28 2000-04-25 Stephen Gregory Eick Method and apparatus for finding and selecting a desired data item from a large schedule of data items using a tv set and a controller similar to a tv-remote-control
USH1714H (en) 1995-05-03 1998-03-03 Lucent Technologies Inc. Automatic still image transmission upon call connection
WO1997008879A2 (en) 1995-08-31 1997-03-06 Philips Electronics N.V. Terminal
US6061434A (en) 1996-08-14 2000-05-09 Joseph C. Corbett Video caller identification systems and methods
US6151619A (en) 1996-11-26 2000-11-21 Apple Computer, Inc. Method and apparatus for maintaining configuration information of a teleconference and identification of endpoint during teleconference
DE19716486A1 (en) 1997-03-14 1998-09-17 Sahin Yuecel Combined radio communication and remote control device
EP0981906A1 (en) 1997-05-05 2000-03-01 Siemens Aktiengesellschaft Video-telephony with a digital tv-signal receiver
US5999207A (en) 1997-05-16 1999-12-07 Scientific-Atlanta, Inc. Method and apparatus for implementing a user interface for a videophone in a cable television network
US6184905B1 (en) 1997-06-09 2001-02-06 Ati Technologies Method and apparatus for processing video graphics information at different operating rates
US6286140B1 (en) 1997-11-20 2001-09-04 Thomas P. Ivanyi System and method for measuring and storing information pertaining to television viewer or user behavior
US6353764B1 (en) 1997-11-27 2002-03-05 Matsushita Electric Industrial Co., Ltd. Control method
US6243129B1 (en) 1998-01-09 2001-06-05 8×8, Inc. System and method for videoconferencing and simultaneously viewing a supplemental video source
JPH11289497A (en) * 1998-04-02 1999-10-19 Digital Stream:Kk Television receiver equipped with docking station
US6904519B2 (en) * 1998-06-12 2005-06-07 Microsoft Corporation Method and computer program product for offloading processing tasks from software to hardware
MX355835B (en) 1998-07-17 2018-05-02 Rovi Guides Inc Interactive television program guide system having multiple devices within a household.
JP2000115734A (en) * 1998-10-01 2000-04-21 Toshiba Corp Video telephone set and video telephone system
US6209025B1 (en) 1998-11-09 2001-03-27 John C Bellamy Integrated video system
US20010005197A1 (en) 1998-12-21 2001-06-28 Animesh Mishra Remotely controlling electronic devices
US7047180B1 (en) 1999-04-30 2006-05-16 Autodesk, Inc. Method and apparatus for providing access to drawing information
US6636269B1 (en) 1999-08-18 2003-10-21 Webtv Networks, Inc. Video timing system and method
US6259486B1 (en) 1999-10-20 2001-07-10 A. Pascal Mahvi Sensor unit for controlling television set operation
JP2001169368A (en) 1999-12-07 2001-06-22 Kenwood Corp Remote controller and transmission control method
JP2001177632A (en) 1999-12-17 2001-06-29 Mitsubishi Electric Corp Mobile object communication terminal
US20030051003A1 (en) 1999-12-20 2003-03-13 Catherine Clark Communication devices
US7990985B2 (en) 2000-01-31 2011-08-02 3E Technologies International, Inc. Broadband communications access device
US8046795B2 (en) 2000-02-03 2011-10-25 Sony Corporation Method and system for directing the generation of a video media event in a generation system based on a media event protocol file such that the video media event remains visible at a predetermined location in a second web page while a user navigates from a first web page to the second web page which does not refer to the video media event
FI20000558A (en) 2000-03-10 2001-09-11 Alma Media Oyj Remote control
US20030036683A1 (en) 2000-05-01 2003-02-20 Kehr Bruce A. Method, system and computer program product for internet-enabled, patient monitoring system
JP4543513B2 (en) 2000-07-17 2010-09-15 ソニー株式会社 Bidirectional communication system, display device, base device, and bidirectional communication method
US6628964B1 (en) 2000-07-20 2003-09-30 International Business Machines Corporation Combination cordless telephone and remote control for entertainment equipment
US6529233B1 (en) 2000-09-29 2003-03-04 Digeo, Inc. Systems and methods for remote video and audio capture and communication
US6489986B1 (en) 2000-09-29 2002-12-03 Digeo, Inc. Remote control device for video and audio capture and communication
US20020054206A1 (en) 2000-11-06 2002-05-09 Allen Paul G. Systems and devices for audio and video capture and communication during television broadcasts
JP4182464B2 (en) 2001-02-09 2008-11-19 富士フイルム株式会社 Video conferencing system
US6964025B2 (en) 2001-03-20 2005-11-08 Microsoft Corporation Auto thumbnail gallery
US20020144259A1 (en) 2001-03-29 2002-10-03 Philips Electronics North America Corp. Method and apparatus for controlling a media player based on user activity
EP1374110B1 (en) 2001-04-06 2007-11-21 Nokia Corporation Salience-sensitive image-based presentation of a contact directory
WO2002088908A2 (en) 2001-05-02 2002-11-07 Bitstream Inc. Methods, systems, and programming for producing and displaying subpixel-optimized font bitmaps using non-linear color balancing
US6941575B2 (en) * 2001-06-26 2005-09-06 Digeo, Inc. Webcam-based interface for initiating two-way video communication and providing access to cached video
GB0116516D0 (en) 2001-07-06 2001-08-29 Pace Micro Tech Plc Television system
US20030105812A1 (en) 2001-08-09 2003-06-05 Gigamedia Access Corporation Hybrid system architecture for secure peer-to-peer-communications
WO2003021960A1 (en) 2001-08-30 2003-03-13 Digeo, Inc. Tv system with group communication
US20030052648A1 (en) 2001-09-17 2003-03-20 Sony Corporation Remote commander battery low voltage alert system
US20030061033A1 (en) 2001-09-26 2003-03-27 Dishert Lee R. Remote control system for translating an utterance to a control parameter for use by an electronic device
US7536704B2 (en) 2001-10-05 2009-05-19 Opentv, Inc. Method and apparatus automatic pause and resume of playback for a popup on interactive TV
JP2003125365A (en) 2001-10-10 2003-04-25 Minolta Co Ltd Controlling device, program, and recording medium
US20030097661A1 (en) 2001-11-16 2003-05-22 Li Hua Harry Time-shifted television over IP network system
US6954219B2 (en) 2001-12-12 2005-10-11 Stmicroelectronics, Inc. Method and system of continuously scaling video images
JP4383700B2 (en) 2001-12-28 2009-12-16 株式会社東芝 Mobile communication terminal
US7873028B2 (en) * 2002-01-25 2011-01-18 Quanta Computer, Inc. Method and apparatus for a flexible peripheral access router
US6678362B2 (en) 2002-01-31 2004-01-13 Sony Corporation System and method for effectively managing telephone functionality by utilizing a settop box
US9122808B2 (en) 2002-02-25 2015-09-01 Csr Technology Inc. Network interface to a video device
KR20040104705A (en) 2002-05-07 2004-12-10 코닌클리케 필립스 일렉트로닉스 엔.브이. Wireless communication arrangements with packet transmissions
AU2003239385A1 (en) 2002-05-10 2003-11-11 Richard R. Reisman Method and apparatus for browsing using multiple coordinated device
US8780770B2 (en) 2002-05-13 2014-07-15 Misonimo Chi Acquisition L.L.C. Systems and methods for voice and video communication over a wireless network
EP1365359A1 (en) 2002-05-24 2003-11-26 BRITISH TELECOMMUNICATIONS public limited company Image processing method and system
TW555342U (en) 2002-06-05 2003-09-21 Formosa Ind Computing Inc Remote image monitoring host and monitoring apparatus
US20030232593A1 (en) 2002-06-13 2003-12-18 Nokia Corporation Digital data transfer through different communication paths
JP2004040698A (en) 2002-07-08 2004-02-05 Sanyo Electric Co Ltd Broadcast receiving apparatus and chat system about program
JP2004080289A (en) 2002-08-15 2004-03-11 Sony Corp Communication device
US7003040B2 (en) 2002-09-24 2006-02-21 Lg Electronics Inc. System and method for multiplexing media information over a network using reduced communications resources and prior knowledge/experience of a called or calling party
US20040135819A1 (en) 2002-10-28 2004-07-15 Shalong Maa Computer remote control
US7058901B1 (en) 2002-10-29 2006-06-06 Koninklijke Philips Electronics N.V. Methods and apparatus for controlling the display of medical images
US7170890B2 (en) * 2002-12-16 2007-01-30 Zetera Corporation Electrical devices with improved communication
JP2004186757A (en) * 2002-11-29 2004-07-02 Sharp Corp How to use phone system using communication network
US20040163127A1 (en) 2002-12-11 2004-08-19 Jeyhan Karaoguz Method and system for media channel setup in a media exchange network
US20040128700A1 (en) 2002-12-30 2004-07-01 Ming-Da Pan Viewing selection management system
US20040176132A1 (en) 2003-03-04 2004-09-09 Steven Thrasher Appliance control system
JP2004312320A (en) 2003-04-07 2004-11-04 Sharp Corp Telephone set
US20040207723A1 (en) 2003-04-15 2004-10-21 Davis Jeffrey Alan UI remoting with synchronized out-of-band media
US20040207719A1 (en) * 2003-04-15 2004-10-21 Tervo Timo P. Method and apparatus for exploiting video streaming services of mobile terminals via proximity connections
KR20040093208A (en) 2003-04-22 2004-11-05 삼성전자주식회사 Apparatus and method for transmitting received television signal in mobile terminal
KR20040091963A (en) 2003-04-23 2004-11-03 삼성전자주식회사 mobile communication terminal and method for warning low voltage thereof
JP4398669B2 (en) 2003-05-08 2010-01-13 シャープ株式会社 Mobile phone equipment
JP2004355503A (en) 2003-05-30 2004-12-16 Canon Inc Device management apparatus and method therefor
JP2005039540A (en) 2003-07-15 2005-02-10 Sony Corp Television receiver
WO2005009019A2 (en) 2003-07-16 2005-01-27 Skype Limited Peer-to-peer telephone system and method
US7194259B2 (en) 2003-09-05 2007-03-20 Sony Ericsson Mobile Communications Ab Remote control device having wireless phone interface
JP2005086399A (en) * 2003-09-08 2005-03-31 Sony Corp Method and apparatus for transmission, method and apparatus for reception, and method and apparatus for transmission and reception
US20050066362A1 (en) 2003-09-24 2005-03-24 Qwest Communications International Inc System and method for simultaneously displaying video programming and instant messaging
US7873995B2 (en) 2003-09-29 2011-01-18 Avaya Inc. Method and apparatus for generating and reinforcing user passwords
US7447740B2 (en) 2003-12-19 2008-11-04 Microsoft Corporation Internet video conferencing on a home television
GB2410868A (en) 2004-02-07 2005-08-10 Boris Tsukerman Integration of 3G telephone with television set for making video calls
JP4386756B2 (en) * 2004-02-23 2009-12-16 シャープ株式会社 Receiver system
US8027335B2 (en) 2004-05-05 2011-09-27 Prodea Systems, Inc. Multimedia access device and system employing the same
US7573988B2 (en) 2004-06-02 2009-08-11 Dynalab Inc. System and method for providing customized voice connection services via gatekeeper
US20050289480A1 (en) 2004-06-25 2005-12-29 Motorola, Inc. Method and apparatus to reduce navigational keystrokes in electronic devices
ATE535078T1 (en) * 2004-07-23 2011-12-15 Citrix Systems Inc METHOD AND SYSTEM FOR SECURING REMOTE ACCESS TO PRIVATE NETWORKS
US20060040638A1 (en) 2004-08-17 2006-02-23 Mcquaide Arnold Jr Hand-held remote personal communicator & controller
KR100625376B1 (en) 2004-09-07 2006-09-20 주식회사데이콤 Tv telephony system and video telephony service method using it
JP2006101338A (en) 2004-09-30 2006-04-13 Toshiba Corp Television set
US20060109268A1 (en) 2004-11-19 2006-05-25 Joshua Napoli System and method for generating rendering data associated with a 3-D image
JP2006148741A (en) 2004-11-24 2006-06-08 Toshiba Corp Television set with video phone function and remote controller set with video phone function
DE102006001607B4 (en) * 2005-01-14 2013-02-28 Mediatek Inc. Methods and systems for the transmission of sound and image data
US20060248210A1 (en) 2005-05-02 2006-11-02 Lifesize Communications, Inc. Controlling video display mode in a video conferencing system
US8370757B2 (en) 2005-07-30 2013-02-05 Sap Ag Interface and method for extensible grouping of screen elements in real time
US20070039025A1 (en) 2005-08-09 2007-02-15 Nokia Corporation Method for application sharing
KR100738540B1 (en) 2005-08-30 2007-07-11 삼성전자주식회사 Method and apparatus of interface in multitasking system
JP2007067979A (en) 2005-08-31 2007-03-15 Toshiba Corp Real-time image display device
KR100713511B1 (en) 2005-10-07 2007-04-30 삼성전자주식회사 Method for performing video communication service in mobile communication terminal
US7596799B2 (en) 2005-11-18 2009-09-29 At&T Intellectual Property I, L.P. System and method of communicating video content
US7783702B2 (en) * 2005-11-30 2010-08-24 Microsoft Corporation Using a mobile phone to control a personal computer
US7693270B2 (en) 2005-12-15 2010-04-06 Alcatel-Lucent Usa Inc. Method and network for providing service blending to a subscriber
US20070139514A1 (en) 2005-12-19 2007-06-21 Marley Robert P Television set-top video phone system
KR100682331B1 (en) 2005-12-23 2007-02-15 삼성전자주식회사 Method for searching phone-book in portable communication terminal
TWM295862U (en) 2005-12-23 2006-08-11 Universal Scient Ind Co Ltd The remote control system and the remote controller of a network telephone communication system
US7587684B2 (en) 2006-01-23 2009-09-08 Nokia Corporation Mobile communication terminal and method therefore
US7917583B2 (en) 2006-02-17 2011-03-29 Verizon Patent And Licensing Inc. Television integrated chat and presence systems and methods
US7884844B2 (en) 2006-03-15 2011-02-08 Polycom, Inc. System for conducting videoconferencing session over television network
WO2007113580A1 (en) 2006-04-05 2007-10-11 British Telecommunications Public Limited Company Intelligent media content playing device with user attention detection, corresponding method and carrier medium
US8494479B2 (en) 2006-04-27 2013-07-23 Honeywell International Inc. System and method for optimizing power supplies in a wireless transceiver
KR100780436B1 (en) 2006-05-25 2007-11-28 삼성전자주식회사 Apparatus and method for displaying background screen of mobile communication terminal
US8004555B2 (en) 2006-05-31 2011-08-23 Motorola Mobility, Inc. Methods and devices for simultaneous dual camera video telephony
US8261191B2 (en) 2006-08-04 2012-09-04 Apple Inc. Multi-point representation
JP4719644B2 (en) 2006-08-11 2011-07-06 富士通東芝モバイルコミュニケーションズ株式会社 Mobile terminal device
WO2008030711A2 (en) 2006-09-05 2008-03-13 Hunter Douglas Inc. System and method for dual media control of remote devices
US8739240B2 (en) 2006-09-12 2014-05-27 At&T Intellectual Property I, L.P. Authoring system for IPTV network
EP1912175A1 (en) 2006-10-09 2008-04-16 Muzlach AG System and method for generating a video signal
US20100033502A1 (en) 2006-10-13 2010-02-11 Freescale Semiconductor, Inc. Image processing apparatus for superimposing windows displaying video data having different frame rates
KR101079591B1 (en) 2006-11-21 2011-11-07 삼성전자주식회사 Display apparatus having the video call function, method thereof and video call system
JP2008141487A (en) 2006-12-01 2008-06-19 Funai Electric Co Ltd Television apparatus and television system
AU2006252190B2 (en) 2006-12-21 2010-03-25 Canon Kabushiki Kaisha Collection browser for image items with multi-valued attributes
US8451824B2 (en) 2006-12-22 2013-05-28 Verizon Patent And Licensing Inc. Method and system of providing an integrated set-top box
JP2008166980A (en) 2006-12-27 2008-07-17 Funai Electric Co Ltd Television system, and remote control unit
JP2008182463A (en) 2007-01-24 2008-08-07 Funai Electric Co Ltd Television receiving device
US7966039B2 (en) * 2007-02-02 2011-06-21 Microsoft Corporation Bidirectional dynamic offloading of tasks between a host and a mobile device
US8610834B2 (en) 2007-02-02 2013-12-17 Sony Corporation System and method for effectively implementing a charging base for a remote control device
US20080200159A1 (en) 2007-02-21 2008-08-21 Research In Motion Limited Teleconferencing and call multiplexing with multiple external audio devices coupled to a single mobile telephone
US7983722B2 (en) 2007-03-29 2011-07-19 Research In Motion Limited Headset with multi-button control for a mobile communication device
US8473850B2 (en) * 2007-05-24 2013-06-25 Cisco Technology, Inc. Methods and apparatuses for displaying and managing content during a collaboration session
US20090167839A1 (en) 2007-12-27 2009-07-02 Desmond Ottmar Methods and apparatus for providing communication between multiple television viewers
US8307402B2 (en) 2008-01-22 2012-11-06 At&T Intellectual Property I, L.P. Method and apparatus for merging voice and data features with internet protocol television
US8253772B2 (en) 2008-04-04 2012-08-28 Centurylink Intellectual Property Llc Method, apparatus and system for incorporating voice or video communication into a television or compatible audio capable visual display
TR200802728A2 (en) 2008-04-18 2009-11-23 Vestel Elektroni̇k Sanayi̇ Ve Ti̇caret A.Ş. Universal remote control method for display systems.
US20100005497A1 (en) 2008-07-01 2010-01-07 Michael Maresca Duplex enhanced quality video transmission over internet
US8856849B2 (en) 2008-08-29 2014-10-07 Centurylink Intellectual Property Llc System and method for providing outbound telephone calls via a set-top box
GB2463124B (en) 2008-09-05 2012-06-20 Skype Ltd A peripheral device for communication over a communications sytem
GB2463105A (en) 2008-09-05 2010-03-10 Skype Ltd Viewer activity dependent video telephone call ringing
GB2463107A (en) 2008-09-05 2010-03-10 Skype Ltd A remote control unit of a media device for placing/receiving calls, comprising activating one of the two wireless transceivers when needed.
GB2463108B (en) 2008-09-05 2012-08-29 Skype Communication system and method
GB2463109B (en) 2008-09-05 2013-03-13 Skype Communication system and method
GB2463104A (en) 2008-09-05 2010-03-10 Skype Ltd Thumbnail selection of telephone contact using zooming
GB2463103A (en) 2008-09-05 2010-03-10 Skype Ltd Video telephone call using a television receiver
GB2463110B (en) 2008-09-05 2013-01-16 Skype Communication system and method
US8429299B2 (en) * 2008-10-03 2013-04-23 Advanced Micro Devices, Inc. Distributed audio and video processing

Also Published As

Publication number Publication date
US20100060716A1 (en) 2010-03-11
GB2463124A (en) 2010-03-10
GB2463124B (en) 2012-06-20
US8421839B2 (en) 2013-04-16
JP2012502532A (en) 2012-01-26
GB0907818D0 (en) 2009-06-17
JP5611950B2 (en) 2014-10-22
WO2010026185A1 (en) 2010-03-11
EP2335413B1 (en) 2018-03-07
US9654726B2 (en) 2017-05-16
US20130222517A1 (en) 2013-08-29

Similar Documents

Publication Publication Date Title
EP2335413B1 (en) A peripheral device for communication over a communications system
EP2335411B1 (en) Communication system and method
US9258511B2 (en) Indicia of contact viewing activity
KR101593257B1 (en) Communication system and method
US8904294B2 (en) Screen sharing
US8473994B2 (en) Communication system and method
EP2319206B1 (en) System and method for transmitting and receiving a call on a home network
US8717399B2 (en) Processing video communication data
KR100810253B1 (en) Method and system for providing service menu in a communication system
JP2009536759A (en) User interface for communication devices
JP2012502533A (en) Communication system and method
JP2007068119A (en) Method for providing communication service
KR102082804B1 (en) Method and apparatus for cloud based power management of local network devices
EP2281380B2 (en) Audio device control method and apparatus
JP4193669B2 (en) Call system and image information transmission / reception method

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20110405

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR

AX Request for extension of the european patent

Extension state: AL BA RS

DAX Request for extension of the european patent (deleted)
RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SKYPE

17Q First examination report despatched

Effective date: 20160823

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

REG Reference to a national code

Ref country code: DE

Ref legal event code: R079

Ref document number: 602009051130

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: H04N0005440000

Ipc: H04N0007140000

RIC1 Information provided on ipc code assigned before grant

Ipc: H04N 5/44 20110101ALI20170809BHEP

Ipc: H04N 7/14 20060101AFI20170809BHEP

Ipc: H04N 21/443 20110101ALI20170809BHEP

Ipc: H04N 7/173 20110101ALI20170809BHEP

Ipc: H04N 21/2383 20110101ALI20170809BHEP

Ipc: H04N 21/2187 20110101ALI20170809BHEP

Ipc: H04N 21/4788 20110101ALI20170809BHEP

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

INTG Intention to grant announced

Effective date: 20170927

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

Ref country code: AT

Ref legal event code: REF

Ref document number: 977777

Country of ref document: AT

Kind code of ref document: T

Effective date: 20180315

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602009051130

Country of ref document: DE

REG Reference to a national code

Ref country code: NL

Ref legal event code: FP

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180607

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 10

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 977777

Country of ref document: AT

Kind code of ref document: T

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180608

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180607

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602009051130

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180709

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

26N No opposition filed

Effective date: 20181210

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

REG Reference to a national code

Ref country code: BE

Ref legal event code: MM

Effective date: 20180930

REG Reference to a national code

Ref country code: IE

Ref legal event code: MM4A

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180903

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180903

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180930

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180930

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180930

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180903

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20090903

REG Reference to a national code

Ref country code: NL

Ref legal event code: PD

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC; US

Free format text: DETAILS ASSIGNMENT: CHANGE OF OWNER(S), ASSIGNMENT; FORMER OWNER NAME: SKYPE

Effective date: 20200417

REG Reference to a national code

Ref country code: DE

Ref legal event code: R081

Ref document number: 602009051130

Country of ref document: DE

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC, REDMOND, US

Free format text: FORMER OWNER: SKYPE, DUBLIN 2, IE

Ref country code: DE

Ref legal event code: R082

Ref document number: 602009051130

Country of ref document: DE

Representative=s name: PAGE, WHITE & FARRER GERMANY LLP, DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MK

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180707

REG Reference to a national code

Ref country code: GB

Ref legal event code: 732E

Free format text: REGISTERED BETWEEN 20200820 AND 20200826

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230517

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: NL

Payment date: 20230822

Year of fee payment: 15

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20240820

Year of fee payment: 16

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20240820

Year of fee payment: 16

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20240820

Year of fee payment: 16