WO2014038232A1 - System, method and storage medium - Google Patents

System, method and storage medium Download PDF

Info

Publication number
WO2014038232A1
WO2014038232A1 PCT/JP2013/059425 JP2013059425W WO2014038232A1 WO 2014038232 A1 WO2014038232 A1 WO 2014038232A1 JP 2013059425 W JP2013059425 W JP 2013059425W WO 2014038232 A1 WO2014038232 A1 WO 2014038232A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
server
information
scene
client device
Prior art date
Application number
PCT/JP2013/059425
Other languages
French (fr)
Inventor
Kazuyuki Okano
Masaya Kato
Hiroshi Kawada
Hiroshi Hattori
Toyokazu Itakura
Masahiro Ozawa
Masashi Tsuji
Yoshinori Nishimoto
Yuuji Irimoto
Motonobu Sugiura
Naomiki Kobayashi
Original Assignee
Kabushiki Kaisha Toshiba
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kabushiki Kaisha Toshiba filed Critical Kabushiki Kaisha Toshiba
Priority to EP13745559.8A priority Critical patent/EP2898674A4/en
Publication of WO2014038232A1 publication Critical patent/WO2014038232A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44204Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number

Definitions

  • Embodiments described herein relate generally to a system, method, and a storage medium, which provide the user with information.
  • information providing systems which connect a user terminal to a server through the Internet, and provide the user terminal with various information items by the server, have been developed.
  • digital television apparatuses which enable browsing sites on the Internet have come into wide use.
  • the digital television apparatuses can receive, record, and play back broadcasting contents, and output information of various sites on the
  • the conventional information providing system can provide huge items of information. However, it is difficult for a user to select a desired item of information .
  • An object of the present invention is to provide a system, method, and a storage medium, which enables the user to easily select information.
  • FIG. 1 is an exemplary view illustrating an example of an information providing system according to an embodiment.
  • FIG. 2 is an exemplary view illustrating an example of a module configuration of a metadata server in the information providing system of FIG. 1.
  • FIG. 3 is an exemplary view illustrating an example of a structure of a tag list which is processed by the information providing system of FIG. 1.
  • FIG. 4 is an exemplary view illustrating an example of a structure of scene information which is processed by the information providing system of
  • FIG. 5 is an exemplary view illustrating an example of a structure of scene information which is processed by the information providing system of
  • FIG. 6 is an exemplary view illustrating an example of a structure of scene information which is processed by the information providing system of 3 . .
  • FIG. 7 is an exemplary flowchart illustrating processing of creating popular scene rankings.
  • FIG. 8 is an exemplary flowchart illustrating processing of creating scene audience rating rankings.
  • FIG. 9 is an exemplary flowchart illustrating processing of obtaining and updating HOT words.
  • FIG. 10 is an exemplary flowchart illustrating an example of processing of determining whether a program has already been recorded or not.
  • FIG. 11 is an exemplary flowchart illustrating an example of processing of determining whether the program has already been recorded or not.
  • FIG. 12 is an exemplary flowchart illustrating an example of processing of retrieving the same program which is broadcasted in an area, for which no metadata is prepared.
  • FIG. 13 is an exemplary flowchart illustrating an example of scene retrieval processing performed by a retrieval server.
  • FIG. 14 is an exemplary flowchart illustrating an example of conversion of a recorded program list by the retrieval server.
  • FIG. 15 is an exemplary diagram illustrating a picture of displaying recommended scenes, as an example of picture display of a client device. Detailed Description
  • FIG. 1 illustrates a system configuration of a cloud server which provides a television with time cloud service.
  • the system includes various servers and a client terminal 10.
  • the client terminal 10 may be any device, as long as it includes a user interface, a
  • the client terminal 10 may be another image apparatus such as an optical disk recording and playback apparatus, a hard disk drive, or a mobile terminal such as a tablet personal computer and a smartphone.
  • FIG. 1 illustrates only one client terminal 10, a number of client terminals 10 may be connected to the system.
  • the term “Scenefo” indicates scene information.
  • the term “SceneList” indicates a scene list obtained by collecting scene information items.
  • the term “ScenePlay” indicates playback using the scene information.
  • the time cloud is a service of connecting tags or scene information items, which are prepared by a metadata manufacturer, the user, or bot, with image content.
  • the time cloud is formed of the following three functions.
  • the term "tag” indicates information for finding the head of the content
  • the term "scene information” denotes details of a scene in the content .
  • the function "Scenefo" is a function of providing scene information of an interesting scene being played back.
  • An example application of the function is a mail-order business.
  • the tag list used herein is a list of tags which are included in content, such as a company-prepared tag list provided by a metadata manufacturer, and a user-prepared tag list prepared by the user.
  • the "Scenefo" function is formed of the following steps: (1) Register tag lists, (2) Play back content, (3) Start “Scenefo", (4) Transmit and receive the tag lists, (5) Present products (display), (6) Select product (input operation), and (7) Provide product page (display) .
  • the user selects and views scenes which the user wishes to view from a desired tag list among various tag lists, such as a user-prepared tag list, a tag-bot tag list, and a company-prepared tag list provided by a metadata manufacturer.
  • the SceneList function is formed of the following steps: (1) Register tag lists, (2) Play back content, (3) Start SceneList, (4) Transmit and receive tag lists, (5) Select tag list (input operation), (6) Transmit and receive tag list, and (7) tag jump.
  • Various tag lists are usable, such as a user-prepared tag list, a tag-bot tag list, and a company-prepared tag list provided by a metadata manufacturer.
  • the "ScenePlay” function is formed of the
  • the client terminal 10 is connected to a metadata server 20, a recommendation server 22, and a log collecting server 24.
  • the client terminal 10 obtains program information from the metadata server 20.
  • the client terminal 10 transmits favorite information to the recommendation server 22, and transmits an operation log to the log collecting server 24.
  • Metadata indicates data which describes broadcasting program data. In the present
  • Metadata indicates program broadcasting log data, television introduced
  • a metadata creating server 30 provided from a metadata creating server 30.
  • the metadata server is a server which manages the above metadata.
  • scene information indicates detailed information of a scene in the program, and data which is generated from the metadata.
  • scene information list indicates a list of a plurality of scene information items of a program.
  • tag indicates scene cueing information of a recorded program, which is used in tag processing application of the client terminal 10.
  • tag list indicates a list of a
  • a tag list server 28 is a server which manages tags and tag lists.
  • the client terminal 10 connects with the metadata server 20, and requests the metadata server 20 to transmit metadata.
  • the log collecting server 24 is a server which collects the user' s viewing log and operation log in the client terminal 10.
  • the recommendation server 22 is a server which calculates recommended programs and scenes, based on the user's viewing log, operation log, and favorite information.
  • a Web application is a time-cloud application which operates on the client terminal 10.
  • program information is a general term for metadata, scene information lists, and tag lists.
  • the metadata server 20 returns program information (for example, scene information lists/tag lists herein) of specific programs to the client terminal 10, in response to a request transmitted from the client terminal 10. Since the cloud server system stores a large number of programs, the user cannot select a desired program or scene, if scene information lists and tag lists of all the programs are transmitted to the client terminal 10. Since the metadata server 20 transmits, however, scene information lists and tag lists of specific programs for each user to the client terminal 10, the user can easily select a program and a scene to be viewed.
  • program information for example, scene information lists/tag lists herein
  • the metadata server 20 is connected to the recommendation server 22, a retrieval server 26, the tag list server 28, and the metadata creating server 30.
  • the metadata server 20 obtains
  • the metadata server 20 obtains a scene/tag list retrieval result from the retrieval server 26.
  • the metadata server 20 registers tag lists in the tag list server 28, and obtains tag lists from the tag list, server 28.
  • the metadata server 20 obtains metadata from the metadata creating server 30.
  • the recommendation server 22 is connected to the log collecting server 24, and the retrieval server 26.
  • the recommendation server 22 obtains various rankings, determination as to whether the program has already been recorded or not, and information for retrieving the same recorded program in another area, and obtains retrieval results from the retrieval server 26.
  • the log collecting server 24 is connected to the retrieval server 26, and obtains information for determining whether the program has already been recorded or not, and retrieving the same recorded program in another area from the retrieval server 26.
  • the retrieval server 26 is connected to the tag list server 28, and obtains tag lists from the tag list server 28.
  • the servers are connected through the;
  • a plurality of servers may form one server in appearance.
  • the metadata server 20 is a server which manages metadata that indicates contents of a broadcasting program and is necessary for achieving the
  • the metadata used in the service is obtained from the metadata creating server 30 which is the data provider.
  • the metadata includes
  • the metadata is not necessarily input by manual operation, but metadata may be automatically prepared by analyzing broadcasting programs by the metadata creating server 30.
  • the metadata server 20 generates scene information which indicates detailed information of a scene in the program, by using the obtained metadata, and transmits a scene information list to the client terminal 10.
  • the metadata server 20 prepares scene information for a scene, by extracting or shaping part of detailed metadata, and prepares a scene information list for a program.
  • the metadata server 20 transmits a tag list (cueing information list) for a program obtained from the tag list server 28 to the client terminal 10. Since the user can understand the details of the programs based on the scene information lists and the tag lists, the user can easily select a program to be viewed.
  • the metadata itself may be used as the program information.
  • a scene information creating server may be provided instead of the metadata creating server 30.
  • the metadata server 20 converts necessary metadata for programs which satisfy the request into scene information items, and transmits the scene information items to the client terminal 10.
  • the client terminal 10 can obtain tag lists, which are prepared by the user and used in the time cloud
  • the scene information list/tag list retrieval processing is executed by the retrieval server 26, and the recommendation server 22 executes processing of obtaining recommended/favorite scenes.
  • the metadata server 20 executes only Web API (Application Program Interface) reception processing from the client terminal 10 and response data
  • FIG. 2 is a diagram illustrating an example of module configuration of the metadata server 20.
  • The. metadata server 20 obtains metadata from the metadata creating server 28 provided outside, and converts the metadata to generate tags and scene information items.
  • the metadata server 20 transmits (registers) the tag list to the tag list server 28, and stores the scene information list to respond to a request from the client.
  • the tag list and the scene information items are obtained by extracting and shaping the metadata, and include information of the program name and the time.
  • the metadata only describe programs which are broadcasted in main cities, for example, Tokyo, Nagoya, and Osaka. For programs which are broadcasted in areas (local areas) other than the main cities, tag
  • the user (not limited to users of the client terminals) inputs tag information from a mobile terminal such as a tablet personal computer, and a smartphone.
  • the start time or the like is converted from the absolute time to the relative time.
  • Each of the tags and scene information items is
  • the meta data server 20 transmits a tag list to the tag list server 28 and stores scene information in order to respond to a request from the client terminal 10.
  • the tag includes information for time and program name which is smaller than the scene information in size.
  • the metadata server 20 provides the client terminal 10 with program information items (scene information lists and tag lists) of programs, in response to and in accordance with a request from the client terminal 10.
  • the metadata server 20 retrieves metadata stored in the metadata server 20 first, in accordance with the request.
  • the metadata server 20 inquires data of the tag list server 28 (retrieves tag lists) .
  • the application program of the client terminal 10 determines whether to retrieve the metadata of the metadata server 20 or retrieve tag lists of the tag list server 28.
  • the metadata server 20 transmits program information requested by the client terminal 10
  • the metadata server 20 also transmits product information related to the program information together. It is the scene information and tags which are mainly requested by the client terminal 10.
  • the metadata server 20 functions as a gateway which mediates communication between other servers (tag list server 28, recommendation server 22, retrieval server 26, and log collecting server 24) and the client terminal 10. Basically, the metadata server 20 only mediates (through) communication between the client terminal 10 and other servers. For example, the metadata server 20 receives a command from the client terminal 10, and transmits the command to the retrieval server 26.
  • a front-end server may be provided separately from the metadata server 20. In the case of providing the front-end server, the front end server mediates communication between other servers (including the metadata server 20) and the client terminal 10.
  • the metadata server 20 obtains various data items by a Web API configured to execute Web applications, and provides the client terminal 10 with the various data items. For example, the metadata server 20 obtains the following data, and provides the client terminal 10 with the data.
  • This step includes obtaining favorite scenes registered by the user.
  • the user-prepared tag list registered in the tag list server 28 can be included in the scene information lists to be obtained.
  • a list of user-prepared tag lists registered in the tag list server 28 can be included in the list of the scene information lists to be obtained.
  • the metadata obtaining processor 20B obtains metadata provided by the metadata creating server 30.
  • the Web API provided by the metadata creating server 30 is used to obtain metadata provided by the metadata creating server 30.
  • the metadata obtaining processor 20B obtains various metadata items at regular intervals.
  • the obtaining intervals are changeable according to the state of the server .
  • the obtaining timing of the program broadcasting log data and the obtaining timing of the commercial broadcasting log data are different from each other, even if they are data which are broadcasted at the same time, due to a difference in the time required for creating the metadata (the program broadcasting log data can be obtained two or three hours after the end of broadcasting, and the commercial broadcasting log data can be obtained two or three days after the end of broadcasting) .
  • the program data is registered in the database. Thereafter, at the timing when the commercial broadcasting log data is obtained, the program broadcasting log data which is associated with the commercial data is obtained again, and registered in the database together with the commercial data.
  • the contents of commercial data may be different according to the timing of obtaining from the database .
  • the metadata obtained from the metadata creating server 30 through the Web API is registered in the database 20C in the metadata server 20.
  • broadcasting station table by using a service ID as a retrieval key is added to the program/scene table.
  • a commercial genre (large/middle/small classification) obtained from a commercial genre table by using a commercial genre ID as a retrieval key is added to the commercial table.
  • a commercial start/end time (relative time) obtained by converting the start/end time of each commercial into relative time (the unit of which is ms) from the program start time is added to the commercial table .
  • a product genre (genre 1/2/3/4/5) which is obtained from a product genre table by using a product genre ID as a retrieval key is added to a product table .
  • a shop genre (genre 1/2/3/4/5) which is obtained from a shop genre table by using a shop genre ID as a retrieval key is added to a shop table.
  • a scene type (0: the case where the number of commercials in the scene information item is -1 or 0, 1: the case where the number of commercials in the scene information item is 1 or more) is added to the scene table.
  • the tag list generating/registering processor 20D registers the program broadcasting log data in the metadata as a tag list in the tag list server 28.
  • the registered metadata is compatible with the existing tag list, and can be used from the tag processing
  • FIG. 3 illustrates metadata which is registered as a tag list.
  • the delete/registration flag mrf has a fixed value of 1.
  • the scene table (scene time/headline) is
  • the scene start time is relative time (ms) from the program start time.
  • the number of scenes of a program is counted as the item "the number of tags included in the tag list" tlct.
  • the tag list to be registered is divided into a plurality of lists.
  • the scene table (program name) is registered in the item "program title" tltl.
  • the program name is described with 96 letters maximum (the limit of the tag list server 28 ) .
  • the scene table (channel code) is registered in the item "channel code” tlch.
  • the scene table (program start date and time) is registered in the item "broadcasting start date and time" tlst.
  • the program start date and time is of a TIMESTAMP type, and (YYYY-MM-DD HH:MM:SS) is converted to the YYYYMMDDhhmmss form.
  • the scene table (program name) is registered in the item "tag list name” tlnm.
  • a fixed character string is added to the end of the program name (program name + fixed characters).
  • the scene table (broadcasting station name) is registered in the item "target program channel name” tlchnm.
  • a fixed value (01: hexadecimal number) (00000001b: terrestrial digital) is registered in the item "broadcasting type" bmk.
  • a fixed value of 0 is registered in the item "tag list target content ID" tlcid.
  • Scene information is generated based on the metadata obtained from the metadata creating server 30, and transmitted to the client terminal 10. Processing which is executed when the scene information is generated is described below.
  • the metadata of the programs which fulfill the condition is obtained from the database 20C in the metadata server 20, based on the program broadcasting date and time, channel code (indicating the
  • tag list ID For example, for users of an area, for which no metadata is
  • Metadata of programs which have the same contents as programs of the area is used among programs broadcasted in the main cities. Thereby, users of an area, for which no metadata is prepared, can also use the metadata.
  • the obtained metadata is converted into program scene information of the JSON format, and transmitted to the client terminal 10.
  • data of all the programs is transmitted to the client terminal.
  • a message for notifying the client terminal 10 of such is transmitted to the client terminal 10.
  • the broadcasting log data, product data, shop data, and commercial broadcasting log data stored in the database 20C in the metadata server 20 are identical to the broadcasting log data, product data, shop data, and commercial broadcasting log data stored in the database 20C in the metadata server 20.
  • FIG. 4, FIG. 5, and FIG. 6 illustrate metadata which is included in the generated scene information.
  • Scene list ID ID (tag list ID) issued from the tag list server 28 when the tag list is registered
  • Channel code identifier which indicates the broadcasting area and channel
  • Broadcasting start date and time Time when broadcasting of the program was started
  • Scene ID Unique ID which is assigned to each corner (scene) of the program
  • Scene name Outline (headline) of corresponding scene
  • Scene type Flag which indicates whether the information is program information or commercial information
  • Product information ID Unique ID which is assigned to each product (individual IDs are assigned to even the same product for each introduction)
  • Shop information ID Unique ID which is assigned to each introduced shop (individuals ID are assigned even to the same shop for respective introductions)
  • Genre 1 describing "shop” indicating that the data is shop data
  • Genre 2 Large classification (such as
  • Genre 3 Middle classification (such as Japanese food/ estern-style food/hotels/Japanese-style hotels)
  • Genre 4 Small classification (such as
  • Map site URL link URL of the map of
  • Travel URL Link URL to a travel domestic lodging page (only the genre “lodgings")
  • Company name Name of company which sells the product
  • BGM BGM played in the commercial
  • the metadata server 20 obtains tag lists of programs which match with the request from tag lists registered in the tag list server 28, in response to the request from the client terminal 10, executes necessary processing for the tag lists, and transmits the tag lists to the client terminal 10. Data is obtained from the tag list server 28 by using the API provided by the tag list server 28. The data which is obtained by the metadata server 20 from the tag list server 28 relates to the tags and tag lists.
  • Metadata which matches the retrieval condition received from the client terminal 10 is retrieved from the database 20C in the metadata server 20 and the tag list server 28.
  • the metadata server 20 executes only Web API reception processing from the client terminal 10 and response data shaping processing.
  • the tag lists managed by the tag list server 28 may be merged with the scene information generated in the metadata server 20 by the metadata server 20 in response to a request by the client terminal 10, and be transmitted to the client terminal 10. Since the tag information obtained from the tag list server 28 does not describe the tag end time, the metadata server 20 may execute processing of setting the start time of the next tag of the noted tag as the end time of the present tag, in response to a request from the client terminal 10.
  • the recommended/favorite processor 20H obtains recommended/favorite scene information from the
  • recommendation server 22 and transmits the information to the client terminal 10.
  • the recommended/favorite processor 20H receives list information (ID list) of the corresponding scenes from the recommendation server 22, and the metadata server 20 obtains detailed information of the scene information lists/tag lists from the database 20C in the metadata server 20 and the tag list server 28, based on the list information.
  • the client terminal 10 prepares a play list necessary for playing back contents, based on the obtained detailed information of the scene information lists/tag lists.
  • Scene information transmission processor 201 The scene information list prepared by the scene information generating processor 20E is transmitted to the client terminal 10.
  • the scene information is transmitted in the JSON format.
  • the tag list data of the XML format obtained from the tag list server 28 is converted into the JSON format by the scene information generating processor 20E, and transmitted to the client terminal 10.
  • the recommendation server 22 calculates and presents recommended/favorite
  • the recommendation server 22 has the following functions . (a) Present recommended/favorite scene/program information to the user as follows.
  • Ranking data various information items are obtained and added up from a log server or the like. Programs and scenes which correspond to the rankings are retrieved, and rankings of programs and scenes for the user are prepared.
  • HOT word a list of HOT words (keywords) obtained from an external server is presented.
  • the recommend server 22 determines whether the user, for which already-recording determination is to be made, has already recorded the program or scene or not, and provides a list.
  • the recommendation server 22 determines whether the program of the channel and the time transmitted from another user can be viewed or not.
  • audience rating rankings ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • Ranking data includes items selected from terminal ID (ID of the target client terminal), USER_ID (USER ID of the target user), recommended scene category ID (ID peculiar to the category of the recommended scenes), the target period start time (the time when the period for which sum is made was started) , the target period end time (the time when the period for which sum is made was ended) , the sum-up time (the time when the rankings were made) , the maximum ranking number (the maximum order of the rankings), the order (the order in the rankings) , the channel code, the program start time (the broadcasting start time of the program, to which the scene/tag belongs), the program end time (the broadcasting end time of the program, to which the scene/rag belongs), the program management code (ID peculiar to the program), the program management branch number (ID peculiar to the broadcasting series number of the program), the program ID (program data ID/tag list ID, to which the scene/tag belongs), scene ID (ID peculiar to the scene/tag) , the program title (title of program data/tag list, to which the scene/tag
  • the product/shop ID ID of the target product/shop
  • the product/shop name name of the target product/shop
  • the retrieval keyword the number of views (summed number of views)
  • scene jump number summed number of scene/tag jumps
  • favorite registration number the summed number of favorite registrations
  • the number of recommendations from friends summed number of
  • liking scores the value of liking scores of the scene/tag
  • the most recommended scene rankings are prepared based on the number of views, by calculating the time periods which have a large number of views from the viewing (LIVE) log.
  • the popular scene rankings are prepared by summing up the number of scene jumps from the scene jump log in the time cloud.
  • the log is obtained at Block B71. Specifically, the recommendation server 22 transmits a scene jump number request to the log collecting server 24.
  • the log collecting server 24 transmits a scene ID list, scene IDs, and the number of counts to the
  • the recommendation server 22 obtains the number of scene jumps (for the past 1 week) from the log collecting server 24.
  • the scene ID is retrieved at Block B72.
  • the recommendation server 22 transmits a scene retrieval request and the scene ID to the metadata server 20.
  • the metadata server 20 transmits the scene ID, the channel, and the scene start time to the recommendation server 22. Thereby, the channel and the scene start time are obtained based on the scene ID.
  • Block B73 it is determined whether the scene is a scene of a program which was broadcasted in the last 1 week or not. When it is not, the processing returns to Block B72. When the scene is a scene of a program which was broadcasted in the last 1 week, program retrieval is performed at Block B74.
  • the recommendation server 22 transmits a program retrieval request, the channel, and the scene start time to an external EPG server (not shown in FIG. 1) .
  • the EPG server transmits a program management code, a program management branch number, and a program name in return. These EPG data items may be obtained in advance from the EPG server, and stored in the database in the recommendation server 22.
  • Block B75 It is determined at Block B75 whether it is necessary to repeat the number of rankings. When it is necessary, the processing returns to Block B72. When it is not necessary, the ranking table is stored at Block 76 in the database in the recommendation server 22, and the processing is ended.
  • the scene audience rating rankings are prepared based on the number of views, by calculating the time periods which have a large number of views from the viewing (LIVE) log, and selecting the scenes of the corresponding metadata as scenes of high audience rating. Scene rankings of the past 1 day, past 1 week, and past 1 month are presented. Batch processing is performed once a day.
  • a log is obtained at Block B81.
  • the recommendation server 22 transmits a viewing number request to the log collecting server 24.
  • the log collecting server 24 transmits the viewing number list, the channel, the number of counts, and the scene start time to the recommendation server 22. Thereby, the number of views (per last 1 day, last 1 week, or last 1 month) is obtained from the log collecting server 24.
  • scene ID retrieval is performed. Specifically, the recommendation server 22 transmits a scene retrieval request and the scene ID to the metadata server 20.
  • the metadata server 20 transmits the scene ID, the channel, and the scene start time to the recommendation server 22. Thereby, the channel and the scene start time are obtained based on the scene
  • Program retrieval is performed at Block B83.
  • the recommendation server 22 transmits a program retrieval request, the channel, and the scene start time to the external EPG server (not shown in
  • the EPG server transmits the program management code, the program management branch number, and the program name in return.
  • Block B84 It is determined at Block B84 whether it is necessary to repeat the number of rankings or not.
  • the popular product/shop scene rankings are prepared to recommend scenes which include product/shop pages having a large number of views/URL jumps, by summing the number of views/URL jumps of product/shop pages relating to the programs supplied from the metadata creating server 30.
  • the HOT word retrieval rankings are obtained by creating a list of HOT words (keywords, for which a large number of retrievals have been performed) obtained from the external server.
  • a HOT word obtaining request is transmitted to the external server, and a result is obtained from the external server.
  • the HOT word table is updated at Block B93.
  • the updated HOT word table is stored in the database of the recommendation server 22.
  • the HOT word table includes a management ID, keyword (registered keyword/query) ,. the order (the ranking of the HOT word) , and the update time (the time when the HOT word was updated) for each HOT word.
  • the recommendation server 22 determines recommended scenes for each client (user) , it is meaningless to present the recommended scenes, when programs including the scenes have not been recorded in the client terminal 10 of the user. Therefore, the recommendation server 22 determines whether the scene recommended to the user has been recorded by the client terminal 10 of the user or not (whether the scene is viewable) .
  • the recommended scenes are received from the retrieval server 26 and the like.
  • the recommendation server 22 determines whether the scene has been recorded by each client terminal 10 (whether the scene is viewable), based on the operation log information (including the recording log) of the log collecting server 24.
  • the scenes which have not been recorded by the user' s terminal are excluded, or the scenes which have been recorded by the user' s terminal are marked and presented to the user.
  • FIG. 10 shows the case of adopting PVR (personal video recording) recording in which programs to be recorded are individually
  • the recommendation server 22 obtains comparison data (A) to specify programs which include recommended scenes, from a ranking table of the database or the like.
  • A comparison data to specify programs which include recommended scenes
  • recommendation server 22 obtains comparison data (A) from another server (one of the servers illustrated in FIG. 1, or an external server not shown) .
  • the recommendation server 22 obtains the USER_ID, the terminal ID, the channel, and the start time.
  • the recommendation server 22 obtains a recorded program list (B) . Specifically, the recommendation server 22 obtains a recorded program list, which is obtained by the log collecting server 24 and stored in the database of the recommendation server 22. The recommendation server 22 obtains a recorded program list of the terminal from the log collecting server 24. The recording program list is transmitted from the client terminal 10 once a day and every recording start time. The recommendation server 22 writes the recorded program list in the database.
  • the recorded program list includes the management ID, the terminal ID (ID of the target terminal), the USER_ID (user ID of the target user) , the channel code, the program start time (broadcasting start time of the program, to which the scene/tag belongs) , the program end time (broadcasting end time of the program, to which the scene/tag belongs), the recording ID (ID which uniquely indicates the program, to which the scene/tag belongs, and which is recorded in the
  • the recording program list is written in association with the corresponding terminal ID and USER_ID.
  • the recommendation server 22 can obtain data (channel, start time, end time, program name, and recording ID) which corresponds to the terminal ID and the USER_ID from the database.
  • Block B1003 it is determined whether the channel in the comparison data (A) is included in the recorded program list (B) or not. In the case of Yes, it is determined at Block B1004 whether the start time of the, comparison data (A) matches with the start time of the recorded program list (B) . When they match, it is determined at Block B1005 that they are the same program, the recording ID thereof is stored, and the processing is ended. When the start times do not match, it is determined at Block B1010 that "there is no corresponding recorded program", and the processing is ended .
  • the program information of the comparison data (A) is obtained at Block B1006, when the comparison data (A) is obtained from another server. Specifically, the channel (A) and the start time (A) are transmitted to the EPG database included in the EPG server or the recommendation server 22, and the program management code, the program management branch number, and the end time (A) are obtained from the database in the recommendation server 22.
  • the program information of the recorded program list (B) is obtained. Specifically, the channel (B) and the start time (B) are transmitted to the EPG database, and the program management code, the program management branch number, and the end time (B) are received from the database in the
  • Block B1008 it is determined whether the program management code, the. program management branch number, and the start and end time match between the comparison data (A) and the recorded program list (B) (the number of the second of the time is ignored) . When they match, the processing goes to Block B1005. When they do not match, the processing goes to block B1009, and it is determined whether the processing has been executed for all the programs of the recorded program list or not. When the processing has not been executed for all the programs of the recorded program list, the processing goes back to Block B1007. In the case of Yes, the processing goes to Block B1010.
  • FIG. 11 shows the case where all programs have a fixed period of time (for example, the past 15 days) (time-shift recording) by designating the time and a plurality of channels (for example, desired channels up to 6 channels) .
  • the recommendation server 22 obtains comparison data (A) to specify programs including recommended scenes from a ranking table of the database or the like.
  • the recommendation server 22 obtains comparison data (A) from another server (one of the servers illustrated in FIG. 1 or an external server (not shown in FIG. 1) ) .
  • the USER_ID, the terminal ID, the channel, and the start ⁇ time of each program ar obtained .
  • time shift recording setting information (B) is obtained. Specifically, the time- shift recording setting information which is obtained by the log collecting server 24 and stored in the database in the recommendation server 22 is obtained.
  • the recommendation server 22 obtains time-shift recording setting information of the terminal from the log collecting server 24.
  • the time-shift recording setting information is transmitted from the client terminal 10 once a day and when the setting is changed
  • the recommendation server 22 writes the time-shift recording setting information in the database.
  • the time-shift recording setting information includes the terminal ID (ID of the target terminal), the time-shift execution time list (for programs of which period of time time-shift recording was performed) , the ' update time (the time when the recording list was updated) , the channel code list (list of channel codes for which time-shift recording is performed) , and the oldest recording time (oldest recording time in each channel ) .
  • the time-shift recording setting information is written in association with the corresponding terminal ID.
  • the recommendation server 22 can obtain data
  • the time-shift playback possible time is calculated.
  • the oldest recording time is calculated from the difference between the present time and the update time, and the time which is closest to the present time among the channels is determined as "playback possible time". Suppose that recording is continuously performed in all the designated channels, and the channels have the same oldest playback time.
  • the program information of the comparison data (A) is obtained only when there is a reguest from another server.
  • the EPG database in the EPG server (not shown in FIG. 1) or the recommendation server 22 is provided with the channel (A) and the start time (A) , and the program management code, the program management branch number, and the end time (A) are received from the database.
  • Block B1105 when the start time and end time are included in the "playback possible time" and the time-shift execution time list, it is determined at Block B1106 whether the channel in the comparison data (A) is included in the time-shift recording setting information (B) . When the channel is included, it is determined at Block B1107 that the programs are the same program (there is a recorded program which
  • the channel (A) and the start time are
  • a broadcasting station list (C) which corresponds to the program information of the comparison data (A) is obtained at Block B1108.
  • the EPG database is provided with the program
  • Block B1109 it is determined whether the channel (B) is included in the channel (C) , and the start time and end time (C) match with the start time and end time (A) .
  • the channel (B) is included in the channel (C) and the start time and end time (C) match with the start time and end time (B)
  • Block B1107 it is determined at Block B1107 that the programs are the same program, the channel and the start time are recorded, and the processing is ended.
  • Block B1110 it is determined at Block B1110 that there is no corresponding program, and the processing is ended .
  • the program information (metadata) of the program XX broadcasted in an area can be associated with the program YY broadcasted in another area.
  • program information of programs which are broadcasted in areas other than Tokyo, Osaka, and Nagoya, for which no metadata are prepared can be enriched.
  • poor program information such as EPG data
  • rich program information (metadata) of a program of a first area main city
  • the poor program information of the program of the second area can be complemented with the rich program information of the program of the first area, when it is determined that the programs are the same.
  • the recommendation server 22 receives comparison data (A) from another server or the client terminal, ' to determine whether the program (A) including a recommended scene can be used by the specific client terminal. Specifically, the
  • recommendation server 22 obtains the USER_ID, the terminal ID, the channel of the program (A) , the start time of the program (A) , and a channel list (A) of the client terminal (terminal ID) .
  • Block B1202 it is determined whether the channel list of the client terminal (terminal ID) was obtained from another server.
  • the channel list of the client terminal (terminal ID) is used as the channel list (B) .
  • the channel list (B) is obtained at Block B1203. Specifically, the
  • recommendation server 22 obtains the channel list
  • the recommendation server 22 obtains a channel list of the terminal from the log collecting server 24.
  • the channel list is transmitted from the client terminal 10 once a day or when channel scanning is performed.
  • the recommendation server 22 writes the channel list in the database.
  • the channel list includes the terminal ID (ID of the target terminal), the update time (time when the list was obtained), and the channel code list.
  • recommendation server 22 is provided with the channel (channel (A) ) of the program (A) and the start time (start time (A) ) of the program (A) , and the program management code, the program management branch number, and the end time (A) are received from the database.
  • Block B1206 it is determined- whether the channel (A) in the comparison data (A) is included in the channel list (B) or not.
  • the channel (A) it is obvious that there is the same program. Therefore, at Block B1209, the channel, the start time, and the end time are recorded, and the processing is ended.
  • the corresponding broadcasting station list (C) is obtained at Block B1207.
  • the database in the recommendation server 22 is provided with the program management code and the program management branch number, and a list of the channel, the start time, and the end time is received from the database.
  • Block B1208 it is determined whether the channel (B) matches with the channel (C) and the start time and the end time (C) match with the start time and end time (A) . When both determinations are yes, it is determined at Block B1209 that the program (A)
  • a database structure used in the recommendation server will be described hereinafter.
  • Ranking data Table which stores total rankings
  • HOT words Table which records HOT words
  • Time-shift recording setting information Time- shift recording setting information is recorded.
  • Channel list Channel information of the terminal is recorded.
  • EPG information Predetermined EPG data is
  • the module configuration of the retrieval server 26 includes a retrieval server front end, a retrieval server back end, and a metadata database.
  • retrieval server front end returns a retrieval result of keyword retrieval, in response to a request from the metadata server 20.
  • the retrieval server backend prepares a retrieval index table based on the program information of the metadata database.
  • the metadata database stores program broadcasting log data obtained from the metadata creating server 30, and information of tag lists registered in the tag list server 28.
  • a request is transmitted from the metadata server 20 to the retrieval server 26 by using the HTTP POST method.
  • a response from the retrieval server 26 to the metadata server 20 is transmitted in the JSON form.
  • UTF-8 is used for the character code.
  • the API which is supplied to the client terminal 20 by the retrieval server 26 includes scene retrieval and scene retrieval result (obtaining the number of retrievals ) .
  • the scene retrieval involves performing retrieval for a supplied word by exact searching or prefix searching with words registered in the index table. For example, when the sentence for which retrieval is performed is "a new wind power generator having a diameter of 2 meters was open to the public. The generator rotates with a very small quantity of wind and generates electricity”, the words “2 meters”, “new wind power generator”, “generates electricity” are registered in the index table, and retrieval is
  • Keywords for retrieving tag names are divided by a space, and interpreted as one of
  • the retrieval results are sorted in the order of their program broadcasting date, newest first, the order of their channel number (channel code) , smallest first, the order of the program broadcasting time, newest first, and/or the order of the scene start time, oldest first.
  • the results are not sorted in the order of the time obtained at the recording device. A result which matches more retrieval words may be displayed at the head in the sorting order.
  • sid which is obtained by collecting a series of commercials, is adopted as the sid (scene ID).
  • the following is a structure of the database which is necessary for retrieval.
  • the keyword table stores the keyword, scene ID, program ID, commercial ID, tag list ID, channel code, and broadcasting date and time.
  • the last update date and time storing table stores the last update date and time.
  • the tag list cache table stores the tag list ID, tag list subsidiary ID, tag list name, tag name, broadcasting date and time, and update date and time.
  • the retrieval log table stores the keyboard, last inquiry date and time, and the number of retrievals.
  • the retrieval server 26 receives a retrieval request using keywords, such as person's names and products, from the client terminal 10, and presents scene information and tag lists selected in accordance with the keywords to the client terminal 10.
  • the retrieval results are not presented without any processing, but limited to scenes which the user who transmitted the retrieval request actually recorded, and presented to the client terminal 10. It can be understood whether the scenes have actually been recorded by the client terminal 10 which transmitted the retrieval request, by inquiring of such to the recommendation server 22, and receiving a result of th ⁇ inquiry.
  • the recommendation server 22 obtains various rankings, already recording (recorded) determination, and information for retrieving the same program of other areas. Therefore, the recommendation server 22 also includes recording log information obtained from the log collecting server 24, and the retrieval server 26 can also obtain the recording log information from the recommendation server 22. This structure prevents scene information, of a program which the user cannot view from being included in the retrieval results.
  • the first method involves
  • FIG. 13 illustrates a flowchart of the method of narrowing down the results.
  • Block B1302 When a request to retrieve matters from number N to number n is received from the Web API as illustrated in Block B1301, the processing is started.
  • an inquiry for x matters is transmitted to the index table of a certain area (for example, the Kanto region) .
  • scenes matching the inquiry results it is inquired at Block B1303 of the recommendation server 22 whether the scenes have already been recorded. or not.
  • the second method of narrowing down the retrieval results involves retrieving scenes which correspond to the keywords, based on the metadata, scene information, and tag lists which correspond to only the programs that can be viewed by the user who made the retrieval request, when the request to perform retrieval by using keywords is received from the client terminal 10.
  • transmitted the retrieval request can be specified by receiving program information of the user' s recorded program list from the recommendation server.
  • retrieval server 26 will be explained hereinafter. As described above, although the retrieval server 26 retrieves scene information which matches the retrieval condition from the recorded programs recorded by the client terminal 10, retrieval may be insufficient in an area for which no metadata are prepared. Although the quantity of program information of the recorded program is large in an area for which metadata are prepared since metadata is used for ⁇ the program information, there is no program information of the recorded program.
  • the recorded program list to be retrieved by the retrieval server 26 is retrieved after the program information of an area in which the client terminal 10 is located is replaced by program information of programs of the same contents of the area for which metadata is prepared. This replacement is the same as the same program retrieval processing performed by the recommendation server 22 illustrated in FIG. 12. Since retrieval of the same program has already been performed in FIG. 12, the program information is replaced (converted) by using a conversion table (the program information of the first area is converted into the program information of the second area) prepared from the retrieval result.
  • FIG. 14 is a flowchart of another example of operation of the retrieval server 26.
  • the retrieval request from the client terminal 10 is supplied to the retrieval server 26 through the metadata server 20.
  • the retrieval server 26 transmits a recorded program list request to the recommendation server 22, and receives a list of recorded program information items from the recommendation server 22.
  • the retrieval server 26 requests the recommendation server 22 to transmit the conversion table, and receives the conversion table from the recommendation server 22.
  • the retrieval server 26 converts the program information of the recorded programs of the client terminal 10 into the program information of the programs of the same contents, which were broadcasted in another area for which metadata is prepared, and retrieves scene information which corresponds to the request from the client terminal 10 from the converted program information.
  • the retrieval results (scene information list) are transmitted to the client terminal 10 through the metadata server 20.
  • the retrieval server 26 performs an inverse transform to convert the converted program information into the original program information.
  • the first 8 digits indicate a date
  • the next 9 digits indicate a channel code which is an identifier indicating the broadcasting area and the channel
  • the next 4 digits indicate the start time.
  • the program information before conversion is information of an area for which metadata is prepared
  • the information remains the same program information after conversion.
  • a conversion flag of 1 digit is added to the end of the channel code.
  • the program information of the above first line has a flag "0", which indicates that the program information is not converted.
  • the program information of the above second line is converted from 7FC0 to 7FE0, and thus has a flag "1".
  • the program information items having the flag "1" are excluded from information to be retrieved.
  • commercials are also not included in information to be retrieved when a program of another area which has the same content as a program of a local area is retrieved.
  • the program information of a commercial of a local area is converted into program information of another area, the commercial is not included in the object.
  • a retrieval index for the retrieval server 26 may be increased by one. Thereby, retrieval can be performed by using a keyword "gourmet" of a
  • the log collecting server 24 continuously collects and stores the operation log and the viewing log of each client terminal 10. Thereby, information as to which programs were viewed or recorded by the user of each client terminal 10 can be stored. To store the operation log and the viewing log, it is necessary to. upload information from the client terminal 10 to the log collecting server 24. When information is uploaded without any restriction for each operation of the user, uploading will greatly increase, which may apply an excessive load on the network. In particular, users tend to change channels when commercials are
  • the upload cycle is shortened, and discrepancy may occur between information, although the real-time property of the information increases.
  • the upload cycle is lengthened, and
  • the upload cycle is set in accordance with the type of the log, which thereby prevents an excessive load being applied on the network.
  • the upload timing is determined as follows for each log item.
  • the log items to be uploaded include programmed viewing and programmed recording of a reservation category, program recording in a recording category, recorded program edit of an edit category, live
  • a communication trigger (upload timing) of the programmed viewing of the reservation category is generated when reservation is added/changed, or
  • Reservation batch notification is performed one by one or once a day.
  • a communication trigger of the programmed recording of the reservation category is generated when the reservation is added/changed, or canceled.
  • Reservation batch notification is performed one by one or once a day.
  • a communication trigger of the program recording in the recording category is generated when a move is completed, a dubbing is completed, a program is
  • a communication trigger of the live viewing of the viewing category is generated every 1 hour or viewing is ended.
  • Communication triggers of the PVR viewing and the time-shift viewing of the viewing category are generated when PVR playback is stopped, each program is ended, or time-shift playback is ended.
  • a communication trigger of the setting information is generated one by one with respect to device
  • registration/change one by one with ' respect to cancel of device registration, once a day with respect to registered device batch notification, one by one or once a day with respect to folder setting notification, one by one or once a day with respect to time-shift setting notification, and one by one or once a day with respect to receivable channel batch notification.
  • the following XML response is returned from the log collecting server 24 to the client terminal 10.
  • Next server access date and time (designate next log transmission date and time) .
  • the client terminal 10 does not perform upload up to the designated date and time .
  • FIG. 15 is an example of picture display of the client terminal 10.
  • FIG. 15 ' illustrates Today's most recommended scenes in recommended scenes, which is an example of "ScenePlay”.
  • a cloud menu picture is displayed on the screen (not shown) of the client terminal 10. When the item "recommended scenes" is selected in the cloud menu picture, the picture changes to the picture illustrated in FIG. 15. In this
  • scene information items are simultaneously displayed.
  • Other scene information items can also be displayed by scrolling up and down through the scene information items.
  • a cursor is positioned on one of the scene information items, the scene is played back in the preview picture area, and detailed program information of the scene is displayed under the preview picture area.
  • scene information which indicates contents of a scene of the program is prepared from metadata which is supplied from the outside and indicates detailed contents of the broadcasting program, the scene information is supplied to the user, and thereby the user can easily select a desired program.
  • a tag which is cueing information of a scene is prepared from the metadata, and thereby even a conventional client device which can only deal with tags can use the server.
  • scene information includes product data as well as program broadcasting log data
  • product information which relates to the program information can also be transmitted when program information requested by the client terminal is transmitted.
  • the log collecting server stores information of the viewing log and the recording log of each user, it is possible to obtain and present recommended information for each user. It is determined whether the scene recommended to the user has been recorded (viewable) by the client terminal of the user, scenes which are not recorded are excluded, or only scenes which have been recorded are presented to the user. Thereby, the user's convenience increases.
  • the metadata is prepared only for programs which are broadcasted in main cities, and there are no metadata for programs which are broadcasted in other areas. It is checked, however, whether a program of the same contents as a program broadcasted in an area for which no metadata is prepared is broadcasted in an area for which metadata is prepared.
  • the program information of the program can be used as program information of the program broadcasted in the local area for which no metadata is prepared, and the program information of programs broadcasted in local areas for which no metadata is prepared -can be enriched.
  • the retrieval results are narrowed down only to information of programs which have been recorded by the client terminal, and thereby the user's convenience increases .
  • embodiment can be easily exerted simply by installing a computer program in a computer with, for example, a function to record and reproduce content, through a computer readable storage medium with the computer program stored therein, ' and then executing the computer program.
  • modules in the system may be realized as software applications, hardware, software modules, and components on one or more computers. Although the various modules in the system are shown as separate modules, they may share some or all of the same logics or codes.

Abstract

According to one embodiment, a system includes a management module (24) and a providing module (26). The management module (24) manages a list of contents recorded in a client device. The providing module (26) provides the client device with content information corresponding to contents recorded in the client device and requested by the client device.

Description

D E S C R I P T I O N SYSTEM, METHOD AND STORAGE MEDIUM Field
Embodiments described herein relate generally to a system, method, and a storage medium, which provide the user with information.
Background
In recent years, information providing systems, which connect a user terminal to a server through the Internet, and provide the user terminal with various information items by the server, have been developed. For example, digital television apparatuses which enable browsing sites on the Internet have come into wide use. The digital television apparatuses can receive, record, and play back broadcasting contents, and output information of various sites on the
Internet.
The conventional information providing system can provide huge items of information. However, it is difficult for a user to select a desired item of information .
An object of the present invention is to provide a system, method, and a storage medium, which enables the user to easily select information. Brief Description of the Drawings
A general architecture that implements the various features of the embodiments will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate the embodiments and not to limit the scope of the
invention .
FIG. 1 is an exemplary view illustrating an example of an information providing system according to an embodiment.
FIG. 2 is an exemplary view illustrating an example of a module configuration of a metadata server in the information providing system of FIG. 1.
FIG. 3 is an exemplary view illustrating an example of a structure of a tag list which is processed by the information providing system of FIG. 1.
FIG. 4 is an exemplary view illustrating an example of a structure of scene information which is processed by the information providing system of
FIG. 1.
FIG. 5 is an exemplary view illustrating an example of a structure of scene information which is processed by the information providing system of
FIG. 1.
FIG. 6 is an exemplary view illustrating an example of a structure of scene information which is processed by the information providing system of 3 . .....
FIG. 1.
FIG. 7 is an exemplary flowchart illustrating processing of creating popular scene rankings.
FIG. 8 is an exemplary flowchart illustrating processing of creating scene audience rating rankings.
FIG. 9 is an exemplary flowchart illustrating processing of obtaining and updating HOT words.
FIG. 10 is an exemplary flowchart illustrating an example of processing of determining whether a program has already been recorded or not.
FIG. 11 is an exemplary flowchart illustrating an example of processing of determining whether the program has already been recorded or not.
FIG. 12 is an exemplary flowchart illustrating an example of processing of retrieving the same program which is broadcasted in an area, for which no metadata is prepared.
FIG. 13 is an exemplary flowchart illustrating an example of scene retrieval processing performed by a retrieval server.
FIG. 14 is an exemplary flowchart illustrating an example of conversion of a recorded program list by the retrieval server.
FIG. 15 is an exemplary diagram illustrating a picture of displaying recommended scenes, as an example of picture display of a client device. Detailed Description
Embodiments will be described hereinafter with reference to the drawings.
(System Configuration)
FIG. 1 illustrates a system configuration of a cloud server which provides a television with time cloud service. The system according to the present embodiment includes various servers and a client terminal 10. The client terminal 10 may be any device, as long as it includes a user interface, a
communication function, a content processing function, a content output function, and a content recording function. Although an example of the client terminal 10 is a digital television apparatus, the client terminal 10 may be another image apparatus such as an optical disk recording and playback apparatus, a hard disk drive, or a mobile terminal such as a tablet personal computer and a smartphone. Although FIG. 1 illustrates only one client terminal 10, a number of client terminals 10 may be connected to the system.
"ScenefoSceneList/ScenePlay" application, which is a time-cloud function included in the digital
television apparatus being the client terminal 10, will be explained hereinafter. The term "Scenefo" indicates scene information. The term "SceneList" indicates a scene list obtained by collecting scene information items. The term "ScenePlay" indicates playback using the scene information.
The time cloud is a service of connecting tags or scene information items, which are prepared by a metadata manufacturer, the user, or bot, with image content. The time cloud is formed of the following three functions. The term "tag" indicates information for finding the head of the content, and the term "scene information" denotes details of a scene in the content .
<Scenefo>
The function "Scenefo" is a function of providing scene information of an interesting scene being played back. An example application of the function is a mail-order business. The tag list used herein is a list of tags which are included in content, such as a company-prepared tag list provided by a metadata manufacturer, and a user-prepared tag list prepared by the user.
The "Scenefo" function is formed of the following steps: (1) Register tag lists, (2) Play back content, (3) Start "Scenefo", (4) Transmit and receive the tag lists, (5) Present products (display), (6) Select product (input operation), and (7) Provide product page (display) .
<SceneList>
The function "SceneList" is a function of
selectively viewing only scenes which the user wishes to view during playback. The user selects and views scenes which the user wishes to view from a desired tag list among various tag lists, such as a user-prepared tag list, a tag-bot tag list, and a company-prepared tag list provided by a metadata manufacturer.
The SceneList function is formed of the following steps: (1) Register tag lists, (2) Play back content, (3) Start SceneList, (4) Transmit and receive tag lists, (5) Select tag list (input operation), (6) Transmit and receive tag list, and (7) tag jump.
<ScenePlay>
The function "ScenePlay" is a function of
retrieving a scene which is interesting to the user from a number of scene information items of image content which can be played back, and enabling the user to view the scene. As an example, the user can find an interesting scene from recommended scenes, and select and view the interesting scene. Various tag lists are usable, such as a user-prepared tag list, a tag-bot tag list, and a company-prepared tag list provided by a metadata manufacturer.
The "ScenePlay" function is formed of the
following steps: (1) Register tag lists, (2) Start "ScenePlay", (3) Recommendation processing, (4)
Transmit and receive tag lists, (5) Select tag (input operation), and (6) Play back content from the position of the tag. As illustrated in FIG. 1, the client terminal 10 is connected to a metadata server 20, a recommendation server 22, and a log collecting server 24. The client terminal 10 obtains program information from the metadata server 20. The client terminal 10 transmits favorite information to the recommendation server 22, and transmits an operation log to the log collecting server 24.
The terms and abbreviations will be defined and explained hereinafter.
The term "metadata" indicates data which describes broadcasting program data. In the present
specification, the term "metadata" indicates program broadcasting log data, television introduced
<<product>> data, television introduced <<shop>> data, and commercial broadcasting log data, which are
provided from a metadata creating server 30.
The metadata server is a server which manages the above metadata.
The term "scene information" indicates detailed information of a scene in the program, and data which is generated from the metadata.
The term "scene information list" indicates a list of a plurality of scene information items of a program.
The term "tag" indicates scene cueing information of a recorded program, which is used in tag processing application of the client terminal 10. The term "tag list" indicates a list of a
plurality of tags of a program. A tag list server 28 is a server which manages tags and tag lists.
The client terminal 10 connects with the metadata server 20, and requests the metadata server 20 to transmit metadata.
The log collecting server 24 is a server which collects the user' s viewing log and operation log in the client terminal 10.
The recommendation server 22 is a server which calculates recommended programs and scenes, based on the user's viewing log, operation log, and favorite information.
A Web application is a time-cloud application which operates on the client terminal 10.
The term "program information" is a general term for metadata, scene information lists, and tag lists.
The metadata server 20 returns program information (for example, scene information lists/tag lists herein) of specific programs to the client terminal 10, in response to a request transmitted from the client terminal 10. Since the cloud server system stores a large number of programs, the user cannot select a desired program or scene, if scene information lists and tag lists of all the programs are transmitted to the client terminal 10. Since the metadata server 20 transmits, however, scene information lists and tag lists of specific programs for each user to the client terminal 10, the user can easily select a program and a scene to be viewed.
The metadata server 20 is connected to the recommendation server 22, a retrieval server 26, the tag list server 28, and the metadata creating server 30. The metadata server 20 obtains
recommended/favorite information from the
recommendation server 22. The metadata server 20 obtains a scene/tag list retrieval result from the retrieval server 26. The metadata server 20 registers tag lists in the tag list server 28, and obtains tag lists from the tag list, server 28. The metadata server 20 obtains metadata from the metadata creating server 30.
The recommendation server 22 is connected to the log collecting server 24, and the retrieval server 26. The recommendation server 22 obtains various rankings, determination as to whether the program has already been recorded or not, and information for retrieving the same recorded program in another area, and obtains retrieval results from the retrieval server 26.
The log collecting server 24 is connected to the retrieval server 26, and obtains information for determining whether the program has already been recorded or not, and retrieving the same recorded program in another area from the retrieval server 26. The retrieval server 26 is connected to the tag list server 28, and obtains tag lists from the tag list server 28. The servers are connected through the;
Internet .
Although each server is illustrated as an
independent server, a plurality of servers may form one server in appearance.
The metadata server 20 is a server which manages metadata that indicates contents of a broadcasting program and is necessary for achieving the
"ScenefoScenelist" and "ScenePlay" functions of the time cloud service. The metadata used in the service is obtained from the metadata creating server 30 which is the data provider. The metadata includes
information which is manually input by the operator of the metadata manufacturer after the operator actually views programs and commercials, in addition to an ordinary electronic program guide (EPG data) . An example of the information is information as to when, in which program of which broadcasting station, by whom, for how long, and how comments were made with respect to topics, companies, products, and shops. The metadata is not necessarily input by manual operation, but metadata may be automatically prepared by analyzing broadcasting programs by the metadata creating server 30.
The metadata server 20 generates scene information which indicates detailed information of a scene in the program, by using the obtained metadata, and transmits a scene information list to the client terminal 10. The metadata server 20 prepares scene information for a scene, by extracting or shaping part of detailed metadata, and prepares a scene information list for a program. As another example, the metadata server 20 transmits a tag list (cueing information list) for a program obtained from the tag list server 28 to the client terminal 10. Since the user can understand the details of the programs based on the scene information lists and the tag lists, the user can easily select a program to be viewed. The metadata itself may be used as the program information. As another example, a scene information creating server may be provided instead of the metadata creating server 30.
In response to a request from the client terminal 10, the metadata server 20 converts necessary metadata for programs which satisfy the request into scene information items, and transmits the scene information items to the client terminal 10. In addition, the client terminal 10 can obtain tag lists, which are prepared by the user and used in the time cloud
service, from the tag list server 28 through the metadata server 20.
In the "ScenePlay" function, the scene information list/tag list retrieval processing is executed by the retrieval server 26, and the recommendation server 22 executes processing of obtaining recommended/favorite scenes. The metadata server 20 executes only Web API (Application Program Interface) reception processing from the client terminal 10 and response data
preparation processing.
(Configuration of Metadata Server 20)
FIG. 2 is a diagram illustrating an example of module configuration of the metadata server 20. The. metadata server 20 obtains metadata from the metadata creating server 28 provided outside, and converts the metadata to generate tags and scene information items. The metadata server 20 transmits (registers) the tag list to the tag list server 28, and stores the scene information list to respond to a request from the client. The tag list and the scene information items are obtained by extracting and shaping the metadata, and include information of the program name and the time. The metadata only describe programs which are broadcasted in main cities, for example, Tokyo, Nagoya, and Osaka. For programs which are broadcasted in areas (local areas) other than the main cities, tag
information input by each user by manual operation is registered in the tag list server 28, and the
information can be used. The user (not limited to users of the client terminals) inputs tag information from a mobile terminal such as a tablet personal computer, and a smartphone.
When the metadata is converted into tags and scene information items, the start time or the like is converted from the absolute time to the relative time. Each of the tags and scene information items is
provided with a channel code (identifier which
indicates the broadcasting area and channel) .
The meta data server 20 transmits a tag list to the tag list server 28 and stores scene information in order to respond to a request from the client terminal 10. The tag includes information for time and program name which is smaller than the scene information in size.
Since both rich information (scene information) which includes a large quantity of information and poor information (tag) which includes a small quantity of information are included as the program information, an application of an older-generation client terminal, which is only compliant with tags, can also use the program information. In addition, although the scene information cannot be accessed only from the client terminal 10, tags can be accessed also from the
Internet .
The same effect is obtained by providing metadata server 20 and the tag list server 28 as separate servers .
The metadata server 20 provides the client terminal 10 with program information items (scene information lists and tag lists) of programs, in response to and in accordance with a request from the client terminal 10. When there is a request from the client terminal 10, the metadata server 20 retrieves metadata stored in the metadata server 20 first, in accordance with the request. Next, the metadata server 20 inquires data of the tag list server 28 (retrieves tag lists) . The application program of the client terminal 10 determines whether to retrieve the metadata of the metadata server 20 or retrieve tag lists of the tag list server 28. When the metadata server 20 transmits program information requested by the client terminal 10, the metadata server 20 also transmits product information related to the program information together. It is the scene information and tags which are mainly requested by the client terminal 10.
The metadata server 20 functions as a gateway which mediates communication between other servers (tag list server 28, recommendation server 22, retrieval server 26, and log collecting server 24) and the client terminal 10. Basically, the metadata server 20 only mediates (through) communication between the client terminal 10 and other servers. For example, the metadata server 20 receives a command from the client terminal 10, and transmits the command to the retrieval server 26. A front-end server may be provided separately from the metadata server 20. In the case of providing the front-end server, the front end server mediates communication between other servers (including the metadata server 20) and the client terminal 10.
The following is a detailed explanation of function processing modules provided by the metadata server 20.
(1) Command (Web API) processor 20A
The metadata server 20 obtains various data items by a Web API configured to execute Web applications, and provides the client terminal 10 with the various data items. For example, the metadata server 20 obtains the following data, and provides the client terminal 10 with the data.
(a) Obtain a program list
Obtain a list of programs, for which tag lists are registered in the tag list server 28.
(b) Obtain a list of tag lists
Obtain a list of tag lists registered in the tag list server 28.
(c) Obtain tag lists
Obtain tag lists registered in the tag list server
28.
(d) Obtain scene information items
Obtain scene information items of the designated program. (e) Obtain product information
Obtain details of product information.
(f) Obtain a list of product information items Obtain a list of product information items included in the scenes.
(g) Obtain shop information
Obtain details of shop information.
(h) Obtain a list of shop information items
Obtain a list of shop information items included in the scenes.
(i) Retrieve scene information .
Retrieve and obtain scene information items which match the keyword input from the client terminal 10. Obtain a scene information list including the scene information items which match the designated retrieval condition. As the retrieval condition, any desired keyword input by the user can be designated.
(j) Obtain "favorite" mode/category
Obtain a mode/category list which can be dealt with in the "favorite" function. This step includes obtaining favorite scenes registered by the user.
(k) Obtain recommended scenes
Obtain "recommended" scenes designated by the mode and category.
(1) Obtain a scene information list.
Obtain a scene information list of programs which match the designated condition. When there are a plurality of scene information lists of programs which match the designated condition, all the scene
information lists are obtained. When there is no scene information list which matches the retrieval condition, the user is notified of it. The user-prepared tag list registered in the tag list server 28 can be included in the scene information lists to be obtained.
(m) Obtain a list of programs for which a scene information list exists
Obtain "a list of programs" for which a scene information list of the designated condition exists. Programs, for which a user-prepared tag list registered in the tag list server 28 exists, can be included in the list of programs to be obtained.
(n) Obtain a list of scene information lists
Obtain "a list of scene information lists"
registered for the designated programs. A list of user-prepared tag lists registered in the tag list server 28 can be included in the list of the scene information lists to be obtained.
(o) Obtain a scene information list (designate ID) Obtain "scene information list" of the designated ID. When a tag list ID is designated, the user- prepared .tag list registered in the tag list server 28 is obtained.
(p) Obtain recommended scene information
Obtain "recommended scene" information calculated 1ί by the recommendation server 22.
(q) Obtain favorite scene information
Obtain "favorite scene" information registered by the user and managed by the server.
(2) Metadata obtaining processor 20B
The metadata obtaining processor 20B obtains metadata provided by the metadata creating server 30.
The Web API provided by the metadata creating server 30 is used to obtain metadata provided by the metadata creating server 30.
The metadata obtaining processor 20B obtains various metadata items at regular intervals. The obtaining intervals are changeable according to the state of the server .
(a) Program broadcasting log data is obtained every 1 hour, and update data for past 1 hour from the current time is obtained for each area.
(b) Commercial broadcasting log data is obtained every 1 hour, and update data for past 1 hour from the current time is obtained for Tokyo area and additional areas.
(c) Television introduced product data is obtained every 1 hour, and update data for past 1 hour from the current time is obtained for each area.
(d) Television introduced shop data is obtained every 1 hour, and update data for past 1 hour from the current time is obtained for each area. (e) Broadcasting station information, program genre information, program category information, area information, commercial genre information, product genre information, and shop genre information are obtained every day, and update data for past 1 day from the current time is obtained.
The obtaining timing of the program broadcasting log data and the obtaining timing of the commercial broadcasting log data are different from each other, even if they are data which are broadcasted at the same time, due to a difference in the time required for creating the metadata (the program broadcasting log data can be obtained two or three hours after the end of broadcasting, and the commercial broadcasting log data can be obtained two or three days after the end of broadcasting) .
At the timing when the program broadcasting log data is first obtained, the program data is registered in the database. Thereafter, at the timing when the commercial broadcasting log data is obtained, the program broadcasting log data which is associated with the commercial data is obtained again, and registered in the database together with the commercial data.
Therefore, the contents of commercial data may be different according to the timing of obtaining from the database .
The metadata obtained from the metadata creating server 30 through the Web API is registered in the database 20C in the metadata server 20.
In addition, the following data is generated in the metadata server 20, and registered in the database 20C.
(a) A tag list ID which is issued from the tag list server 28 when the tag list is registered is added to a program/scene table.
(b) A network ID which is obtained from a
broadcasting station table by using a service ID as a retrieval key is added to the program/scene table.
(c) An area ID obtained from an area table is added to the program/scene table.
(d) An area name is added to the program/scene table .
(e) A subsidiary area name is added to the program/scene table.
(f) A channel code which is generated based on metadata obtained from the metadata creating server 30 is added to the program/scene table.
(g) A channel name which is obtained from a broadcasting station information table by using a service ID as a retrieval key is added to the
program/scene table.
(h) Scene start/end time (relative time) obtained by converting the scene start/end time of each scene into relative time (unit of which is ms) from the program start time is added to the scene table.
(i) A tag list name formed of a program name and a fixed character is added to the scene table.
(j) A program genre which is obtained from the program genre table by using a program genre ID as a retrieval key is added to the program/scene table.
(k) A program classification which is obtained from a program classification table by using a program classification ID as a retrieval key is added to the scene table.
(1) A commercial genre (large/middle/small classification) obtained from a commercial genre table by using a commercial genre ID as a retrieval key is added to the commercial table.
(m) A commercial start/end time (relative time) obtained by converting the start/end time of each commercial into relative time (the unit of which is ms) from the program start time is added to the commercial table .
(n) A memo which is obtained by processing special symbols into character strings is added to the
commercial table.
(o) A product genre (genre 1/2/3/4/5) which is obtained from a product genre table by using a product genre ID as a retrieval key is added to a product table .
(p) A shop genre (genre 1/2/3/4/5) which is obtained from a shop genre table by using a shop genre ID as a retrieval key is added to a shop table.
(q) A scene type (0: the case where the number of commercials in the scene information item is -1 or 0, 1: the case where the number of commercials in the scene information item is 1 or more) is added to the scene table.
(r) A product retrieval result list page URL, to which an affiliate ID is added, is added to the
commercial/product table.
(s) A tagler type and a tagler name which indicate the metadata manufacturer are added to the scene table.
(3) The tag list generating/registering processor
20D
The tag list generating/registering processor 20D registers the program broadcasting log data in the metadata as a tag list in the tag list server 28. The registered metadata is compatible with the existing tag list, and can be used from the tag processing
application program of the client terminal 10.
FIG. 3 illustrates metadata which is registered as a tag list.
The delete/registration flag mrf has a fixed value of 1.
The scene table (scene time/headline) is
registered in the tag list main body (start time, tag) tl. The scene start time is relative time (ms) from the program start time.
The number of scenes of a program is counted as the item "the number of tags included in the tag list" tlct. When the number of tags of the tag list exceeds 99, which is the upper limit (the limit of the tag list server 28), the tag list to be registered is divided into a plurality of lists.
The scene table (program name) is registered in the item "program title" tltl. The program name is described with 96 letters maximum (the limit of the tag list server 28 ) .
The scene table (channel code) is registered in the item "channel code" tlch.
The scene table (program start date and time) is registered in the item "broadcasting start date and time" tlst. The program start date and time is of a TIMESTAMP type, and (YYYY-MM-DD HH:MM:SS) is converted to the YYYYMMDDhhmmss form.
The scene table (program name) is registered in the item "tag list name" tlnm. A fixed character string is added to the end of the program name (program name + fixed characters).
The scene table (broadcasting station name) is registered in the item "target program channel name" tlchnm.
A fixed value (01: hexadecimal number) (00000001b: terrestrial digital) is registered in the item "broadcasting type" bmk.
A fixed value of 0 is registered in the item "tag list target content ID" tlcid.
(4) Scene information generating processor 20E Scene information is generated based on the metadata obtained from the metadata creating server 30, and transmitted to the client terminal 10. Processing which is executed when the scene information is generated is described below.
(4a) Retrieve the same program information
The metadata of the programs which fulfill the condition is obtained from the database 20C in the metadata server 20, based on the program broadcasting date and time, channel code (indicating the
broadcasting area) , tag list ID, and scene ID, which are received from the client terminal 10. For example, for users of an area, for which no metadata is
prepared, metadata of programs which have the same contents as programs of the area is used among programs broadcasted in the main cities. Thereby, users of an area, for which no metadata is prepared, can also use the metadata. The obtained metadata is converted into program scene information of the JSON format, and transmitted to the client terminal 10. When there are a plurality of programs which fulfill the condition, data of all the programs is transmitted to the client terminal. When there is no program which fulfills the condition, a message for notifying the client terminal 10 of such is transmitted to the client terminal 10.
(4b) Generate scene information
The broadcasting log data, product data, shop data, and commercial broadcasting log data stored in the database 20C in the metadata server 20 are
correlated with each other, and thereby scene
information is generated.
FIG. 4, FIG. 5, and FIG. 6 illustrate metadata which is included in the generated scene information.
A. Program broadcasting log data
Scene list ID: ID (tag list ID) issued from the tag list server 28 when the tag list is registered
Channel code: identifier which indicates the broadcasting area and channel
Broadcasting station name
Program name
Broadcasting start date and time: Time when broadcasting of the program was started
Broadcasting end date and time: Time when
broadcasting of the program was ended
Day of the week
Scene ID: Unique ID which is assigned to each corner (scene) of the program
Scene name: Outline (headline) of corresponding scene
Scene detail explanation: Detailed explanation 2β
(memo) of the corresponding scene
Scene start time: Start time of subdivided scene in the program
Scene end time: End time of subdivided scene in the program
Scene type: Flag which indicates whether the information is program information or commercial information
Program genre
B. Product data
Product name: Product name introduced in the program
Product information ID: Unique ID which is assigned to each product (individual IDs are assigned to even the same product for each introduction)
Shop name: Shop which sells the product
Genre 1: Describing "product" which indicates that the data is product data
Genre 2: Large classification
Genre 3: Middle classification
Genre 4: Small classification
Genre 5
Genre 6
Related Person 1: Star/Author
Related Person 2: Supporting actor/actress
Related Person 3: Director Product Outline Explanation
Product introduction state
Shopping URL: URL of a page of a list of shopping retrieval results of the product
Shopping image URL: URL of shopping image link of the product
C. Shop data
Shop name: Shop name introduced in the program
Shop information ID: Unique ID which is assigned to each introduced shop (individuals ID are assigned even to the same shop for respective introductions)
Shop address: including the zip code
Shop telephone number
Genre 1: describing "shop" indicating that the data is shop data
Genre 2: Large classification (such as
restaurants/lodgings )
Genre 3: Middle classification (such as Japanese food/ estern-style food/hotels/Japanese-style hotels)
Genre 4: Small classification (such as
Tempura/Italian food/resort hotels/business hotels)
Genre 5
Genre 6
Latitude: both the world geodetic system and the Japan geodetic system
Longitude: both the world geodetic system and the Japan geodetic system Introduced dishes 1/2/3/4/5: Dishes introduced in the program
Explanation of outline of the shop and introduced dishes
Introduction state
Map site URL: link URL of the map of
institution/shop
Travel URL: Link URL to a travel domestic lodging page (only the genre "lodgings")
D. Commercial data
Product name: Product name introduced in the commercial
commercial ID: Unique ID assigned to each
commercial
Company name: Name of company which sells the product
commercial start time
commercial end time
commercial genre Large classification
commercial genre Middle classification commercial genre Small classification
Situation setting: Commercial broadcasting contents (mainly setting)
Note: Attention calling contents (campaign announcement, telop reporting prevention of drunken driving) Personality
BGM: BGM played in the commercial
Memo: Main telop contents, details of the product name, catch copy
Shopping URL: URL of a page of a list of shopping retrieval results of the product
Shopping image link URL: URL of shopping image link of the product
There are cases where neither product information nor shop information exists in information of one scene. There are also cases where a plurality of product data items and shop data items are correlated with information of one scene.
(5) Tag list obtaining processor 20F
The metadata server 20 obtains tag lists of programs which match with the request from tag lists registered in the tag list server 28, in response to the request from the client terminal 10, executes necessary processing for the tag lists, and transmits the tag lists to the client terminal 10. Data is obtained from the tag list server 28 by using the API provided by the tag list server 28. The data which is obtained by the metadata server 20 from the tag list server 28 relates to the tags and tag lists.
(6) Retrieval processor 20G
Metadata which matches the retrieval condition received from the client terminal 10 is retrieved from the database 20C in the metadata server 20 and the tag list server 28. The metadata server 20 executes only Web API reception processing from the client terminal 10 and response data shaping processing.
The tag lists managed by the tag list server 28 may be merged with the scene information generated in the metadata server 20 by the metadata server 20 in response to a request by the client terminal 10, and be transmitted to the client terminal 10. Since the tag information obtained from the tag list server 28 does not describe the tag end time, the metadata server 20 may execute processing of setting the start time of the next tag of the noted tag as the end time of the present tag, in response to a request from the client terminal 10.
(7) Recommended/favorite processor 20H
The recommended/favorite processor 20H obtains recommended/favorite scene information from the
recommendation server 22, and transmits the information to the client terminal 10.
The recommended/favorite processor 20H receives list information (ID list) of the corresponding scenes from the recommendation server 22, and the metadata server 20 obtains detailed information of the scene information lists/tag lists from the database 20C in the metadata server 20 and the tag list server 28, based on the list information. The client terminal 10 prepares a play list necessary for playing back contents, based on the obtained detailed information of the scene information lists/tag lists.
(8) Scene information transmission processor 201 The scene information list prepared by the scene information generating processor 20E is transmitted to the client terminal 10. The scene information is transmitted in the JSON format. The tag list data of the XML format obtained from the tag list server 28 is converted into the JSON format by the scene information generating processor 20E, and transmitted to the client terminal 10.
(Configuration of the recommendation server 22) Next, details of the recommendation server 22 will be described hereinafter. The recommendation server 22 calculates and presents recommended/favorite
information for each user, based on information of viewing log and recording log of each user (client terminal 10) stored in the log collecting server 24.
Although it is supposed that the HTTP POST method is used for requests from other servers and client terminals to the recommendation server 22, and
responses from the recommendation server 22 are
transmitted in the JSON method, other methods may be used.
The recommendation server 22 has the following functions . (a) Present recommended/favorite scene/program information to the user as follows.
(1) Ranking data: various information items are obtained and added up from a log server or the like. Programs and scenes which correspond to the rankings are retrieved, and rankings of programs and scenes for the user are prepared.
(2) Learn liking: programs and scenes which suit the user's liking are calculated based on the user's operation and viewing.
(3) HOT word: a list of HOT words (keywords) obtained from an external server is presented.
(b) Determine whether the program has already been recorded or not
The recommend server 22 determines whether the user, for which already-recording determination is to be made, has already recorded the program or scene or not, and provides a list.
(c) Obtain the same program: The recommendation server 22 determines whether the program of the channel and the time transmitted from another user can be viewed or not.
Recommended/favorite program information for the user is presented in the form of rankings. Examples of the rankings are most recommended scenes (scene
audience rating rankings) , popular scenes, interesting scenes (interesting scene rankings), social network exciting scenes, scenes recommended by friends, friends' favorite scenes, popular product and shop scenes, scenes retrieved by HOT words, and scenes recommended to you.
Ranking data includes items selected from terminal ID (ID of the target client terminal), USER_ID (USER ID of the target user), recommended scene category ID (ID peculiar to the category of the recommended scenes), the target period start time (the time when the period for which sum is made was started) , the target period end time (the time when the period for which sum is made was ended) , the sum-up time (the time when the rankings were made) , the maximum ranking number (the maximum order of the rankings), the order (the order in the rankings) , the channel code, the program start time (the broadcasting start time of the program, to which the scene/tag belongs), the program end time (the broadcasting end time of the program, to which the scene/rag belongs), the program management code (ID peculiar to the program), the program management branch number (ID peculiar to the broadcasting series number of the program), the program ID (program data ID/tag list ID, to which the scene/tag belongs), scene ID (ID peculiar to the scene/tag) , the program title (title of program data/tag list, to which the scene/tag belongs) , the scene title (title of the scene/tag) , the scene start time (the start time of the scene/tag) , the scene end time (the end time of the scene/tag) , the
product/shop ID (ID of the target product/shop), the product/shop name (name of the target product/shop) , the retrieval keyword, the number of views (summed number of views) , scene jump number (summed number of scene/tag jumps), favorite registration number (the summed number of favorite registrations) , the number of recommendations from friends (summed number of
recommendations from friends) , the number of friends' favorite registrations (the summed number of friends' favorite registrations) , and liking scores (the value of liking scores of the scene/tag), in accordance with the type of the rankings.
The most recommended scene rankings are prepared based on the number of views, by calculating the time periods which have a large number of views from the viewing (LIVE) log.
The popular scene rankings are prepared by summing up the number of scene jumps from the scene jump log in the time cloud.
The processing of creating the popular scene rankings will be explained with reference to the flowchart of FIG. 7.
The log is obtained at Block B71. Specifically, the recommendation server 22 transmits a scene jump number request to the log collecting server 24. The log collecting server 24 transmits a scene ID list, scene IDs, and the number of counts to the
recommendation server 22. Thereby, the recommendation server 22 obtains the number of scene jumps (for the past 1 week) from the log collecting server 24.
The scene ID is retrieved at Block B72.
Specifically, the recommendation server 22 transmits a scene retrieval request and the scene ID to the metadata server 20. The metadata server 20 transmits the scene ID, the channel, and the scene start time to the recommendation server 22. Thereby, the channel and the scene start time are obtained based on the scene ID.
At Block B73, it is determined whether the scene is a scene of a program which was broadcasted in the last 1 week or not. When it is not, the processing returns to Block B72. When the scene is a scene of a program which was broadcasted in the last 1 week, program retrieval is performed at Block B74.
Specifically, the recommendation server 22 transmits a program retrieval request, the channel, and the scene start time to an external EPG server (not shown in FIG. 1) . The EPG server transmits a program management code, a program management branch number, and a program name in return. These EPG data items may be obtained in advance from the EPG server, and stored in the database in the recommendation server 22.
It is determined at Block B75 whether it is necessary to repeat the number of rankings. When it is necessary, the processing returns to Block B72. When it is not necessary, the ranking table is stored at Block 76 in the database in the recommendation server 22, and the processing is ended.
The scene audience rating rankings are prepared based on the number of views, by calculating the time periods which have a large number of views from the viewing (LIVE) log, and selecting the scenes of the corresponding metadata as scenes of high audience rating. Scene rankings of the past 1 day, past 1 week, and past 1 month are presented. Batch processing is performed once a day.
The processing of creating the scene audience rate rankings will be explained with reference to the flowchart of FIG. 8.
A log is obtained at Block B81. Specifically, the recommendation server 22 transmits a viewing number request to the log collecting server 24. The log collecting server 24 transmits the viewing number list, the channel, the number of counts, and the scene start time to the recommendation server 22. Thereby, the number of views (per last 1 day, last 1 week, or last 1 month) is obtained from the log collecting server 24.
At Block B82, scene ID retrieval is performed. Specifically, the recommendation server 22 transmits a scene retrieval request and the scene ID to the metadata server 20. The metadata server 20 transmits the scene ID, the channel, and the scene start time to the recommendation server 22. Thereby, the channel and the scene start time are obtained based on the scene
ID.
Program retrieval is performed at Block B83.
Specifically, the recommendation server 22 transmits a program retrieval request, the channel, and the scene start time to the external EPG server (not shown in
The EPG server transmits the program management code, the program management branch number, and the program name in return.
It is determined at Block B84 whether it is necessary to repeat the number of rankings or not.
When it is necessary, the processing returns to Block B82. When it is not necessary, the ranking table is stored at Block B85 in the database of the
recommendation server 22, and the processing is ended.
The popular product/shop scene rankings are prepared to recommend scenes which include product/shop pages having a large number of views/URL jumps, by summing the number of views/URL jumps of product/shop pages relating to the programs supplied from the metadata creating server 30.
The HOT word retrieval rankings are obtained by creating a list of HOT words (keywords, for which a large number of retrievals have been performed) obtained from the external server.
Processing of obtaining and updating the HOT words is .explained hereinafter with reference to the
flowchart of FIG. 9.
At Block B91, a HOT word obtaining request is transmitted to the external server, and a result is obtained from the external server.
At Block B92, HOT words are extracted from the obtained result.
Based on the extracted keywords, the HOT word table is updated at Block B93. The updated HOT word table is stored in the database of the recommendation server 22.
The HOT word table includes a management ID, keyword (registered keyword/query) ,. the order (the ranking of the HOT word) , and the update time (the time when the HOT word was updated) for each HOT word.
As described above, although the recommendation server 22 determines recommended scenes for each client (user) , it is meaningless to present the recommended scenes, when programs including the scenes have not been recorded in the client terminal 10 of the user. Therefore, the recommendation server 22 determines whether the scene recommended to the user has been recorded by the client terminal 10 of the user or not (whether the scene is viewable) . The recommended scenes are received from the retrieval server 26 and the like. The recommendation server 22 determines whether the scene has been recorded by each client terminal 10 (whether the scene is viewable), based on the operation log information (including the recording log) of the log collecting server 24. Among the scenes recommended to the user, the scenes which have not been recorded by the user' s terminal are excluded, or the scenes which have been recorded by the user' s terminal are marked and presented to the user.
An example of the processing of determining whether the. program has already been recorded or not will be explained hereinafter with reference to the flowchart of FIG. 10. FIG. 10 shows the case of adopting PVR (personal video recording) recording in which programs to be recorded are individually
designated .
At Block B1001, the recommendation server 22 obtains comparison data (A) to specify programs which include recommended scenes, from a ranking table of the database or the like. As another example, the
recommendation server 22 obtains comparison data (A) from another server (one of the servers illustrated in FIG. 1, or an external server not shown) . In this case, specifically, the recommendation server 22 obtains the USER_ID, the terminal ID, the channel, and the start time.
At Block B1002, the recommendation server 22 obtains a recorded program list (B) . Specifically, the recommendation server 22 obtains a recorded program list, which is obtained by the log collecting server 24 and stored in the database of the recommendation server 22. The recommendation server 22 obtains a recorded program list of the terminal from the log collecting server 24. The recording program list is transmitted from the client terminal 10 once a day and every recording start time. The recommendation server 22 writes the recorded program list in the database. The recorded program list includes the management ID, the terminal ID (ID of the target terminal), the USER_ID (user ID of the target user) , the channel code, the program start time (broadcasting start time of the program, to which the scene/tag belongs) , the program end time (broadcasting end time of the program, to which the scene/tag belongs), the recording ID (ID which uniquely indicates the program, to which the scene/tag belongs, and which is recorded in the
terminal), the program ID (program data ID/tag list ID, to which the scene/tag belongs), the program title (title of the program data/tag list to which the scene/tag belongs) , and the update time (the time when the recording list was updated) . The recording program list is written in association with the corresponding terminal ID and USER_ID. Thereby, the recommendation server 22 can obtain data (channel, start time, end time, program name, and recording ID) which corresponds to the terminal ID and the USER_ID from the database.
At Block B1003, it is determined whether the channel in the comparison data (A) is included in the recorded program list (B) or not. In the case of Yes, it is determined at Block B1004 whether the start time of the, comparison data (A) matches with the start time of the recorded program list (B) . When they match, it is determined at Block B1005 that they are the same program, the recording ID thereof is stored, and the processing is ended. When the start times do not match, it is determined at Block B1010 that "there is no corresponding recorded program", and the processing is ended .
When it is determined at Block B1003 that the channel in the comparison data (A) is not included in the recorded program list (B) , the program information of the comparison data (A) is obtained at Block B1006, when the comparison data (A) is obtained from another server. Specifically, the channel (A) and the start time (A) are transmitted to the EPG database included in the EPG server or the recommendation server 22, and the program management code, the program management branch number, and the end time (A) are obtained from the database in the recommendation server 22.
At Block B1007, the program information of the recorded program list (B) is obtained. Specifically, the channel (B) and the start time (B) are transmitted to the EPG database, and the program management code, the program management branch number, and the end time (B) are received from the database in the
recommendation server 22.
At Block B1008, it is determined whether the program management code, the. program management branch number, and the start and end time match between the comparison data (A) and the recorded program list (B) (the number of the second of the time is ignored) . When they match, the processing goes to Block B1005. When they do not match, the processing goes to block B1009, and it is determined whether the processing has been executed for all the programs of the recorded program list or not. When the processing has not been executed for all the programs of the recorded program list, the processing goes back to Block B1007. In the case of Yes, the processing goes to Block B1010.
Thereby, presenting recommended scenes which are not recorded by the client terminal 10 is prevented, and it is possible to present only programs which have already been recorded by PVR recording in the client terminal 10.
Another example of the processing of determining whether the program has already been recorded or not will be explained with reference to the flowchart of FIG. 11. FIG. 11 shows the case where all programs have a fixed period of time (for example, the past 15 days) (time-shift recording) by designating the time and a plurality of channels (for example, desired channels up to 6 channels) .
At Block B1101, the recommendation server 22 obtains comparison data (A) to specify programs including recommended scenes from a ranking table of the database or the like. As another example, the recommendation server 22 obtains comparison data (A) from another server (one of the servers illustrated in FIG. 1 or an external server (not shown in FIG. 1) ) . In this case, specifically, the USER_ID, the terminal ID, the channel, and the start time of each program ar obtained .
At Block B1102, time shift recording setting information (B) is obtained. Specifically, the time- shift recording setting information which is obtained by the log collecting server 24 and stored in the database in the recommendation server 22 is obtained. The recommendation server 22 obtains time-shift recording setting information of the terminal from the log collecting server 24. The time-shift recording setting information is transmitted from the client terminal 10 once a day and when the setting is changed The recommendation server 22 writes the time-shift recording setting information in the database. The time-shift recording setting information includes the terminal ID (ID of the target terminal), the time-shift execution time list (for programs of which period of time time-shift recording was performed) , the' update time (the time when the recording list was updated) , the channel code list (list of channel codes for which time-shift recording is performed) , and the oldest recording time (oldest recording time in each channel ) . The time-shift recording setting information is written in association with the corresponding terminal ID.
Thereby, the recommendation server 22 can obtain data
(time-shift recording setting information)
corresponding to the terminal ID, from the database.
At Block B1103, the time-shift playback possible time is calculated. The oldest recording time is calculated from the difference between the present time and the update time, and the time which is closest to the present time among the channels is determined as "playback possible time". Suppose that recording is continuously performed in all the designated channels, and the channels have the same oldest playback time.
At Block B1104, the program information of the comparison data (A) is obtained only when there is a reguest from another server. The EPG database in the EPG server (not shown in FIG. 1) or the recommendation server 22 is provided with the channel (A) and the start time (A) , and the program management code, the program management branch number, and the end time (A) are received from the database.
At Block B1105, it is determined whether the start time and end time are included in the "playback
possible time" and the time-shift execution time list. When they are not included, it is determined at Block B1110 that "there is no recorded program which
corresponds to a program including a recommended scene" (corresponding flag = 0) , and the processing is ended.
At Block B1105, when the start time and end time are included in the "playback possible time" and the time-shift execution time list, it is determined at Block B1106 whether the channel in the comparison data (A) is included in the time-shift recording setting information (B) . When the channel is included, it is determined at Block B1107 that the programs are the same program (there is a recorded program which
corresponds to a program including a recommended scene) , the channel (A) and the start time are
recorded, and the processing is ended.
When the channel in the comparison data (A) is not included in the time-shift recording setting
information (B) at Block B1106, a broadcasting station list (C) which corresponds to the program information of the comparison data (A) is obtained at Block B1108. The EPG database is provided with the program
management code and the program management branch number (A) , and a list of the channel, the start time, and the end time is received from the EPG database.
At Block B1109, it is determined whether the channel (B) is included in the channel (C) , and the start time and end time (C) match with the start time and end time (A) . When the channel (B) is included in the channel (C) and the start time and end time (C) match with the start time and end time (B) , it is determined at Block B1107 that the programs are the same program, the channel and the start time are recorded, and the processing is ended. When they do not match, it is determined at Block B1110 that there is no corresponding program, and the processing is ended .
Thereby, it is prevented to present recommended scenes which have not been recorded by the client terminal 10, and it is possible to present only
programs which have already been recorded by the client terminal 10 among the recommended scenes.
Next, enriching program information of recommended scenes for the user living in an area (local area) other than main cities, for which metadata are
prepared, will be explained hereinafter. No metadata are prepared for programs which are broadcasted in local areas. However, when it is determined that a program YY which was broadcasted in a local area and recorded is the same as a program XX which was
broadcasted in a main city, the program information (metadata) of the program XX broadcasted in an area can be associated with the program YY broadcasted in another area. As a result, program information of programs which are broadcasted in areas other than Tokyo, Osaka, and Nagoya, for which no metadata are prepared, can be enriched. With respect to poor program information (such as EPG data) of a program of a second area (local area), which is not rich metadata, and rich program information (metadata) of a program of a first area (main city) , the poor program information of the program of the second area can be complemented with the rich program information of the program of the first area, when it is determined that the programs are the same.
An example of same program retrieval processing will be explained with reference to the flowchart of FIG. 12.
At Block B1201, the recommendation server 22 receives comparison data (A) from another server or the client terminal,' to determine whether the program (A) including a recommended scene can be used by the specific client terminal. Specifically, the
recommendation server 22 obtains the USER_ID, the terminal ID, the channel of the program (A) , the start time of the program (A) , and a channel list (A) of the client terminal (terminal ID) .
At Block B1202, it is determined whether the channel list of the client terminal (terminal ID) was obtained from another server. When the channel list was obtained, the channel list of the client terminal (terminal ID) is used as the channel list (B) . When the channel list was not obtained, the channel list (B) is obtained at Block B1203. Specifically, the
recommendation server 22 obtains the channel list
(channel list (B) ) of the terminal ID, which is
obtained from the log collecting server 24 and stored in the database of the recommendation server 22. The recommendation server 22 obtains a channel list of the terminal from the log collecting server 24. The channel list is transmitted from the client terminal 10 once a day or when channel scanning is performed. The recommendation server 22 writes the channel list in the database. The channel list includes the terminal ID (ID of the target terminal), the update time (time when the list was obtained), and the channel code list.
At Block B1205, information of the comparison program (A) is obtained. The database in the
recommendation server 22 is provided with the channel (channel (A) ) of the program (A) and the start time (start time (A) ) of the program (A) , and the program management code, the program management branch number, and the end time (A) are received from the database.
At Block B1206, it is determined- whether the channel (A) in the comparison data (A) is included in the channel list (B) or not. When the channel (A) is included, it is obvious that there is the same program. Therefore, at Block B1209, the channel, the start time, and the end time are recorded, and the processing is ended.
When the channel in the comparison data (A) is not included in the channel list (B) at Block B1206, the corresponding broadcasting station list (C) is obtained at Block B1207. The database in the recommendation server 22 is provided with the program management code and the program management branch number, and a list of the channel, the start time, and the end time is received from the database.
At Block B1208, it is determined whether the channel (B) matches with the channel (C) and the start time and the end time (C) match with the start time and end time (A) . When both determinations are yes, it is determined at Block B1209 that the program (A)
including a recommended scene and the program (C) of the channel (C) are the same program, the channel and the start and end time of the program (C) are returned, and the processing is ended. When at least one
determinations is no, it is replied that there is no corresponding program at Block B1210, and the
processing is ended.
As described above, with respect to the program information of a program which includes a recommended scene, even when there is no program information for an area in which the client terminal is located, it is possible to provide program information of the
recommended scene, by using the program information of the same content of another area.
A database structure used in the recommendation server will be described hereinafter.
Recommended scenes: Table which manages categories of recommended scenes
Ranking data: Table which stores total rankings
Favorite scenes: Table which stores scenes/tags which are registered as favorites
Scenes recommended by friends: Table which records scenes recommended by friends
Retrieved keyword log: Table which stores
retrieved keywords
Registered keywords: Table which records
registered retrieval keywords/queries
HOT words: Table which records HOT words
Recorded programs: Table which records recorded programs
Time-shift recording setting information: Time- shift recording setting information is recorded.
Channel list: Channel information of the terminal is recorded.
EPG information: Predetermined EPG data is
recorded . (Configuration of the retrieval server 26)
The module configuration of the retrieval server 26 includes a retrieval server front end, a retrieval server back end, and a metadata database. The
retrieval server front end returns a retrieval result of keyword retrieval, in response to a request from the metadata server 20. The retrieval server backend prepares a retrieval index table based on the program information of the metadata database. The metadata database stores program broadcasting log data obtained from the metadata creating server 30, and information of tag lists registered in the tag list server 28.
A request is transmitted from the metadata server 20 to the retrieval server 26 by using the HTTP POST method. A response from the retrieval server 26 to the metadata server 20 is transmitted in the JSON form. UTF-8 is used for the character code.
The API which is supplied to the client terminal 20 by the retrieval server 26 includes scene retrieval and scene retrieval result (obtaining the number of retrievals ) .
The scene retrieval involves performing retrieval for a supplied word by exact searching or prefix searching with words registered in the index table. For example, when the sentence for which retrieval is performed is "a new wind power generator having a diameter of 2 meters was open to the public. The generator rotates with a very small quantity of wind and generates electricity", the words "2 meters", "new wind power generator", "generates electricity" are registered in the index table, and retrieval is
performed for these words by exact searching and prefix searching .
Keywords for retrieving tag names are divided by a space, and interpreted as one of
"<retrieval word>",
"<and retrieval word>", and
"<not retrieval word>".
When neither "and" nor "not" is provided to the head of the word, it is interpreted as "and".
"not" cannot be designated as the head of the retrieval word.
The retrieval results are sorted in the order of their program broadcasting date, newest first, the order of their channel number (channel code) , smallest first, the order of the program broadcasting time, newest first, and/or the order of the scene start time, oldest first. When programs of different broadcasting dates and times are determined as the same program by determination by the recommendation server 22 as to whether time-difference net programs of local stations are the same, the results are not sorted in the order of the time obtained at the recording device. A result which matches more retrieval words may be displayed at the head in the sorting order.
With respect to the tag lists, when the tag list name produces hits, all the tags in the tag list are returned as retrieval results. When the tag name produces hits, only the tag is returned as a retrieval result .
When the commercial is included in retrieval results, sid, which is obtained by collecting a series of commercials, is adopted as the sid (scene ID).
The following is a structure of the database which is necessary for retrieval.
The keyword table stores the keyword, scene ID, program ID, commercial ID, tag list ID, channel code, and broadcasting date and time.
The last update date and time storing table stores the last update date and time.
The tag list cache table stores the tag list ID, tag list subsidiary ID, tag list name, tag name, broadcasting date and time, and update date and time.
The retrieval log table stores the keyboard, last inquiry date and time, and the number of retrievals.
By performing knowledge processing for the
metadata, keywords are extracted from part (headline, memo) of the scene information of the metadata. An example of keyword extraction processing will be described hereinafter. <Metadata description information>
[Product] "XX curry" which is a specialty of
[Institution] "XX stadium" is introduced. A food processor of Osaka in Osaka Prefecture manufactures it. The processor has developed and manufactured various local curries, and achieves rapidly-increasing results. Their sales have become 10 times as large as the past sales. [Product] "Chiba Beef Miso Curry", which was developed by using "YY beef" grown in Chiba Prefecture and additive-free miso. [Personality] xxxx [Comments] Wyy (executive director of the food processor) , zzzz (president of planning company)
<Keyword extraction>
Institution, XX stadium, specialty, manufacture, Osaka in Osaka Prefecture, food, processing,
manufacturer, local, develop, results, rapidly- increasing, sales, 10 times, additive-free, miso, Chiba Beef Miso Curry, Comments, executive director, company, president
<Person' s name extraction>
grown in Chiba Prefecture, xxxx, yyyy, zzzz
The retrieval server 26 receives a retrieval request using keywords, such as person's names and products, from the client terminal 10, and presents scene information and tag lists selected in accordance with the keywords to the client terminal 10. The retrieval results are not presented without any processing, but limited to scenes which the user who transmitted the retrieval request actually recorded, and presented to the client terminal 10. It can be understood whether the scenes have actually been recorded by the client terminal 10 which transmitted the retrieval request, by inquiring of such to the recommendation server 22, and receiving a result of th< inquiry. The recommendation server 22 obtains various rankings, already recording (recorded) determination, and information for retrieving the same program of other areas. Therefore, the recommendation server 22 also includes recording log information obtained from the log collecting server 24, and the retrieval server 26 can also obtain the recording log information from the recommendation server 22. This structure prevents scene information, of a program which the user cannot view from being included in the retrieval results.
There are two methods of narrowing down the retrieval results. The first method involves
retrieving scenes which correspond to keywords, based on the whole of metadata, scene information, and tag lists, when a keyword retrieval request is received from the client terminal 10, and inquiring of the recommendation server 22 whether the scenes which have been retrieved as retrieval results can be viewed in the client terminal which transmitted the retrieval request, and narrowing down the results. FIG. 13 illustrates a flowchart of the method of narrowing down the results.
When a request to retrieve matters from number N to number n is received from the Web API as illustrated in Block B1301, the processing is started. At Block B1302, an inquiry for x matters is transmitted to the index table of a certain area (for example, the Kanto region) . X is .properly determined in advance, such as "x = 50", since it is unclear how many matters should be retrieved to obtain a result of "matters from number N to number n", because the number of retrieved scenes is reduced by narrowing down the scenes based on the recorded programs. When scenes matching the inquiry results are obtained, it is inquired at Block B1303 of the recommendation server 22 whether the scenes have already been recorded. or not. At Block B1304, it is determined whether matters of number M or more have been inquired of the index table of the above area or not. M is properly determined in advance, such as "M = 1000", to close the inquiry, since the number of loops of the inquiry would otherwise become enormous, as there are a large number of retrieval results before the results are narrowed down based on the recorded programs, and no results are left after narrowing down. When scenes matching the inquiry results are not obtained, it is determined at Block B1305 whether retrieval results of matters from number N to number n have been obtained or not. When retrieval results of matters from number N to number n have not been
obtained, the processing returns to Block B1302. In the case of Yes at Block B1304 or in the case of Yes at Block B1305, an inquiry is transmitted to the metadata table and the tag list table at Block B1306. At Block B1307, the retrieval results are returned to the metadata server 20, and the processing is ended.
The second method of narrowing down the retrieval results involves retrieving scenes which correspond to the keywords, based on the metadata, scene information, and tag lists which correspond to only the programs that can be viewed by the user who made the retrieval request, when the request to perform retrieval by using keywords is received from the client terminal 10.
Programs which can be viewed by the user who
transmitted the retrieval request can be specified by receiving program information of the user' s recorded program list from the recommendation server.
Next, another example of operation of the
retrieval server 26 will be explained hereinafter. As described above, although the retrieval server 26 retrieves scene information which matches the retrieval condition from the recorded programs recorded by the client terminal 10, retrieval may be insufficient in an area for which no metadata are prepared. Although the quantity of program information of the recorded program is large in an area for which metadata are prepared since metadata is used for■ the program information, there is no program information of the recorded
program, or there is only very little, in an area for which no metadata are prepared. Therefore, there are scenes which do not hit, although they match the retrieval condition. To prevent this, the recorded program list to be retrieved by the retrieval server 26 is retrieved after the program information of an area in which the client terminal 10 is located is replaced by program information of programs of the same contents of the area for which metadata is prepared. This replacement is the same as the same program retrieval processing performed by the recommendation server 22 illustrated in FIG. 12. Since retrieval of the same program has already been performed in FIG. 12, the program information is replaced (converted) by using a conversion table (the program information of the first area is converted into the program information of the second area) prepared from the retrieval result.
Thereby, it is possible to find scene information which matches the retrieval condition, even for an area which has no program information or little program
information .
FIG. 14 is a flowchart of another example of operation of the retrieval server 26. The retrieval request from the client terminal 10 is supplied to the retrieval server 26 through the metadata server 20. The retrieval server 26 transmits a recorded program list request to the recommendation server 22, and receives a list of recorded program information items from the recommendation server 22. The retrieval server 26 requests the recommendation server 22 to transmit the conversion table, and receives the conversion table from the recommendation server 22. Thereafter, the retrieval server 26 converts the program information of the recorded programs of the client terminal 10 into the program information of the programs of the same contents, which were broadcasted in another area for which metadata is prepared, and retrieves scene information which corresponds to the request from the client terminal 10 from the converted program information. The retrieval results (scene information list) are transmitted to the client terminal 10 through the metadata server 20.
Thereafter, the retrieval server 26 performs an inverse transform to convert the converted program information into the original program information.
The following is an example of conversion of the program information.
<Before conversion> <After conversion>
20120729 G7FE00400 1230 to 20120729 G7FE04000"0" 1230 20120729 G7FC03052 1230 to 20120729 G7FE04000"1" 1230 In the above example, the first 8 digits indicate a date, the next 9 digits indicate a channel code which is an identifier indicating the broadcasting area and the channel, and the next 4 digits indicate the start time. When the program information before conversion is information of an area for which metadata is prepared, the information remains the same program information after conversion. To recognize whether the information is converted program information, a conversion flag of 1 digit is added to the end of the channel code. The program information of the above first line has a flag "0", which indicates that the program information is not converted. The program information of the above second line is converted from 7FC0 to 7FE0, and thus has a flag "1". In the case of commercials, since the contents of the commercials of different areas are generally different from each other, the program information items having the flag "1" are excluded from information to be retrieved. For the same reason, commercials are also not included in information to be retrieved when a program of another area which has the same content as a program of a local area is retrieved. Also, when the program information of a commercial of a local area is converted into program information of another area, the commercial is not included in the object.
A retrieval index for the retrieval server 26 may be increased by one. Thereby, retrieval can be performed by using a keyword "gourmet" of a
superordinate concept, instead of a keyword of an individual dish, such as "Chinese noodles" and "curry". When there is a keyword such as "Chinese noodles" and "curry" in the scene information lists or tag lists, a keyword (category) "gourmet" is added. As another example, the category name is added when a keyword index is prepared.
(Structure of log collecting server 24)
The log collecting server 24 continuously collects and stores the operation log and the viewing log of each client terminal 10. Thereby, information as to which programs were viewed or recorded by the user of each client terminal 10 can be stored. To store the operation log and the viewing log, it is necessary to. upload information from the client terminal 10 to the log collecting server 24. When information is uploaded without any restriction for each operation of the user, uploading will greatly increase, which may apply an excessive load on the network. In particular, users tend to change channels when commercials are
broadcasted, and the rate of uploading of operation histories will greatly increase when commercials are broadcasted. When the operation log and viewing log of each user are uploaded in an event-driven manner
(uploaded for each operation) , the upload cycle is shortened, and discrepancy may occur between information, although the real-time property of the information increases. Conversely, when the operation log and viewing log of each user are uploaded in a batch manner (a plurality of operations are uploaded together) , the upload cycle is lengthened, and
discrepancy hardly occurs, although the real-time property of the information decreases. Therefore, the upload cycle is set in accordance with the type of the log, which thereby prevents an excessive load being applied on the network. In the present embodiment, the upload timing is determined as follows for each log item.
The log items to be uploaded include programmed viewing and programmed recording of a reservation category, program recording in a recording category, recorded program edit of an edit category, live
viewing, PVR viewing, and time-shift viewing of a viewing category, and setting information of other categories .
A communication trigger (upload timing) of the programmed viewing of the reservation category is generated when reservation is added/changed, or
cancelled. Reservation batch notification is performed one by one or once a day. A communication trigger of the programmed recording of the reservation category is generated when the reservation is added/changed, or canceled. Reservation batch notification is performed one by one or once a day.
A communication trigger of the program recording in the recording category is generated when a move is completed, a dubbing is completed, a program is
deleted, or an attribute is changed. '
A communication trigger of the live viewing of the viewing category is generated every 1 hour or viewing is ended. Communication triggers of the PVR viewing and the time-shift viewing of the viewing category are generated when PVR playback is stopped, each program is ended, or time-shift playback is ended.
A communication trigger of the setting information is generated one by one with respect to device
registration/change, one by one with' respect to cancel of device registration, once a day with respect to registered device batch notification, one by one or once a day with respect to folder setting notification, one by one or once a day with respect to time-shift setting notification, and one by one or once a day with respect to receivable channel batch notification.
The following XML response is returned from the log collecting server 24 to the client terminal 10.
Next server access date and time (designate next log transmission date and time) .
Next access ban removal date and time (Access ban period is set also for non-periodical upload to
distribute the load of the server. The client terminal 10 does not perform upload up to the designated date and time . )
Like reservation batch notification, when there are both the log of short-time intervals (one by one) and the log of the long-time intervals (once a day) , it is determined whether they match with each other. When they do not match, priority is given to the log of the long-time intervals (once a day) .
When information (for example, the recorded program list) is transmitted from the log collecting server 24 to the client terminal 10, the next server access time and the access ban period are notified together .
FIG. 15 is an example of picture display of the client terminal 10. FIG. 15 'illustrates Today's most recommended scenes in recommended scenes, which is an example of "ScenePlay". A cloud menu picture is displayed on the screen (not shown) of the client terminal 10. When the item "recommended scenes" is selected in the cloud menu picture, the picture changes to the picture illustrated in FIG. 15. In this
example, a maximum of five scene information items are simultaneously displayed. Other scene information items can also be displayed by scrolling up and down through the scene information items. When a cursor is positioned on one of the scene information items, the scene is played back in the preview picture area, and detailed program information of the scene is displayed under the preview picture area.
As described above, according to the first embodiment, scene information which indicates contents of a scene of the program is prepared from metadata which is supplied from the outside and indicates detailed contents of the broadcasting program, the scene information is supplied to the user, and thereby the user can easily select a desired program. In addition, a tag which is cueing information of a scene is prepared from the metadata, and thereby even a conventional client device which can only deal with tags can use the server.
Since the scene information includes product data as well as program broadcasting log data, product information which relates to the program information can also be transmitted when program information requested by the client terminal is transmitted.
Since the log collecting server stores information of the viewing log and the recording log of each user, it is possible to obtain and present recommended information for each user. It is determined whether the scene recommended to the user has been recorded (viewable) by the client terminal of the user, scenes which are not recorded are excluded, or only scenes which have been recorded are presented to the user. Thereby, the user's convenience increases. The metadata is prepared only for programs which are broadcasted in main cities, and there are no metadata for programs which are broadcasted in other areas. It is checked, however, whether a program of the same contents as a program broadcasted in an area for which no metadata is prepared is broadcasted in an area for which metadata is prepared. When there is a program of the same content, the program information of the program can be used as program information of the program broadcasted in the local area for which no metadata is prepared, and the program information of programs broadcasted in local areas for which no metadata is prepared -can be enriched.
The retrieval results are narrowed down only to information of programs which have been recorded by the client terminal, and thereby the user's convenience increases .
Since the log collecting server restricts the upload timing from each client terminal, it is
prevented that excessive load is applied onto the network due to concentrated uploading.
The content search and content information
providing function according to the present embodiment can be implemented by a computer program. Thus, effects similar to the effects of the present
embodiment can be easily exerted simply by installing a computer program in a computer with, for example, a function to record and reproduce content, through a computer readable storage medium with the computer program stored therein,' and then executing the computer program.
Several embodiments of the present invention have been described. However, the embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be
implemented in various other forms, and various
omissions, replacements, and changes may be made to the embodiments without departing from the spirit of the invention. The embodiments and modifications thereof are included not only in the scope and spirit of the invention but also in the invention set forth in the claims and equivalents thereof.
Various modules in the system may be realized as software applications, hardware, software modules, and components on one or more computers. Although the various modules in the system are shown as separate modules, they may share some or all of the same logics or codes.

Claims

C L A I M S
1. A system characterized by comprising:
a management module (24) configured to manage a list of contents recorded in a client device; and
a providing module (26) configured to provide the client device with content information corresponding to contents recorded in the client device and requested by a request from the client ' device .
2. The system of Claim 1, characterized in that the content information comprises scene
information indicating a details of a scene of a content ;
the management module (24) manages the list of contents recorded by the client device, based on a content recording log in the client device; and
the providing module (26) provides the client device with scene information corresponding to scenes recorded in the client device among scene information selected in accordance with the request.
3. The system of Claim 2, characterized in that the providing module (26) provides the client device with scene information corresponding to scenes recorded by the client device, among scene information selected based on at least one of a content viewing log or the content recording log in the client device.
4. The system of Claim 1, characterized in that the management module (24) receives the content viewing log and the content recording log from the client device, and a timing of receiving the content viewing log from the client device is different from a timing of receiving -the content recording log.
5. The system of Claim 1, characterized in that the providing module (26) selects content information corresponding to a content information retrieval request transmitted from the client device, in response to the content information retrieval request, and provides the client device with the selected content information.
6. The system of Claim 5, characterized in that the providing module (26) selects content information corresponding to a content information retrieval request transmitted from the client device, in response to the content information retrieval, request, selects content information of contents recorded in the client device among the selected contents, and provides the client device with the selected content information.
7. The system of Claim 5, characterized in that the providing module (26) selects content
information of contents recorded in the client device, in response to a content information retrieval request transmitted from the client device, selects contents corresponding to the retrieval request among the selected content information, and provides the client device with content information of the selected
contents .
8. The system of Claim 1, characterized in that the scene information comprises information indicating an area in which the content is broadcasted, and
when first content broadcasted in a first area in which the client device is located is equal to second content broadcasted in a second area, the providing module (26) provides the client device with at least part of content information of the second content, in response to a request of content information of the first content, which is transmitted from the client device .
9. A method characterized by comprising:
managing a list of contents recorded in a client device; and
providing the client device with content
information corresponding to contents recorded in the client device, among contents information selected in accordance with a request by the client device.
10. A computer-readable storage medium storing computer-executable instructions that, when executed, cause a computer to:
manage a list of contents recorded in a client device; and
provide the client device with content information corresponding to contents recorded in the client device, among contents information selected in accordance with and in response to a request by the client device.
PCT/JP2013/059425 2012-09-10 2013-03-22 System, method and storage medium WO2014038232A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP13745559.8A EP2898674A4 (en) 2012-09-10 2013-03-22 System, method and storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-198742 2012-09-10
JP2012198742A JP5689858B2 (en) 2012-09-10 2012-09-10 Information providing system, information providing method, and program

Publications (1)

Publication Number Publication Date
WO2014038232A1 true WO2014038232A1 (en) 2014-03-13

Family

ID=50236857

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/059425 WO2014038232A1 (en) 2012-09-10 2013-03-22 System, method and storage medium

Country Status (3)

Country Link
EP (1) EP2898674A4 (en)
JP (1) JP5689858B2 (en)
WO (1) WO2014038232A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016052014A (en) * 2014-08-29 2016-04-11 株式会社東芝 Method, electronic apparatus and program
JP2016063355A (en) * 2014-09-17 2016-04-25 株式会社東芝 Distribution information generating device
JP2018092324A (en) * 2016-12-01 2018-06-14 日本放送協会 Content identification device and program
US11159856B2 (en) 2017-07-10 2021-10-26 Sony Interactive Entertainment LLC Non-linear content presentation and experience
US10728622B2 (en) * 2017-08-25 2020-07-28 Sony Interactive Entertainment LLC Management of non-linear content presentation and experience

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008072627A (en) * 2006-09-15 2008-03-27 Sharp Corp Content reproducing device, and management server
JP2009094658A (en) * 2007-10-05 2009-04-30 Hitachi Ltd Relevant information providing apparatus and method
JP2009225070A (en) * 2008-03-14 2009-10-01 Sony Corp Personal digital assistant, viewing apparatus, information providing apparatus, device control apparatus, cooperative processing system, and program

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519685B2 (en) * 2003-04-04 2009-04-14 Panasonic Corporation Contents linkage information delivery system
US20070157266A1 (en) * 2005-12-23 2007-07-05 United Video Properties, Inc. Interactive media guidance system having multiple devices
JP4715861B2 (en) * 2008-04-21 2011-07-06 ソニー株式会社 Information providing apparatus, information providing method, content recording / reproducing apparatus, content recording / reproducing method, and computer program
JP4750908B2 (en) * 2008-08-22 2011-08-17 パナソニック株式会社 Recording / playback device
JP5948644B2 (en) * 2011-01-28 2016-07-06 パナソニックIpマネジメント株式会社 Recording status notification method and store information presentation method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008072627A (en) * 2006-09-15 2008-03-27 Sharp Corp Content reproducing device, and management server
JP2009094658A (en) * 2007-10-05 2009-04-30 Hitachi Ltd Relevant information providing apparatus and method
JP2009225070A (en) * 2008-03-14 2009-10-01 Sony Corp Personal digital assistant, viewing apparatus, information providing apparatus, device control apparatus, cooperative processing system, and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2898674A4 *

Also Published As

Publication number Publication date
EP2898674A4 (en) 2016-04-20
JP5689858B2 (en) 2015-03-25
EP2898674A1 (en) 2015-07-29
JP2014052972A (en) 2014-03-20

Similar Documents

Publication Publication Date Title
US10075769B2 (en) Methods and systems for media consumption
US10311103B2 (en) Information search method, device, server and storage medium
US8413187B1 (en) Method and system to request audiovisual content items matched to programs identified in a program grid
JP5981024B2 (en) Sharing TV and video programs via social networking
US11277657B2 (en) Systems and methods for customizing a display of information associated with a media asset
US20140096162A1 (en) Automated Social Media and Event Driven Multimedia Channels
US20080059989A1 (en) Methods and systems for providing media assets over a network
US11188603B2 (en) Annotation of videos using aggregated user session data
CN110168541B (en) System and method for eliminating word ambiguity based on static and time knowledge graph
US20140067855A1 (en) Media asset usage data reporting that indicates corresponding content creator
EP2592571A1 (en) Method and system for enhancing metadata
CN105812830A (en) Recommendation method and system of hotel service content
US8863186B2 (en) Management and delivery of audiovisual content items that corresponds to scheduled programs
CN103686231A (en) Method and system for integrated management, failure replacement and continuous playing of film
WO2014038232A1 (en) System, method and storage medium
WO2007130472A2 (en) Methods and systems for providing media assets over a network
JP6290535B2 (en) Video information analysis system
WO2015013338A2 (en) Enhanced mobile video platform
US8935725B1 (en) Visually browsing videos
KR101493636B1 (en) Method and system for managing interactive multimedia content broadcast on television
JP4866747B2 (en) Product information distribution system, content distribution server, user terminal, viewing history management server, viewing information search server, product information search server, and product information distribution method
US20140379852A1 (en) System and method for subscribing to a content stream
JP6647141B2 (en) Keyword list generation device, content viewing device, and keyword list generation program
CN104427361A (en) Television service system and method for providing video and audio service
JP2014119973A (en) Server device, control method and program

Legal Events

Date Code Title Description
REEP Request for entry into the european phase

Ref document number: 2013745559

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2013745559

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13745559

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE