This application claims priority from Korean Patent Application Nos. 10-2004-0058074 and 10-2004-0063882 filed on filed on Jul. 24, 2004 and Aug. 13, 2004, respectively, in the Korean Intellectual Property Office, the disclosures of which are incorporated herein by reference in their entireties.
1. Field of the Invention
Apparatuses and methods consistent with the present invention relate to a service for displaying content, and more particularly, to efficiently providing content by supplying a plurality of display apparatuses and a single server which are connected through a network and perform predetermined message communication, and allowing the server to remotely control and monitor the display apparatuses.
2. Description of the Related Art
The conventional system 100 includes display apparatuses 110, 130, and 150 and servers 120, 140, and 160, which are connected to the display apparatuses 110, 130, and 150, respectively, to provide content. Content includes multimedia data such as music, images, motion pictures, and data having diverse text formats.
Various kinds of software programs are installed in or independent hardware containing these programs is mounted to each of the servers 120, 140, and 160 to convert content stored therein into a format suitable for the corresponding display apparatuses 110, 130, and 150 to output. Accordingly, the output format of the content selected by a server manager is converted using these software program, and the converted content is output by a display apparatus.
A display apparatus may include a function that allows a user to select content, receive the selected content from a server, and output the content. In this case, the display apparatus serves as a client.
In operation S210, a client connects with a server using address and port information of the server while the server is operating. In operation S220, the client requests a service from the server. In operation S230, the server retrieves the requested service and provides the service to the client.
According to a conventional system like that shown in
Therefore, to overcome these conventional problems, an apparatus and method for displaying content, which involves a server efficiently providing content to display apparatuses and remotely controlling and monitoring the display apparatuses, are desired.
The present invention provides an apparatus and method for displaying contents, by which contents are automatically provided to a plurality of display apparatuses having a message communication function using a single server.
The present invention also provides an apparatus and method for displaying contents, by which a plurality of display apparatuses having a message communication function are remotely controlled and the change in a physical state of each display apparatus is monitored using a single server.
According to an aspect of the present invention, there is provided an apparatus for displaying contents, including a device interface module automatically sensing a server connected to the display apparatus through a network and receiving content pushed according to a predetermined schedule and a control command from the server, a control and monitoring module receiving the control command from the device interface module, performing state control corresponding to the control command, and sensing a state change, a content processing module converting the content received from the device interface module into a format suitable for display, a display module outputting the content converted by the content processing module, and a device agent module analyzing information received through the device interface module and performing an operation according to the analyzed information.
According to another aspect of the present invention, there is provided a server apparatus including a server interface module automatically sensing a display apparatus connected to the server through a network, extracting information on the display apparatus, and transmitting content and a control command for controlling the display apparatus to the display apparatus, a storage module storing the content and schedule information on a schedule in which the content is pushed to the display apparatus, a scheduling module managing the schedule information and pushing the content according to the schedule information, a user interface module providing a user interface allowing a user to input the schedule information and the control command for the display apparatus, and a server agent module analyzing information provided through the server interface module, performing an operation according to the analyzed information, and monitoring state information received from the display apparatus.
According to still another aspect of the present invention, there is provided a method of displaying contents, including automatically sensing a server connected through a network and receiving one of content pushed according to a predetermined schedule and a control command from the server, converting the received content into a format suitable for display, outputting the converted content, performing state control according to the received control command, and transmitting state information comprising one of a result of performing the state control and information on an output state of the content.
According to a further aspect of the present invention, there is provided a method of displaying contents, including receiving from a user one of schedule information on a schedule in which content is pushed to a display apparatus and a control command for the display apparatus, managing the schedule information, pushing the content to the display apparatus according to the schedule information, transmitting the control command to the display apparatus, and monitoring state information received from the display apparatus, the state information comprising one of a result of executing the control command and information on an output state of the content.
The above and other aspects of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings in which:
The present invention and methods of accomplishing the same may be understood more readily by reference to the following detailed description of exemplary embodiments and the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the exemplary embodiments set forth herein. Rather, these exemplary embodiments are provided so that this disclosure will be thorough and complete and will fully convey the concept of the invention to those skilled in the art, and the present invention will only be defined by the appended claims. Like reference numerals refer to like elements throughout the specification.
The present invention will now be described more fully with reference to the accompanying drawings, in which exemplary embodiments of the invention are shown.
The present invention is described hereinafter with reference to flowchart illustrations of methods according to exemplary embodiments of the invention. It will be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to create means for implementing the functions specified in the flowchart block or blocks.
These computer program instructions may also be stored in a computer usable or computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions implement the function specified in the flowchart block or blocks.
The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process for implementing the functions specified in the flowchart block or blocks.
Unlike a conventional system, the server 310 provides content stored therein to a particular display apparatus 330, 340, or 350 according to a predetermined schedule, and the display apparatus 330, 340, or 350 receive the content and convert the format of the content into an output format that it supports. Accordingly, the display apparatuses 330, 340, and 350 are equipped with hardware or software for converting the diverse data formats of the content.
In addition, the server 310 can remotely control the display apparatuses 330, 340, and 350 and monitor state changes occurring in the display apparatuses 330, 340, and 350.
Information is transferred between the server 310 and each of the display apparatuses 330, 340, and 350 using a message communication method, which will be described later.
The display device 410 includes a display module 415, a device agent module 420, a device interface module 425, a content processing module 430, and a control and monitoring module 435.
The display module 415 displays content received from the server, provides a user with a means to both request particular content stored in the server 450, and control the display apparatus 410. This means display device 410 may be provided as an independent module such as a device user interface module.
The device interface module 425 automatically senses another display apparatus and the server 450, which are connected thereto through a network, and extracts information on the sensed display apparatus and the server 450, and performs message communication with the sensed display apparatus or the server 450.
The content processing module 430 converts content received from the server 450 to a suitable format for the display device 410 and transmits the converted content to the display module 415.
When the display device 410 receives a control command from the server, the control and monitoring module 435 performs an operation corresponding to the message. In addition, the control and monitoring module 435 senses state changes in the display apparatus 410.
The device agent module 420 analyzes messages received through the device interface module 425 and performs operations corresponding to the messages. In addition, the device agent module 420 controls the display module 415, the control and monitoring module 435, and the content processing module 430.
The server 450 includes a server interface module 455, a scheduling module 460, a server agent module 465, a storage module 470, and a user interface module 475.
The server interface module 455 automatically senses a plurality of display apparatuses connected therewith through a network, extracts information on each sensed display apparatus, and performs message communication with the plurality of display apparatuses.
The storage module 470 stores content and schedule information, i.e., information about a schedule for automatically transmitting content (i.e., pushing content) to each of the display apparatuses. The content includes sound files such as music, image files such as photos, video files such as motion pictures, and text files having diverse formats.
The user interface module 475 allows a server manager to search for content stored in the storage module 470 using a keyword or an index, and it allows the server manager to register a schedule indicating content to be transmitted to display apparatuses at a specific times. In addition, the user interface module 475 allows the server manager to input a remote control command so that the server manager can remotely control the plurality of display apparatuses, and it shows information on state changes in the plurality of display apparatuses.
The scheduling module 460 manages the schedule information and transmits particular content to a designated display apparatus at a particular time.
The server agent module 465 analyzes messages received through the server interface module 455 and performs operations according to the messages. In addition, the server agent module 465 controls the user interface module 475, the scheduling module 460, and the storage module 470.
The term “module”, as used herein, means, but is not limited to, a software or hardware component, such as a Field Programmable Gate Array (FPGA) or Application Specific Integrated Circuit (ASIC), which performs certain tasks. A module may advantageously be configured to reside on an addressable storage medium and to execute on one or more processors. Thus, a module may include, by way of example, components such as software components, object-oriented software components, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functionality provided for in the components and modules may be combined into fewer components and modules or further separated into additional components and modules. In addition, the components and modules may be implemented such that they execute one or more computers in a communication system.
Hereinafter, operations between the modules will be described in detail. For clarity, a procedure for displaying content and a procedure for remote control and monitoring will be described separately.
Content Display Service
Mutual Recognition Between a Display Apparatus and a Server
The server 450 and the display device 410 are connected to a single network through the server interface module 455 and the device interface module 425, respectively. Here, the server 450 may be connected with a plurality of display apparatuses, but for clarity, the description will be set forth with respect to a single display apparatus, and it is assumed that the structure of other display apparatuses is the same as that of the display device 410 show in
The server interface module 455 and the device interface module 425 senses whether a display apparatus or a server connected thereto has been supplied with power to operate. For example, in the server 450, the server interface module 455 senses the display device 410 and transmits the sensing result to the server agent module 465. Then, the server agent module 465 provides a server manager with information on the state of the display device 410 through the user interface module 475. Accordingly, the server manager can check the states of display apparatuses at the server 450 site, without directly going to the site of each display apparatus to manually check them.
Scheduling
To display content on the display apparatus 410, a server manager searches for the content stored in the storage module 470 by inputting a keyword and an index through the user interface module 475. Next, the server manager inputs a time into the user interface module 475 when the searched content is to be displayed on the display device 410.
Information on the searched content and schedule information display device 410 are managed by the scheduling module 460. Accordingly, the scheduling module 460 transmits the schedule information to the server agent module 465 at the display time. Then, the server agent module 465 fetches the content from the storage module 470 and transmits it to the display device 410 through the server interface module 455.
Outputting of Content
When the display device 410 receives data from the server 450 through the device interface module 425, the device agent module 420 determines whether the received data is content for outputting or data for controlling the display apparatus 410.
When it is determined that the received data is content for outputting, that is, when content is transmitted from the server 450 according to the operation of the scheduling module 460, the device agent module 420 transmits the received data to the content processing module 430.
The content processing module 430 converts the data received from the device agent module 420 into a format suitable for the display device 410 and drives an application program to output the converted content. The content output through the application program is provided to a user through the display module 415.
Meanwhile, the user of the display device 410 may request particular content from the server 450 through the display module 415. In this case, the display module 415 is provided with a function allowing the user to input content information. Here, the display device 410 may receive a content list (stored in advance in the storage module 470 after being received from the server 450) and provide this content list to the user through the display module 415 at the user's request for content. Alternatively, the display device 410 may request the content list from the server 450 only in response to a user's request for content.
Application Examples
Several representative application examples of the present invention will be described below.
Electronic Art Gallery
The server 450 converts works of art possessed by an art gallery into high-definition image data and stores them in the storage module 470. The display device 410 is installed in an art gallery or a public space having a space for exhibition and connected to the server 450 through a network.
A server manager decides schedule information including the order in which images are displayed on the display device 410 and display related information through the user interface module 475 and registers the schedule information in the scheduling module 460. The scheduling module 460 transmits the schedule information to the server agent module 465 at a designated time. The server agent module 465 fetches the image data from the storage module 470 based on the schedule information and transmits the image data to the display device 410 through the server interface module 455 so that a user can view the works of art.
Airport Information Service
The server 450 stores an airport guide, airline information, advertisements, entertainment video/audio content, and other information in the storage module 470. The display device 410 is installed at a desired place within an airport and connected to the server 450 through a network.
The scheduling module 460 of the server 450 manages the order and content of information to be provided to the display apparatus 410. The server transmits particular content to the display device 410 at a predetermined time. The display device 410 receives the content, converts it into an appropriate format, and displays it on a screen.
Information Presentation Service
The server 450 stores guide and presentation content in the storage module 470. The display device 410 is installed at a desired place in a public space and is connected to the server 450 through a network.
The scheduling module 460 of the server 450 manages the order and composition of the guide and presentation content to be provided to the display apparatus 410. The server transmits particular content to the display device 410 at a predetermined time. The display device 410 receives the content, converts it into an appropriate format, and displays it on a screen.
Remote Control and Monitoring
The server 450 can remotely control the display device 410 according to the state of the display apparatus 410. For remote control operation, the server 450 and the display device 410 use a remote control message set and the display device 410 includes the control and monitoring module 435 for such purposes.
For example, when a server manager wants to turn on or off the power of the display device 410 or control an output state such as the volume or contrast, the server manager inputs a control command through the user interface module 475. Here, the user interface module 475 provides the server manager with a user interface for controlling the display apparatus 410.
In addition, the server 450 can remotely command navigation motions such as stop, pause, forward, and backward with respect to content output by the display apparatus 410.
At the same time, the control and monitoring module 435 of the display device 410 senses state changes and transmits information on the sensed state change to the device agent module 420. The device agent module 420 transmits this information to the server 450 through the device interface module 425. As a result, the server 450 can remotely monitor the state of the display apparatus 410.
The detailed description of remote control and monitoring display device 410 will be set forth later.
Message communication is performed between the display device 410 and the server 450, and this is described in detail below. For clarity, the display device 410 is referred to as a client 410 and is described with reference to
A message communication protocol according to an exemplary embodiment of the present invention is largely divided into message communication for: registering a client as a service target in order to start a service (see
An example of the pull mode of service is a server that provides music, and a client selects a desired music title from a list of music titles stored in the server and receives the desired music title from the server.
An example of the push mode of service, monitors supporting a network function are installed at many places in a waiting room of a bus terminal or a train station, and a server provides the monitors with departure and arrival times of trains or buses, announcements, movies, and music.
In operation S510, the device interface module 425 of the display device 410 automatically senses other display apparatuses and a server which are connected thereto through a network, extracts information about both the sensed display apparatuses and the sensed server, and receives content that is automatically transmitted, i.e., pushed by the sensed server according to a schedule predetermined by a server manager or a control command from the server. In operation S520, the content processing module 430 converts the content received from the server into an output format supported by the display apparatus 410. In operation S530, the display module 415 displays the converted content.
In operation S540, the control command received by the device interface module 425 is executed by the control and monitoring module 435 to control the state of the display apparatus 410. In operation S550, the display device 410 transmits state information of the display apparatus 410, i.e., information on the result of executing the control command or information on an output state of the content, to the server. Consequently, the server can remotely control and monitor the display apparatus 410.
In operation S610, the server receives either schedule information from a server manager that indicates a schedule for pushing content to a display apparatus or a remote control command for the display apparatus through the user interface module 475. In operation S620, the scheduling module 460 manages the schedule information input by the server manager. In operation S630, the server agent module 465 pushes particular content to the display apparatus at a specific time according to the schedule information. In operation 640, the server agent module 465 transmits a control command to remotely control the display apparatus. The display apparatus transmits state information regarding the outputting of content or the result of executing the control command to the server 450 periodically or when an event occurs, and the server 450 monitors this state information in operation S650.
Here, a packet used for the service registration includes a media access control (MAC) address, a service type, a group name, and a client name.
The MAC address is a unique identification number allocated to a network card included in the device interface module 425 that is used as an identifier for the client 410. In addition, the MAC address can also be used when the server turns on the power of the client 410 in remote control operation.
The service type is a unique identifier for identifying a service of a different server.
The group name is the name of a group including the client 410 and it is used to manage a plurality of clients in groups.
The client name is an alias of the client 410, which is familiar to a user, and is used to identify the client 410.
When the client 410 sends a service registration request to the server 450, as shown in
Packets used for the pull mode of service include: a content list request packet containing a service type, a group name, a client name, a media type, list sorting information, and list request information; a content list packet containing a service type, a server name, a media type, content list information, and server service network information; a content request containing a service type, a group name, a client name, and content information; and a content finish packet containing a service type, a group name, a client name, and a media type. Here, the media type indicates a type of media, such as movies, music, photos, or document files, corresponding to relevant content.
The list sorting information indicates parameter information such as a name, a date, a file size, or a genre by which content is sorted in a list.
The list request information indicates the number of lists per page and the position of a page.
The content list information indicates a list of content information, i.e., a content list for a particular media type.
The server service network information is information on a network connection through which the server 450 provides a service which may include an Internet Protocol (IP) address and a port number.
When a multicast type of service is required, the server service network information may further include an IP address and a port number for multicasting.
The content information is information about the content and it may include a file name, a file length, a creation date, a genre, a running time, and image thumbnails.
Referring to
The server agent module 465 checks whether the requested service type is supported by the server 450 and whether the client 410 is a member of an authorized group.
Thereafter, in operation S820, the server agent module 465 retrieves content corresponding to the particular media from the storage module 470, creates a content list, and transmits this content list to the client 410 using a pull mode content list packet.
In operation S830, the client 410 selects desired content from the content list and requests this selected content from the server 450 using a pull mode content request packet.
In operation S840, the server 450 checks whether the requested service type is supported and whether the client 410 is an authorized client, and transmits the requested content. When the client 410 wants to stop the pull mode of service, the client 410 transmits a pull mode content finish packet to the server 450 in operation S850.
Here, packets used for the push mode service include a push mode content list packet containing a service type, a server name, a media type, content list information, and server service network information; a push mode content request packet containing a service type, a group name, a client name, and content information; and a push mode content finish packet containing a service type, a server name, and a media type.
Referring to
In operation S920, the client 410 requests the server 450 to transmit content from the content list according to a predetermined sequence by sending a push mode content request packet.
In operation S930, the server 450 checks whether the requested service type is supported and whether the client 410 is an authorized client and transmits the requested content.
Operations S920 and S930 are repeated until all content on the content list is sent to the client 410.
In operation S940, the server 450 can stop the push mode of service by transmitting a push mode content finish packet to the client 410.
Packets used for the remote control service include: a remote control packet containing a service type, a server name, a remote control command, and a remote control command parameter; and a client state packet containing a service type, a server name, and client state information.
Here, the remote control command indicates a control executed by the server 450 with respect to the client 410. For example, the remote control command may be: Power On/Off, Wake up LAN, Adjust Contrast, Adjust Tint, Adjust Brightness, Adjust Volume, Adjust Video Mode, or Adjust Audio Mode. The Wake up LAN is a process of multicasting MAC address information of a network card to a local LAN and turning on the power of a CPU connected to the network card.
The client state information is state information including volume, a video mode, an audio mode, contrast, tint, and brightness of the client 410.
In the remote control service shown in
The device agent module 420 of the client 410 analyzes this packet to determine whether the packet is involved in the remote control service. When it is determined that the packet is involved in the remote control service, the device agent module 420 transmits the remote control command to the control and monitoring module 435. The control and monitoring module 435 executes the remote control command and reports a changed state resulting from this execution to the device agent module 420. In operation S1020, the device agent module 420 transmits this changed state to the server 450 through the device interface module 425 using a client state packet.
The procedure shown in
The procedure shown in
In addition, a message for periodically checking whether the server 450 and the client 410 are connected to each other can be transmitted and received therebetween. By using this message, the server 450 and the client 410 can recognize abnormal stops in service. A packet used to check the connection between the server 450 and the client 410 has an MAC address, a service type, a group name, and a client name.
A system for displaying content according to an exemplary embodiment of the present invention allows a plurality of display apparatuses to receive content from a single server and to display that content, and it also allows the server to control the display apparatuses and monitor state changes occurring in the display apparatuses. In other words, according to the present invention, a display apparatus not only outputs content but also executes various functions by communicating with the server as described above.
For remote control and monitoring, a server 450 contains a user interface 1210, a server remote control and monitoring module 1220 including a remote control module 1222 and a remote monitoring module 1224, a message parser 1230, and a network interface 1240.
The user interface 1210 is produced by the user interface module 475 shown in
The message parser 1230 generates a message for controlling the display device 410 and analyzes a message regarding state information received from the display apparatus 410. The functions of the message parser 1230 can be performed by the server agent module 465 shown in
The remote control module 1222 transmits control information received from the user interface 1210 to the message parser 1230. The remote monitoring module 1224 transmits state information of the display apparatus 410, which is analyzed by the message parser 1230, to the user interface 1210.
The remote control module 1222 and the remote monitoring module 1224 may be included in the server agent module 465 or the user interface module 475.
The network interface 1240 of the server 450 can be provided by the server interface module 455 shown in
The client control and monitoring module 1250 of the display device 410 includes a microcomputer interface module 1252, a state information processing module 1254, and a remote control module 1256, a message parser 1260, and a network interface 1270.
The network interface 1270 of the display device 410 can be provided by the device interface module 425 shown in
The message parser 1260 generates a message including state information of the display device 410 or event information, and analyzes control information received from the server 450. The functions of the message parser 1260 may be performed by the device agent module 420 shown in
The remote control module 1256 transmits the control information the microcomputer interface module 1252. The state information processing module 1254 senses events or state changes occurring in the display device 410 display device 410 transmits to the message parser 1260.
The microcomputer interface module 1252 controls the hardware elements of the display apparatus 410. The microcomputer interface module 1252 receives control information from the remote control module 1256 and controls relevant hardware element(s) accordingly.
The remote control module 1256, the state information processing module 1254, and the microcomputer interface module 1252 may be included in the control and monitoring module 435 shown in
The remote control and monitoring function performed with respect to the display device 410 will be separately described in the following in terms of: remote control of the display device 410 by a server manager, and monitoring of a state change in the display apparatus 410.
Remote Control of the Display Apparatus 410 by a Server Manager
For example, when turning off the power of the display apparatus 410, the server manager checks the power states of display apparatuses through the user interface 1210 provided by the user interface module 475.
When the server manager requires the display device 410 to be turned off; the remote control module 1222 receives and transmits the selection of the server manager to the message parser 1230. The message parser 1230 creates a message for remote control and transmits the message to the display device 410 through the network interface 1240 of the server 450.
The display device 410 receives the message through the network interface 1270. The message parser 1260 analyzes the received message and transmits the analyzed information to the remote control module 1256. Since the operation of turning on or off the power corresponds to a control over hardware elements, the remote control module 1256 drives the microcomputer interface module 1252 to turn off the power of the display apparatus 410.
Through such operations the volume, contrast, brightness, monitor input, and other attributes of the display apparatuses can be adjusted.
Monitoring of a State Change in the Display Apparatus 410
State changes in the display device 410 include state changes resulting from remote control of the display device 410 and state changes display device 410 when independent of control by the server 450. When a state change results from remote control of the display apparatus 410, e.g., when the power state changes due to a power on/off from the server 450, the state information processing module 1254 senses the changed state and transmits it to the message parser 1260. The message parser 1260 creates a message indicating state information and transmits the message to the server 450 through the network interface 1270.
The server 450 receives the message through the network interface 1240. The message parser 1230 analyzes the received message and transmits analyzed information to the remote monitoring module 1220. The remote monitoring module 1220 provides information on the state change to a server manager through the user interface 1210.
When a state change occurs in the display device 410 when independent of control by the server 450, the server 450 may periodically receive state information from all display apparatuses connected thereto via a network. The state information may include a list of connected display apparatuses, a network connection state of each display apparatus, and a current service status of each display apparatus. In addition, the display device 410 screen can be displayed on the server 450. Furthermore, the server 450 may set the display device 410 to automatically operate to cope with a major event occurring in the display apparatus 410.
In conclusion, those skilled in the art will appreciate that many variations and modifications can be made to the exemplary embodiments without substantially departing from the principles of the present invention. Therefore, the disclosed exemplary embodiments of the invention are used in a generic and descriptive sense only and not for purposes of limitation.
An apparatus and method for displaying content according to the present invention may provide the following advantages.
First, content is automatically provided by a server to a plurality of display apparatuses having message communication functionality that can be controlled by predetermined schedule information. Accordingly, content can be displayed without user management.
Second, the plurality of display apparatuses can be remotely controlled and changes in the physical state of each display apparatus can be monitored using the single server.
Number | Date | Country | Kind |
---|---|---|---|
10-2004-0058074 | Jul 2004 | KR | national |
10-2004-0063882 | Aug 2004 | KR | national |