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 PDF

Info

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
Application number
US12/576,518
Other versions
US8671100B2 (en
Inventor
Tomoya Kitayama
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Sony Network Entertainment Platform Inc
Original Assignee
Sony Computer Entertainment Inc
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 Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Assigned to SONY COMPUTER ENTERTAINMENT INC. reassignment SONY COMPUTER ENTERTAINMENT INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KITAYAMA, TOMOYA
Publication of US20100100550A1 publication Critical patent/US20100100550A1/en
Assigned to SONY NETWORK ENTERTAINMENT PLATFORM INC. reassignment SONY NETWORK ENTERTAINMENT PLATFORM INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: SONY COMPUTER ENTERTAINMENT INC.
Assigned to SONY COMPUTER ENTERTAINMENT INC. reassignment SONY COMPUTER ENTERTAINMENT INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SONY NETWORK ENTERTAINMENT PLATFORM INC.
Assigned to SONY CORPORATION reassignment SONY CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SONY COMPUTER ENTERTAINMENT INC.
Application granted granted Critical
Publication of US8671100B2 publication Critical patent/US8671100B2/en
Assigned to SONY INTERACTIVE ENTERTAINMENT INC. reassignment SONY INTERACTIVE ENTERTAINMENT INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: SONY COMPUTER ENTERTAINMENT INC.
Assigned to SONY INTERACTIVE ENTERTAINMENT INC. reassignment SONY INTERACTIVE ENTERTAINMENT INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SONY CORPORATION
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/41Indexing; 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

A character folder generator 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 ID obtainer obtains identification information of the selected character folders from the terminal, when one of the character folders at each layer is selected at the terminal. A character sequence generator generates a character sequence identified based on a sequence of the character folders, each of which has been selected at each layer. A searcher searches for files by using as a keyword the generated character sequence and generates 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.

Description

    BACKGROUND OF THE INVENTION
  • 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.
  • SUMMARY OF THE INVENTION
  • 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.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • 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 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; and
  • FIGS. 5-17 show some examples of a screen of a display device of the client of FIG. 1.
  • DETAILED DESCRIPTION OF THE INVENTION
  • 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, a content server 300 provides the contents to the client 100. For instance, the content server 300 is a DLNA server, and 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.
  • 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 a content player 18 for playing the content selected by the user in the folder.
  • 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.
  • 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 the content server 300. When the user selects one of files in the folder, the file selector 16 transmits the ID of the selected file to the content provider 28 of the content server 300.
  • Conforming to the DLNA standard, 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”. In accordance with the language used in the client 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 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.
  • 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. 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, 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.
  • 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 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”). 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.
  • 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 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.
  • 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). The character sequence generator 24 obtains from the folder ID table the “l” folder whose ID is the PID “97” (FIG. 3 b). Next, 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). Furthermore, 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).
  • 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 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. In the present embodiment, the content server 300 corresponds to a MediaServer, and 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). In this example, 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.
  • As shown in FIG. 5, 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. 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 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. 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 the client 100. The user can select a folder while he/she scrolls the screen in a vertical direction 210. (In general, there will be a plurality of folders displayed in the vertical 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 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.
  • 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 the vertical direction 210 are displayed (numerals 214 a to 214 f). The user scrolls the screen in the vertical 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 in FIG. 8.
  • 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). 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 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).
  • 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 the vertical direction 210 are displayed (numerals 218 a to 218 f), while the screen is scrollable in the vertical direction 210. The user selects and opens the “o” folder (numeral 220) at the second layer as shown in FIG. 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 the content 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 the client 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 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).
  • 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 the content server 300. Referring to the dictionary database, 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).
  • 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 228 a, 228 b, 228 c).
  • 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 the content 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). 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.
  • 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 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
  • 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 the client 100. Although it appears to the client 100 that these files have been stored in the “holiday” folder, the content 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 the client 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, the client 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, 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. On the screen of 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. Thus, 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.
  • 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 the client 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 428 a, 428 b, and 428 c). The subsequent process is the same as the process explained with reference to FIG. 14 and FIG. 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 the client 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 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. 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)

1. A computer program product embodied on a computer readable recording medium, having a computer program stored thereon, the computer program comprising:
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.
2. The computer program product of claim 1, the program further comprising:
a code module for predicting a candidate word that contains the character sequence identified based on the sequence of the character folders, each of which has been selected at each layer;
a code module for generating a candidate folder corresponding to the predicted candidate word and providing the terminal with information of the candidate folder; and
a code module for, when the candidate folder is selected at the terminal, searching for files by using as a keyword the word corresponding to the selected candidate folder and generating one or more files retrieved by the search in the selected candidate folder and for providing the terminal with information of the generated files in the selected candidate folder.
3. The computer program product of claim 1, the program further comprising:
a code module for memorizing as a character sequence history the character sequence that has been used as a search keyword;
a code module for generating a candidate folder corresponding to the character sequence history in a search history folder and providing the terminal with information of the candidate folder; and
a code module for, when the candidate folder is selected at the terminal, searching for files by using as a keyword the character sequence history corresponding to the selected candidate folder and generating one or more files retrieved by the search in the selected candidate folder and for providing the terminal with information of the generated files in the selected candidate folder.
4. The computer program product of claim 3, wherein the code module for providing the terminal with information of the candidate folder generates in the search history holder the candidate folder corresponding to the character sequence history that at least partially contains the character sequence identified based on the sequence of the character folders, each of which has been selected at each layer and provides the terminal with information of the candidate folder.
5. A computer readable medium storing a computer program thereon, the program comprising:
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.
6. A content providing apparatus comprising:
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.
7. A content providing system comprising:
a content providing apparatus; and
a terminal connected to communicate with each other,
the content providing apparatus comprising:
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 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, and
the terminal comprising a user interface for receiving an operation of a user, and
the user interface comprising:
a means for providing one or more character folders, each of which corresponds to a specific character, at each layer of a hierarchical folder structure;
a means for receiving an operation for selecting one of the character folders while the folder hierarchy is traced layer by layer;
a means 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.
8. A content providing method comprising:
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.
US12/576,518 2008-10-22 2009-10-09 Apparatus, system and method for providing contents and user interface program Active 2031-02-21 US8671100B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (17)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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