This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2008-220536, filed Aug. 28, 2008, the entire contents of which are incorporated herein by reference.
1. Field
One embodiment of the invention relates to a display processing apparatus, a display processing method, and a computer program product.
2. Description of the Related Art
In recent years, with increased capability of AV equipment for storing contents and improved seamless accessibility of contents between equipment, let alone within the same equipment, or on a network, there has been a proliferation in the number of contents accessible to users. Accordingly, for example, Japanese Patent Application Publication (KOKAI) No. 2001-292383 discloses a conventional receiving device that allows users to select and view such contents.
With the conventional receiving device, in response to user selection of content from a list of contents, the content desired by the user is displayed. When the content selected by the user is stored in the device, the content is read and displayed on its data display module. On the other hand, when the content is present outside the device, the content is received from the outside and displayed on the data display module.
Besides, a recent increase in the capacity of storage media such as a hard disk drive (HDD) provided to AV equipment increases steps to retrieve content that a user desires to view. If what is to be displayed includes video audio data (contents) on a network, then, the number of search objects further increases. This makes it difficult to retrieve display information of contents related to the content that the user desires to view.
A general architecture that implements the various features of the invention will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate embodiments of the invention and not to limit the scope of the invention.
Various embodiments according to the invention will be described hereinafter with reference to the accompanying drawings. In general, according to one embodiment of the invention, a display processing apparatus comprises an operation receiver, a relation calculator, a display information generator, and a display controller. The operation receiver is configured to receive operation to select a key content of a first type as a search key. The relation calculator is configured to calculate relation between the key content and each of second contents of a plurality of types including the first type. The display information generator is configured to generate first display information of the key content and second display information of the second contents. The display controller is configured to display list information including the first display information at a predetermined position and pieces of the second display information around the first display information. The pieces of the second display information are arranged to form a plurality of concentric polygons with the first display information as the center along directions of operation such that second display information of second content with higher relation to the key content is closer to the first display information.
According to still another embodiment of the invention, a display processing method comprises: an operation receiver receiving operation to select a key content of a first type as a search key; a relation calculator calculating relation between the key content and each of second contents of a plurality of types including the first type; a display information generator generating first display information of the key content and second display information of the second contents; and a display controller displaying list information including the first display information at a predetermined position and pieces of the second display information around the first display information. The pieces of the second display information being arranged to form a plurality of concentric polygons with the first display information as the center along directions of operation such that second display information of second content with higher relation to the key content is closer to the first display information.
According to another embodiment of the invention, a computer program product comprises a computer usable medium having computer readable program codes embodied in the medium that, when executed, causes a computer to implement the above display processing apparatus.
Although a display processing apparatus of the embodiments is described below as being applied to a television (TV), this is by way of example only and is not to be construed to be limiting. The display processing apparatus may be applied to any display device capable of displaying video or the like. Briefly, in the following embodiments, when a user retrieves content related to a key content as a search key from a plurality of contents, the display processing apparatus displays the key content with contents related to the key content in response to user selection of the key content.
A description will be given of the functional configuration of a display processing apparatus 100 according to an embodiment of the invention.
The IPTV server 200 provides services to distribute video such as TV programs and movies using IP. In response to a request from the display processing apparatus 100, the IPTV server 200 delivers thereto content such as the video and metadata of the content.
The IPTV connector 180 is an interface that connects the display processing apparatus 100 and the IPTV server 200.
The EPG storage module 150 is a storage medium such as HDD or memory for storing an electronic program guide obtained from an external server that manages and distributes the electronic program guide. More specifically, the EPG storage module 150 obtains via a communication module (not illustrated) an electronic program guide for TV, CATV, CS broadcasting, BS broadcasting, and the like from a service provider server connected through a network such as the Internet, and stores the electronic program guide. It is assumed herein that the electronic program guide contains information on programs to be broadcasted within a period from the present time to a certain time in the future (e.g., after one week).
The recorded program storage module 160 is a storage medium such as HDD or memory for storing content such as video. For example, if the display processing apparatus 100 is TV with HUD, the recorded program storage module 160 stores video of a recorded TV program as the content. Examples of the content include video in a digital versatile disk (DVD) and video captured by a video camera.
The recorded program storage module 160 also stores metadata related to the content in association therewith. The term “metadata” as used herein refers to a set of information indicating unique characteristics of the content. The unique characteristics include the title of the content and the broadcast date and time of the content. For example, if the content is a TV program, the metadata indicates information (program information) on the TV program such as the title, the channel/broadcast date and time, the cast, the brief description (subtitle), and the genre. This metadata is provided to the recorded program storage module 160 with the content and stored therein in association with the content.
Although an example is described above in which the metadata is provided as being preset, this is by way of example and not of limitation. The recorded program storage module 160 may receive information provided by a user thorough an input device 90 such as a remote controller and store it as metadata in association with the content.
The display module 170 includes, for example, a liquid crystal display (LCD) for displaying text and an image, and displays content of a received TV program, stored content, an electronic program guide, and the like. The display module 170 also displays display information representing the details of the content generated by the display information generator 105, which will be described later, to allow a user to retrieve content (see
The broadcast receiver 108 receives the content of video (TV program) broadcasted by TV broadcasting through an antenna or a cable (not illustrated).
The video reproducer 107 acquires the content of video that a user desires to reproduce. Examples of the content include the content of a TV program, etc. received by the broadcast receiver 108, the content of video acquired from the IPTV server 200 through the IPTV connector 180, and the content of video stored in the recorded program storage module 160. The video reproducer 107 decodes (reproduces) the content thus acquired, and outputs it to the display controller 106.
The remote controller operation receiver 101 receives user's operation. More specifically, when a user presses an operation button on the remote controller 90, the remote controller operation receiver 101 recognizes the event. For example, when a user retrieves desired content as well as contents related to the desired content from a plurality of contents, the user operates an operation button on the remote controller 90 to select content (key content) as a search key from a plurality of contents of the electronic program guide displayed on the display module 170. The remote controller operation receiver 101 receives this selection operation, i.e., an instruction to retrieve contents. The key content maybe content that is being reproduced. In this case, the user presses an operation button on the remote controller 90 while the content is being reproduced. Thus, the remote controller operation receiver 101 receives this operation to select the content being reproduced as a key content, i.e., an instruction to retrieve contents. The remote controller operation receiver 101 also receives an instruction as to display information of content of current interest in list information indicating display information of a plurality of contents displayed on the display module 170. The details will be described later.
The metadata acquiring module 103 acquires, when the remote controller operation receiver 101 receives selection operation for key content, meta data of all contents (the key content and other contents than the key content). More specifically, for example, the metadata acquiring module 103 acquires the metadata of the contents from the recorded program storage module 160. The metadata acquiring module 103 may request the IPTV server 200 for the metadata of the contents and acquire the metadata. The metadata acquiring module 103 may also acquire the metadata of the contents from the electronic program guide stored in the EPG storage module 150.
The metadata retriever 102 retrieves, when the remote controller operation receiver 101 receives selection operation for the key content, metadata of the key content from the metadata of the contents acquired by the metadata acquiring module 103. The metadata retriever 102 then outputs the metadata of the key content to the relation calculator 104. The metadata retriever 102 also retrieves, based on the metadata of the key content acquired from the metadata acquiring module 103, metadata of other contents to be the objects of calculation by the relation calculator 104 as to the relation to the metadata of the key content. The metadata retriever 102 then outputs the metadata of the other contents to the relation calculator 104.
The metadata retriever 102 also outputs, when the remote controller operation receiver 101 receives selection operation for the key content, metadata of all the contents acquired by the metadata acquiring module 103 to the display information generator 105.
The relation calculator 104 calculate the relation between the key content and the other contents based on the metadata of the key content and the metadata of the other contents received from the metadata retriever 102 for each item contained in the metadata. Examples of the item include title and channel. More specifically, the relation calculator 104 calculates relation RM using the following equation:
relation RM=Σn-1Nfaa(M11(n),M21(n))×wan (1)
where N represents the total number of metadata items acquirable by the metadata acquiring module 103, M11 represents the metadata of the key content, M21 represents the metadata of the other contents, and (n) represents n-th metadata acquired by the metadata acquiring module 103. Further, fan(M11(n), M21(n)) is a function that returns the relation between metadata M11(n) and M21(n) as RMn, and Wan is a value (n=1, . . . , N) indicating weight.
As described above, although various types of information is acquired as the metadata, the metadata will be described below as including five items (N=5), i.e., recoding date and time, title of content, channel, genre, and cast, for simplicity. The five items of the metadata will be described as n=1, 2, . . . , 5 in the above order.
The relation RM of the other contents with respect to the key content can be represented by the weighted linear sum of the following five relations RM1 to RM5:
RM1=fa1 (recoding date and time of metadata M11, recoding date and time of metadata M21)
RM2=fa2(title of metadata M11, title of metadata M21)
RM3=fa3(channel of metadata M11, channel of metadata M21)
RM4=fa4 (genre of metadata M11, genre of metadata M21)
RM5=fa5(cast of metadata M11, cast of metadata M21)
For example, fa1 is a function that is larger for more recent recoding date and time and is smaller for less recent recoding date and time. More specifically, fa1 may be represented by using a relational expression as follows:
MO1/rec_data(M11)−rec_data(M21)|
where rec_data (x) is a function that uniquely converts recoding date and time of x into an integer, MO1 is an arbitrary constant number, and |X| is a function indicating the size of X and is typically an absolute value. Specifically, rec_data (x) is a function that converts the recoding date and time into an integer such as seconds having elapsed from a reference date and time determined as 0.
While an example is described above in which a function g represented as g(x)=MO1/|X| is applied to fa1 (M11, M21)=g(rec_data (M11)−rec_data (M21)), it is not so limited. The function g may be a function with L2 norm as, for example, g(x)=MO1/∥x∥. In this case, ∥x∥ is the square root of the sum of squares of the differences between elements that constitute x.
Other functions such as a sigmoid function and a gamma function may be applied to g(x). Besides, while an example is described above in which the function is larger as the recoding date and time of the metadata M11 and M21 is more recent, it is not so limited. The function may be smaller as the recoding date and time of the metadata is more recent. Further, the function g may be large when a specific condition is satisfied.
For example, fa is a function that is larger as more of the same letters or characters are contained in the character strings of the titles of the respective metadata M11 and M21. More specifically, if the title of the metadata M11 is “ABCDE” and that of the metadata M11 is “FGCDH”, two letters “CD” are contained in both the titles. If the title of the metadata M11 is “ABCDE” and that of the metadata M11 is “FGHIE”, one letter is contained in both the titles. Therefore, the value of fa2 is larger in the former case. The relation may be determined based on a keyword contained in the brief description (subtitle) of a program in the same manner as the title basis.
While an example is cited above in which the number of the same letters or characters contained in both the titles are simply compared, this is not intended as a limitation. Additional conditions may be used such as that the function is larger as more of the same letters or characters are contained in both the titles from the top, or that even if no same letter is present in both the titles, when the titles have a common idea, they are determined to be the same. As an example of the latter case, a Japanese word “yakyu” is regarded as the same as “baseball”, and the titles that contain the words “yakyu” and “baseball”, respectively, are determined to contain the same character string.
Besides, when the titles have the same main character string and different sub character strings, they are likely to be of contents of the same series. Accordingly, in such a case, the value of fa2 may be set to large. Specifically, for example, “ABCDE #2” and “ABCDE #3” are likely to be the titles of different episodes of the same drama series. Therefore, in such a case, the value of fa2 may be doubled. Note that the above is described by way of example only, and the comparison as described above may be accomplished with high accuracy by commonly known technologies such as approximate pattern matching and regular expression matching.
For example, fa3 is a function that is large when the metadata M11 and M21 are of contents of the same channel. Simply, fa3 may be a function that takes value MO2 when the metadata M11 and M21 are of contents of the same channel and otherwise takes value 0. The value MO2 is an arbitrary constant number. In addition, if the metadata M11 and M21 are of contents of affiliate channels, the value of fa3 may be set to a different value. For example, fa3 may be a function that returns value MO2/2 when the metadata M11 and M21 are of contents of affiliate channels. Further, fa3 may be a function that returns value MO2/4 if the metadata M11 and M21 are of contents of affiliate channels but of different broadcast media. Note that the above is described by way of example only, and fa3 may be an arbitrary function.
For example, fa4 is a function that is large when the metadata M11 and M21 are of contents of the same genre. More specifically, fa4 may be a function that takes value MO3 if the metadata M11 and M21 both belong to the same genre “sports” and otherwise takes value 0. In addition, if the metadata M21 belongs to the subgenre of the metadata M11 such as, for example, if the metadata M11 belongs to the genre “sports” and the metadata M21 belongs to the genre “baseball”, fa4 may be a function that takes value MO3/2. Further, even if the metadata M11 and M21 do not directly belong to the same genre, when they can be categorized in the same genre such as, for example, when the metadata M11 belongs to the genre “baseball” while the metadata M21 belongs to the genre “football” and the both are categorized in sports, fa4 may be a function that takes value MO3/4. Note that the above is described by way of example only, and fa4 may be an arbitrary function.
For example, fa5 is a similar function to fa4. More specifically, if the metadata M11 is of the content featuring “WW, XX, YY” and the metadata M21 is of the content featuring “XX, YY, ZZ”, then the same two persons are casted for both the contents. In such a case, fa5 may be a function that takes value 2×MO4 (MO4: an arbitrary constant number), and it may be a function that takes value 0 if there is no same person casted for both the contents. Besides, someone in the cast may be a member of a group. For example, if a person KK is a member of a group XX, and when the metadata M11 is of the content featuring “VV, WW, XX” and the metadata M21 is of the content featuring “KK, YY, ZZ”, the person KK is casted in the content of M11 as a member of the group XX and also is casted in the content of M21. In such a case, fa5 may be a function that returns value MO4/2.
In a similar fashion, the relation between groups or between people featured in the contents may be defined. For example, when the groups XX and YY belong to the same office, fa5 may be a function that returns value MO4/4. In this case, the relation between groups or between people may be defined in the metadata or may be obtained from an external server (information site).
While an example is described above in which the relation is calculated not taking into account a person in the cast list, this is not so limited. The relation may further be weighted according to the order on the cast list. For example, the derived relation is left as it is with respect to the first person on the cast list for the metadata M11, while it is weighted by ½ with respect to the second person and similarly is weighted by ⅓ with respect to the third person. The order on the cast list for the metadata M21 may also be taken into account in addition to that for the metadata M11. For example, in comparison of the second person on the cast list for the metadata M11 with the third person on the cast list for the metadata M21, the relation may be weighted by ½ with respect to the second person for the metadata M11 and may further be weighted by ⅓ with respect to the third person for the metadata M21. That is, the relation may be weighted by ½×⅓=⅙. Besides, the relation may be weighted differently with respect to a star playing a leading role based on information on the cast or the like. For example, the derived relation may be double-weighted with respect to the star.
The display information generator 105 generates display information representing the details of the key content and the other contents based on the metadata of the key content and that of the other contents output from the metadata retriever 102. More specifically, for example, based on the metadata of content of video data stored in the recorded program storage module 160, the display information generator 105 adds such items as a title to the representative image of the video data to generate display information to be displayed on the display module 170. Further, for example, based on the metadata of content of video data obtained from the IPTV server 200, the display information generator 105 adds such items as a title to the representative image of the video data to generate display information to be displayed on the display module 170. Still further, for example, based on the electronic program guide stored in the EPG storage module 150, the display information generator 105 generates display information to be displayed on the display module 170 to indicate the title of a TV program, the broadcast date and time, the channel, the brief description of the TV program, and the like.
The display information will now be described in detail.
The display controller 106 reproduces and displays, upon receipt of content output from the video reproducer 107, the content on the display module 170.
As described above, when the remote controller operation receiver 101 receives an instruction from a user to retrieve content, the display controller 106 displays list information indicating display information of key content and that of other contents related to the key content.
In the list information, the display information of the key content is arranged in a desired position. With the position of the display information of the key content as the center, pieces of the display information of the other contents are arranged to form concentric polygons correspondingly to the directions of an operation button such as an arrow key on the remote controller 90. The screen is divided into predetermined areas for respective items in radial directions from the center. The pieces of the display information of the other contents are arranged in the predetermined areas such that the one with higher relation is closer to the center. Additionally, in the list information, the display information of the key content is displayed in the largest size, and the display information of the other contents is displayed smaller as the distance from the center increases. A description will be given of the operation of displaying the display information.
As illustrated in
As illustrated in
As illustrated in
At this time, as illustrated in
In addition, the display controller 106 arranges pieces of display information of other contents in descending order of relation to the key content in each of the predetermined areas previously obtained for each item. More specifically, as illustrated in
In the example of
While an area to which display information displayed near a boundary line belongs is described above as being determined based on the degree of relation to the key content, this is by way of example and not of limitation. For example, display information displayed near a boundary line may belong to an area having more contents related to the key content than the other.
Further, as illustrated in
In this manner, the display controller 106 generates list information in which are arranged the display information C1 of the key content and the display information C11, . . . of the other contents, and displays the list information on the display module 170. Incidentally, the display controller 106 stores in advance the display position and size of the display information, and, after the calculation of the relation to the key content, sequentially arranges pieces of the display information of the other contents each in a predetermined size.
As described above, according to the embodiment, pieces of display information of other contents are arranged along up, down, left, and right directions of an operation button. Therefore, in the example of
A description will now be given of the process of displaying display information performed by the display processing apparatus 100.
The remote controller operation receiver 101 waits for receiving the selection of key content thorough an operation button on the remote controller 90 (S10). Upon receipt of the selection (Yes at S10), the metadata acquiring nodule 103 acquires metadata of the key content (S11). The metadata acquiring module 103 then acquires metadata of contents other than the key content (S12).
The relation calculator 104 calculate the relation between the key content and the other contents with respect to each item contained in the metadata (S13). The display controller 106 generates list information in which are arranged display information of the key content and display information of the other contents (S14). Pieces of the display information of the other contents are arranged according to their relation to the key content. The display controller 106 displays the list information on the display module 170 (S15).
As described above, the list information is displayed in which are arranged display information of key content as a search key and that of other contents related to the key content. In the list information, with the position of the display information of the key content as the center, pieces of the display information of the other contents are arranged to form concentric polygons along the directions of operation by the operation button. Pieces of display information of other contents with higher relation to the key content are arranged closer to the center. With this, by operating the remote controller 90, a user can easily retrieve content related to the key content from various types of contents.
Referring back to
The display information C1 of the key content is maintained to be displayed in the display range even if its initial display position moves outside the display range. Suppose that the initial display position of the display information C1 moves outside the display range when the list information is scrolled four times to the left from the initial state. Then, the movement amount (A) of the display information C1 by scrolling four times to the left from the initial state is equal to the movement amount (B) of the display information C1 by scrolling seven times to the left. In both the cases, the display information C1 of the key content is displayed in the same position.
If the initial display position of the display information C1 moves outside the display range when the list information is scrolled by the scrolling module 109, the display controller 106 displays the display information C1 with direction indication indicating the direction of the initial display position.
In addition, the display controller 106 displays the direction indication smaller as the distance between the current display position and the initial display position of the display information C1 increases.
As described above, the direction indication is displayed in a size according to the distance between the current display position and the initial display position of the display information C1 of the key content. This allows a user to roughly estimate the distance between the current display position and the initial display position of the display information C1. While the direction indication is described above as varying in size according to the distance between the current display position and the initial display position of the display information C1, it may vary in color according to the distance to indicate the distance.
If there is a change in the number of items in the display range when the list information is scrolled by the scrolling module 109, the display controller 106 changes the display of the items according to the change. More specifically, when the list information is scrolled by the scrolling module 109, pieces of display information of other contents belonging to an item assigned to an axis may move from inside the display range to the outside. If this removes the item from the display range, the display controller 106 does not display the item on the display module 170.
On the other hand, when the list information is scrolled by the scrolling module 109, pieces of display information of other contents belonging to an item assigned to an axis may move from outside the display range to the inside. If this adds the item to the display range, the display controller 106 additionally displays the item on the display module 170. As illustrated in
A description will now be given of the process of scrolling the list information performed by the display processing apparatus 100.
The remote controller operation receiver 101 waits for receiving an instruction specifying display information of focused content thorough an operation button on the remote controller 90 (S20). Upon receipt of an instruction (Yes at S20), the scrolling module 109 scrolls the list information in the operation direction (S21). The display controller 106 displays the display information of the focused content specified by the operation with the operation button larger than that of the other contents not specified (S22).
Next, the display controller 106 determines whether the initial display position of display information of key content has moved outside the display range (S23). If the initial display position has not moved outside the display range (No at S23), the process returns to S20. On the other hand, if the initial display position has moved outside the display range (Yes at S23), the display controller 106 displays the display information of the key content with direction indication indicating the direction of the initial display position (S24).
Thereafter, the display controller 106 determines whether there is a change in the number of items in the display range (S25). If there is no change in the number of items (No at S25), the process returns to S20. On the other hand, if there is a change in the number of items (Yes at SS5), the display controller 106 changes the display of the items according to the change (S26). That is, if an item has disappeared from the display range, the display controller 106 does not display the item. Meanwhile, if an item has appeared in the display range, the display controller 106 additionally displays the item.
Along with the transition of an image displayed on the screen of the display module 170, a description will be given of the process of scrolling the list information performed by the scrolling module 109.
When the remote controller operation receiver 101 receives the selection of key content, as illustrated in
Then, when an instruction is received to move the selection or focus from the display information C1 of the key content to the display information C18 of another content, the cursor moves one space to the right, and also the list information is scrolled once to the left. Thus, the list information as illustrated in
Thereafter, if an instruction is received to move the selection or focus from the display information C1 to the display information C35 of another content, the cursor further moves one space to the right, and also the list information is scrolled once again to the left. Thus, the list information as illustrated in
If a further instruction is received to move the selection or focus from the display information C35 to display information C62 of another content, the cursor further moves one space to the right, and also the list information is scrolled once again to the left. Thus, the list information as illustrated in
If a still further instruction is received to move the selection or focus from the display information C62 to display information C84 of another content, the cursor further moves one space to the right, and also the list information is scrolled once again to the left. Thus, the list information as illustrated in
A description will be given of the case where the list information is scrolled down.
A description will then be given of the case where the list information is scrolled left and down.
With this, everytime the list information is scrolled, the display information of the key content is always displayed in the display range. Thus, by operating the remote controller 90, a user can easily retrieve content related to the key content as a search key from various types of contents while learning the initial display position of the display information of the key content.
A computer program (hereinafter, “display processing program”) may be executed on a computer to realize the same function as the display processing apparatus 100. The display processing program may be provided to the computer as being stored in a computer-readable storage medium, such as a compact disc-read only memory (CD-ROM), a flexible disk (FD), a compact disc recordable (CD-R), and a digital versatile disc (DVD), as a file in an installable or executable format.
The display processing program may be stored in a computer connected via a network such as the Internet so that it can be downloaded therefrom via the network. The display processing program may also be provide or distributed via a network such as the Internet.
Further, the display processing program may be provided as being previously stored in the ROM or the like. The display processing program includes modules that implement the constituent elements described above (the remote controller operation receiver 101, the metadata retriever 102, the metadata acquiring module 103, the relation calculator 104, the display information generator 105, the display controller 106, the video reproducer 107, and the broadcast receiver 108). As actual hardware, the CPU (processor) loads the display processing program from the storage medium into a main storage device and executes it to implement the remote controller operation receiver 101, the metadata retriever 102, the metadata acquiring module 103, the relation calculator 104, the display information generator 105, the display controller 106, the video reproducer 107, and the broadcast receiver 108 on the main storage device.
The various modules of the systems described herein can be implemented as software applications, hardware and/or software modules, or components on one or more computers, such as servers. While the various modules are illustrated separately, they may share some or all of the same underlying logic or code.
While certain embodiments of the inventions 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 methods and systems described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the methods and systems 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 |
---|---|---|---|
2008-220536 | Aug 2008 | JP | national |