Program search apparatus and program search method for same

Abstract
An object of the present invention is to propose viewer-desired search words in searching for related programs. A view determining unit identifies viewed programs based on a view history including channel information and time information about the viewed programs, and based on program supplement data held in a program information holding unit. A search word extracting unit 13 extracts search words from the program supplement data about the programs identified by the view determining unit. A program search unit searches for related programs related to the search words by using the extracted search words and the program supplement data held in the program information holding unit.
Description

BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram showing the functional configuration of a program search apparatus applied as a first embodiment of the present invention;



FIG. 2 is a flowchart describing processing operations of view determination in the program search apparatus in the first embodiment of the present invention;



FIG. 3 is a diagram showing an exemplary view history in the program search apparatus in the first embodiment of the present invention;



FIG. 4 is a diagram showing an exemplary program schedule in the program search apparatus in the first embodiment of the present invention;



FIG. 5 is a diagram showing exemplary correspondence between the view history and the program schedule in the program search apparatus in the first embodiment of the present invention;



FIG. 6 is a diagram showing an exemplary result of the view determination on a program basis in the program search apparatus in the first embodiment of the present invention;



FIG. 7 is a diagram showing an exemplary description of program supplement data about a program in the program search apparatus in the first embodiment of the present invention;



FIG. 8 is a diagram showing an exemplary description of segment supplement data about a segment in the program search apparatus in the first embodiment of the present invention;



FIG. 9 is a diagram showing exemplary content of segment supplement data about segments in the program search apparatus in the first embodiment of the present invention;



FIG. 10 is a flowchart describing processing operations of segment identification in the program search apparatus in the first embodiment of the present invention;



FIGS. 11A and 11B are diagrams showing exemplary correspondence between the view history and a segment structure in the program search apparatus in the first embodiment of the present invention;



FIGS. 12A and 12B are diagrams showing an exemplary result of the view determination on a segment basis in the program search apparatus in the first embodiment of the present invention;



FIG. 13 is a diagram showing exemplary search word extraction sources in the program search apparatus in the first embodiment of the present invention;



FIGS. 14A and 14B are diagrams showing exemplary related-program search screens in the program search apparatus in the first embodiment of the present invention;



FIG. 15 is a diagram showing an exemplary search result screen in the program search apparatus in the first embodiment of the present invention;



FIG. 16 is a diagram showing exemplary operations to be included in the view history in the program search apparatus in a second embodiment of the present invention;



FIG. 17 is a diagram showing an exemplary view history in the second embodiment of the present invention;



FIG. 18 is a diagram showing exemplary correspondence between the view history and the program schedule in the program search apparatus in the second embodiment of the present invention;



FIG. 19 is a diagram showing an exemplary result of the view determination on a program basis in the program search apparatus in the second embodiment of the present invention;



FIG. 20 is a diagram showing exemplary correspondence between the view history and the segment structure in the program search apparatus in the second embodiment of the present invention;



FIG. 21 is a diagram showing an exemplary result of the view determination on a segment basis in the program search apparatus in the second embodiment of the present invention;



FIG. 22 is a block diagram showing the functional configuration of a program search apparatus applied as a third embodiment of the present invention;



FIG. 23 is a diagram showing an exemplary designated history in the program search apparatus in the third embodiment of the present invention;



FIG. 24 is a flowchart describing processing operations of segment identification in the program search apparatus in the third embodiment of the present invention; and



FIG. 25 is a diagram showing exemplary correspondence between the designated history and the segment structure in the program search apparatus in the third embodiment of the present invention.





DESCRIPTION OF THE EMBODIMENTS

Referring to the drawings, embodiments of the present invention will be described below.


First Embodiment


FIG. 1 is a block diagram showing the general configuration of a program search apparatus 1 to which a first embodiment of the present invention is applied and a display device 2 connected to the program search apparatus 1. In FIG. 1, a TV (television broadcasting) reception unit 6 receives and accumulates video and audio program data and supplement data appended to the program data contained in a TV broadcast wave input from an RF terminal 4. The TV reception unit 6 outputs these data items after subjecting them to processing such as channel selection processing. The output signal from the TV reception unit 6 is supplied to the display device 2 via a display control unit 17. The TV reception unit 6 includes a channel selection circuit that performs the channels selection processing. The program search apparatus 1 may be, for example, an apparatus such as a broadcast receiver that receives broadcasting including server-type broadcasting, terrestrial digital broadcasting, BS/CS digital broadcasting, and CATV broadcasting, or a receiver that receives program information over the Internet.


A user interface unit 8 receives, from a viewer who uses a remote controller 3, an instruction as a remote control signal via an input terminal 5 and a remote control signal reception unit 7. The user interface unit 8 controls operation of the TV reception unit 6 according to the viewer's instruction. The viewer operates the remote controller 3 to provide instructions such as “Select a channel” and “Activate an electronic program guide” and to provide various instructions via an operation screen that displays choices such as “YES” and “NO”.


A view determining unit 9 monitors and stores channel selection operations of the TV reception unit 6 and judges whether each segment in a program was “viewed” or “not viewed.” Detailed operations of the view determining unit 9 will be described later.


A program information holding unit 10 holds supplement data about programs received by the TV reception unit 6. The supplement data includes program supplement data about an entire program, such as the program title, broadcast time, broadcast channel, and program description, and segment supplement data about each segment in the program, such as the segment title, segment start position, and segment end position or duration time. For example, suppose that the program watched is a soccer game and the segments are shooting scenes. In this case, the segment title of a segment may be “shot 1”, the segment start position may be “15 minutes and 30 seconds after the start of the program”, and the segment description may be “a shot by a corner kick 10 minutes after the start of the program, but missed the goal”. The program information holding unit 10 holds supplement data about programs received in the past, as well as supplement data about programs (programs to be broadcasted) listed in an EPG (electronic program guide) from broadcast stations. For example, supplement data about all programs of all broadcast stations for the next eight days may be held in the program information holding unit 10. The program information holding unit 10 may be configured to automatically load the supplement data about all programs of all broadcast stations for the next eight days without being noticed by the viewer.


A search request detection unit 11 monitors the user interface unit 8 to detect that a search request for related programs has been input by the viewer with the remote controller 3. The search request detection unit 11 notifies a segment identification unit 12 to identify segments from which search words are to be extracted. The search request for related programs may be input by pressing a particular button on the remote controller 3 or by selecting and entering “Search related programs” via an operation screen such as a menu.


Upon the search request for related programs, the segment identification unit 12 uses the supplement data in the program information holding unit 10 to identify segments determined by the view determining unit 9 as “viewed.” Detailed operations of the segment identification unit 12 will be described later.


A search word extracting unit 13 analyzes segment supplement data about the segments identified by the segment identification unit 12 and extracts one or more search words. A search word proposing unit 14 presents a related-program search screen on which the search words extracted by the search word extracting unit 13 are displayed as choices. A program search unit 15 uses the supplement data in the program information holding unit 10 to search for programs (related programs) matching a search word selected by the viewer. A search result proposing unit 16 creates a search result screen on which programs (related programs) matching the search word are arranged to facilitate the viewer's recognition. The search result screen created by the search result proposing unit 16 is displayed on the display device 2 via the display control unit 17.


Now, processing of the view determining unit 9 for performing the view determination will be described below by way of example. FIG. 2 shows the process flow in the view determining unit 9.


In step S301, the TV reception unit 6 starts the channel selection processing in response to an event such as power-on or a video switching request from an externally connected apparatus. The process proceeds to step S302, where the view determining unit 9 stores the channel selection state of the TV reception unit 6. The process proceeds to step S303, where the view determining unit 9 checks whether or not the channel selection state of the TV reception unit 6 has been changed. If the channel selection state of the TV reception unit 6 has been changed, the process proceeds to step S304 to store the changed channel selection state and then proceeds to step S305. If the channel selection state of the TV reception unit 6 has not been changed, the process proceeds from step S303 to step S305. The channel selection state stored in steps S302 and S304 includes at least a value identifying the selected channel (e.g., the channel number or channel ID) and the channel selection start time. This record of each change in the channel selection state will herein be referred to as a view history.



FIG. 3 shows an exemplary view history. In FIG. 3, viewing of a channel 101 was started at 12:00 on Dec. 12, 2005 (history No. 1), and a channel 102 was selected one hour later at 13:00 (history No. 2) to start viewing of the channel 102. Further, a channel 106 was selected 30 minutes later at 13:30 (history No. 3) to start viewing of the channel 106. Subsequently, channels 105, 106, 105, and 106 were selected at intervals of one minute (history Nos. 4, 5, 6, and 7), and a channel 109 was selected at 14:00 (history No. 8), Here, the current time is 14:00.


Returning to FIG. 2 to continue the description, as long as a condition for starting the view determination is not met in step S305, the process returns to step S303. Therefore, the view history is continuously updated as in the history Nos. 4, 5, 6, and 7. If the condition for starting the view determination is met in step S305, the process proceeds to step S306 to identify programs by matching the supplement data in the program information holding unit 10 with the view history.


As exemplary condition for starting the view determination may be “Has a predetermined period (e.g., 30 minutes or three hours) passed?” or “Has the number of history items stored as the view history reached a predetermined number (e.g., 10 or 50)?” Alternatively, the view determination may be started based on the fact that the TV reception unit 6 enters a specific state in response to an event such as a search request for related programs or a request to finish TV viewing. The reason of adopting the request to finish TV viewing here is to prevent the situation where the view determination based on the view history up to just before finishing viewing is performed the next time (at the time of a request to start TV viewing).


Applying the view history shown in FIG. 3 to a program schedule shown in FIG. 4 reveals that programs displayed on the display device 2 even for a short time are programs A, B, C, D, and E as shown in FIG. 5. A bold line in FIG. 5 is a visual representation of the, channel selection state. Since the current time is 14:00 and a view history item for the program E has not been generated yet, the bold line does not extend into the program E. The program schedule shown in FIG. 4 is obtained from the broadcast channels and the broadcast time (the start time and the end time/duration time) of programs contained in the program supplement data in the program information holding unit 10. For example, a broadcast program on the channel 101 indicated by the history No. 1 in FIG. 3 corresponds to a one-hour program from 12:00 to 13:00 on the channel 101 in FIG. 4 (the program A in FIG. 5). Similarly, a broadcast program on the channel 106 indicated by the history Nos. 3, 5, and 7 corresponds to a 30-minute program from 13:30 to 14:00 on the channel 106 in FIG. 4 (the program D in FIG. 5).


Returning to FIG. 2, for a program identified as having been displayed on the display device 2 even for a short time by matching the view history and the program supplement data, it is judged in step S307 whether or not the program was watched. The result of the determination is stored in step S308. The determination in step S307 as to whether or not the program was watched is made based on whether or not the ratio of the total viewed time length of the program (total time length for which the channel was kept selected) exceeds a threshold.


Next, it is determined in step S309 whether the view determination has been performed and the result has been stored for all identified programs. If the view determination has not been performed and the result has not been stored for all identified programs, the process returns from step S309 to step S306 to repeat the operations between steps S306 and S309. If the view determination has been performed and the result has been stored for all identified programs, the process proceeds to step S310 to finish the processing of the view determining unit 9.



FIG. 6 shows the ratio of the total viewed time length (viewed time length/program time length) and the result of the view determination for each of the programs A, B, C, and D identified from the view history and the program schedule shown in FIGS. 3, 4, and 5. As shown in FIG. 6, the program C is determined to be “not viewed” as indicated by the determination “x” if the threshold is 50% or 90%, whereas the program C is determined to be “viewed” as indicated by the determination “O” if the threshold is 5%. The view determination for a program consisting of a plurality of segments is performed on a segment basis.


For example, if the program A shown in FIG. 5 consists of five segments, five pieces of segment supplement data corresponding to the five segments are held in the program information holding unit 10.



FIG. 7 shows exemplary program supplement data about the program A, and FIG. 8 shows exemplary segment supplement data about one of the segments in the program A. Referring to FIG. 7, it can be seen that the program title of the program A identified by “crid://ch101/tips_xmas_newyear” is “Christmas and New Year.” Referring to FIG. 8, it can also be seen that the segment identified by “SEG3” has the segment title “Movie Introduction”, the segment start position 21 (20 minutes after the start of the program), and the segment duration time 20 (20 minutes).



FIG. 9 shows exemplary segment supplement data about the five segments SEG1 to SEG5 constituting the program A. Segment supplement data about the third segment SEG3 in FIG. 9 has been shown in FIG. 8. The view determination on a segment basis is performed based on whether or not the ratio of the total viewed time length for a segment exceeds the threshold. The result of the determination is stored on a segment basis.


Now, by way of example, description will be given below of processing of the segment identification unit 12 for identifying “viewed” segments in a program being watched in response to notification from the search request detection unit 11.



FIG. 10 shows a process flow in the segment identification unit 12. Once notified of a search request for related programs by the search request detection unit 11, the segment identification unit 12 starts the processing in step S601. In step S602, a program being watched is identified based on the time the search request for related programs was generated and program supplement data about programs held in the program information holding unit 10. The process proceeds to step S603 to search for segment supplement data about segments of the identified program. The segment supplement data about the segments is searched by using program identification information contained in the program supplement data about the program identified as being watched.


If the program A is being watched and “crid://ch101/tips_xmas_newyear” in FIG. 7 is the program identification information indicated in the program supplement data about the program A, the five segments (SEG1 to SEG5) shown in FIG. 9 are searched.


In step S604, the segment identification unit 12 determines whether or not the program being watched has segments. If the program being watched has no segments, the process proceeds from step S604 to step S608, where the program supplement data about the program is set as supplement data from which search words are to be extracted. If the program being watched has segments, the process proceeds from step S604 to step S605 to identify segments determined by the view determining unit 9 as “viewed.” If segments determined to be “viewed” are identified in step S606, the process proceeds to step S607, where segment supplement data about the segments determined to be “viewed” are set as supplement data from which search words are to be extracted. However, if segments determined to be “viewed” are not identified in step S606, the process proceeds to step S608, where the program supplement data about the program is set as supplement data from which search words are to be extracted. The identification processing is finished in step S609.



FIGS. 11A and 11B show the viewing state where a search request for related programs was generated at 12:28 during the viewing of the program A shown in FIG. 9. FIG. 11A shows the case where the program A was watched continuously from the start of broadcasting of the program. FIG. 11B shows the case where the program A was not watched for seven minutes from 11 minutes after the start of broadcasting of the program. FIGS. 12A and 12B are diagrams showing the ratios of the total viewed time length (viewed time length/segment time length) and the view determination results of the program A corresponding to FIGS. 11A and 11B respectively. The threshold for the view determination by the view determining unit 9 is 50%.


Once the supplement data from which search words are to be extracted is identified, the search word extracting unit 13 extracts search words from information contained in the identified supplement data. The search word proposing unit 14 presents on the display device 2 a related-program search screen on which the search words extracted by the search word extracting unit 13 are displayed as choices. Conditions for extracting search words may be preset, or designated by the viewer in advance, or set based on preference information obtained from viewer's designation or the view determination results. FIG. 13 shows exemplary conditions for extracting search words. In FIG. 13, the number of search words to be chosen out of potential search words and the order of priority are set as extracting conditions for each of the “keyword”, “cast member”, “synopsis”, and “title” of a program.



FIGS. 14A and 14B are diagrams showing exemplary related-program search screens presented with the extracted search words. FIG. 14A shows the case where, for the segments SEG1 and SEG2 determined to be “viewed” in FIG. 12A, six search words are extracted by using the segment supplement data shown in FIG. 9 and the extracting conditions shown in FIG. 13. FIG. 14B shows the case where, for the segment SEG1 determined to be “viewed” in FIG. 12B, six search words are extracted by using the segment supplement data shown in FIG. 9 and the extracting conditions shown in FIG. 13. Since the two segments SEG1 and SEG2 have been determined to be “viewed” in FIG. 12A, six search words in total, that is, two from the keyword, two from the cast member, and two from the synopsis are presented on the display device 2 as shown in FIG. 14A. On the other hand, only the segment SEG1 has been determined to be “viewed” in FIG. 12B. Therefore, six search words in total, that is, two from the keyword, two from the cast member, one from the synopsis (reduced to one due to the overlap with the keyword although the number of extracted words are set to two), and one from the title are presented on the display device 2 as shown in FIG. 14B.


If the number of potential search words is greater than the set number of search words to be chosen (e.g., if two cast members are chosen out of six cast members), the search words may be narrowed down in order of appearance or in order of character code, for example. Alternatively, the search words may be narrowed down in order of usage record (how many times each word has been used as a search word) or in order of preference.


Once the viewer designates a desired search word on the related-program search screen, the program search unit 15 checks whether any supplement data about programs held in the program information holding unit 10 matches the designated search word. Basically, the supplement data about all programs of all broadcast stations loaded as EPG data is searched. The search result proposing unit 16 presents a search result screen on the display device 2.


If no programs match the designated search word, the display device 2 may display a search result screen with a message such as “No related programs are found.” or a search result screen with an empty list. If programs matching the designated search word are found, the display device 2 displays a search result screen with a program list containing information such as the title, broadcast channel, and broadcast time of each program obtained from the supplement data about the matching programs.



FIG. 15 shows an exemplary search result screen displayed when two programs matching the designated search word are found. What the viewer can do with the displayed search result screen may include causing display of the supplement data about a program selected in the program list, such as the synopsis and cast member, or programming the recording of the selected program.


Thus, search words are extracted from segment supplement data about segments determined to be “viewed.” Therefore, different search words may be proposed as shown in FIGS. 14A and 14B for different search requests for related programs issued at the same time (12:28). The viewer will not feel that the proposed search words are inappropriate because no search words are proposed from segments which are determined to be “not viewed.”


In addition, even when a search request for related programs is generated just after the start of a segment, search words are proposed from past segments determined to be “viewed” rather than from the current segment. This increases the probability of viewer-desired search words being proposed.


According to the above-described first embodiment, only by issuing a search request for related programs at any time, the viewer can search for programs using search words from segments determined to be “viewed” by the viewer.


The present invention covers the case where software program code for implementing the processing described in the above embodiment is stored in a computer (CPU or MPU) used for the method of searching for related-programs and the program code is executed.


The program code and a storage medium containing the program code (such as a floppy disk, hard disk, optical disk, magneto-optical disk, CD-ROM, magnetic tape, nonvolatile memory, or ROM) also constitute the present invention.


Second Embodiment

The first embodiment has been described for the case where the view determination is performed based on the view history generated by monitoring channel selection operations. In a second embodiment, the view determination is performed based on a view history generated by monitoring other operations in addition to channel selection operations. The operations other than channel selection operations refer to operations performed while the channel selection state is maintained, such as displaying/operating the electronic program guide, viewing programs in double-screen, and so on. Operations that do not involve a channel selection operation, such as photograph display and web browsing in full-screen, are not be included in the view history.


Information that the view determining unit 9 stores as the view history by monitoring an operation while a channel is selected by the TV reception unit 6 includes at least a value identifying the selected channel (e.g., the channel number or channel ID), the start time of that operation, and a value identifying that operation (e.g., the action name or action ID).



FIG. 16 shows exemplary operations (actions) to be included in the view history. With reference to FIG. 16, a weighting factor is preset for each of the actions “GUI operation”, “double-screen (main) display”, “double-screen (sub) display”, and “(normal) selected-channel display.” In the example shown in FIG. 16, the weighting factors for the “GUI operation”, “double-screen (main) display”, “double-screen (sub) display”, and “(normal) selected-channel display” are 0.2, 0.8, 0.2, and 1.0 respectively. By way of example, description will be given below of processing of the view determining unit 9 for performing the view determination for programs and segments based on the view history and supplement data.



FIG. 17 shows an exemplary view history. In FIG. 17, a channel 101 was selected upon power-on at 12:00 on Dec. 12, 2005 (history No. 1). A channel 102 was selected one hour later at 13:00 (history No. 2), and viewing of the EPG (electronic program guide) was started 11 minutes later at 13:11 (history No. 3). A channel 106 was selected from the EPG 20 minutes after at 13:30 (history No. 4).


Applying the view history shown in FIG. 17 to the program schedule shown in FIG. 4 reveals that programs displayed on the display device 2 even for a short time are programs A, B, and D as shown in FIG. 18. A bold line in FIG. 18 is a visual representation of the channel selection state. FIG. 19 shows the ratio of the total viewed time length (viewed time length/program time length) and the result of the view determination for each of the programs A and B identified from the view history shown in FIG. 17 and the broadcast schedule. It can be seen from the view history Nos. 1 and 2 in FIG. 17 that no operations other than the channel selection operation were performed during the one-hour program A starting at 12:00.


Therefore, since the ratio of the total viewed time length of 60 minutes to the program time length of 60 minutes is 100%, the program A is determined to be “viewed” (determination “O”). It can be seen from the view history Nos. 2, 3, and 4 in FIG. 17 that the 30-minute program B starting at 13:00 was watched on a normal program screen for ten minutes from the start of the program, and then watched along with EPG browsing for 20 minutes after ten minutes from the start of the program. When a viewer watched a program while browsing an EPG, the viewer often did not grasp the content of the program compared to watching only the program, and the viewer often does not recognize that the viewer “watched” the program. Therefore, as shown in FIG. 16, the weighting factor for the action “GUI operation” is set to 0.2.


Using the weighting factor to calculate the total viewed time length used for the view determination allows these differences in the viewing state to be reflected on the result of the view determination.


The supposed viewed time length of the program B shown in FIG. 19 is calculated using the weighting factor 1 for the period from 13:00 to 13:10 and using the weighting factor 0.2 for the period from 13:10 to 13:29, so that 10 minutes×1 and 20 minutes×0.2 results in 14 minutes in total. This supposed viewed time length is the time length calculated in consideration of the degree of grasping the content rather than the actual viewed time length. Therefore, the view ratio of the program B is 14 minutes/30 minutes, i.e., about 47%. With the threshold of 50%, the program B is determined to be “not viewed” (determination “x”).



FIG. 20 shows the viewing state where the program A consists of the five segments SEG1 to SEG5 shown in FIG. 9 and a search request for related programs is generated at 12:28 while the program A is being watched. It is assumed that the viewer watched only the program A for 11 minutes after the start of the program A and then watched the program A while browsing the EPG for seven minutes.



FIG. 21 shows the ratios of the total viewed time length (viewed time length/segment time length) and the results of the view determination for the program A in this case. In FIG. 21, since the segment SEG1 was continuously watched for ten minutes from 12:00, the ratio of the total viewed time length is 100% and the segment SEG1 is determined to be “viewed” (determination “O”). Here, the threshold for the view determination by the view determining unit 9 is 50. The ten-minute segment SEG2 starting at 12:10 was watched along with EPG browsing for seven minutes from one minute after the start of the segment. With the weighting factor of 0.2 during EPG browsing, the ratio of the total viewed time length is 44% and the segment SEG2 is determined to be “not viewed” (determination “x”). The 20-minute segment SEG3 starting at 12:20 was watched only for eight minutes until the search request for related programs was generated. With the weighting factor of 1, the ratio of the total viewed time length is 40% and the segment SEG3 is determined to be “not viewed” (determination


In this manner, in the second embodiment, the view determination is performed based on the view history generated by monitoring other operations in addition to channel selection operations. Even if a channel was selected, no search words are extracted from its segments determined to be “not viewed” (segments whose content was not grasped by the viewer such as during EPG browsing). Therefore, the viewer will not feel that proposed search words are inappropriate.


According to the above-described second embodiment, only by issuing a search request for related programs at any time, the viewer can search for programs using search words from segments determined to be “viewed” (segments whose content was grasped by the viewer).


Third Embodiment

The foregoing first and second embodiments have been described for the case where segments determined to be “viewed” in the view determination using the view history are identified. In a third embodiment, segments are identified depending on the presence or absence of the viewer's explicit indication. The explicit indication refers to the viewer's specific operation (hereafter referred to as a designated request), which may be pressing a particular button on the remote controller 3 or may be selecting and entering “Search for related programs later” via an operation screen such as a menu.



FIG. 22 is a block diagram for contrast with FIG. 1, showing the general configuration of a program search apparatus 100 to which the third embodiment of the present invention is applied. With reference to FIG. 22, what is different from FIG. 1 is that the view determining unit 9 is replaced with a designated request holding unit 20. Elements having functions similar to those in the program search apparatus 1 shown in FIG. 1 are labeled with like reference numerals, and detailed description thereof will not be repeated here.


The designated request holding unit 20 holds a history of designated requests issued by the viewer. Detailed operations of the designated request holding unit 20 will be described later. The segment identification unit 12 identifies a segment at the time of generation of a search request for related programs based on the designated history in the designated request holding unit 20 and the supplement data in the program information holding unit 10. Detailed operations of the segment identification unit 12 will be described later.


By way of example, description will be given below of processing of the designated request holding unit 20 for holding the designated history based on designated requests issued by the viewer. Information treated as the designated history includes at least a value identifying a selected channel (e.g., the channel number or channel ID) and the time a designated request was generated. FIG. 23 shows an exemplary designated history. In FIG. 23, a designated request was issued at 12:08 on Dec. 12, 2005 while the channel 101 was selected (history No. 1). Further, designated requests were issued at 12:22 and 12:26 while the channel 101 was selected (history Nos. 2 and 3).


By way of example, description will be given below of processing of the segment identification unit 12 for identifying viewer-designated segments based on the designated history and the supplement data in the program information holding unit 10. FIG. 24 shows a process flow in the segment identification unit 12.


Once notified of a search request for related programs by the search request detection unit 11, the segment identification unit 12 starts the processing in step S801. In step S802, the segment identification unit 12 searches for segment supplement data about designated segments based on the designated history held in the designated request holding unit 20 and the supplement data held in the program information holding unit 10. In step S803, the segment identification unit 12 determines whether or not the corresponding program has the designated segments. If the program has the designated segments, the process proceeds from step S803 to step S804, where the segment supplement data about these segments are set as supplement data from which search words are to be extracted. If the program does not have the designated segments, the process proceeds from step S803 to step S805 to finish the segment identification processing. FIG. 25 is a diagram showing the timing of designated requests and a search request where the search request for related programs is generated at 12:28 during viewing of the program A consisting of the five segments shown in FIG. 9. FIG. 25 corresponds to the designated history shown in FIG. 23. As a result of the segment search in step S802 of FIG. 24, the segment SEG1 is identified from the designated request generated at 12:08 (history No. 1). Further, the segment SEG3 is identified from the designated request generated at 12:22 (history No. 2) and the designated request generated at 12:26 (history No. 3).


The search word extracting unit 13 extracts search words from the segments SEG1 and SEG3 explicitly designated by the viewer. The case assumed here is that “the viewer wants to search for related programs but does not want the viewing to be disturbed by display of the related-program search screen or the search result screen.” The viewer can designate segments by issuing a designated request and thereafter issue a search request at any time after the viewer comes to be able to permit the viewing to be disturbed by display of the related-program search screen or the search result screen.


According to the above-described third embodiment, by issuing designated requests and a search request for related programs at any time, the viewer can search for programs using search words extracted from segments explicitly designated by the viewer.


It is to be understood that the objects of the present invention may be accomplished by supplying a system or apparatus with a storage medium containing program code of software which implements the functions of the above-described embodiments, that is, by causing a computer (or CPU or MPU) of the system or apparatus to read out and execute the program code stored in the storage medium. In this case, the program code itself read out from the storage medium implements the functions of the above-described embodiments, and hence the storage medium containing the program code constitutes the present invention.


Examples of the storage medium that may be used for supplying the program code include a flexible disk, hard disk, optical disk, magneto optical disk, CD-ROM, CD-R, magnetic tape, nonvolatile memory card, and ROM. The functions of the above-described embodiments may also be implemented by causing the computer to execute the read-out program code.


Further, it is to be understood that the present invention covers the case where an OS (Operating System) or the like running on the computer performs part or all of actual processing under instructions of the program code to implement the functions of the above-described embodiments.


Further, it is to be understood that the present invention covers the case where after the program code read out from the recording medium is written to memory provided in a function extension board inserted into the computer or in a function extension unit connected to the computer, a CPU or the like provided in the function extension board or function extension unit performs part or all of actual processing under instructions of the program code to implement the functions of the above-described embodiments.


While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.


This application claims the benefit of Japanese Patent Application No. 2006-127885, filed May 1, 2006 which is hereby incorporated by reference herein in its entirety.

Claims
  • 1. A program search apparatus for searching a plurality of programs for a related program related to a viewed program, comprising: a program information holding unit configured to hold program supplement data including channel information and broadcast time information for each program;a view determining unit configured to identify a viewed program based on a view history including channel information and time information about the viewed program, and based on the program supplement data held in said program information holding unit;a search word extracting unit configured to extract a search word according to a predetermined extracting condition from the program supplement data about the program identified by said view determining unit; anda program search unit configured to search the plurality of programs for the related program related to the search word by using the search word extracted by said search word extracting unit and the program supplement data held in said program information holding unit.
  • 2. The program search apparatus according to claim 1, wherein said view determining unit determines a ratio of a viewed time length to a program time length based on the view history and the program supplement data and, if the ratio exceeds a predetermined ratio, identifies the program as the viewed program.
  • 3. The program search apparatus according to claim 1, wherein said program information holding unit further holds segment supplement data about each of a plurality of segments in each program segmented along a timeline,said view determining unit identifies a viewed segment based on the view history and the segment supplement data held in said program information holding unit, andsaid search word extracting unit extracts the search word according to a predetermined extracting condition from the segment supplement data about the segment identified by said view determining unit.
  • 4. The program search apparatus according to claim 3, wherein said view determining unit determines a ratio of a viewed time length to a segment time length based on the view history and the segment supplement data and, if the ratio exceeds a predetermined ratio, identifies the segment as the viewed segment.
  • 5. The program search apparatus according to claim 1, wherein said search word extracting unit extracts a plurality of search words, andsaid program search apparatus further comprises a search word proposing unit configured to propose the search words extracted by said search word extracting unit to a viewer to cause a search word to be selected out of the search words for use in searching for the related program.
  • 6. The program search apparatus according to claim 1, wherein said view determining unit identifies the viewed program or segment by weighting depending on a program viewing state.
  • 7. The program search apparatus according to claim 6, wherein the program viewing state includes at least one of a state in which only one program is viewed in full-screen, a state in which a plurality of programs are simultaneously viewed, and a state in which a program and an electronic program guide are simultaneously viewed, anda weighting factor for the state in which only one program is viewed in full-screen is greater than weighting factors for the other states.
  • 8. A program search apparatus for searching a plurality of programs for a related program related to a viewed program, comprising: a program information holding unit configured to hold program supplement data including channel information and broadcast time information for each program and segment supplement data about each of a plurality of segments in each program segmented along a timeline;a designated request holding unit configured to hold a designated request history in response to a designated request designating a segment from a viewer;a search word extracting unit configured to extract a search word according to a predetermined extracting condition from the segment supplement data about the designated segment based on the designated request history held in said designated request holding unit; anda program search unit configured to search the plurality of programs for the related program related to the search word by using the search word extracted by said search word extracting unit and the program supplement data held in said program information holding unit.
  • 9. The program search apparatus according to claim 8, wherein said search word extracting unit extracts a plurality of search words, andsaid program search apparatus further comprises a search word proposing unit configured to propose the search words extracted by said search word extracting unit to cause a search word to be selected out of the search words for use in searching the related program.
  • 10. A method for controlling a program search apparatus for searching a plurality of programs for a related program related to a viewed program, comprising the steps of: holding program supplement data including channel information and broadcast time information for each program;determining view to identify a viewed program based on a view history including channel information and time information about the viewed program, and based on the program supplement data held in said holding step;extracting a search word according to a predetermined extracting condition from the program supplement data about the program identified in said determining step; andsearching the plurality of programs for the related program related to the search word by using the search word extracted in said extracting step and the program supplement data held in said holding step.
  • 11. The method for controlling a program search apparatus according to claim 10, wherein said determining step comprises determining a ratio of a viewed time length to a program time length based on the view history and the program supplement data and, if the ratio exceeds a predetermined ratio, identifying the program as the viewed program.
  • 12. The method for controlling a program search apparatus according to claim 10, wherein said holding step comprises further holding segment supplement data about each of a plurality of segments in each program segmented along a timeline,said determining step comprises identifying a viewed segment based on the view history and the segment supplement data held in said holding step, andsaid extracting step comprises extracting the search word according to a predetermined extracting condition from the segment supplement data about the segment identified in said determining step.
  • 13. The method for controlling a program search apparatus according to claim 12, wherein said determining step comprises determining a ratio of a viewed time length to a segment time length based on the view history and the segment supplement data and, if the ratio exceeds a predetermined ratio, identifying the segment as the viewed segment.
  • 14. The method for controlling a program search apparatus according to claim 10, wherein said extracting step comprises extracting a plurality of search words, andsaid method for controlling a program search apparatus further comprises proposing the search words extracted in said extracting step to a viewer to cause a search word to be selected out of the search words for use in searching the related program.
  • 15. The method for controlling a program search apparatus according to claim 10, wherein said determining step comprises identifying the viewed program or segment by weighting depending on a program viewing state.
  • 16. The method for controlling a program search apparatus according to claim 15, wherein the program viewing state includes at least one of a state in which only one program is viewed in full-screen, a state in which a plurality of programs are simultaneously viewed, and a state in which a program and an electronic program guide are simultaneously viewed, anda weighting factor for the state in which only one program is viewed in full-screen is greater than weighting factors for the other states.
  • 17. A method of controlling a program search apparatus for searching a plurality of programs for a related program related to a viewed program, comprising: holding program supplement data including channel information and broadcast time information for each program and segment supplement data about each of a plurality of segments in each program segmented along a timeline;holding a designated request history in response to a designated request designating a segment from a viewer;extracting a search word according to a predetermined extracting condition from the segment supplement data about the designated segment based on the designated request history held in said designated request holding step; andsearching the plurality of programs for the related program related to the search word by using the search word extracted in said extracting step and the program supplement data held in said program supplement data holding step.
  • 18. The method for controlling a program search apparatus according to claim 17, wherein said extracting step comprises extracting a plurality of search words, andsaid method for controlling a program search apparatus further comprises proposing the search words extracted in said extracting step to cause a search word to be selected out of the search words for use in searching for the related program.
Priority Claims (1)
Number Date Country Kind
2006-127885 May 2006 JP national