US20100100550A1 - Apparatus, System and Method For Providing Contents and User Interface Program - Google Patents
Apparatus, System and Method For Providing Contents and User Interface Program Download PDFInfo
- Publication number
- US20100100550A1 US20100100550A1 US12/576,518 US57651809A US2010100550A1 US 20100100550 A1 US20100100550 A1 US 20100100550A1 US 57651809 A US57651809 A US 57651809A US 2010100550 A1 US2010100550 A1 US 2010100550A1
- Authority
- US
- United States
- Prior art keywords
- character
- folder
- layer
- folders
- terminal
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/168—Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/41—Indexing; Data structures therefor; Storage structures
Definitions
- the present invention relates to an apparatus, system, and method for providing contents stored in a server, and to user interface technology.
- DLNA Digital Living Network Alliance
- a DLNA server stores a large number of contents such as movies, music, or images that have been obtained by a personal video camera, a digital camera, audio play software with a ripping function or the like, or alternatively downloaded via the Internet.
- U.S. Pat. No. 6,563,999 discloses a game console with an audio and visual function.
- a general purpose of the present invention is to provide a technology by which users can easily search for content managed by a content server.
- One embodiment of the present invention relates to a computer program product embodied on a computer readable recording medium having a computer program.
- the program comprises: a code module for generating one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure; a code module for providing a terminal with information of said one or more character folders generated at each layer; a code module for, when one of the character folders at each layer is selected at the terminal, obtaining identification information of the selected character folders from the terminal; a code module for searching for files by using as a keyword a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer; and a code module for generating one or more files retrieved by a search in the character folder finally selected at a certain layer and providing the terminal with information of the generated files in the finally selected character folder.
- Another embodiment of the present invention also relates to a computer readable medium storing a compute program.
- the program comprises: a code module for providing one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure; a code module for receiving an operation for selecting one of the character folders while the folder hierarchy is traced layer by layer; and a code module for displaying in the character folder finally selected at a certain layer one or more files searched by using as a keyword a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer.
- These programs may be provided as a part of basic software or from libraries embedded in an operating system.
- a computer readable storage medium having these programs embodied therein may be provided for supplying the firmware or updating at least a part of the firmware.
- these programs may be transmitted via a communication line.
- the apparatus comprises: a character folder generator which generates one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure, and provides a terminal with information of said one or more character folders generated at each layer; a folder identification information obtainer that, when one of the character folders at each layer is selected at the terminal, obtains identification information of the selected character folders from the terminal; a character sequence generator that generates a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer; and a searcher that searches for files by using as a keyword the generated character sequence and that generates one or more files retrieved by a search in the character folder finally selected at a certain layer and that provides the terminal with information of the generated files in the finally selected character folder.
- Yet another embodiment of the present invention relates to a content providing method.
- the method comprises: generating one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure and providing a terminal with information of said one or more character folders generated at each layer; obtaining identification information of the selected character folders from the terminal, when one of the character folders at each layer is selected at the terminal; generating a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer; and searching for files by using as a keyword the generated character sequence and generating one or more files retrieved by search in the character folder finally selected at a certain layer and providing the terminal with information of the generated files in the finally selected character folder.
- FIG. 1 is a block diagram of a content search system according to an embodiment of the present invention
- FIG. 2 explains an example of a folder ID table stored in the folder ID table storage of FIG. 1 ;
- FIGS. 3 a - 3 f explains how the character sequence generator of FIG. 1 identifies a sequence of character folders selected by a user
- FIG. 4 is a sequence diagram to explain a procedure of searching contents according to an embodiment of the present invention.
- FIGS. 5-17 show some examples of a screen of a display device of the client of FIG. 1 .
- FIG. 1 is a block diagram of a content search system according to an embodiment of the present invention.
- a content server 300 Upon receipt of a request for browsing contents from a client connected via a network, a content server 300 provides the contents to the client 100 .
- the content server 300 is a DLNA server
- the client 100 is a DLNA player.
- the client 100 that conforms to the DLNA standard may be, for instance, a digital television set, an audio amplifier, a game console, or the like.
- the DLNA server usually transmits to the DLNA player the information regarding the folders and files on the DLNA server, which have been registered by a user, without modification.
- the “photo” folder is first displayed on the display device of the DLNA player.
- the DLNA player is provided with a graphical user interface for supporting user operations while the hierarchal directory is being displayed in the form of folders. If the user opens the “photo” folder displayed on the screen, the “Foo” folder and the two files, test1.JPG and test2.JPG, will be displayed therein.
- the DLNA player can thus transparently access the folders and files under the common folder defined by the DLNA server.
- the interface for the user to manipulate the hierarchal directory in a form of folders will be used without modification.
- a sequence of characters will be identified during the process in which the user selects some character folders one after another while he/she is tracing the hierarchal structure downwards.
- the final character sequence will be identified as a target keyword by using, if appropriate, word predictive translation.
- the DLNA server searches for the contents by using the keyword, and a list of contents that matches with the keyword will be displayed under the folder.
- the structure related to the content search technology according to this embodiment will be hereinafter explained with reference to FIG. 1 .
- the client 100 includes a graphical user interface (GUI) 110 for receiving user manipulation data while displaying the hierarchal directory in a form of folders and a content player 18 for playing the content selected by the user in the folder.
- GUI graphical user interface
- the GUI 110 includes a directory generator 10 , a display controller 12 , a folder selector 14 , and a file selector 16 .
- the directory generator 10 receives the directory information provided by the content server 300 , generates the hierarchal directory in the form of folders, and provides it to the display controller 12 .
- the display controller 12 displays the hierarchy of the directory and the folders included in the directory currently being browsed.
- the folder selector 14 transmits the ID of the selected folder to the folder ID obtainer of the content server 300 .
- the file selector 16 transmits the ID of the selected file to the content provider 28 of the content server 300 .
- the content server 300 provides the directory information in the form of hierarchal folders to the GUI 110 of the client 100 .
- the character folder generator 20 generates one or more character folders, each of which corresponds to a specific character.
- a character folder herein corresponds to one character of the alphabetic characters “a” to “z”.
- the character folders may be generated, each of which corresponds to one character of not only the alphabetic characters but also the Japanese syllabary characters (Hiragana).
- the character folder generator 20 stores a folder ID table that contains the names and IDs of the generated character folders in the ID table storage 30 .
- the folder ID table stores the association of the name and a unique identification number ID of the generated folder and the ID of the parent folder that the generated folder belongs to.
- the folder ID obtainer 22 receives from the folder selector 14 the ID of the folder selected by the user.
- the folder ID obtainer 22 notifies the character folder generator 20 of the ID of the selected ID.
- the character folder generator 20 generates the character folders, each of which corresponds to one character of the alphabetic characters “a” to “z”, in the folder selected by the user, which has been notified by the folder ID obtainer 22 . Then, the character folder generator 20 stores in the folder ID table an association of the name and the ID of each of the generated character folders and the ID of its parent folder.
- the character folder generator 20 Whenever the folder ID obtainer 22 notifies the character folder generator 20 of the ID of the character folder selected by the user, the character folder generator 20 further generates alphabetic-character folders under the selected character folder.
- the user select some specific character folders one after another while he/she is tracing the hierarchal folders downwards, a character sequence will be identified based on a sequence of the selected character folders.
- the folder ID obtainer 22 notifies the ID of the selected folder to the character sequence generator 24 .
- the character sequence generator 24 generates a character sequence based on the sequence of the character folders that the user has selected while he/she is tracing the folder hierarchy downwards and provides the searcher 26 with the generated character sequence as a keyword.
- the character sequence generator 24 traces the parent ID back by using the ID of the character folder finally selected so as to identify the character folder at one level higher in the hierarchy. By repeating this procedure, the character sequence generator 24 can identify the sequence of the character folders designated by the user and generate the character sequence that the user has attempted to specify.
- the searcher 26 searches for the contents in the content storage 32 by using as a keyword the character sequence generated by the character sequence generator 24 .
- the searcher 26 provides the directory generator 10 of the client 100 with the content files retrieved by the search.
- the directory generator 10 generates a directory in which the content files provided by the searcher 26 are included in the folder finally selected by the user.
- the display controller 12 controls the display of the files obtained by the search in the folder, which was selected at the end by the user to confirm the character sequence.
- the file selector 16 transmits the ID of the selected file to the content provider 28 of the content server 300 .
- the content provider 28 reads from the content storage 32 the content file designated through the file ID and transmits it to the content player 18 of the client 100 . Then the content player 18 plays the content file.
- FIG. 2 explains an example of the folder ID table stored in the folder ID table storage 30 .
- the folder ID table stores an association of the name, the ID of a folder, and the ID of the parent folder that the current folder belongs to (hereinafter referred to as “parent ID” or “PID”).
- Parent ID or “PID”.
- Each folder generated by the character folder generator 20 will be assigned a unique identification number ID.
- the ID of the root folder is zero.
- the character folder generator 20 When the user selects the SEARCH folder under the VIDEO folder, the character folder generator 20 generates the character folders from “a” to “z” with its PID of 4 , which is the ID of the SEARCH folder and assigns the generated folders with the IDs of 5 to 50 (see numeral 50 ). This is called the first character folder layer.
- This is called the fifth layer.
- the folder ID obtainer 22 notifies the character sequence generator 24 of the ID “ 137 ” of the finally selected “y” folder. Based on the ID of the finally selected “y” folder, the character sequence generator 24 identifies a sequence of the character folders that the user has selected while he/she was tracing the folder hierarchy downwards.
- FIGS. 3 a - 3 f explains how the character sequence generator 24 identifies the sequence of the character folders selected by the user.
- the character sequence generator 24 refers to the folder ID table to obtain the ID information of the finally selected “y” folder ( FIG. 3 a ).
- the PID of the “y” folder is 97 (numeral 60 b ).
- the character sequence generator 24 obtains from the folder ID table the “l” folder whose ID is the PID “ 97 ” ( FIG. 3 b ).
- the generator 24 obtains from the folder ID table yet another “l” folder whose ID equals the PID “ 70 ” (numeral 62 b ) of the last “l” folder ( FIG. 3 c ).
- the generator 24 obtains from the folder ID table the “o” folder whose ID equals the PID “ 46 ” (numeral 64 b ) of the last “l” folder ( FIG. 3 d ). Likewise, the generator 24 obtains from the folder ID table the “h” folder whose ID equals the PID “ 12 ” (numeral 66 b ) of the last “o” folder ( FIG. 3 e ).
- the sequence of the character folders ( 60 c , 62 c , 64 c , 66 c , 68 c ) selected by the user is identified by tracing back the hierarchy of the character folders upwards based on the PIDs.
- the character sequence “holly” is generated as shown in FIG. 3 f.
- FIG. 4 is a sequence diagram to explain the procedure of searching the contents according to the embodiment. With reference to FIGS. 5 to 15 showing some examples of the screen, explained is how the contents are searched with a keyword specified by sequentially selecting the character folders while tracing the folder hierarchy downwards.
- the DLNA adopts the UPnP AV standard to manage and transmit the content information.
- the UPnP communication uses HTTP protocols, and the communication is done by exchanging files in an XML format.
- the UPnP AV defines a MediaServer that is a transmitter of the content and a MediaRenderer that is a player of the content.
- the content server 300 corresponds to a MediaServer
- the client 100 corresponds to a MediaRenderer.
- the content search technology according to the embodiment is installed in the content server 300 that is a MediaServer.
- the MediaServer provides the MediaRenderer with a service called ContentDirectory while the MediaRenderer calls the Browse actions defined in the ContentDirectory so as to obtain the file information and the directory information.
- the actual flow of the process is herein explained by using a command called BrowseDirectChildren, which is representative of the Browse actions.
- the client 100 issues a command “BrowseDirectChildren 0 ” to the content server 300 (Step 400 ).
- the BrowseDirectChildren is an action for obtaining all information of the files and directory existing below the layer of the designated ID. Since the root ID is zero, the client 100 can obtain the information of the root folder of the content server 300 by issuing the command “BrowseDirectChildren 0 .”
- the content server 300 sends back to the client 100 the root directory information (Step 402 ).
- the following folder information in the root is provided to the client 100 .
- Type name ID PID container VIDEO 1 0 container AUDIO 2 0 container IMAGE 3 0
- Each folder contains information regarding its type, name, ID, and PID.
- the ID is an identification number that is uniquely assigned to the folder and the PID is the ID of the parent folder that the current folder belongs to.
- the IDs of the VIDEO, AUDIO, and IMAGE folders are 1 , 2 , and 3 , respectively, and the PID thereof is “ 0 ”, which is the ID of the root folder.
- the folder icons (numerals 202 , 204 , and 206 ) of the VIDEO, AUDIO, and IMAGE folders are displayed on the display device of the client 100 .
- the user can select and open any one of the folder icons while he/she scrolls the screen in a horizontal direction 200 via the GUI 110 .
- the user selects and opens the VIDEO folder icon.
- the client 100 issues the command, “BrowseDirectChildren 1 ,” which designates the ID “l” of the VIDEO folder, to the content server 300 .
- the content server 300 sends back to the client 100 the information of the folder(s) that exists in the video folder.
- the following folder information is returned.
- the SEARCH folder is displayed on the screen of the client 100 .
- the user can select a folder while he/she scrolls the screen in a vertical direction 210 .
- a folder displayed in the vertical direction 210 , although there is a single folder in the VIDEO folder in this example.
- Step 404 the client 100 issues the command, “BrowseDirectChildren 4 ,” which designates the ID “ 4 ” of the SEARCH folder (Step 406 ), to the content server 300 .
- the content server 300 Upon the receipt of the selection of the SEARCH folder from the client 100 , the content server 300 generates the character folders from “a” to “z” in the SEARCH folder (Step 408 ).
- the content sever 300 sends back to the client 100 the information of the character folders that exist in the SEARCH folder as shown below.
- the client 100 issues the command, “BrowseDirectChildren 12 ,” which designates the ID “ 12 ” of the selected “h” folder, to the content server 300 .
- the content server 300 further generates the character folders from “a” to “z” in the “h” folder of the first layer (Step 408 ).
- a PREDICTION TRANSLATION folder and a CONFIRMATION folder are also generated as well as the character folders from “a” to “z”.
- the PREDICTION TRANSLATION folder is herein generated as well as the character folders from “a” to “z”.
- the content server 300 sends back to the directory generator 10 the information of the character folders that exist in the “h” folder of the first layer as shown below (Step 410 ).
- the client 100 issues the command, “BrowseDirectChildren 46 ,” which designates the ID “ 46 ” of the selected “o” folder of the second layer (Step 414 ), to the content server 300 .
- the sequence of the procedure (the processes surrounded by the dashed line indicated by numeral 420 ), which includes both the generation of the character folders (Step 408 ) and the transmission of the character folder information (Step 410 ) by the content server 300 and both the selection of the character folder (Step 412 ) and the ID designation of the selected character folder (Step 414 ) by the client 100 , is repeated so that the character folders are selected one after another while the folder hierarchy is traced downwards.
- the PREDICTIVE TRANSLATION folder and a part of the character folders from “a” to “z” of the third layer are displayed under the “o” folder selected at the second layer (numerals 222 a - 222 f ).
- the “l” folder is selected at the third layer, as shown in FIG. 12 . Consequently, as shown in FIG. 13 , the PREDICTIVE TRANSLATION folder and a part of the character folders from “a” to “z” of the fourth layer are displayed under the “l” folder selected at the third layer (numerals 226 a - 226 f ).
- the user can specify the character sequence “holly”.
- the user selects the PREDICTIVE TRANSLATION folder (numeral 226 a ) at the fourth layer after he/she selects the “h”, “o”, and “l” folders sequentially (Step 432 ).
- the client 100 issues the command, “BrowseDirectChildren 85 ,” which designates the ID “ 85 ” of the PREDICTIVE TRANSLATION folder (Step 434 ), to the content server 300 .
- the content server 300 predicts some words from “hol” (Step 436 ). In this example, three words, “holiday,” “holly,” and “hole in one,” are predicted as keywords.
- the content server 300 generates the three candidate folders of “holiday,” “holly,” and “hole in one” in the PREDICTIVE TRANSLATION folder and gives back to the client 100 the following information of these candidate folders (Step 438 ).
- the three candidate folders of “holiday”, “holly” and “hole in one” are displayed (numerals 228 a , 228 b , 228 c ).
- the client 100 issues the command, “BrowseDirectChildren 301 ,” which designates the ID “ 301 ” of the “holiday” folder (Step 440 ), to the content server 300 .
- a sequence of the procedure which includes the selection of the predictive translation folder (Step 432 ), the ID designation of the predictive folder (Step 434 ), the keyword prediction (Step 436 ), the transmission of the candidate folder information (Step 438 ) and the ID designation of the target folder (Step 440 ), is skipped when the user does not demand the predictive translation of the word.
- the content server 300 generates a character sequence based on the sequence of the character folders selected by the user (Step 442 ).
- the content server 300 searches for the contents using a keyword the character sequence “holiday” generated from the sequence of the selected character folders or the name “holiday” of the PREDICTIVE TRANSLATION folder (Step 444 ).
- the content server 300 searches for the files, the filename or metadata of which contains the keyword of “holiday.” For instance, Exchangeable Image File Format (Exif) information that includes the name of a person who took the photo, the time when the photo is taken, the place where the photo is taken, or the like may also be searched.
- Exchangeable Image File Format Exif
- the content server 300 gives back to the client 100 the following information of the searched files (Step 446 ).
- Type MimeType ID PID file “holiday memory.mp4” 304 301 file “study during holidays.avi” 305 301
- “holiday memory.mp4” and “study during holidays.avi” are displayed under the “holiday” folder on the screen of the client 100 .
- the content server 300 performs a keyword search for the contents subject to the management of this server and transmits the information of the files hit by the search to the client 100 as if the files were in the “holiday” folder.
- “&” folder (numeral 230 c ) may be displayed in the “holiday” folder.
- the “&” folder is used for adding a condition for the character sequence in order to narrow the search results when there are a large number of files found by the search.
- the character folders from “a” to “z” are displayed, and the user can specify the second character sequence as another keyword by selecting the character folders one after another in the folder hierarchy.
- Step 448 If the user selects, for instance, “holiday memory.mp4” (Step 448 ), the ID of the selected file is transmitted to the content server 300 (Step 450 ). The content server 300 transmits the selected file to the client 100 (Step 452 ). Since the file contains the declaration of the SourceURI attribute, the client 100 can play the content by retrieving the file by HTTP from the SourceURI (Step 454 ).
- the content server 300 does not start to search using the final character sequence generated as a keyword until the user finally selects the folder for confirming the character sequence.
- the content server 300 may start to search using as a keyword the partial character sequence generated based on a sequence of the character folders selected by the user, in mid-course before the user confirms the character sequence. For instance, when the user sequentially selects the “h”, “o”, and “l” folders, the content server 300 generates a partial character sequence “hol” in mid-course based on a sequence of the character folders selected so far by the user, and then searches for the contents by using “hol” as a keyword. The content server 300 returns the files obtained by search to the client 100 .
- the files of the search result are displayed after the character folders from “a” to “z” under the “l” folder of the third layer.
- the selection of the character folders by the client 100 , the character sequence generation, and the content search by the content server 300 are executed in parallel so that the contents can be searched by using a keyword of the partial character sequence based on the sequence of the character folders selected so far, and the files hit by the search can be displayed in the current selected character folder.
- any one of alphabetic characters from “a” to “z” is assigned to each character folder.
- two or more alphabetic characters may be assigned to one character folder.
- the character folders (numerals 414 a - 414 f ) to which the three letters of “abc”, “def”, “ghi”, “jkl”, “mno”, and “pqr” are assigned, respectively, may be displayed on the screen of the client 100 .
- the user selects the “abc” folder to specify the letter “c” and selects the “mno” folder to specify the letter “n”.
- FIG. 17 shows a display screen when the user selects the PREDICTIVE TRANSLATION folder at the fourth layer after he/she selects the “jkl” folder at the third layer.
- the client 100 which is a DLNA player, that the user just operates to select the character folders while he/she traces the folder hierarchy downwards.
- the client 100 it appears to the client 100 , which is a DLNA player, that the user just operates to select the character folders while he/she traces the folder hierarchy downwards.
- the client 100 it becomes possible to search for the contents in the DLNA server without any changes made to the specifications of the conventional DLNA player. Therefore, it is not necessary to install a new interface such as a pseudo keyboard to input a character sequence to the DLNA player.
- the client 100 is provided with an interface for manipulating the folders in accordance with the DLNA standard.
- the content server 300 may memorize as a character sequence history the character sequence that has been selected as a keyword by the user and may generate the candidate folders, the name of each of which is the character sequence history, in a SEARCH HISTORY folder and provide the information of the candidate folders to the client 100 .
- the SEARCH HISTORY folder contains one or more folders, each of which corresponds to the character sequence history specified in the past by the user. If the user selects any one of the folders of character sequence history, the content server 300 starts to search, and the client 100 can obtain the search result.
- the SEARCH HISTORY folder may be displayed at each layer of the character folders.
- the SEARCH HISTORY folder may contain one or more candidate folders, the name of each of which is the character sequence history that partially contains a sequence of characters identified so far until the current layer. For instance, when the user specifies the “h”, “o”, and “l” folders, the candidate folders with the folder names of “holly” and “hole in one” may be displayed in the SEARCH HISTORY folder according to the search history in the past.
- a function for searching for Web contents can be provided in the DLNA player.
- the Web service of providing contents such as a movie, music, or the like provides an API for content search.
- a search keyword is determined when the user specifies the character folders while tracing the folder hierarchy in the DLNA player, and then the DLNA server obtains a list of the filenames as a search result replied from the Web server and transmits the information of the files to the DLNA player.
- This scheme enables the DLNA player to access the contents in the Web server as if the contents were stored in the DLNA server.
- the metadata may be automatically added to the contents stored in the DLNA server. For instance, if the DLNA server automatically determines the attributes of the contents such as a person who appears in a photo, scenery, color, or the like, and registers them as the metadata of the content files, this metadata can be used as search keywords resulting in the widening of the range of the search.
Abstract
Description
- 1. Field of the Invention
- The present invention relates to an apparatus, system, and method for providing contents stored in a server, and to user interface technology.
- 2. Description of the Related Art
- Since computer networks have widely been used at home, it is common to connect computers in different rooms with each other via a wireless LAN and to share a printer among the computers. Furthermore, a still image captured by a digital camera and a video downloaded from the Internet is not only stored in a computer, but the image and the video stored in the computer will be also displayed on a television system screen in a living room via a network and viewed by family members.
- Digital Living Network Alliance (DLNA) is an industry standard for interconnecting the electronic appliances at home that are supplied by different manufacturers. A DLNA server stores a large number of contents such as movies, music, or images that have been obtained by a personal video camera, a digital camera, audio play software with a ripping function or the like, or alternatively downloaded via the Internet.
- U.S. Pat. No. 6,563,999 discloses a game console with an audio and visual function.
- It is difficult to manage a large number of contents stored in the DLNA server in such a manner that the contents can be easily browsed. In particular, if the family members share the DLNA server and/or a number of network appliances are clients of the DLNA server, the enormous amount of the contents will be stored in the DLNA server. As a result, there will be limitations to the management of the contents using a hierarchical structure of folders provided by a conventional operating system. If a user does not memorize in which folder a desired content has been stored, it is difficult to find out the content. As long as the user relies on his/her memory, the larger number of contents the DLNA server manages, the more difficult it becomes for the user to reach the desired content.
- In this background, a general purpose of the present invention is to provide a technology by which users can easily search for content managed by a content server.
- One embodiment of the present invention relates to a computer program product embodied on a computer readable recording medium having a computer program. The program comprises: a code module for generating one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure; a code module for providing a terminal with information of said one or more character folders generated at each layer; a code module for, when one of the character folders at each layer is selected at the terminal, obtaining identification information of the selected character folders from the terminal; a code module for searching for files by using as a keyword a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer; and a code module for generating one or more files retrieved by a search in the character folder finally selected at a certain layer and providing the terminal with information of the generated files in the finally selected character folder.
- Another embodiment of the present invention also relates to a computer readable medium storing a compute program. The program comprises: a code module for providing one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure; a code module for receiving an operation for selecting one of the character folders while the folder hierarchy is traced layer by layer; and a code module for displaying in the character folder finally selected at a certain layer one or more files searched by using as a keyword a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer.
- These programs may be provided as a part of basic software or from libraries embedded in an operating system. A computer readable storage medium having these programs embodied therein may be provided for supplying the firmware or updating at least a part of the firmware. Alternatively, these programs may be transmitted via a communication line.
- Yet another embodiment of the present invention relates to a content providing apparatus. The apparatus comprises: a character folder generator which generates one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure, and provides a terminal with information of said one or more character folders generated at each layer; a folder identification information obtainer that, when one of the character folders at each layer is selected at the terminal, obtains identification information of the selected character folders from the terminal; a character sequence generator that generates a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer; and a searcher that searches for files by using as a keyword the generated character sequence and that generates one or more files retrieved by a search in the character folder finally selected at a certain layer and that provides the terminal with information of the generated files in the finally selected character folder.
- Yet another embodiment of the present invention relates to a content providing method. The method comprises: generating one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure and providing a terminal with information of said one or more character folders generated at each layer; obtaining identification information of the selected character folders from the terminal, when one of the character folders at each layer is selected at the terminal; generating a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer; and searching for files by using as a keyword the generated character sequence and generating one or more files retrieved by search in the character folder finally selected at a certain layer and providing the terminal with information of the generated files in the finally selected character folder.
- Optional combinations of the aforementioned constituting elements, and implementations of the invention in the form of methods, processors, apparatuses, systems, computer programs, data structures, recording media, etc. may also be practiced as additional may also be practiced as additional modes of the present invention.
- Embodiments will now be described by way of examples only, with reference to the accompanying drawings, which are meant to be exemplary, not limiting and wherein like elements are numbered alike in several Figures in which:
-
FIG. 1 is a block diagram of a content search system according to an embodiment of the present invention; -
FIG. 2 explains an example of a folder ID table stored in the folder ID table storage ofFIG. 1 ; -
FIGS. 3 a-3 f explains how the character sequence generator ofFIG. 1 identifies a sequence of character folders selected by a user; -
FIG. 4 is a sequence diagram to explain a procedure of searching contents according to an embodiment of the present invention; and -
FIGS. 5-17 show some examples of a screen of a display device of the client ofFIG. 1 . - The invention will now be described by reference to the preferred embodiments. This does not intend to limit the scope of the present invention, but to exemplify the invention.
FIG. 1 is a block diagram of a content search system according to an embodiment of the present invention. Upon receipt of a request for browsing contents from a client connected via a network, acontent server 300 provides the contents to theclient 100. For instance, thecontent server 300 is a DLNA server, and theclient 100 is a DLNA player. Theclient 100 that conforms to the DLNA standard may be, for instance, a digital television set, an audio amplifier, a game console, or the like. - The DLNA server usually transmits to the DLNA player the information regarding the folders and files on the DLNA server, which have been registered by a user, without modification.
- For instance, consider that a common folder called “photo” is registered in the DLNA server, and the following folder and files are stored in the “photo” folder:
- “Foo” (folder),
- Test1.JPG (JPEG file),
- Test2.JPG (JPEG file).
- When the DLNA player accesses the common folder in the DLNA server, the “photo” folder is first displayed on the display device of the DLNA player. The DLNA player is provided with a graphical user interface for supporting user operations while the hierarchal directory is being displayed in the form of folders. If the user opens the “photo” folder displayed on the screen, the “Foo” folder and the two files, test1.JPG and test2.JPG, will be displayed therein.
- The DLNA player can thus transparently access the folders and files under the common folder defined by the DLNA server. In this embodiment, when the DNLA player searches for the contents managed by the DLNA server, the interface for the user to manipulate the hierarchal directory in a form of folders will be used without modification. A sequence of characters will be identified during the process in which the user selects some character folders one after another while he/she is tracing the hierarchal structure downwards. The final character sequence will be identified as a target keyword by using, if appropriate, word predictive translation. When the user opens the folder that was finally selected, the DLNA server searches for the contents by using the keyword, and a list of contents that matches with the keyword will be displayed under the folder. The structure related to the content search technology according to this embodiment will be hereinafter explained with reference to
FIG. 1 . - Conforming to the DLNA standard, the
client 100 includes a graphical user interface (GUI) 110 for receiving user manipulation data while displaying the hierarchal directory in a form of folders and acontent player 18 for playing the content selected by the user in the folder. - The GUI 110 includes a
directory generator 10, adisplay controller 12, afolder selector 14, and afile selector 16. Thedirectory generator 10 receives the directory information provided by thecontent server 300, generates the hierarchal directory in the form of folders, and provides it to thedisplay controller 12. Thedisplay controller 12 displays the hierarchy of the directory and the folders included in the directory currently being browsed. - When the user selects any one of the folders in the current directory, the
folder selector 14 transmits the ID of the selected folder to the folder ID obtainer of thecontent server 300. When the user selects one of files in the folder, thefile selector 16 transmits the ID of the selected file to thecontent provider 28 of thecontent server 300. - Conforming to the DLNA standard, the
content server 300 provides the directory information in the form of hierarchal folders to theGUI 110 of theclient 100. - The
character folder generator 20 generates one or more character folders, each of which corresponds to a specific character. A character folder herein corresponds to one character of the alphabetic characters “a” to “z”. In accordance with the language used in theclient 100, the character folders may be generated, each of which corresponds to one character of not only the alphabetic characters but also the Japanese syllabary characters (Hiragana). - The
character folder generator 20 stores a folder ID table that contains the names and IDs of the generated character folders in theID table storage 30. The folder ID table stores the association of the name and a unique identification number ID of the generated folder and the ID of the parent folder that the generated folder belongs to. - The
folder ID obtainer 22 receives from thefolder selector 14 the ID of the folder selected by the user. Thefolder ID obtainer 22 notifies thecharacter folder generator 20 of the ID of the selected ID. - The
character folder generator 20 generates the character folders, each of which corresponds to one character of the alphabetic characters “a” to “z”, in the folder selected by the user, which has been notified by thefolder ID obtainer 22. Then, thecharacter folder generator 20 stores in the folder ID table an association of the name and the ID of each of the generated character folders and the ID of its parent folder. - Whenever the
folder ID obtainer 22 notifies thecharacter folder generator 20 of the ID of the character folder selected by the user, thecharacter folder generator 20 further generates alphabetic-character folders under the selected character folder. When the user select some specific character folders one after another while he/she is tracing the hierarchal folders downwards, a character sequence will be identified based on a sequence of the selected character folders. When the user selects the final character folder and then at the end selects a folder for designating confirmation of the character sequence, thefolder ID obtainer 22 notifies the ID of the selected folder to thecharacter sequence generator 24. - The
character sequence generator 24 generates a character sequence based on the sequence of the character folders that the user has selected while he/she is tracing the folder hierarchy downwards and provides thesearcher 26 with the generated character sequence as a keyword. Thecharacter sequence generator 24 traces the parent ID back by using the ID of the character folder finally selected so as to identify the character folder at one level higher in the hierarchy. By repeating this procedure, thecharacter sequence generator 24 can identify the sequence of the character folders designated by the user and generate the character sequence that the user has attempted to specify. - The
searcher 26 searches for the contents in thecontent storage 32 by using as a keyword the character sequence generated by thecharacter sequence generator 24. Thesearcher 26 provides thedirectory generator 10 of theclient 100 with the content files retrieved by the search. Thedirectory generator 10 generates a directory in which the content files provided by thesearcher 26 are included in the folder finally selected by the user. Thedisplay controller 12 controls the display of the files obtained by the search in the folder, which was selected at the end by the user to confirm the character sequence. - When the user selects any one of the files obtained by the search in the final folder, the
file selector 16 transmits the ID of the selected file to thecontent provider 28 of thecontent server 300. Thecontent provider 28 reads from thecontent storage 32 the content file designated through the file ID and transmits it to thecontent player 18 of theclient 100. Then thecontent player 18 plays the content file. -
FIG. 2 explains an example of the folder ID table stored in the folderID table storage 30. The folder ID table stores an association of the name, the ID of a folder, and the ID of the parent folder that the current folder belongs to (hereinafter referred to as “parent ID” or “PID”). Each folder generated by thecharacter folder generator 20 will be assigned a unique identification number ID. The ID of the root folder is zero. - In the example shown here, there are three folders under the root: VIDEO, AUDIO, and IMAGE. The IDs of the respective folders are 1, 2, and 3. The PID of all of them is zero, which is the ID of the parent folder or the root.
- Under the VIDEO folder, there is a SEARCH folder whose ID is 4 and whose PID is 1, which is the ID of the VIDEO folder.
- When the user selects the SEARCH folder under the VIDEO folder, the
character folder generator 20 generates the character folders from “a” to “z” with its PID of 4, which is the ID of the SEARCH folder and assigns the generated folders with the IDs of 5 to 50 (see numeral 50). This is called the first character folder layer. - Next, when the user selects the “h” folder in the first character folder layer, a PREDICTIVE TRANSLATION folder and the character folders from “a” to “z”, the PID of all being 12, which is the ID of the “h” folder, are generated under the “h” folder of the first layer, and the IDs of “31” to “57” are assigned to them (see numeral 52). This is called the second layer.
- When the user further selects the “o” folder in the second layer, a PREDICTIVE TRANSLATION folder and the character folders from “a” to “z”, the PID of all being 46, which is the ID of the “o” folder, are generated under the “o” folder of the second layer, and the IDs of “58” to “84” are assigned to them (see numeral 54). This is called the third layer.
- When the user further selects the “l” folder in the third layer, a PREDICTIVE TRANSLATION folder and the character folders from “a” to “z”, the PID of all being 70, which is the ID of the “l” folder, are generated under the “l” folder of the third layer, and the IDs of “85” to “111” are assigned to them (see numeral 56). This is called the fourth layer.
- When the user further selects the “l” folder in the fourth layer, a PREDICTIVE TRANSLATION folder and the character folders from “a” to “z”, the PID of all being 97, which is the ID of the “l” folder, are generated under the “l” folder of the fourth layer, and the IDs of “112” to “138” are assigned to them (see numeral 58). This is called the fifth layer.
- Lastly, when the user the “y” folder in the fifth layer, the ID “137” of the “y” folder is finally transmitted to the
folder ID obtainer 22. - The
folder ID obtainer 22 notifies thecharacter sequence generator 24 of the ID “137” of the finally selected “y” folder. Based on the ID of the finally selected “y” folder, thecharacter sequence generator 24 identifies a sequence of the character folders that the user has selected while he/she was tracing the folder hierarchy downwards. -
FIGS. 3 a-3 f explains how thecharacter sequence generator 24 identifies the sequence of the character folders selected by the user. - First, the
character sequence generator 24 refers to the folder ID table to obtain the ID information of the finally selected “y” folder (FIG. 3 a). The PID of the “y” folder is 97 (numeral 60 b). Thecharacter sequence generator 24 obtains from the folder ID table the “l” folder whose ID is the PID “97” (FIG. 3 b). Next, thegenerator 24 obtains from the folder ID table yet another “l” folder whose ID equals the PID “70” (numeral 62 b) of the last “l” folder (FIG. 3 c). Furthermore, thegenerator 24 obtains from the folder ID table the “o” folder whose ID equals the PID “46” (numeral 64 b) of the last “l” folder (FIG. 3 d). Likewise, thegenerator 24 obtains from the folder ID table the “h” folder whose ID equals the PID “12” (numeral 66 b) of the last “o” folder (FIG. 3 e). - Thus, the sequence of the character folders (60 c, 62 c, 64 c, 66 c, 68 c) selected by the user is identified by tracing back the hierarchy of the character folders upwards based on the PIDs. As a result, the character sequence “holly” is generated as shown in
FIG. 3 f. -
FIG. 4 is a sequence diagram to explain the procedure of searching the contents according to the embodiment. With reference toFIGS. 5 to 15 showing some examples of the screen, explained is how the contents are searched with a keyword specified by sequentially selecting the character folders while tracing the folder hierarchy downwards. - The DLNA adopts the UPnP AV standard to manage and transmit the content information. The UPnP communication uses HTTP protocols, and the communication is done by exchanging files in an XML format.
- The UPnP AV defines a MediaServer that is a transmitter of the content and a MediaRenderer that is a player of the content. In the present embodiment, the
content server 300 corresponds to a MediaServer, and theclient 100 corresponds to a MediaRenderer. The content search technology according to the embodiment is installed in thecontent server 300 that is a MediaServer. - The MediaServer provides the MediaRenderer with a service called ContentDirectory while the MediaRenderer calls the Browse actions defined in the ContentDirectory so as to obtain the file information and the directory information. The actual flow of the process is herein explained by using a command called BrowseDirectChildren, which is representative of the Browse actions.
- The
client 100 issues a command “BrowseDirectChildren 0” to the content server 300 (Step 400). The BrowseDirectChildren is an action for obtaining all information of the files and directory existing below the layer of the designated ID. Since the root ID is zero, theclient 100 can obtain the information of the root folder of thecontent server 300 by issuing the command “BrowseDirectChildren 0.” - The
content server 300 sends back to theclient 100 the root directory information (Step 402). In this example, the following folder information in the root is provided to theclient 100. -
Type name ID PID container VIDEO 1 0 container AUDIO 2 0 container IMAGE 3 0 - Each folder contains information regarding its type, name, ID, and PID. The ID is an identification number that is uniquely assigned to the folder and the PID is the ID of the parent folder that the current folder belongs to. The IDs of the VIDEO, AUDIO, and IMAGE folders are 1, 2, and 3, respectively, and the PID thereof is “0”, which is the ID of the root folder.
- As shown in
FIG. 5 , the folder icons (numerals client 100. The user can select and open any one of the folder icons while he/she scrolls the screen in ahorizontal direction 200 via theGUI 110. Consider that the user selects and opens the VIDEO folder icon. - When the user selects the VIDEO folder icon, the
client 100 issues the command, “BrowseDirectChildren 1,” which designates the ID “l” of the VIDEO folder, to thecontent server 300. - The
content server 300 sends back to theclient 100 the information of the folder(s) that exists in the video folder. In this example, the following folder information is returned. -
Type name ID PID container search 4 1 - As shown in
FIG. 6 , the SEARCH folder is displayed on the screen of theclient 100. The user can select a folder while he/she scrolls the screen in avertical direction 210. (In general, there will be a plurality of folders displayed in thevertical direction 210, although there is a single folder in the VIDEO folder in this example.) - When the user selects the SEARCH folder (Step 404), the
client 100 issues the command, “BrowseDirectChildren 4,” which designates the ID “4” of the SEARCH folder (Step 406), to thecontent server 300. - Upon the receipt of the selection of the SEARCH folder from the
client 100, thecontent server 300 generates the character folders from “a” to “z” in the SEARCH folder (Step 408). - The content sever 300 sends back to the
client 100 the information of the character folders that exist in the SEARCH folder as shown below. -
Type name ID PID container a 5 4 . . . container z 30 4 - As shown in
FIG. 7 , among the character folders from “a” to “z”, only the character folders that fall in the display range of the screen in thevertical direction 210 are displayed (numerals 214 a to 214 f). The user scrolls the screen in thevertical direction 210 to see and select a desired character folder (Step 412). Consider that the user selects and opens the “h” folder (numeral 216) as shown inFIG. 8 . - The
client 100 issues the command, “BrowseDirectChildren 12,” which designates the ID “12” of the selected “h” folder, to thecontent server 300. - The
content server 300 further generates the character folders from “a” to “z” in the “h” folder of the first layer (Step 408). At the second layer, a PREDICTION TRANSLATION folder and a CONFIRMATION folder are also generated as well as the character folders from “a” to “z”. For the convenience of the explanation, only the PREDICTION TRANSLATION folder is herein generated as well as the character folders from “a” to “z”. - The
content server 300 sends back to thedirectory generator 10 the information of the character folders that exist in the “h” folder of the first layer as shown below (Step 410). -
Type name ID PID container prediction translation 31 12 container a 32 12 . . . container z 57 12 - As shown in
FIG. 9 , among the PREDICTION TRANSLATION folder and the character folders from “a” to “z” of the second layer, only the character folders that fall in the display range of the screen in thevertical direction 210 are displayed (numerals 218 a to 218 f), while the screen is scrollable in thevertical direction 210. The user selects and opens the “o” folder (numeral 220) at the second layer as shown inFIG. 10 (Step 412). - The
client 100 issues the command, “BrowseDirectChildren 46,” which designates the ID “46” of the selected “o” folder of the second layer (Step 414), to thecontent server 300. - Subsequently, the sequence of the procedure (the processes surrounded by the dashed line indicated by numeral 420), which includes both the generation of the character folders (Step 408) and the transmission of the character folder information (Step 410) by the
content server 300 and both the selection of the character folder (Step 412) and the ID designation of the selected character folder (Step 414) by theclient 100, is repeated so that the character folders are selected one after another while the folder hierarchy is traced downwards. - As shown in
FIG. 11 , the PREDICTIVE TRANSLATION folder and a part of the character folders from “a” to “z” of the third layer are displayed under the “o” folder selected at the second layer (numerals 222 a-222 f). Consider that the “l” folder is selected at the third layer, as shown inFIG. 12 . Consequently, as shown inFIG. 13 , the PREDICTIVE TRANSLATION folder and a part of the character folders from “a” to “z” of the fourth layer are displayed under the “l” folder selected at the third layer (numerals 226 a-226 f). - Subsequently, by selecting the “l” folder at the fourth layer and the “y” folder at the fifth layer, and by finally selecting the CONFIRMATION folder, the user can specify the character sequence “holly”. Alternatively, as shown in
FIG. 13 , consider that the user selects the PREDICTIVE TRANSLATION folder (numeral 226 a) at the fourth layer after he/she selects the “h”, “o”, and “l” folders sequentially (Step 432). - The
client 100 issues the command, “BrowseDirectChildren 85,” which designates the ID “85” of the PREDICTIVE TRANSLATION folder (Step 434), to thecontent server 300. Referring to the dictionary database, thecontent server 300 predicts some words from “hol” (Step 436). In this example, three words, “holiday,” “holly,” and “hole in one,” are predicted as keywords. - The
content server 300 generates the three candidate folders of “holiday,” “holly,” and “hole in one” in the PREDICTIVE TRANSLATION folder and gives back to theclient 100 the following information of these candidate folders (Step 438). -
Type name ID PID container “holiday” 301 85 container “holly” 302 85 container “hole in one” 303 85 - As shown in
FIG. 14 , the three candidate folders of “holiday”, “holly” and “hole in one” are displayed (numerals - When the user selects the “holiday” folder as a target folder, the
client 100 issues the command, “BrowseDirectChildren 301,” which designates the ID “301” of the “holiday” folder (Step 440), to thecontent server 300. - A sequence of the procedure, surrounded by the dashed line indicated by
numeral 430, which includes the selection of the predictive translation folder (Step 432), the ID designation of the predictive folder (Step 434), the keyword prediction (Step 436), the transmission of the candidate folder information (Step 438) and the ID designation of the target folder (Step 440), is skipped when the user does not demand the predictive translation of the word. - The
content server 300 generates a character sequence based on the sequence of the character folders selected by the user (Step 442). Thecontent server 300 searches for the contents using a keyword the character sequence “holiday” generated from the sequence of the selected character folders or the name “holiday” of the PREDICTIVE TRANSLATION folder (Step 444). Thecontent server 300 searches for the files, the filename or metadata of which contains the keyword of “holiday.” For instance, Exchangeable Image File Format (Exif) information that includes the name of a person who took the photo, the time when the photo is taken, the place where the photo is taken, or the like may also be searched. - As a result of the search, two files of “holiday memory.mp4” and “study during holidays.avi” are hit, in this example. In this case, the
content server 300 gives back to theclient 100 the following information of the searched files (Step 446). -
Type MimeType ID PID file “holiday memory.mp4” 304 301 file “study during holidays.avi” 305 301 - As shown in
FIG. 15 , “holiday memory.mp4” and “study during holidays.avi” (numeral 230 a, 230 b) are displayed under the “holiday” folder on the screen of theclient 100. Although it appears to theclient 100 that these files have been stored in the “holiday” folder, thecontent server 300, in reality, performs a keyword search for the contents subject to the management of this server and transmits the information of the files hit by the search to theclient 100 as if the files were in the “holiday” folder. - Optionally, “&” folder (numeral 230 c) may be displayed in the “holiday” folder. The “&” folder is used for adding a condition for the character sequence in order to narrow the search results when there are a large number of files found by the search. When the user selects the “&” folder, the character folders from “a” to “z” are displayed, and the user can specify the second character sequence as another keyword by selecting the character folders one after another in the folder hierarchy.
- If the user selects, for instance, “holiday memory.mp4” (Step 448), the ID of the selected file is transmitted to the content server 300 (Step 450). The
content server 300 transmits the selected file to the client 100 (Step 452). Since the file contains the declaration of the SourceURI attribute, theclient 100 can play the content by retrieving the file by HTTP from the SourceURI (Step 454). - In the above explanation, the
content server 300 does not start to search using the final character sequence generated as a keyword until the user finally selects the folder for confirming the character sequence. Alternatively, thecontent server 300 may start to search using as a keyword the partial character sequence generated based on a sequence of the character folders selected by the user, in mid-course before the user confirms the character sequence. For instance, when the user sequentially selects the “h”, “o”, and “l” folders, thecontent server 300 generates a partial character sequence “hol” in mid-course based on a sequence of the character folders selected so far by the user, and then searches for the contents by using “hol” as a keyword. Thecontent server 300 returns the files obtained by search to theclient 100. On the screen of theclient 100, the files of the search result are displayed after the character folders from “a” to “z” under the “l” folder of the third layer. Thus, the selection of the character folders by theclient 100, the character sequence generation, and the content search by thecontent server 300 are executed in parallel so that the contents can be searched by using a keyword of the partial character sequence based on the sequence of the character folders selected so far, and the files hit by the search can be displayed in the current selected character folder. - In the above explanation, any one of alphabetic characters from “a” to “z” is assigned to each character folder. Alternatively, two or more alphabetic characters may be assigned to one character folder. For instance, as shown in
FIG. 16 , the character folders (numerals 414 a-414 f) to which the three letters of “abc”, “def”, “ghi”, “jkl”, “mno”, and “pqr” are assigned, respectively, may be displayed on the screen of theclient 100. For instance, the user selects the “abc” folder to specify the letter “c” and selects the “mno” folder to specify the letter “n”. - In order to select “h”, “o”, and “l”, the user selects the “ghi” folder at the first layer, the “mno” folder at the second layer, and the “jkl” folder at the third layer.
FIG. 17 shows a display screen when the user selects the PREDICTIVE TRANSLATION folder at the fourth layer after he/she selects the “jkl” folder at the third layer. - Since the “ghi” folder of the first layer (numeral 416), the “mno” folder of the second layer (numeral 420), and the “jkl” folder of the third layer (numeral 440) have been selected, there are 27 candidates for the combination of the three alphabetic characters. When the PREDICTIVE TRANSLATION folder is selected at the fourth layer, the three candidate words “holiday,” “holly,” and “hole in one” are retrieved as the meaningful character sequences, and the candidate folders, each of which corresponding to each candidate word, are displayed (
numerals FIG. 14 andFIG. 15 . - As described above, according to the embodiment, it appears to the
client 100, which is a DLNA player, that the user just operates to select the character folders while he/she traces the folder hierarchy downwards. Thereby, it becomes possible to search for the contents in the DLNA server without any changes made to the specifications of the conventional DLNA player. Therefore, it is not necessary to install a new interface such as a pseudo keyboard to input a character sequence to the DLNA player. It suffices that theclient 100 is provided with an interface for manipulating the folders in accordance with the DLNA standard. - The present invention has been described based on the embodiments. These embodiments are merely exemplary, and it is understood by those skilled in the art that various modifications to the combination of each component and process thereof are possible and that such modifications are also within the scope of the present invention.
- The
content server 300 may memorize as a character sequence history the character sequence that has been selected as a keyword by the user and may generate the candidate folders, the name of each of which is the character sequence history, in a SEARCH HISTORY folder and provide the information of the candidate folders to theclient 100. The SEARCH HISTORY folder contains one or more folders, each of which corresponds to the character sequence history specified in the past by the user. If the user selects any one of the folders of character sequence history, thecontent server 300 starts to search, and theclient 100 can obtain the search result. The SEARCH HISTORY folder may be displayed at each layer of the character folders. In this case, the SEARCH HISTORY folder may contain one or more candidate folders, the name of each of which is the character sequence history that partially contains a sequence of characters identified so far until the current layer. For instance, when the user specifies the “h”, “o”, and “l” folders, the candidate folders with the folder names of “holly” and “hole in one” may be displayed in the SEARCH HISTORY folder according to the search history in the past. - By using the content search function of the present embodiment, a function for searching for Web contents can be provided in the DLNA player. The Web service of providing contents such as a movie, music, or the like provides an API for content search. Like the present embodiment, a search keyword is determined when the user specifies the character folders while tracing the folder hierarchy in the DLNA player, and then the DLNA server obtains a list of the filenames as a search result replied from the Web server and transmits the information of the files to the DLNA player. This scheme enables the DLNA player to access the contents in the Web server as if the contents were stored in the DLNA server.
- The metadata may be automatically added to the contents stored in the DLNA server. For instance, if the DLNA server automatically determines the attributes of the contents such as a person who appears in a photo, scenery, color, or the like, and registers them as the metadata of the content files, this metadata can be used as search keywords resulting in the widening of the range of the search.
Claims (8)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008272433A JP2010102456A (en) | 2008-10-22 | 2008-10-22 | Content providing apparatus, content providing system, content providing method, and user interface program |
JP2008-272433 | 2008-10-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20100100550A1 true US20100100550A1 (en) | 2010-04-22 |
US8671100B2 US8671100B2 (en) | 2014-03-11 |
Family
ID=42109470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/576,518 Active 2031-02-21 US8671100B2 (en) | 2008-10-22 | 2009-10-09 | Apparatus, system and method for providing contents and user interface program |
Country Status (2)
Country | Link |
---|---|
US (1) | US8671100B2 (en) |
JP (1) | JP2010102456A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120254307A1 (en) * | 2011-04-01 | 2012-10-04 | Electronics And Telecommunications Research Institute | Method and apparatus for providing time machine service based on social network service |
US20130219319A1 (en) * | 2012-02-21 | 2013-08-22 | Samsung Electronics Co., Ltd. | Apparatus and method for grouping application program folders in electronic device |
US20140227977A1 (en) * | 2013-02-12 | 2014-08-14 | Zary Segall | Method, node, device, and computer program for interaction |
CN104038654A (en) * | 2013-03-05 | 2014-09-10 | 富士施乐株式会社 | Relay Apparatus, Client Apparatus, And Method |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6362452B2 (en) * | 2014-07-03 | 2018-07-25 | キヤノン株式会社 | Information processing apparatus, information processing apparatus control method, and program |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5848410A (en) * | 1997-10-08 | 1998-12-08 | Hewlett Packard Company | System and method for selective and continuous index generation |
US6563999B1 (en) * | 1997-03-27 | 2003-05-13 | Sony Computer Entertainment, Inc. | Method and apparatus for information processing in which image data is displayed during loading of program data, and a computer readable medium and authoring system therefor |
US20040078816A1 (en) * | 2001-02-28 | 2004-04-22 | Johnson Carolynn Rae | System and method for simplifying different types of searches in electronic program guide |
US6734881B1 (en) * | 1995-04-18 | 2004-05-11 | Craig Alexander Will | Efficient entry of words by disambiguation |
US20040183833A1 (en) * | 2003-03-19 | 2004-09-23 | Chua Yong Tong | Keyboard error reduction method and apparatus |
US20040194141A1 (en) * | 2003-03-24 | 2004-09-30 | Microsoft Corporation | Free text and attribute searching of electronic program guide (EPG) data |
US6820076B2 (en) * | 2000-05-18 | 2004-11-16 | I2 Technologies Us, Inc. | Database system facilitating parametric searching |
US20050283468A1 (en) * | 2004-06-22 | 2005-12-22 | Kamvar Sepandar D | Anticipated query generation and processing in a search engine |
US20060085819A1 (en) * | 2004-10-14 | 2006-04-20 | Timo Bruck | Method and apparatus for content metadata search |
US20060106769A1 (en) * | 2004-11-12 | 2006-05-18 | Gibbs Kevin A | Method and system for autocompletion for languages having ideographs and phonetic characters |
US7228556B2 (en) * | 1999-12-21 | 2007-06-05 | Tivo Inc. | Distributed, interactive television program guide; system and method |
US20070299867A1 (en) * | 2006-06-23 | 2007-12-27 | Timothy John Baldwin | Method and System for Defining a Heirarchical Structure |
US20080235621A1 (en) * | 2007-03-19 | 2008-09-25 | Marc Boillot | Method and Device for Touchless Media Searching |
US20080276171A1 (en) * | 2005-11-29 | 2008-11-06 | Itzchak Sabo | Filing System |
US7487145B1 (en) * | 2004-06-22 | 2009-02-03 | Google Inc. | Method and system for autocompletion using ranked results |
US20090043741A1 (en) * | 2007-08-09 | 2009-02-12 | Dohyung Kim | Autocompletion and Automatic Input Method Correction for Partially Entered Search Query |
US7499940B1 (en) * | 2004-11-11 | 2009-03-03 | Google Inc. | Method and system for URL autocompletion using ranked results |
-
2008
- 2008-10-22 JP JP2008272433A patent/JP2010102456A/en active Pending
-
2009
- 2009-10-09 US US12/576,518 patent/US8671100B2/en active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6734881B1 (en) * | 1995-04-18 | 2004-05-11 | Craig Alexander Will | Efficient entry of words by disambiguation |
US6563999B1 (en) * | 1997-03-27 | 2003-05-13 | Sony Computer Entertainment, Inc. | Method and apparatus for information processing in which image data is displayed during loading of program data, and a computer readable medium and authoring system therefor |
US5848410A (en) * | 1997-10-08 | 1998-12-08 | Hewlett Packard Company | System and method for selective and continuous index generation |
US7228556B2 (en) * | 1999-12-21 | 2007-06-05 | Tivo Inc. | Distributed, interactive television program guide; system and method |
US6820076B2 (en) * | 2000-05-18 | 2004-11-16 | I2 Technologies Us, Inc. | Database system facilitating parametric searching |
US20040078816A1 (en) * | 2001-02-28 | 2004-04-22 | Johnson Carolynn Rae | System and method for simplifying different types of searches in electronic program guide |
US20040183833A1 (en) * | 2003-03-19 | 2004-09-23 | Chua Yong Tong | Keyboard error reduction method and apparatus |
US20040194141A1 (en) * | 2003-03-24 | 2004-09-30 | Microsoft Corporation | Free text and attribute searching of electronic program guide (EPG) data |
US20050283468A1 (en) * | 2004-06-22 | 2005-12-22 | Kamvar Sepandar D | Anticipated query generation and processing in a search engine |
US7487145B1 (en) * | 2004-06-22 | 2009-02-03 | Google Inc. | Method and system for autocompletion using ranked results |
US20060085819A1 (en) * | 2004-10-14 | 2006-04-20 | Timo Bruck | Method and apparatus for content metadata search |
US7499940B1 (en) * | 2004-11-11 | 2009-03-03 | Google Inc. | Method and system for URL autocompletion using ranked results |
US20060106769A1 (en) * | 2004-11-12 | 2006-05-18 | Gibbs Kevin A | Method and system for autocompletion for languages having ideographs and phonetic characters |
US20080276171A1 (en) * | 2005-11-29 | 2008-11-06 | Itzchak Sabo | Filing System |
US20070299867A1 (en) * | 2006-06-23 | 2007-12-27 | Timothy John Baldwin | Method and System for Defining a Heirarchical Structure |
US20080235621A1 (en) * | 2007-03-19 | 2008-09-25 | Marc Boillot | Method and Device for Touchless Media Searching |
US20090043741A1 (en) * | 2007-08-09 | 2009-02-12 | Dohyung Kim | Autocompletion and Automatic Input Method Correction for Partially Entered Search Query |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120254307A1 (en) * | 2011-04-01 | 2012-10-04 | Electronics And Telecommunications Research Institute | Method and apparatus for providing time machine service based on social network service |
US8983942B2 (en) * | 2011-04-01 | 2015-03-17 | Electronics And Telecommunications Research Institute | Method and apparatus for providing time machine service based on social network service |
US20130219319A1 (en) * | 2012-02-21 | 2013-08-22 | Samsung Electronics Co., Ltd. | Apparatus and method for grouping application program folders in electronic device |
US20140227977A1 (en) * | 2013-02-12 | 2014-08-14 | Zary Segall | Method, node, device, and computer program for interaction |
CN104038654A (en) * | 2013-03-05 | 2014-09-10 | 富士施乐株式会社 | Relay Apparatus, Client Apparatus, And Method |
US20140258468A1 (en) * | 2013-03-05 | 2014-09-11 | Fuji Xerox Co., Ltd. | Relay apparatus, client apparatus, and computer-readable medium |
US20180219939A1 (en) * | 2013-03-05 | 2018-08-02 | Fuji Xerox Co., Ltd. | Relay apparatus, client apparatus, and computer-readable medium |
US10574738B2 (en) * | 2013-03-05 | 2020-02-25 | Fuji Xerox Co., Ltd. | Relay apparatus, client apparatus, and computer-readable medium |
US10958715B2 (en) * | 2013-03-05 | 2021-03-23 | Fuji Xerox Co., Ltd. | Relay apparatus, client apparatus, and computer-readable medium |
Also Published As
Publication number | Publication date |
---|---|
JP2010102456A (en) | 2010-05-06 |
US8671100B2 (en) | 2014-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5005726B2 (en) | Managing media files from multiple sources | |
US10372748B2 (en) | Methods and apparatuses for presenting content | |
US7636509B2 (en) | Media data representation and management | |
US8195650B2 (en) | Method and system for providing information using a supplementary device | |
US8700672B2 (en) | Method of processing tag information and client-server system using the method | |
US8665337B2 (en) | Image sharing system, image managing server, and control method and program thereof | |
EP1607937A1 (en) | Information processing device, information processing method, and computer program | |
US7979511B2 (en) | Network system | |
WO2007040936A2 (en) | Providing and receiving content for computer networks using a gateway and server | |
US20090094197A1 (en) | Method and Apparatus for Integrated Cross Platform Multimedia Broadband Search and Selection User Interface Communication | |
US8671100B2 (en) | Apparatus, system and method for providing contents and user interface program | |
KR20060095554A (en) | Response estimation in a system with a content directory service | |
JP2004153530A (en) | Controller and controlling method for controlling electronic equipment | |
US20080071795A1 (en) | Information display apparatus and meta-information display method | |
JP2007518335A (en) | How to search program content | |
US8122083B2 (en) | Client apparatus | |
US20020049723A1 (en) | Content managing system, content managing apparatus, and content managing method | |
JP5085883B2 (en) | Content management apparatus and content management method | |
KR20080102828A (en) | System of constructing metadata corresponding to media contents | |
KR102188871B1 (en) | Social bookmark sharing device and method | |
US20090077490A1 (en) | Monitor server apparatus | |
JP2007251706A (en) | Title setting of image | |
JP3959525B2 (en) | Application server program and application server in video content browsing system | |
JP2010009087A (en) | Content retrieval device and method, and control device | |
US20090172515A1 (en) | Data search apparatus and data search method thereof, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SONY COMPUTER ENTERTAINMENT INC.,JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:KITAYAMA, TOMOYA;REEL/FRAME:023561/0697 Effective date: 20091111 Owner name: SONY COMPUTER ENTERTAINMENT INC., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:KITAYAMA, TOMOYA;REEL/FRAME:023561/0697 Effective date: 20091111 |
|
AS | Assignment |
Owner name: SONY NETWORK ENTERTAINMENT PLATFORM INC., JAPAN Free format text: CHANGE OF NAME;ASSIGNOR:SONY COMPUTER ENTERTAINMENT INC.;REEL/FRAME:027448/0794 Effective date: 20100401 |
|
AS | Assignment |
Owner name: SONY COMPUTER ENTERTAINMENT INC., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SONY NETWORK ENTERTAINMENT PLATFORM INC.;REEL/FRAME:027449/0546 Effective date: 20100401 |
|
AS | Assignment |
Owner name: SONY CORPORATION, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SONY COMPUTER ENTERTAINMENT INC.;REEL/FRAME:031951/0705 Effective date: 20131226 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551) Year of fee payment: 4 |
|
AS | Assignment |
Owner name: SONY INTERACTIVE ENTERTAINMENT INC., JAPAN Free format text: CHANGE OF NAME;ASSIGNOR:SONY COMPUTER ENTERTAINMENT INC.;REEL/FRAME:043761/0577 Effective date: 20160401 Owner name: SONY INTERACTIVE ENTERTAINMENT INC., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SONY CORPORATION;REEL/FRAME:043761/0975 Effective date: 20170825 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |