This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2012-078367, filed Mar. 29, 2012; the entire contents of which are incorporated herein by reference.
Embodiments described herein relate to a screen image transfer device and a screen image transfer system.
A conventional screen image transfer system includes a simple input/output interface and a display device arranged for a user, and executes complicated arithmetic and logic operations in a screen image transfer device located at a site remote from the user. For example, according to operation information from the display device, the screen image transfer device generates screen image data, and the generated screen image data is then sequentially transmitted from the screen image transfer device to the display device to display the screen image data.
However, because the screen image data is transmitted sequentially from the screen image transfer device to the display device, a delay takes place in transmission of the screen image data and drift takes place in the display timing of the screen image data at the display device of the user. That is, changes in screen image data are not instantaneously displayed on the display device of the user.
To shorten the delay in transmission of the screen image information, there is an existing system that carries out parallel processing for communication by plural network interface cards (NICs) as the input/output interface of the screen image transfer device. In such a system, plural network interface cards (NICs) are adopted, and communication processing is carried out in parallel. However, when drift in the display timing in the adjacent screen regions of the display device takes place for the screen image information generated simultaneously, the user is still prone to see the drift in the screen image display, causing user discomfort. This is undesirable.
The present disclosure is provided to solve the aforementioned problems of the related art by providing a screen image transfer device and a screen image transfer system that reduce the drift in the display timing of the display device to insignificant levels.
In general, embodiments of a screen image transfer device that transmits screen image information to a display device including plural screen image regions connected via a network, and which has a connection allotment module that determines the allotment of different connections to the plural screen regions of the display device and a communication module that transmits the screen image information corresponding to the various screen regions of the display device via the connections assigned by the connection allotment module are described.
Also, an embodiment of the present disclosure provides a screen image transfer system having a screen image transfer device that generates the screen image information and a display device including plural screen regions connected via the network to the screen image transfer device and displaying the screen image information. The screen image transfer device has a connection allotment module that determines the allotment of different connections to the plural screen regions of the display device and a communication module that transmits the screen image information corresponding to the various screen regions of the display device via the connections assigned by the connection allotment module.
In the following, the screen image transfer system according to an embodiment will be explained with reference to figures.
In the example shown in
In the screen image transfer system 100, the screen image transfer device 200 receives a screen image update request message from the display device 300 and then transmits the screen image information corresponding to this screen image update request message to the display device 300. Here, the screen image information refers to the image information to be displayed on the screen of the display device 300. In the initial stage of the screen image transfer from the screen image transfer device 200 to the display device 300, the screen image information for an entire screen image is transmitted, and then subsequently only the screen image information of the screen region where an update to the screen image takes place is transmitted.
In this case, the screen image transfer device 200 may transmit the screen image information just when receiving a screen image update request message or it may receive an update request message once at the start of the screen image transmission and then automatically transmit the screen image information afterwards.
As shown in
The communication module 201 receives the screen image update request message from the display device 300 and then transmits the screen image information corresponding to this screen image update request message to the display device 300.
The layout storage module 202 stores the display regions displayed on the display device 300. The display regions are stored by coordinate information or other position information. For example, for a screen image having 1024×768 pixels, the coordinate information may refer to the information represented in a coordinate system with the upper-left corner of the screen represented by (0, 0) and the lower-right corner of the screen represented by (1023, 767). There is no specific restriction on the storage method of the display region coordinate information, and any method may be adopted as long as the method for arranging the screen image information is understood.
In the embodiment of a display device 300 including four monitors shown in
The application 203 is a program that provides various types of processings for operation on the screen image transfer device 200.
The frame buffer 205 is a screen image information storage module that stores the screen image information of the screen image to be displayed on the display device 300. Here, the frame buffer 205 may be made of any of the conventionally adopted storage media, such as a Random Access Memory (RAM), a Hard Disk Device (HDD), an optical disk, a memory card, etc.
The depicting module 204 receives a depicting command from the application 203 and, according to the received depicting command, carries out various types of screen image processings. The depicting module 204 then stores the processed screen image information in frame buffer 205. The depicting module 204 then also stores the update region specified in the depicting command by coordinate information, or the like, in the update detecting module 206. There is no specific restriction on the storage method of for the update region, and any method that allows distinction of the specified update region of the screen image can be adopted.
For example, for a rectangular update region with a width of 10 pixels and a height of 10 pixels from (0, 0) and a second update rectangular region with a width of 200 pixels and of a height of 5 pixels from (30, 30), the update region may be stored as a list of rectangular coordinate information.
The update detecting module 206 notifies the screen image transfer module 207 of the specified update region. Here, the update detecting module 206 may also include a differential extracting processing.
In differential extracting processing, the screen image information of frame buffer 205 corresponding to the update region is compared with a backup screen image previously transmitted to the display device 300, the differential region containing actual image changes is extracted, and only this differential region is used as the update region. Also, the backup screen image is updated.
The screen image transfer module 207 compares the display regions and the update region, then reads the screen image information for overlapped portions of the display and update regions from frame buffer 205, generates an updated screen image, checks the connection assigned by the connection allotment module 208 and provides the communication module 201 with the information of the updated screen image. The region corresponding to the updated screen image is then deleted from update detecting module 206.
For example, in the example shown in
The screen image transfer module 207 may also contain an image format conversion processing capability and a compression processing capability. With the image format conversion processing, the pixel format or the like of the updated screen image is converted. With the compression processing, the updated screen image is compressed.
The connection allotment module 208 allots the connections using different transmission NICs for adjacent screen regions. As shown in
Now, the screen image transfer processing by screen image transfer device 200 related to the first embodiment will be explained.
First, with reference to
The layout storage module 202 acquires a display region from the screen image transmission start request message received from the display device 300 and stores it. The screen image transmission start request message includes the dimensions of the regions on the screen image to be updated. For the example depicted in
In the case when a single monitor is divided in to four screen regions, each corresponding to a separate connection, the dimensions of the rectangular region contained in the screen image transmission start request message would be stored as the region on the screen of the monitor with a width of 2800 pixels and a height of 2100 pixels from (0, 0) divided in to four portions as the display regions.
Connection allotment module 208 then determines the transmission NIC for each display region. For example, it may determine that the updated screen image corresponding to the monitors 1 and 4 is to be transmitted from a NIC 1, and the updated screen image corresponding to the monitors 2 and 3 is to be transmitted from a NIC 2.
Then, communication module 201 sets up the connection with display device 300 using the transmission NIC assigned by the connection allotment module 208. For example, four connections may be arranged between the screen image transfer device 200 and the display device 300 as follows: a connection 1 with the NIC 1 as the transmission NIC for transmission to monitor 1, a connection 2 with the NIC 2 as the transmission NIC for transmission to monitor 2, connection 3 with a NIC 3 as the transmission NIC for transmission to monitor 3, and a connection 4 with a NIC 4 as the transmission NIC for transmission to monitor 4.
In the following, a brief account of the depicting processing and the screen image transfer processing will be explained with reference to
First, as a depicting command is issued for screen image display from application 203, depicting module 204 of the screen image transfer device 200 depicts the screen image in the frame buffer 205.
Then, for example, upon a trigger turned on at a prescribed time by a timer, the screen image transfer processing is started.
First, the update detecting module 206 detects the update region, and the screen image transfer module 207 generates an updated screen image.
Then, the screen image transfer module 207 checks the connection allotment module 208 for the connection corresponding to the display region where the updated screen image is located, and the updated screen image is transferred to the communication module 201 for transfer to display device 300.
For example, for the updated screen image with respect to the monitor 1 in the region with a width of 1400 pixels and a height of 1050 pixels from (0, 0) on the screen image, the screen image transfer module 207 checks which connection is adopted for transmission by the connection allotment module 208, and then communication module 201 transmits the updated screen image by the connection assigned by the connection allotment module 208 (e.g., connection 1). Then, for the updated screen image with respect to the monitor 3 adjacent to the monitor 1, the screen image transfer module 207 checks which connection is adopted for transmission by the connection allotment module 208, and then communication module 201 transmits the updated screen image by the connection assigned by the connection allotment module 208 (e.g., connection 3).
Similarly, for the updated screen image with respect to the monitor 2, the screen image transfer module 207 checks which connection is adopted for transmission by the connection allotment module 208, and then communication module 201 transmits the updated screen image by the connection assigned by the connection allotment module 208 (e.g., connection 2). Then, for the updated screen image with respect to monitor 4 adjacent to the monitor 2, the screen image transfer module 207 checks which connection is adopted for transmission by the connection allotment module 208, and then communication module 201 transmits the updated screen image by the connection assigned by the connection allotment module 208 (e.g., connection 4).
In this way, for the screen image transfer device 200 in the first embodiment, the updated screen images of the adjacent screen regions that are prone to updating simultaneously are transmitted using different NICs as the transmission NICs, so that the drift in the arrival times to the display device 300 can be decreased, and the drift in the display timing can be made insignificant to the user.
In this embodiment having eight screen regions, the same processing as that in the example with four monitors is also carried out. The applications 203 issue a depicting command for screen image display, and depicting module 204 depicts a screen image and stores it in frame buffer 205. The update detecting module 206 detects the update region, and screen image transfer module 207 generates the updated screen image.
Then, the screen image transfer module 207 checks with connection allotment module 208 for which connection corresponds to the display region where the updated screen image is located with, and sends the updated screen image to the communication module 201. For example, when the updated screen image is generated on the entirety of window E, transmission will be made using a connection with the transmission NICs defined as follows: the updated image of the region where the window E and a screen region 5 overlap is taken as the NIC 1, the updated image of the region where the window E and the screen region 6 overlap is taken as the NIC 2, the updated image of the region where the window E and a screen region 7 overlap is taken as the NIC 3, and the updated image of the region where the window E and a screen region 8 overlap is taken as the NIC 4.
The connection allotment module 208 sets the transmission NIC for each display region. For example, it may determine that transmission is carried out for the updated screen image with respect to screen regions 1 and 5 from the NIC 1, for the updated screen image with respect to the screen regions 2 and 6 from the NIC 2, for the updated search image with respect to the screen regions 3 and 7 from the NIC 3, and for the updated screen image with respect to the screen regions 4 and 8 from the NIC 4.
Under the instruction of the connection allotment module 208, the communication module 201 sets multiple connections with the display device 300. Then, the updated screen image generated by the screen image transfer module 207 is transmitted to the display device 300 by the assigned connections.
In this way, according to the first embodiment, the updated screen images of adjacent screen regions with a high probability of simultaneous updating are transmitted by different NICs, so that it is possible to decrease the drift in the arrival time to the display device 300, and it is possible to make the drift in the display timing insignificant to a user.
In the first embodiment, the updated screen images of the adjacent screen regions are transmitted by the connections using different transmission NICs. In the second embodiment, explanation will be made for the case when updated screen images generated simultaneously in the same application 203 are transmitted using connections such that the arrival times of the updated screen images at the display device 300 are the same or nearly so.
In the second embodiment, the functions of the layout storage module 202, the connection allotment module 208, and the screen image transfer module 207 are somewhat different from those in the first embodiment. Additionally, the second embodiment includes a connection information acquisition module (as depicted in
In the second embodiment, in addition to the display region, the layout storage module 202 also stores information about the layout of the screen image displayed on the display device 300. The layout information is stored using coordinate information or other positional information. There is no specific restriction on the storage method, and any method may be adopted as long as the configuration of the screen image layout information can be understood.
In the embodiment shown in
The connection information acquisition module depicted in
On the basis of the information acquired by the connection information acquisition module, the connection allotment module 208 selects connections for the updated screen images to be displayed at the same time so that their arrival times to the display device 300 are the same or nearly so. When there is no need to align the display timing, the connection with the shortest transmission queue length, the largest window size, the smallest hop number, the shortest time, and the largest send buffer size may be selected as appropriate.
For updated screen images generated simultaneously, the screen image transfer module 207 checks the layout information of the display device stored in layout storage device 202. If the updated screen images are generated by the same application 203, they are taken as updated screen images that should be displayed simultaneously, and the connection that should be used in the connection allotment module 208 is set accordingly.
In the following, the screen image transfer processing by the screen image transfer device 200 according to the second embodiment will be explained.
First, a brief account will be given on the initial screen image transfer processing with reference to
According to the first embodiment, the connection allotment module 208 sets the transmission NIC and connection for each screen region. But in the second embodiment, the communication module 201 sets any number of possible connections. For example, four connections that take the NIC 1 as the transmission NIC may be set.
In the following, the screen image transfer processing will be explained with reference to
According to the second embodiment, the screen image transfer module 207 checks the layout information, and it determines whether the updated screen images generated simultaneously by the same application 203 should be displayed simultaneously.
Then, the connection allotment module 208 checks the connection information (supplied by the connection information acquisition module), and it allots the connection with a high probability of simultaneous arrival to updated screen images that should be displayed simultaneously. For the updated screen images without such a requirement, the connection with a high probability of the first (quickest) arrival is allotted.
In this way, for the screen image transfer device 200 according to the second embodiment, the updated screen images generated simultaneously by the same application 203, and thus which are prone to recognition of the drift by the user if they are updated at different times are transmitted using the connections to the display device 300 with the same (or nearly the same) arrival time, so that the drift in the display timing can be made insignificant to the user.
While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel aspects described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
Number | Date | Country | Kind |
---|---|---|---|
2012-078367 | Mar 2012 | JP | national |