US20020178215A1 - Method and apparatus for centralizing application access within a multimedia system - Google Patents
Method and apparatus for centralizing application access within a multimedia system Download PDFInfo
- Publication number
- US20020178215A1 US20020178215A1 US09/946,920 US94692001A US2002178215A1 US 20020178215 A1 US20020178215 A1 US 20020178215A1 US 94692001 A US94692001 A US 94692001A US 2002178215 A1 US2002178215 A1 US 2002178215A1
- Authority
- US
- United States
- Prior art keywords
- application
- data
- server
- interface
- produce
- 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.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/241—Operating system [OS] processes, e.g. server setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25833—Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
- H04N21/42653—Internal components of the client ; Characteristics thereof for processing graphics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6581—Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
Definitions
- This invention relates generally to local area networks and more particularly to a computer network that utilize a local area network.
- computer networks include a server operably coupled to a plurality of client computers.
- Such computer networks offer the advantage of sharing resources among computers, via the server, without each computer having to separately possess the particular resource.
- the server may provide Internet access for the clients, store programs and/or data for downloading to the clients, include a database that stores media content and applications for client access, and/or provides virtual sessions for the clients.
- the server processes network traffic and provides routing functions for clients to access the Internet.
- the server is functioning as a network server for the clients.
- each of the clients includes storage elements and processing resources to execute applications (e.g., word processing, drawing, spread sheets, web browser, etc) on data received via the server.
- applications e.g., word processing, drawing, spread sheets, web browser, etc
- Such a computer network may be enhanced by including file server functionality within the server to store programs and data required for a client to load and execute the application. However, the execution of the application still occurs on the client computer.
- the server creates virtual sessions with each client running terminal sessions, which are responsible only for rendering the results of the execution on the server.
- a network is generally not suitable for relatively high bandwidth high-resolution live video rendering applications.
- the server contains a database that stores all relevant information about the media content and applications that might be requested by the client.
- the computer network 10 includes a server 12 , a video/audio database 14 , a local area network (LAN) connection 15 , and a plurality of client computers 16 - 20 .
- the server includes a processor 22 , such as a central processing unit, and memory 24 , such as system memory.
- the memory 24 stores an operating system application that enables the processor 22 to perform a graphical display interface function (GDI) 26 , a direct draw function 28 , and/or an OpenGL function 30 .
- GDI graphical display interface function
- API application interface
- the video/audio database 14 stores applications that are executed by the server on behalf of one or more of the client computers 16 - 20 .
- Such applications include, but are not limited to, video games, MP3 files, DVD files, video files (e.g., MPEG files, JPEG files, MJPEG files, etc.), word processing applications, spreadsheet applications, and drawing applications.
- Each of the client computers 16 - 20 includes a processor 32 , a graphics processor 34 , and memory 36 .
- the memory 36 stores an operating system application that enables the processor 32 to function as a display driver 40 , a direct draw HAL (hardware application layer) 42 , and/or an OpenGL graphical interface 44 .
- a client computer requests access to a particular application stored in the video/audio database 14 , for example a computer game.
- the server 12 upon validating the request, opens the requested computer game application and begins execution thereof.
- the graphical data is processed by one of the graphical API's (i.e., the GDI 26 , the direct draw 28 , or the OpenGL 30 ) into device independent packets, which includes the address for client 16 .
- the packets are provided on LAN 15 and interpreted by each of the clients 16 - 20 .
- Client 16 retrieves the packets from the LAN 15 and processes them via its graphical API (i.e., the display driver 40 , the direct draw HAL 42 , or the OpenGL 44 ) to retrieve the graphical data.
- the graphical data is then processed by the graphics processor 34 to produce display data that is provided to a monitor 38 .
- the graphical API used by the client will correspond to the graphical API used by the server. For example, if the server used the GDI interface 26 , the client would use the display driver 40 . If the server 12 used the direct draw interface 28 , the client would use the direct draw HAL interface. And, if the server 12 used the OpenGL interface 30 , the client would use the OpenGL interface 44 .
- the graphical API's used by the server are device independent, while the graphical API's used by the clients are device dependent.
- the server's execution of the computer game is affected by inputs provided by the client.
- the server 12 requires a substantial amount of software and hardware to support the client in executing the computer game.
- Such software and hardware requirements increase proportionally with the amount of parallel processing the server supports for the clients. For example, if the server 12 is designed to support at least one simultaneous execution of an application for each of the clients 16 - 20 , it requires substantially more software and hardware than if the server 12 is designed to support only a few clients at any given time.
- the application being processed for a client includes computations of physics, object occlusion and behavior, a substantial amount of hardware and memory is needed to store the corresponding data. Further, each execution of the application needs to be done in individual sessions by the server while the rendering is done on the client.
- each client 16 - 20 includes a significant amount of software and hardware to function in the computer network 10 .
- each client requires a corresponding graphical API to that of the server, and will typically include multiple graphical API's, memory to store the software of the graphical API's, and a graphics processor.
- Such software and hardware adds cost to each of the client computers in the network. With a consumer demand for decreased cost of client computers, current implementation of computer networks is contra to market demands.
- FIG. 1 illustrates a schematic block diagram of a prior art computer network
- FIG. 2 illustrates a schematic block diagram of a centralized application system in accordance with the present invention
- FIG. 3 illustrates a graphical representation of a server and a client in accordance with the present invention
- FIG. 4 illustrates a schematic block diagram of an alternate centralized application system in accordance with the present invention
- FIG. 5 illustrates a logic diagram of method for accessing an application in a centralized application system in accordance with the present invention.
- FIG. 6 illustrates a logic diagram of an alternate method for accessing an application in a centralized application system in accordance with the present invention.
- the present invention provides a method and apparatus for providing access to applications in centralized application system that includes a server and a plurality of clients.
- the method and apparatus include processing that begins by having the server execute an application in response to a request and/or inputs by one of the clients to produce application data.
- the processing continues as the server provides an application interface for interfacing the application data for the requesting client to produce interface data.
- the providing of the application interface includes providing both a server application interface (e.g., a GDI, a direct draw, or the OpenGL) that functions as a device independent interface for the application data and a client application interface (e.g., a display driver, a direct draw HAL, or an OpenGL) that function as a translator for device independent commands into device dependent interface for the application data.
- a server application interface e.g., a GDI, a direct draw, or the OpenGL
- client application interface e.g., a display driver, a direct draw HAL, or an OpenGL
- the processing continues when the server encodes the interface data to produce encoded data.
- the server may use any one of the Motion Picture Expert Group (MPEG) encoding protocols to perform the encoding.
- MPEG Motion Picture Expert Group
- the processing as the server provides the encoded data to the plurality of clients.
- the processing continues as the targeted client determines that it is being addressed by the encoded data.
- the processing continues as the targeted client decodes the encoded data to produce display data. Accordingly, each of the clients includes a decoder module to decode the data, which is substantially less software and hardware than required by clients within the network of FIG. 1.
- FIG. 2 illustrates a schematic block diagram of a centralized application system 50 that includes a server 52 , a video/audio database 14 , and a plurality of client devices 54 - 58 .
- the server 52 includes a processing module 60 , memory 62 and an encoder 64 .
- the encoder 64 may be an MPEG encoder, JPEG encoder, MJPEG encoder, MP 3 encoder, and/or any other type of device that encoded video and/or audio data.
- the processing module 60 may be a single processing device or a plurality of processing devices.
- Such a processing device may be a microcontroller, microcomputer, microprocessor, digital signal processor, central processing unit, programmable gate array, logic circuitry, state machine, digital signal processor, and/or any device that manipulates signals (analog and/or digital) based on operational instructions.
- the memory 62 which functions as a digital storage medium, may be a single memory device or a plurality of memory devices. Such a memory device may be volatile memory, nonvolatile memory, static memory, dynamic memory, read-only memory, random access memory, and/or any device that stores digital information.
- the memory 62 store operational instructions that, when executed by the corresponding processing module 60 causes the processing module to implement one or more of the processing steps illustrated in FIGS. 5 and 6, and as graphically illustrated in FIGS. 2 - 4 .
- Each of the client devices 54 - 58 which may be a computer, television, monitor, etc., includes a decoder 86 and a display interface 88 , or a processing module 80 , memory 82 , and a display interface 78 .
- the decoder 86 is the compliment of the encoder 64 employed by the server 52 .
- the decoder 86 may be an MPEG decoder, JPEG decoder, MP3 decoder, MJPEG decoder, and/or any other device for decoding encoding video and/or audio data, such as a DVD chip set.
- the processing module 80 may be a single processing device or a plurality of processing devices.
- Such a processing device may be a microcontroller, microcomputer, microprocessor, digital signal processor, central processing unit, programmable gate array, logic circuitry, state machine, digital signal processor, and/or any device that manipulates signals (analog and/or digital) based on operational instructions.
- the memory 82 which functions as a digital storage medium, may be a single memory device or a plurality of memory devices. Such a memory device may be volatile memory, nonvolatile memory, static memory, dynamic memory, read-only memory, random access memory, and/or any device that stores digital information.
- the memory 82 store operational instructions that, when executed by the corresponding processing module 80 causes the processing module to implement one or more of the processing steps illustrated in FIGS. 5 and 6, and as graphically illustrated in FIGS. 2 - 4 .
- one of the clients requests access to an application stored in the video/audio database 14 by providing a request to the server 52 .
- Upon validating the request using conventional authentication processes of local area networks opens the application 68 and begins executing the application 68 via the processing module 60 .
- the processing module 60 As a result of executing the application 68 , the processing module 60 generates application data 72 .
- the application data 72 includes graphical data representing the current execution of the application 68 .
- Such an application 68 may be a game, a drawing application, a word processing application, a presentation application, a spreadsheet application, a web browser application, an email application, a time management application, a database application, drawing application, video application, audio application, and/or any other type of processing of video, text, and/or audio data.
- the server 52 then processes the application data 72 via the application interface 70 routine being executed by the processing module 60 to produce interface data.
- the application interface 70 provides a server application interface operable to provide a device independent interface for the application data and a client application interface to provide a device dependent interface for the application data.
- the server application interface may be a graphical display interface (GDI), while the client application interface may be a corresponding device driver.
- the server application interface may be an independent direct draw interface, while the client application interface may be at least one of direct draw hardware abstraction layer (HAL) and a direct draw three-dimensional HAL.
- HAL direct draw hardware abstraction layer
- the server application interface and the client application interface may be an Open GL interface.
- the server 52 then encodes the interface data, which is in a device dependent state, via the server encoder 64 to produce encoded data 74 .
- the server encoder 64 may be an MPEG encoder that provides the application data as MPEG packets.
- the server encoder may include a drawing packet instruction encoder and router to provide encoded instruction packets regarding the application data to the plurality of clients.
- the server 52 provides the encoded data 74 as packets to the plurality of clients.
- the server may include an Ethernet interface that is operably coupled to a network connection, which provides coupling to the plurality of clients.
- the server may provide the packets of data to the plurality of clients via a wireless network connection, such as a radio frequency transmission path and/or infrared transmission path.
- Each of the clients receives the packets of application data and determines whether it is a target of the packets.
- each client includes an Ethernet interface or a wireless interface.
- An Ethernet interface is operably coupled to a network connection, which provides coupling between the server and the plurality of clients.
- the wireless interface couples the client to the server via a wireless network connection, such as a radio frequency transmission path and/or infrared transmission path.
- the client decodes the packets to recapture display data 84 or 90 .
- the display data 84 or 90 is provided to a display interface 78 or 88 , which couples the client device to a display.
- the display may be a monitor, television, computer, personal digital assistant, etc.
- the client device may be incorporated in the display.
- the client 56 decodes the packets via the decoder 86 .
- the type of the decoder 86 is dependent on the type of encoder used in the server.
- the decoder 86 may be an MPEG decoder and/or a DVD player chip set.
- the decoder 86 includes a packet decoder and a rendering engine. The packet decoder retrieves drawing instructions from the encoded instruction packets and the rendering engine generates display data from the retrieved drawing instructions.
- the client 54 decodes the packets via the processing module 80 functioning as a decoder 76 .
- the decoding function 76 may be programmed to perform as an MPEG decoder and/or a DVD player chip set.
- the decoder 76 may be programmed to retrieve drawing instructions from the encoded instruction packets and then generate display data from the retrieved drawing instructions.
- the centralized application system enables each of the client devices to be constructed of less expensive components, such as an MPEG decoder or DVD chip set, than the processing circuitry used to implement the clients of FIG. 1. Accordingly, the present invention enables inexpensive “thin” components to be used as the client device, thus reducing the overall cost of the network, while maintaining the quality and efficiency of application sharing.
- FIG. 3 illustrates a graphical representation of a server 52 and a client 56 of the system 50 of FIG. 1.
- the server 52 includes the processing module 60 and memory 62 , which function to provide a plurality of applications 68 - 1 , - 2 , and - 3 , a plurality of graphical display interfaces 26 - 1 , - 2 , and - 3 , a plurality of display drivers 40 - 1 , - 2 , and - 3 , a plurality of direct draw interfaces 28 - 1 , - 2 , and - 3 , a plurality of direct draw HAL interfaces 42 - 1 , - 2 , and - 3 , a plurality of OpenGL device independent interfaces 30 - 1 , - 2 , and - 3 , and a plurality of device dependent OpenGL interfaces 44 - 1 , - 2 , and - 3 .
- the plurality of display drivers 40 - 1 , - 2 , and - 3 , the plurality of direct draw HAL interfaces 42 - 1 , - 2 , and - 3 , and the plurality of device dependent OpenGL interfaces 44 - 1 , - 2 , and - 3 are coupled to the server encoder 64 .
- the server 52 further includes an input decoder 92 operably coupled to receive inputs and/or requests from the plurality of clients via the network connection (wired or wireless).
- the server 52 still further includes a plurality of display HAL interfaces 94 - 1 , - 2 , and - 3 , and a plurality of direct x interfaces 96 - 1 , - 2 , and - 3 .
- the functioning of a display HAL interface and a direct x interface is known, thus no further discussion will be presented except to further illustrate the concepts of the present invention.
- the client 56 includes a decoder 86 , a display interface 88 and an input processor 98 .
- the functionality of the decoder 86 and the display interface 88 is as previously described with reference to FIG. 2.
- the input processor 98 is operably coupled to receive inputs from an input device and provide packets of the input data to the server 52 .
- the input device may be a keyboard, joystick, mouse, voice recognition software, touch screen, eye tracking device, etc.
- the input processor 98 further includes a network interface such as an Ethernet card or a wireless network card.
- the client 56 provides a request to access an application or provides inputs regarding the execution of the application to the server 52 .
- the server 52 receives the inputs via the input decoder 92 , which includes a network interface card corresponding to the network interface care included in the client 56 .
- the server 52 processes the decoded input via one of the display HAL interfaces 94 - 1 , - 2 , and - 3 and the corresponding one of the direct x interfaces 96 - 1 , - 2 , and - 3 .
- the resulting recaptured input signal is provided to a corresponding application 68 - 1 , - 2 , and - 3 .
- the server 52 includes a plurality of layers of device independent API's, applications, and device dependent API's. Each layer supports one of the clients associated with the server. Such layering may be implemented as a virtual layering such that one processing module performs all of the applications and API's and provides logical separation of the processing. Alternatively, separate processing modules may implement the layering, where each processing module processes a layer.
- the server 52 adjusts the processing of the application 68 - 1 , - 2 , and - 3 based on the recaptured input signals.
- the resulting application data is then processed by one of the device independent API's (e.g., GDI, direct draw, or Open GL) and then the application data is processed by one of the device dependent API's (e.g., display driver, direct draw HAL, and Open GL).
- the interfaced processed data is provided to the server encoder 64 , which encodes the data into packets.
- the server 52 provides the packets to the targeted client via the wired or wireless network connection.
- FIG. 4 illustrates a schematic block diagram of an alternate centralized application system 100 that includes a server 52 , a video/audio database 14 , and a plurality of clients 54 - 58 .
- the server 52 includes the processing module 60 , the memory 62 and the server encoder 64 .
- the server encoder 64 includes a drawing packet instruction encoder 102 and a router 104 .
- the functionality of the processing module 60 and the memory 62 is as previously discussed with reference to FIGS. 2 and 3.
- Each of the clients includes the processing module 80 , the memory 82 , and the display interface 78 .
- the memory 82 stores operational instructions that cause the processing module 80 to function as a decoder 76 that includes a packet decoder 108 and a rendering engine 110 .
- the server 52 generates rendering instructions regarding the application data via the drawing packet instruction encoder 102 .
- the rendering instructions follow a convention video and/or audio rendering routing and include graphics data.
- the encoder 102 encodes the graphics data, which is provided to the clients via the router 104 .
- the clients 54 - 58 receive the encoded instruction packets 106 and determine whether it is a target of the packets 106 . When the client is a target, the client decodes the packets 106 to recapture the graphics data.
- the rendering engine 110 processes the graphics data to produce pixel data that is subsequently provided to a display.
- FIG. 5 illustrates a logic diagram of method for accessing an application in a centralized application system.
- the processing begins at step 120 where the server executes an application to produce application data.
- the application may be a game, a drawing application, a word processing application, a presentation application, a spreadsheet application, a web browser application, an email application, a time management application, and a database application.
- the execution of an application includes opening the application in response to a request and adjusting the execution of the application based on input signals received from the client.
- step 122 the server provides an application interface for interfacing the application data for a targeted client to produce interface data.
- the providing of the application interface may be done by providing a device independent API and a device dependent API.
- step 124 the server encodes the interface data to produce encoded data.
- the server may using an MPEG encoding scheme, drawing instruction packet encoding, or other means for encoding video and/or audio data to produce the encoded data.
- step 126 the server provides the encoded data to the plurality of clients.
- each of the clients determines whether it is a target of the encoded data.
- the process then proceeds to step 130 where the processing branches depending on whether the client is being addressed by the packets. When the client is not addressed, the processing proceeds to step 134 where the processing is complete for this client. If, however, the client is addressed, the process proceeds to claim 132 where the client decodes the encoded data to recapture the application data. The client processes the application data to produce display data.
- FIG. 6 illustrates a logic diagram of an alternate method for accessing an application in a centralized application system.
- the processing begins at step 140 where a client receives a user input signal from a user of the client device.
- the user input signal may be to initiate execution of an application or providing instructions on how to manipulate the execution of the application.
- the processing then continues at step 142 where the client processes the user input signal to produce input data.
- the processing then continues at step 144 where the client encodes the input data to produce input packets.
- the processing then continues at step 146 where the client provides the input packets to the server.
- step 148 the server decodes the input packets to recapture the input data.
- step 150 the server provides a HAL and Direct X application interface such that the input signals are interfaced with the application.
- step 152 the server alters execution of the application based on the input data.
- the client devices may include less sophisticated circuitry to produce display data. As such, the cost of such client devices is reduced.
- other embodiments may be derived from the teachings of the present invention without deviating from the scope of the claims.
Abstract
Description
- This patent application is a continuation-in-part of co-pending patent application entitled METHOD AND APPARATUS FOR A MULTIMEDIA SYSTEM, having a filing date of: May 24, 2001, and a serial number of: Ser. No. 09/864,524.
- This invention relates generally to local area networks and more particularly to a computer network that utilize a local area network.
- As is known, computer networks include a server operably coupled to a plurality of client computers. Such computer networks offer the advantage of sharing resources among computers, via the server, without each computer having to separately possess the particular resource. For example, the server may provide Internet access for the clients, store programs and/or data for downloading to the clients, include a database that stores media content and applications for client access, and/or provides virtual sessions for the clients.
- In one known computer network, the server processes network traffic and provides routing functions for clients to access the Internet. As such, the server is functioning as a network server for the clients. Accordingly, each of the clients includes storage elements and processing resources to execute applications (e.g., word processing, drawing, spread sheets, web browser, etc) on data received via the server. Such a computer network may be enhanced by including file server functionality within the server to store programs and data required for a client to load and execute the application. However, the execution of the application still occurs on the client computer.
- In another known computer network, the server creates virtual sessions with each client running terminal sessions, which are responsible only for rendering the results of the execution on the server. However, such a network is generally not suitable for relatively high bandwidth high-resolution live video rendering applications.
- In yet another known computer network, the server contains a database that stores all relevant information about the media content and applications that might be requested by the client. Such a computer network is illustrated in FIG. 1. The
computer network 10 includes aserver 12, a video/audio database 14, a local area network (LAN) connection 15, and a plurality of client computers 16-20. The server includes aprocessor 22, such as a central processing unit, andmemory 24, such as system memory. Thememory 24 stores an operating system application that enables theprocessor 22 to perform a graphical display interface function (GDI) 26, adirect draw function 28, and/or an OpenGLfunction 30. Each of these graphical interfacing functions is well known to provide an application interface (API) for the server when processing one or more applications stored in the video/audio database 14. - The video/
audio database 14 stores applications that are executed by the server on behalf of one or more of the client computers 16-20. Such applications include, but are not limited to, video games, MP3 files, DVD files, video files (e.g., MPEG files, JPEG files, MJPEG files, etc.), word processing applications, spreadsheet applications, and drawing applications. - Each of the client computers16-20 includes a
processor 32, agraphics processor 34, andmemory 36. Thememory 36 stores an operating system application that enables theprocessor 32 to function as adisplay driver 40, a direct draw HAL (hardware application layer) 42, and/or an OpenGLgraphical interface 44. - In operation, a client computer, for
example client 16, requests access to a particular application stored in the video/audio database 14, for example a computer game. Theserver 12, upon validating the request, opens the requested computer game application and begins execution thereof. As theserver 12 is executing the computer game application, it is generating graphical data. The graphical data is processed by one of the graphical API's (i.e., the GDI 26, thedirect draw 28, or the OpenGL 30) into device independent packets, which includes the address forclient 16. The packets are provided on LAN 15 and interpreted by each of the clients 16-20. -
Client 16 retrieves the packets from the LAN 15 and processes them via its graphical API (i.e., thedisplay driver 40, the direct draw HAL 42, or the OpenGL 44) to retrieve the graphical data. The graphical data is then processed by thegraphics processor 34 to produce display data that is provided to amonitor 38. Note that the graphical API used by the client will correspond to the graphical API used by the server. For example, if the server used the GDIinterface 26, the client would use thedisplay driver 40. If theserver 12 used thedirect draw interface 28, the client would use the direct draw HAL interface. And, if theserver 12 used the OpenGLinterface 30, the client would use the OpenGLinterface 44. As is known, the graphical API's used by the server are device independent, while the graphical API's used by the clients are device dependent. As is also known, the server's execution of the computer game is affected by inputs provided by the client. - While it appears to the user of
client computer 16 that all of the processing of the computer game is being done by theclient computer 16, in actuality there is a substantial amount of interaction between theserver 12 and theclient computer 16. Accordingly, theserver 12 requires a substantial amount of software and hardware to support the client in executing the computer game. Such software and hardware requirements increase proportionally with the amount of parallel processing the server supports for the clients. For example, if theserver 12 is designed to support at least one simultaneous execution of an application for each of the clients 16-20, it requires substantially more software and hardware than if theserver 12 is designed to support only a few clients at any given time. As another example, if the application being processed for a client includes computations of physics, object occlusion and behavior, a substantial amount of hardware and memory is needed to store the corresponding data. Further, each execution of the application needs to be done in individual sessions by the server while the rendering is done on the client. - In addition, each client16-20 includes a significant amount of software and hardware to function in the
computer network 10. As mentioned, each client requires a corresponding graphical API to that of the server, and will typically include multiple graphical API's, memory to store the software of the graphical API's, and a graphics processor. Such software and hardware adds cost to each of the client computers in the network. With a consumer demand for decreased cost of client computers, current implementation of computer networks is contra to market demands. - Therefore, a need exists for a method and apparatus that reduces software and/or hardware requirements within client devices within networks while maintaining the advantages of networking by having device and application independent rendering instructions on the client.
- FIG. 1 illustrates a schematic block diagram of a prior art computer network;
- FIG. 2 illustrates a schematic block diagram of a centralized application system in accordance with the present invention;
- FIG. 3 illustrates a graphical representation of a server and a client in accordance with the present invention;
- FIG. 4 illustrates a schematic block diagram of an alternate centralized application system in accordance with the present invention;
- FIG. 5 illustrates a logic diagram of method for accessing an application in a centralized application system in accordance with the present invention; and
- FIG. 6 illustrates a logic diagram of an alternate method for accessing an application in a centralized application system in accordance with the present invention.
- Generally, the present invention provides a method and apparatus for providing access to applications in centralized application system that includes a server and a plurality of clients. The method and apparatus include processing that begins by having the server execute an application in response to a request and/or inputs by one of the clients to produce application data. The processing continues as the server provides an application interface for interfacing the application data for the requesting client to produce interface data. The providing of the application interface includes providing both a server application interface (e.g., a GDI, a direct draw, or the OpenGL) that functions as a device independent interface for the application data and a client application interface (e.g., a display driver, a direct draw HAL, or an OpenGL) that function as a translator for device independent commands into device dependent interface for the application data.
- The processing continues when the server encodes the interface data to produce encoded data. The server may use any one of the Motion Picture Expert Group (MPEG) encoding protocols to perform the encoding. The processing as the server provides the encoded data to the plurality of clients. The processing continues as the targeted client determines that it is being addressed by the encoded data. The processing continues as the targeted client decodes the encoded data to produce display data. Accordingly, each of the clients includes a decoder module to decode the data, which is substantially less software and hardware than required by clients within the network of FIG. 1.
- The present invention can be more fully described with reference to FIGS.2-6. FIG. 2 illustrates a schematic block diagram of a
centralized application system 50 that includes aserver 52, a video/audio database 14, and a plurality of client devices 54-58. Theserver 52 includes aprocessing module 60,memory 62 and anencoder 64. Theencoder 64 may be an MPEG encoder, JPEG encoder, MJPEG encoder, MP3 encoder, and/or any other type of device that encoded video and/or audio data. Theprocessing module 60 may be a single processing device or a plurality of processing devices. Such a processing device may be a microcontroller, microcomputer, microprocessor, digital signal processor, central processing unit, programmable gate array, logic circuitry, state machine, digital signal processor, and/or any device that manipulates signals (analog and/or digital) based on operational instructions. Thememory 62, which functions as a digital storage medium, may be a single memory device or a plurality of memory devices. Such a memory device may be volatile memory, nonvolatile memory, static memory, dynamic memory, read-only memory, random access memory, and/or any device that stores digital information. Thememory 62 store operational instructions that, when executed by the correspondingprocessing module 60 causes the processing module to implement one or more of the processing steps illustrated in FIGS. 5 and 6, and as graphically illustrated in FIGS. 2-4. - Each of the client devices54-58, which may be a computer, television, monitor, etc., includes a
decoder 86 and adisplay interface 88, or aprocessing module 80,memory 82, and adisplay interface 78. Thedecoder 86 is the compliment of theencoder 64 employed by theserver 52. As such, thedecoder 86 may be an MPEG decoder, JPEG decoder, MP3 decoder, MJPEG decoder, and/or any other device for decoding encoding video and/or audio data, such as a DVD chip set. Theprocessing module 80 may be a single processing device or a plurality of processing devices. Such a processing device may be a microcontroller, microcomputer, microprocessor, digital signal processor, central processing unit, programmable gate array, logic circuitry, state machine, digital signal processor, and/or any device that manipulates signals (analog and/or digital) based on operational instructions. Thememory 82, which functions as a digital storage medium, may be a single memory device or a plurality of memory devices. Such a memory device may be volatile memory, nonvolatile memory, static memory, dynamic memory, read-only memory, random access memory, and/or any device that stores digital information. Thememory 82 store operational instructions that, when executed by the correspondingprocessing module 80 causes the processing module to implement one or more of the processing steps illustrated in FIGS. 5 and 6, and as graphically illustrated in FIGS. 2-4. - In operation, one of the clients requests access to an application stored in the video/
audio database 14 by providing a request to theserver 52. Upon validating the request using conventional authentication processes of local area networks, opens theapplication 68 and begins executing theapplication 68 via theprocessing module 60. As a result of executing theapplication 68, theprocessing module 60 generatesapplication data 72. Theapplication data 72 includes graphical data representing the current execution of theapplication 68. Such anapplication 68 may be a game, a drawing application, a word processing application, a presentation application, a spreadsheet application, a web browser application, an email application, a time management application, a database application, drawing application, video application, audio application, and/or any other type of processing of video, text, and/or audio data. - The
server 52 then processes theapplication data 72 via theapplication interface 70 routine being executed by theprocessing module 60 to produce interface data. In general, theapplication interface 70 provides a server application interface operable to provide a device independent interface for the application data and a client application interface to provide a device dependent interface for the application data. The server application interface may be a graphical display interface (GDI), while the client application interface may be a corresponding device driver. Alternatively, the server application interface may be an independent direct draw interface, while the client application interface may be at least one of direct draw hardware abstraction layer (HAL) and a direct draw three-dimensional HAL. As yet a further alternative, the server application interface and the client application interface may be an Open GL interface. - The
server 52 then encodes the interface data, which is in a device dependent state, via theserver encoder 64 to produce encodeddata 74. Theserver encoder 64 may be an MPEG encoder that provides the application data as MPEG packets. Alternatively, the server encoder may include a drawing packet instruction encoder and router to provide encoded instruction packets regarding the application data to the plurality of clients. - The
server 52 provides the encodeddata 74 as packets to the plurality of clients. As such, the server may include an Ethernet interface that is operably coupled to a network connection, which provides coupling to the plurality of clients. Alternatively, the server may provide the packets of data to the plurality of clients via a wireless network connection, such as a radio frequency transmission path and/or infrared transmission path. - Each of the clients receives the packets of application data and determines whether it is a target of the packets. To receive the packets, each client includes an Ethernet interface or a wireless interface. An Ethernet interface is operably coupled to a network connection, which provides coupling between the server and the plurality of clients. The wireless interface couples the client to the server via a wireless network connection, such as a radio frequency transmission path and/or infrared transmission path.
- When the client is a target of the packets, the client decodes the packets to recapture
display data display data display interface - For example, if
client 56 is the target of the packets, theclient 56 decodes the packets via thedecoder 86. The type of thedecoder 86 is dependent on the type of encoder used in the server. For instance, thedecoder 86 may be an MPEG decoder and/or a DVD player chip set. Alternatively, thedecoder 86 includes a packet decoder and a rendering engine. The packet decoder retrieves drawing instructions from the encoded instruction packets and the rendering engine generates display data from the retrieved drawing instructions. - If
client 54 is the target of the packets, theclient 54 decodes the packets via theprocessing module 80 functioning as adecoder 76. Thedecoding function 76 may be programmed to perform as an MPEG decoder and/or a DVD player chip set. Alternatively, thedecoder 76 may be programmed to retrieve drawing instructions from the encoded instruction packets and then generate display data from the retrieved drawing instructions. - As one of average skill in the art will appreciate, the centralized application system enables each of the client devices to be constructed of less expensive components, such as an MPEG decoder or DVD chip set, than the processing circuitry used to implement the clients of FIG. 1. Accordingly, the present invention enables inexpensive “thin” components to be used as the client device, thus reducing the overall cost of the network, while maintaining the quality and efficiency of application sharing.
- FIG. 3 illustrates a graphical representation of a
server 52 and aclient 56 of thesystem 50 of FIG. 1. Theserver 52 includes theprocessing module 60 andmemory 62, which function to provide a plurality of applications 68-1, -2, and -3, a plurality of graphical display interfaces 26-1, -2, and -3, a plurality of display drivers 40-1, -2, and -3, a plurality of direct draw interfaces 28-1, -2, and -3, a plurality of direct draw HAL interfaces 42-1, -2, and -3, a plurality of OpenGL device independent interfaces 30-1, -2, and -3, and a plurality of device dependent OpenGL interfaces 44-1, -2, and -3. The plurality of display drivers 40-1, -2, and -3, the plurality of direct draw HAL interfaces 42-1, -2, and -3, and the plurality of device dependent OpenGL interfaces 44-1, -2, and -3 are coupled to theserver encoder 64. - The
server 52 further includes aninput decoder 92 operably coupled to receive inputs and/or requests from the plurality of clients via the network connection (wired or wireless). Theserver 52 still further includes a plurality of display HAL interfaces 94-1, -2, and -3, and a plurality of direct x interfaces 96-1, -2, and -3. The functioning of a display HAL interface and a direct x interface is known, thus no further discussion will be presented except to further illustrate the concepts of the present invention. - The
client 56 includes adecoder 86, adisplay interface 88 and aninput processor 98. The functionality of thedecoder 86 and thedisplay interface 88 is as previously described with reference to FIG. 2. Theinput processor 98 is operably coupled to receive inputs from an input device and provide packets of the input data to theserver 52. The input device may be a keyboard, joystick, mouse, voice recognition software, touch screen, eye tracking device, etc. Theinput processor 98 further includes a network interface such as an Ethernet card or a wireless network card. - In operation, the
client 56 provides a request to access an application or provides inputs regarding the execution of the application to theserver 52. Theserver 52 receives the inputs via theinput decoder 92, which includes a network interface card corresponding to the network interface care included in theclient 56. Upon decoding the input, theserver 52 processes the decoded input via one of the display HAL interfaces 94-1, -2, and -3 and the corresponding one of the direct x interfaces 96-1, -2, and -3. The resulting recaptured input signal is provided to a corresponding application 68-1, -2, and -3. As one of average skill in the art will appreciate, theserver 52 includes a plurality of layers of device independent API's, applications, and device dependent API's. Each layer supports one of the clients associated with the server. Such layering may be implemented as a virtual layering such that one processing module performs all of the applications and API's and provides logical separation of the processing. Alternatively, separate processing modules may implement the layering, where each processing module processes a layer. - The
server 52 adjusts the processing of the application 68-1, -2, and -3 based on the recaptured input signals. The resulting application data is then processed by one of the device independent API's (e.g., GDI, direct draw, or Open GL) and then the application data is processed by one of the device dependent API's (e.g., display driver, direct draw HAL, and Open GL). The interfaced processed data is provided to theserver encoder 64, which encodes the data into packets. Theserver 52 provides the packets to the targeted client via the wired or wireless network connection. - FIG. 4 illustrates a schematic block diagram of an alternate
centralized application system 100 that includes aserver 52, a video/audio database 14, and a plurality of clients 54-58. Theserver 52 includes theprocessing module 60, thememory 62 and theserver encoder 64. Theserver encoder 64 includes a drawingpacket instruction encoder 102 and arouter 104. The functionality of theprocessing module 60 and thememory 62 is as previously discussed with reference to FIGS. 2 and 3. - Each of the clients includes the
processing module 80, thememory 82, and thedisplay interface 78. Thememory 82 stores operational instructions that cause theprocessing module 80 to function as adecoder 76 that includes apacket decoder 108 and arendering engine 110. - In operation, the
server 52 generates rendering instructions regarding the application data via the drawingpacket instruction encoder 102. The rendering instructions follow a convention video and/or audio rendering routing and include graphics data. In addition, theencoder 102 encodes the graphics data, which is provided to the clients via therouter 104. The clients 54-58 receive the encodedinstruction packets 106 and determine whether it is a target of thepackets 106. When the client is a target, the client decodes thepackets 106 to recapture the graphics data. Therendering engine 110 processes the graphics data to produce pixel data that is subsequently provided to a display. - FIG. 5 illustrates a logic diagram of method for accessing an application in a centralized application system. The processing begins at
step 120 where the server executes an application to produce application data. The application may be a game, a drawing application, a word processing application, a presentation application, a spreadsheet application, a web browser application, an email application, a time management application, and a database application. The execution of an application includes opening the application in response to a request and adjusting the execution of the application based on input signals received from the client. - The processing continues at
step 122, where the server provides an application interface for interfacing the application data for a targeted client to produce interface data. The providing of the application interface may be done by providing a device independent API and a device dependent API. The processing then continues atstep 124, where the server encodes the interface data to produce encoded data. The server may using an MPEG encoding scheme, drawing instruction packet encoding, or other means for encoding video and/or audio data to produce the encoded data. The processing continues atstep 126 where the server provides the encoded data to the plurality of clients. - The processing then continues at
step 128, where each of the clients determines whether it is a target of the encoded data. The process then proceeds to step 130 where the processing branches depending on whether the client is being addressed by the packets. When the client is not addressed, the processing proceeds to step 134 where the processing is complete for this client. If, however, the client is addressed, the process proceeds to claim 132 where the client decodes the encoded data to recapture the application data. The client processes the application data to produce display data. - FIG. 6 illustrates a logic diagram of an alternate method for accessing an application in a centralized application system. The processing begins at
step 140 where a client receives a user input signal from a user of the client device. The user input signal may be to initiate execution of an application or providing instructions on how to manipulate the execution of the application. The processing then continues atstep 142 where the client processes the user input signal to produce input data. The processing then continues atstep 144 where the client encodes the input data to produce input packets. The processing then continues atstep 146 where the client provides the input packets to the server. - The processing then proceeds to step148 where the server decodes the input packets to recapture the input data. The processing then continues at
step 150 where the server provides a HAL and Direct X application interface such that the input signals are interfaced with the application. The processing then proceeds to step 152 where the server alters execution of the application based on the input data. - The preceding discussion has presented a method and apparatus for reducing hardware and software requirements for client devices within local area networks. By including device independent and dependent API's in the server, the client devices may include less sophisticated circuitry to produce display data. As such, the cost of such client devices is reduced. As one of average skill in the art will appreciate, other embodiments may be derived from the teachings of the present invention without deviating from the scope of the claims.
Claims (50)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/946,920 US20020178215A1 (en) | 2001-05-24 | 2001-09-05 | Method and apparatus for centralizing application access within a multimedia system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/864,524 US7099951B2 (en) | 2001-05-24 | 2001-05-24 | Method and apparatus for multimedia system |
US09/946,920 US20020178215A1 (en) | 2001-05-24 | 2001-09-05 | Method and apparatus for centralizing application access within a multimedia system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/864,524 Continuation-In-Part US7099951B2 (en) | 2001-05-24 | 2001-05-24 | Method and apparatus for multimedia system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20020178215A1 true US20020178215A1 (en) | 2002-11-28 |
Family
ID=25343454
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/864,524 Expired - Lifetime US7099951B2 (en) | 2001-05-24 | 2001-05-24 | Method and apparatus for multimedia system |
US09/946,920 Abandoned US20020178215A1 (en) | 2001-05-24 | 2001-09-05 | Method and apparatus for centralizing application access within a multimedia system |
US09/946,912 Expired - Lifetime US7836193B2 (en) | 2001-05-24 | 2001-09-05 | Method and apparatus for providing graphical overlays in a multimedia system |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/864,524 Expired - Lifetime US7099951B2 (en) | 2001-05-24 | 2001-05-24 | Method and apparatus for multimedia system |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/946,912 Expired - Lifetime US7836193B2 (en) | 2001-05-24 | 2001-09-05 | Method and apparatus for providing graphical overlays in a multimedia system |
Country Status (2)
Country | Link |
---|---|
US (3) | US7099951B2 (en) |
TW (1) | TW580833B (en) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030152148A1 (en) * | 2001-11-21 | 2003-08-14 | Indra Laksono | System and method for multiple channel video transcoding |
US20030184548A1 (en) * | 2002-03-29 | 2003-10-02 | Emmot Darel N. | System and method for passing messages among processing nodes in a distributed system |
US20040085947A1 (en) * | 2002-10-31 | 2004-05-06 | Jan-Erik Ekberg | Device detection and service discovery system and method for a mobile ad hoc communications network |
US20050058108A1 (en) * | 2003-09-16 | 2005-03-17 | Jan-Erik Ekberg | Application control in peer-to-peer ad-hoc communication networks |
US20050058109A1 (en) * | 2003-09-16 | 2005-03-17 | Jan-Erik Ekberg | Mechanism for improving connection control in peer-to-peer ad-hoc networks |
US20050059379A1 (en) * | 2003-09-16 | 2005-03-17 | Sampo Sovio | Method of initializing and using a security association for middleware based on physical proximity |
US20050208892A1 (en) * | 2004-03-17 | 2005-09-22 | Nokia Corporation | System and method for remote service information |
US20050223116A1 (en) * | 2004-03-31 | 2005-10-06 | Pak-Lung Seto | Data encoding and decoding in a data storage system |
US20060178215A1 (en) * | 2005-02-08 | 2006-08-10 | Jaakko Lehikoinen | System and method for provision of information |
US20060195884A1 (en) * | 2005-01-05 | 2006-08-31 | Van Zoest Alexander | Interactive multichannel data distribution system |
US20060199533A1 (en) * | 2005-03-01 | 2006-09-07 | Martin Zilliacus | Method and system for tactile confirmation of service bookmarks |
US20060256861A1 (en) * | 2001-11-21 | 2006-11-16 | Vixs Systems, Inc. | Method and system for rate control during video transcoding |
US20060258338A1 (en) * | 2005-05-10 | 2006-11-16 | Outi Markki | Content distribution & communication system for enhancing service distribution in short range radio environment |
US20060268896A1 (en) * | 2005-05-31 | 2006-11-30 | Sakari Kotola | System and method for services functionality |
US20070118615A1 (en) * | 2005-11-23 | 2007-05-24 | Utilit Technologies, Inc. | Information technology system with multiple item targeting |
EP1839177A2 (en) * | 2005-01-05 | 2007-10-03 | Divx, Inc. | System and method for a remote user interface |
US7675972B1 (en) | 2001-07-30 | 2010-03-09 | Vixs Systems, Inc. | System and method for multiple channel video transcoding |
US20110106882A1 (en) * | 2008-07-28 | 2011-05-05 | Sony Corporation | Client device, information processing system and associated methodology of accessing networked services |
US8171461B1 (en) * | 2006-02-24 | 2012-05-01 | Nvidia Coporation | Primitive program compilation for flat attributes with provoking vertex independence |
US20160050445A1 (en) * | 2014-08-15 | 2016-02-18 | Fox Digital Enterprises, Inc. | Data repository for sports and entertainment information |
US9265458B2 (en) | 2012-12-04 | 2016-02-23 | Sync-Think, Inc. | Application of smooth pursuit cognitive testing paradigms to clinical drug development |
US9380976B2 (en) | 2013-03-11 | 2016-07-05 | Sync-Think, Inc. | Optical neuroinformatics |
CN105763899A (en) * | 2016-01-29 | 2016-07-13 | 四川长虹电器股份有限公司 | Intelligent set top box application management system and method |
Families Citing this family (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6263503B1 (en) | 1999-05-26 | 2001-07-17 | Neal Margulis | Method for effectively implementing a wireless television system |
US7200855B2 (en) * | 2001-05-24 | 2007-04-03 | Vixs Systems, Inc. | Method and apparatus of multiplexing a plurality of channels in a multimedia system |
US20030074093A1 (en) * | 2001-09-26 | 2003-04-17 | Media & Entertainment.Com, Inc. | Digital encoding and/or conversion |
US7283504B1 (en) * | 2001-10-24 | 2007-10-16 | Bbn Technologies Corp. | Radio with internal packet network |
US20030191623A1 (en) * | 2002-02-25 | 2003-10-09 | Oak Technology, Inc. | Computer system capable of executing a remote operating system |
US9122808B2 (en) * | 2002-02-25 | 2015-09-01 | Csr Technology Inc. | Network interface to a video device |
KR100490401B1 (en) * | 2002-03-26 | 2005-05-17 | 삼성전자주식회사 | Apparatus and method for processing image in thin-client environment |
US6741587B2 (en) * | 2002-04-02 | 2004-05-25 | Nokia Corporation | Inter-frequency measurements with MIMO terminals |
US20030222843A1 (en) * | 2002-05-28 | 2003-12-04 | Birmingham Blair B.A. | Systems and methods for encoding control signals initiated from remote devices |
SE526049C2 (en) * | 2003-01-17 | 2005-06-21 | Arash Rouhi | Multimedia network system for home products e.g. computers, TV equipment, has application specific connector arrangements for connecting digital/analogous devices to number of receiving/transmitting terminals through identical interface |
US8204353B2 (en) * | 2002-11-27 | 2012-06-19 | The Nielsen Company (Us), Llc | Apparatus and methods for tracking and analyzing digital recording device event sequences |
CN1720738A (en) * | 2002-12-04 | 2006-01-11 | 皇家飞利浦电子股份有限公司 | Method of considering content equivalency when rendering content |
US20060031889A1 (en) * | 2002-12-11 | 2006-02-09 | Bennett James D | Video processing system with simultaneous multiple outputs each with unique formats |
US7623540B2 (en) * | 2002-12-31 | 2009-11-24 | Vixs Systems, Inc. | Method and apparatus for channel allocation in a wireless local area network (WLAN) |
JP2006513467A (en) * | 2003-01-06 | 2006-04-20 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Multifactor application selection |
US7468735B2 (en) * | 2003-07-24 | 2008-12-23 | Sony Corporation | Transitioning between two high resolution images in a slideshow |
US7705859B2 (en) * | 2003-12-03 | 2010-04-27 | Sony Corporation | Transitioning between two high resolution video sources |
US7769756B2 (en) | 2004-06-07 | 2010-08-03 | Sling Media, Inc. | Selection and presentation of context-relevant supplemental content and advertising |
US9998802B2 (en) | 2004-06-07 | 2018-06-12 | Sling Media LLC | Systems and methods for creating variable length clips from a media stream |
US7975062B2 (en) | 2004-06-07 | 2011-07-05 | Sling Media, Inc. | Capturing and sharing media content |
EP1769399B1 (en) | 2004-06-07 | 2020-03-18 | Sling Media L.L.C. | Personal media broadcasting system |
AU2005269957B2 (en) * | 2004-07-02 | 2011-09-22 | The Nielsen Company (Us), Llc | Methods and apparatus for identifying viewing information associated with a digital media device |
WO2006015274A2 (en) * | 2004-07-30 | 2006-02-09 | Viseon, Inc. | Ip video telephone having integrated devices |
KR100602954B1 (en) * | 2004-09-22 | 2006-07-24 | 주식회사 아이큐브 | Media gateway |
US7664872B2 (en) * | 2005-01-05 | 2010-02-16 | Divx, Inc. | Media transfer protocol |
EP1847119A1 (en) * | 2005-02-03 | 2007-10-24 | Koninklijke Philips Electronics N.V. | Faster tuning using multiple tuners and networked monitors |
US7689920B2 (en) * | 2005-09-06 | 2010-03-30 | Apple Inc. | Parental control graphical user interface |
US9130993B2 (en) * | 2006-02-09 | 2015-09-08 | Sony Corporation | Wireless connection system and wireless connection method |
US20080028087A1 (en) * | 2006-07-28 | 2008-01-31 | Vicotel, Inc. | A client/server multimedia system and method |
US8243731B2 (en) | 2006-08-07 | 2012-08-14 | Qualcomm Incorporated | Apparatus and methods for code-enhanced messaging |
US8943218B2 (en) * | 2006-10-12 | 2015-01-27 | Concurrent Computer Corporation | Method and apparatus for a fault resilient collaborative media serving array |
US8041292B2 (en) * | 2006-12-04 | 2011-10-18 | Ibiquity Digital Corporation | Network radio receiver |
US9008116B2 (en) * | 2007-02-20 | 2015-04-14 | The Invention Science Fund I, Llc | Cross-media communication coordination |
US7860887B2 (en) | 2007-02-20 | 2010-12-28 | The Invention Science Fund I, Llc | Cross-media storage coordination |
US20080244663A1 (en) * | 2007-03-26 | 2008-10-02 | The Directv Group, Inc. | Method and system for inserting digital video effects into a video stream using a bypass router |
US9055316B2 (en) * | 2007-03-26 | 2015-06-09 | The Directv Group, Inc. | Method and system for inserting digital video effects into a video stream at a multiplexing device after routing |
US8239913B2 (en) * | 2007-03-26 | 2012-08-07 | The Directv Group, Inc. | Method and system for inserting digital video effects into a video stream in redundant paths before routing |
US8619822B2 (en) * | 2007-03-26 | 2013-12-31 | The Directv Group, Inc. | Method and system for generating uplink signals from a ground segment |
US20080239163A1 (en) * | 2007-03-26 | 2008-10-02 | The Directv Group, Inc. | Method and system for inserting digital video effects into a video stream after bypass routing and before encoding |
US8379609B2 (en) * | 2007-03-29 | 2013-02-19 | Vixs Systems, Inc. | Multimedia client/server system with adjustable data link rate and range and methods for use therewith |
US7984177B2 (en) * | 2007-04-30 | 2011-07-19 | Vixs Systems, Inc. | Multimedia client/server system with adjustable packet size and methods for use therewith |
US7720986B2 (en) * | 2007-08-24 | 2010-05-18 | At&T Intellectual Property I, L.P. | Method and system for media adaption |
US20090064314A1 (en) * | 2007-08-31 | 2009-03-05 | Lee Michael M | Method and Apparatus for Implementing Parental Controls for a Portable Media Device |
US8369403B2 (en) * | 2007-09-12 | 2013-02-05 | Sony Corporation | Image processing device and image processing method |
US20090094325A1 (en) * | 2007-10-09 | 2009-04-09 | Snehal Karia | Acuro Universal Multimedia Communication System (AUMCS) |
JP2009217433A (en) * | 2008-03-10 | 2009-09-24 | Fuji Xerox Co Ltd | File management program and file management device |
US8356323B2 (en) * | 2008-04-15 | 2013-01-15 | Cisco Technology, Inc. | UPnP/DLNA compliant MR-DVR |
US9013551B2 (en) | 2008-12-01 | 2015-04-21 | Imax Corporation | Methods and systems for presenting three-dimensional motion pictures with content adaptive information |
KR101610705B1 (en) * | 2008-12-10 | 2016-04-11 | 삼성전자주식회사 | Terminal having camera and method for processing image thereof |
US20100158098A1 (en) * | 2008-12-22 | 2010-06-24 | Echostar Technologies L.L.C. | System and method for audio/video content transcoding |
US9282337B2 (en) * | 2009-02-27 | 2016-03-08 | Vixs Systems, Inc. | Media source device with digital format conversion and methods for use therewith |
US8228980B2 (en) * | 2009-05-29 | 2012-07-24 | Texas Instruments Incorporated | Media gateway with overlay channels |
US9854254B2 (en) * | 2009-08-04 | 2017-12-26 | Avocent Corporation | Method and system for remote viewing of static and video images |
WO2011041744A1 (en) * | 2009-10-02 | 2011-04-07 | Gabriele Sartori | System and method for a graphics terminal multiplier |
US20110125902A1 (en) * | 2009-11-24 | 2011-05-26 | Nokia Corporation | Apparatus And A Method For Resource Management |
US8897377B2 (en) * | 2009-12-31 | 2014-11-25 | Broadcom Corporation | Transcoding multiple media elements for independent wireless delivery |
US8559036B1 (en) | 2010-03-26 | 2013-10-15 | Open Invention Networks, Llc | Systems and methods for managing the execution of print jobs |
DE102010038838A1 (en) * | 2010-08-03 | 2012-02-09 | Sennheiser Electronic Gmbh & Co. Kg | Audio and / or video transmission system |
GB2486744A (en) * | 2010-12-24 | 2012-06-27 | Starbucks Hk Ltd | Multimedia system with separately transmitted supplementary data overlaid onto broadcast video stream based on user input |
US9172982B1 (en) * | 2011-06-06 | 2015-10-27 | Vuemix, Inc. | Audio selection from a multi-video environment |
US9077578B1 (en) * | 2011-06-06 | 2015-07-07 | Vuemix, Inc. | Scalable real-time video compositing systems and methods |
US9740377B1 (en) | 2011-06-06 | 2017-08-22 | Vuemix, Inc. | Auxiliary information data exchange within a video environment |
US9088818B2 (en) * | 2011-06-21 | 2015-07-21 | Harman International Industries, Incorporated | Adaptive media delay matching |
US9281013B2 (en) | 2011-11-22 | 2016-03-08 | Cyberlink Corp. | Systems and methods for transmission of media content |
WO2013106390A1 (en) | 2012-01-09 | 2013-07-18 | Activevideo Networks, Inc. | Rendering of an interactive lean-backward user interface on a television |
US8325821B1 (en) | 2012-02-08 | 2012-12-04 | Vyumix, Inc. | Video transcoder stream multiplexing systems and methods |
US9800945B2 (en) | 2012-04-03 | 2017-10-24 | Activevideo Networks, Inc. | Class-based intelligent multiplexing over unmanaged networks |
KR101943456B1 (en) * | 2012-04-30 | 2019-01-29 | 주식회사 케이티 | Transcoding Server and Method for Overlaying Added Information to Dynamic Image in Transcoding Server |
US10275128B2 (en) | 2013-03-15 | 2019-04-30 | Activevideo Networks, Inc. | Multiple-mode system and method for providing user selectable video content |
US8752113B1 (en) * | 2013-03-15 | 2014-06-10 | Wowza Media Systems, LLC | Insertion of graphic overlays into a stream |
WO2014197879A1 (en) * | 2013-06-06 | 2014-12-11 | Activevideo Networks, Inc. | Overlay rendering of user interface onto source video |
US20150031289A1 (en) * | 2013-07-26 | 2015-01-29 | Rajiv Agarwal | Autonomous discovery and control of devices via an overlay communication channel |
US9854258B2 (en) * | 2014-01-06 | 2017-12-26 | Disney Enterprises, Inc. | Video quality through compression-aware graphics layout |
US9788029B2 (en) | 2014-04-25 | 2017-10-10 | Activevideo Networks, Inc. | Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks |
CN104202675A (en) * | 2014-09-03 | 2014-12-10 | 乐视致新电子科技(天津)有限公司 | Intelligent terminal and quick channel switching method and device thereof |
US10432988B2 (en) * | 2016-04-15 | 2019-10-01 | Ati Technologies Ulc | Low latency wireless virtual reality systems and methods |
US11327475B2 (en) | 2016-05-09 | 2022-05-10 | Strong Force Iot Portfolio 2016, Llc | Methods and systems for intelligent collection and analysis of vehicle data |
US11774944B2 (en) | 2016-05-09 | 2023-10-03 | Strong Force Iot Portfolio 2016, Llc | Methods and systems for the industrial internet of things |
US20180284741A1 (en) | 2016-05-09 | 2018-10-04 | StrongForce IoT Portfolio 2016, LLC | Methods and systems for industrial internet of things data collection for a chemical production process |
US11237546B2 (en) | 2016-06-15 | 2022-02-01 | Strong Force loT Portfolio 2016, LLC | Method and system of modifying a data collection trajectory for vehicles |
US11442445B2 (en) | 2017-08-02 | 2022-09-13 | Strong Force Iot Portfolio 2016, Llc | Data collection systems and methods with alternate routing of input channels |
CN209085657U (en) | 2017-08-02 | 2019-07-09 | 强力物联网投资组合2016有限公司 | For data gathering system related or industrial environment with chemical production technology |
US11102549B2 (en) | 2017-09-27 | 2021-08-24 | Wurl Inc. | Selective video overlay |
US10609427B2 (en) | 2017-10-25 | 2020-03-31 | Wurl Inc. | Graphic overlay insertion |
US10867601B2 (en) * | 2018-01-17 | 2020-12-15 | Citrix Systems, Inc. | In-band voice-assistant/concierge for controlling online meetings |
US11528601B1 (en) * | 2021-06-09 | 2022-12-13 | T-Mobile Usa, Inc. | Determining and ameliorating wireless telecommunication network functionalities that are impaired when using end-to-end encryption |
US11418851B1 (en) * | 2021-06-28 | 2022-08-16 | Synamedia Limited | Virtual set top |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5757925A (en) * | 1996-07-23 | 1998-05-26 | Faybishenko; Yaroslav | Secure platform independent cross-platform remote execution computer system and method |
US5790792A (en) * | 1996-09-04 | 1998-08-04 | Radiant Systems, Inc. | Method and apparatus for transmitting multimedia data from and application logic server to interactive multimedia workstations |
US6044408A (en) * | 1996-04-25 | 2000-03-28 | Microsoft Corporation | Multimedia device interface for retrieving and exploiting software and hardware capabilities |
US6055560A (en) * | 1996-11-08 | 2000-04-25 | International Business Machines Corporation | System and method to provide interactivity for a networked video server |
US20020032751A1 (en) * | 2000-05-23 | 2002-03-14 | Srinivas Bharadwaj | Remote displays in mobile communication networks |
US20020059368A1 (en) * | 2000-01-07 | 2002-05-16 | Soneticom, Inc. | Wireless remote computer interface system |
US20020105845A1 (en) * | 1999-08-05 | 2002-08-08 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor memory device with reduced current consumption in data hold mode |
US20020174181A1 (en) * | 2001-04-13 | 2002-11-21 | Songxiang Wei | Sharing OpenGL applications using application based screen sampling |
US6618752B1 (en) * | 2000-04-18 | 2003-09-09 | International Business Machines Corporation | Software and method for multicasting on a network |
US6631418B1 (en) * | 2000-04-05 | 2003-10-07 | Lsi Logic Corporation | Server for operation with a low-cost multimedia terminal |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2979596B2 (en) | 1990-07-27 | 1999-11-15 | ソニー株式会社 | Display device |
US20020129374A1 (en) * | 1991-11-25 | 2002-09-12 | Michael J. Freeman | Compressed digital-data seamless video switching system |
US5537141A (en) * | 1994-04-15 | 1996-07-16 | Actv, Inc. | Distance learning system providing individual television participation, audio responses and memory for every student |
US5818511A (en) * | 1994-05-27 | 1998-10-06 | Bell Atlantic | Full service network |
US5654774A (en) | 1995-06-06 | 1997-08-05 | Thomson Consumer Electronics, Inc. | Tuner for digital satellite receiver |
US5751282A (en) * | 1995-06-13 | 1998-05-12 | Microsoft Corporation | System and method for calling video on demand using an electronic programming guide |
JP3572595B2 (en) * | 1995-07-21 | 2004-10-06 | ソニー株式会社 | Electronic program guide display control apparatus and method |
US5745846A (en) * | 1995-08-07 | 1998-04-28 | Lucent Technologies, Inc. | Channelized apparatus for equalizing carrier powers of multicarrier signal |
US6058307A (en) * | 1995-11-30 | 2000-05-02 | Amsc Subsidiary Corporation | Priority and preemption service system for satellite related communication using central controller |
JPH09205630A (en) * | 1996-01-26 | 1997-08-05 | Matsushita Electric Ind Co Ltd | Television signal transmission reception method and television signal transmitter receiver |
KR100206786B1 (en) * | 1996-06-22 | 1999-07-01 | 구자홍 | Multi-audio processing device for a dvd player |
US6133910A (en) | 1996-09-20 | 2000-10-17 | Echostar Engineering Corp. | Apparatus and method for integrating a plurality of video sources |
WO1998026593A1 (en) * | 1996-12-12 | 1998-06-18 | Rockwell Semiconductor Systems, Inc. | Digital video converter box for subscriber/home with multiple television sets |
US6157673A (en) * | 1996-12-26 | 2000-12-05 | Philips Electronics North America Corp. | Fast extraction of program specific information from multiple transport streams |
US5970386A (en) * | 1997-01-27 | 1999-10-19 | Hughes Electronics Corporation | Transmodulated broadcast delivery system for use in multiple dwelling units |
US5905942A (en) * | 1997-02-18 | 1999-05-18 | Lodgenet Entertainment Corporation | Multiple dwelling unit interactive audio/video distribution system |
US6611537B1 (en) * | 1997-05-30 | 2003-08-26 | Centillium Communications, Inc. | Synchronous network for digital media streams |
US6023731A (en) * | 1997-07-30 | 2000-02-08 | Sun Microsystems, Inc. | Method and apparatus for communicating program selections on a multiple channel digital media server having analog output |
US6310886B1 (en) * | 1997-08-28 | 2001-10-30 | Tivo, Inc. | Method and apparatus implementing a multimedia digital network |
KR100599021B1 (en) * | 1997-08-28 | 2006-07-12 | 소니 가부시끼 가이샤 | Transmitter for multichannel digital data and transmission method |
US5928331A (en) * | 1997-10-30 | 1999-07-27 | Matsushita Electric Industrial Co., Ltd. | Distributed internet protocol-based real-time multimedia streaming architecture |
US6205582B1 (en) * | 1997-12-09 | 2001-03-20 | Ictv, Inc. | Interactive cable television system with frame server |
US6178446B1 (en) * | 1997-12-31 | 2001-01-23 | At&T Corp | Method and system for supporting interactive commercials displayed on a display device using a telephone network |
US7091968B1 (en) * | 1998-07-23 | 2006-08-15 | Sedna Patent Services, Llc | Method and apparatus for encoding a user interface |
US6567981B1 (en) * | 1998-08-03 | 2003-05-20 | Elysium Broadband Inc. | Audio/video signal redistribution system |
US6757906B1 (en) * | 1999-03-30 | 2004-06-29 | Tivo, Inc. | Television viewer interface system |
US7096487B1 (en) * | 1999-10-27 | 2006-08-22 | Sedna Patent Services, Llc | Apparatus and method for combining realtime and non-realtime encoded content |
US20020078463A1 (en) * | 2000-06-08 | 2002-06-20 | Foster Mark J. | Method and processor engine architecture for the delivery of dynamically compressed audio video content over a broadband network |
US7660902B2 (en) * | 2000-11-20 | 2010-02-09 | Rsa Security, Inc. | Dynamic file access control and management |
US6630963B1 (en) * | 2001-01-23 | 2003-10-07 | Digeo, Inc. | Synchronizing a video program from a television broadcast with a secondary audio program |
US7200855B2 (en) * | 2001-05-24 | 2007-04-03 | Vixs Systems, Inc. | Method and apparatus of multiplexing a plurality of channels in a multimedia system |
-
2001
- 2001-05-24 US US09/864,524 patent/US7099951B2/en not_active Expired - Lifetime
- 2001-09-05 US US09/946,920 patent/US20020178215A1/en not_active Abandoned
- 2001-09-05 US US09/946,912 patent/US7836193B2/en not_active Expired - Lifetime
-
2002
- 2002-05-17 TW TW091110409A patent/TW580833B/en not_active IP Right Cessation
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044408A (en) * | 1996-04-25 | 2000-03-28 | Microsoft Corporation | Multimedia device interface for retrieving and exploiting software and hardware capabilities |
US5757925A (en) * | 1996-07-23 | 1998-05-26 | Faybishenko; Yaroslav | Secure platform independent cross-platform remote execution computer system and method |
US5790792A (en) * | 1996-09-04 | 1998-08-04 | Radiant Systems, Inc. | Method and apparatus for transmitting multimedia data from and application logic server to interactive multimedia workstations |
US6055560A (en) * | 1996-11-08 | 2000-04-25 | International Business Machines Corporation | System and method to provide interactivity for a networked video server |
US20020105845A1 (en) * | 1999-08-05 | 2002-08-08 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor memory device with reduced current consumption in data hold mode |
US20020059368A1 (en) * | 2000-01-07 | 2002-05-16 | Soneticom, Inc. | Wireless remote computer interface system |
US6631418B1 (en) * | 2000-04-05 | 2003-10-07 | Lsi Logic Corporation | Server for operation with a low-cost multimedia terminal |
US6618752B1 (en) * | 2000-04-18 | 2003-09-09 | International Business Machines Corporation | Software and method for multicasting on a network |
US20020032751A1 (en) * | 2000-05-23 | 2002-03-14 | Srinivas Bharadwaj | Remote displays in mobile communication networks |
US20020174181A1 (en) * | 2001-04-13 | 2002-11-21 | Songxiang Wei | Sharing OpenGL applications using application based screen sampling |
Cited By (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7675972B1 (en) | 2001-07-30 | 2010-03-09 | Vixs Systems, Inc. | System and method for multiple channel video transcoding |
US20030152148A1 (en) * | 2001-11-21 | 2003-08-14 | Indra Laksono | System and method for multiple channel video transcoding |
US20060256861A1 (en) * | 2001-11-21 | 2006-11-16 | Vixs Systems, Inc. | Method and system for rate control during video transcoding |
US9036698B2 (en) | 2001-11-21 | 2015-05-19 | Vixs Systems Inc. | Method and system for rate control during video transcoding |
US10129552B2 (en) | 2001-11-21 | 2018-11-13 | Vixs Systems Inc. | Method and system for rate control during video transcoding |
US6873331B2 (en) * | 2002-03-29 | 2005-03-29 | Hewlett-Packard Development Company, L.P. | System and method for passing messages among processing nodes in a distributed system |
US20030184548A1 (en) * | 2002-03-29 | 2003-10-02 | Emmot Darel N. | System and method for passing messages among processing nodes in a distributed system |
US6909721B2 (en) | 2002-10-31 | 2005-06-21 | Nokia Corporation | Device detection and service discovery system and method for a mobile ad hoc communications network |
US7492777B2 (en) | 2002-10-31 | 2009-02-17 | Nokia Corporation | Device detection and service discovery system and method for a mobile ad hoc communications network |
US20040087274A1 (en) * | 2002-10-31 | 2004-05-06 | Jan-Erik Ekberg | Device detection and service discovery system and method for a mobile AD HOC communications network |
US20040085947A1 (en) * | 2002-10-31 | 2004-05-06 | Jan-Erik Ekberg | Device detection and service discovery system and method for a mobile ad hoc communications network |
US20050059379A1 (en) * | 2003-09-16 | 2005-03-17 | Sampo Sovio | Method of initializing and using a security association for middleware based on physical proximity |
US20050058109A1 (en) * | 2003-09-16 | 2005-03-17 | Jan-Erik Ekberg | Mechanism for improving connection control in peer-to-peer ad-hoc networks |
US20050058108A1 (en) * | 2003-09-16 | 2005-03-17 | Jan-Erik Ekberg | Application control in peer-to-peer ad-hoc communication networks |
US7313120B2 (en) | 2003-09-16 | 2007-12-25 | Nokia Corporation | Application control in peer-to-peer ad-hoc communication networks |
US7263345B2 (en) | 2004-03-17 | 2007-08-28 | Nokia Corporation | System and method for remote service information |
US20050208892A1 (en) * | 2004-03-17 | 2005-09-22 | Nokia Corporation | System and method for remote service information |
US20050223116A1 (en) * | 2004-03-31 | 2005-10-06 | Pak-Lung Seto | Data encoding and decoding in a data storage system |
US7412540B2 (en) * | 2004-03-31 | 2008-08-12 | Intel Corporation | Data encoding and decoding in a data storage system |
EP1839177A2 (en) * | 2005-01-05 | 2007-10-03 | Divx, Inc. | System and method for a remote user interface |
US20060195884A1 (en) * | 2005-01-05 | 2006-08-31 | Van Zoest Alexander | Interactive multichannel data distribution system |
EP1839177A4 (en) * | 2005-01-05 | 2010-07-07 | Divx Inc | System and method for a remote user interface |
US20060178214A1 (en) * | 2005-02-08 | 2006-08-10 | Jaakko Lehikoinen | System and method for provision of proximity networking activity information |
US20100198957A1 (en) * | 2005-02-08 | 2010-08-05 | Nokia Corporation | System and method for provision of proximity networking activity information |
US20060178215A1 (en) * | 2005-02-08 | 2006-08-10 | Jaakko Lehikoinen | System and method for provision of information |
US20060199533A1 (en) * | 2005-03-01 | 2006-09-07 | Martin Zilliacus | Method and system for tactile confirmation of service bookmarks |
US7697894B2 (en) | 2005-03-01 | 2010-04-13 | Nokia Corporation | Method and system for tactile confirmation of service bookmarks |
US7359674B2 (en) | 2005-05-10 | 2008-04-15 | Nokia Corporation | Content distribution & communication system for enhancing service distribution in short range radio environment |
US20060258338A1 (en) * | 2005-05-10 | 2006-11-16 | Outi Markki | Content distribution & communication system for enhancing service distribution in short range radio environment |
US20060268896A1 (en) * | 2005-05-31 | 2006-11-30 | Sakari Kotola | System and method for services functionality |
US20070118615A1 (en) * | 2005-11-23 | 2007-05-24 | Utilit Technologies, Inc. | Information technology system with multiple item targeting |
US8171461B1 (en) * | 2006-02-24 | 2012-05-01 | Nvidia Coporation | Primitive program compilation for flat attributes with provoking vertex independence |
US8886717B2 (en) | 2008-07-28 | 2014-11-11 | Sony Corporation | Client device, information processing system and associated methodology of accessing networked services |
US8682963B2 (en) * | 2008-07-28 | 2014-03-25 | Sony Corporation | Client device, information processing system and associated methodology of accessing networked services |
US9112868B2 (en) | 2008-07-28 | 2015-08-18 | Sony Corporation | Client device, information processing system and associated methodology of accessing networked services |
US20110106882A1 (en) * | 2008-07-28 | 2011-05-05 | Sony Corporation | Client device, information processing system and associated methodology of accessing networked services |
US9265458B2 (en) | 2012-12-04 | 2016-02-23 | Sync-Think, Inc. | Application of smooth pursuit cognitive testing paradigms to clinical drug development |
US9380976B2 (en) | 2013-03-11 | 2016-07-05 | Sync-Think, Inc. | Optical neuroinformatics |
US20160050445A1 (en) * | 2014-08-15 | 2016-02-18 | Fox Digital Enterprises, Inc. | Data repository for sports and entertainment information |
US11595702B2 (en) * | 2014-08-15 | 2023-02-28 | Tfcf Digital Enterprises, Inc. | Data repository for sports and entertainment information |
CN105763899A (en) * | 2016-01-29 | 2016-07-13 | 四川长虹电器股份有限公司 | Intelligent set top box application management system and method |
Also Published As
Publication number | Publication date |
---|---|
TW580833B (en) | 2004-03-21 |
US7836193B2 (en) | 2010-11-16 |
US20020178278A1 (en) | 2002-11-28 |
US20020178277A1 (en) | 2002-11-28 |
US7099951B2 (en) | 2006-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20020178215A1 (en) | Method and apparatus for centralizing application access within a multimedia system | |
US11627108B2 (en) | Network address resolution | |
US10623795B2 (en) | Systems and methods for advertising continuity | |
US7529806B1 (en) | Partitioning of MP3 content file for emulating streaming | |
JP4165668B2 (en) | Method and apparatus for compressing continuous, non-separated data streams | |
US6938047B2 (en) | Methods, data structures, and systems for processing media data streams | |
CN1201541C (en) | Partitioning of file for emulating streaming | |
JP4363847B2 (en) | Digital TV application protocol for interactive TV | |
US6185625B1 (en) | Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object | |
US9485305B2 (en) | API platform that includes server-executed client-based code | |
US7308649B2 (en) | Providing scalable, alternative component-level views | |
US7257638B2 (en) | Distributing network applications | |
US20210377579A1 (en) | Systems and Methods of Orchestrated Networked Application Services | |
US9166882B1 (en) | Remote browsing session management | |
EP0961490A2 (en) | Internet convolution audio/video server | |
US20060085829A1 (en) | Broadcast content delivery systems and methods | |
US20040024900A1 (en) | Method and system for enhancing streaming operation in a distributed communication system | |
CN101491055B (en) | Dispatching request fragments from a response aggregating surrogate | |
US20090099911A1 (en) | Systems and Methods for Managing Advertising Content Corresponding to Streaming Media Content | |
CN105793841A (en) | Client behavior control in adaptive streaming file | |
US8615431B1 (en) | Network content message placement management | |
CN114788296A (en) | Coordinated control for display media | |
US11784887B1 (en) | Bandwidth throttling | |
WO2020155957A1 (en) | Method and apparatus for playing audio/video, and computer device and readable storage medium | |
KR20050065087A (en) | Apparatus for managing streamer process for media streaming and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: VIXS, INC., ONTARIO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LAKSONO, INDRA;SALEEM, SHAHID;REEL/FRAME:012161/0424 Effective date: 20010824 |
|
AS | Assignment |
Owner name: VIXS SYSTEMS, INC., ONTARIO Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE CHANGE ASSIGNEE NAME PREVIOUSLY RECORDED ON REEL 012161 FRAME 0424;ASSIGNORS:LAKSONO, INDRA;SALEEM, SHAHID;REEL/FRAME:018815/0329 Effective date: 20010824 |
|
AS | Assignment |
Owner name: COMERICA BANK, CANADA Free format text: SECURITY AGREEMENT;ASSIGNOR:VIXS SYSTEMS INC.;REEL/FRAME:022240/0446 Effective date: 20081114 Owner name: COMERICA BANK,CANADA Free format text: SECURITY AGREEMENT;ASSIGNOR:VIXS SYSTEMS INC.;REEL/FRAME:022240/0446 Effective date: 20081114 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |