US20130305161A1 - Information processing device, information processing method, program, information providing device, and information processing system - Google Patents
Information processing device, information processing method, program, information providing device, and information processing system Download PDFInfo
- Publication number
- US20130305161A1 US20130305161A1 US13/941,719 US201313941719A US2013305161A1 US 20130305161 A1 US20130305161 A1 US 20130305161A1 US 201313941719 A US201313941719 A US 201313941719A US 2013305161 A1 US2013305161 A1 US 2013305161A1
- Authority
- US
- United States
- Prior art keywords
- information
- menu
- information processing
- command
- unit
- 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
- H04L12/281—Exchanging configuration information on appliance services in a home automation network indicating a format for calling an appliance service function in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
- H04L12/282—Controlling appliance services of a home automation network by calling their functionalities based on user interaction within the home
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/43615—Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/485—End-user interface for client configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L2012/2847—Home automation networks characterised by the type of home appliance used
- H04L2012/2849—Audio/video appliances
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Definitions
- the present disclosure relates to an information processing device, an information processing method, a program, an information providing device, and an information processing system.
- a client-server system in which a client (which is also referred to hereinafter as an “information processing device”) and a server (hereinafter as an “information providing device”) share the role of a computer is used in various situations.
- a user inputs a desired command to the client with looking at the screen, and the client transmits a request corresponding to the command input by the user to the server.
- the server receives the request transmitted from the client, executes an operation corresponding to the request, and transmits a result obtained by the execution as a response to the request back to the client.
- the screen to be displayed on the client is broadly classified into the one created by the server and the one created by the client.
- the technique that creates the screen to be displayed on the client by the server includes a technique that creates a Web screen by a Web server, a technique that creates a screen to be delivered to electronic equipment such as a television by an IPTV (Internet Protocol TeleVision) server, a technique that creates a screen to be displayed on a computer at hand by a computer being operated in a remote desktop (cf. e.g. Japanese Unexamined Patent Application Publication No. 2007-219790) and so on, for example.
- the technique that creates the screen to be displayed on the client by the client itself includes a technique that creates a screen by a client operating in conformity with a protocol such as DLNA (Digital Living Network Alliance) and so on, for example.
- DLNA Digital Living Network Alliance
- the technique that creates a screen to be displayed on the client by the server has an issue that compatibility between the screen prestored in the client and the screen created by the server is not favorable in some cases.
- the technique further has an issue that the displayed screen is made uniform among clients, and variations of the screen to be displayed by the screen are reduced.
- the technique that creates the screen to be displayed on the client by the client itself has an issue that, when a protocol used between the server and the client changes, for example, it is necessary to change the function of creating the screen by the client in accordance with the protocol after change.
- the information processing apparatus may include a communication unit configured to communicate with an information-providing apparatus over the network, an input unit configured to receive input from a user of the information-processing apparatus, a storage unit storing one or more menus, and a control unit.
- the control unit may be configured to receive, via the input unit, a selection of information for processing, to retrieve, from the storage unit, a first menu associated with the selected information, to receive, via the communication unit, a second menu associated with the selected information from the information-providing apparatus over the network, and to generate a third menu associated with the selected information based on the first menu and on the second menu.
- the method may include receiving a selection of information for processing, accessing a first menu associated with the selected information, the first menu stored at an information-processing apparatus, and receiving, from an information-providing apparatus over the network, a second menu associated with the selected information.
- the method may further include generating a third menu associated with the selected information based on the first menu and on the second menu.
- Another aspect relates to a non-transitory computer-readable storage medium storing instructions which, when executed by an information-processing apparatus, cause the information-processing apparatus to perform a method for controlling presentation of a menu over a network.
- the method may include receiving a selection of information for processing, accessing a first menu associated with the selected information, the first menu stored at an information-processing apparatus, and receiving, from an information-providing apparatus over the network, a second menu associated with the selected information.
- the method may further include generating a third menu associated with the selected information based on the first menu and on the second menu.
- the information-providing apparatus may include a communication unit configured to communicate with an information-processing apparatus over the network, a storage unit storing one or more menus, and a control unit.
- the control unit may be configured to receive, via the communication unit, a selection of information for processing, to retrieve, from the storage unit, a first menu associated with the selected information to be combined with a second menu associated with the selected information, the second menu being stored at the information-processing apparatus, and to send, via the communication unit, the retrieved first menu to the information-processing apparatus over the network.
- the information processing apparatus may generate a third menu associated with the selected information by combining the first menu and the second menu.
- the method may include receiving, at an information-providing apparatus, a selection of information for processing from an information-processing apparatus over the network, retrieving, from a storage unit at the information-providing apparatus, a first menu associated with the selected information to be combined with a second menu associated with the selected information, the second menu being stored at the information-processing apparatus.
- the method may further include sending the retrieved first menu to the information-processing apparatus over the network.
- the information processing apparatus may then generate a third menu associated with the selected information by combining the first menu and the second menu.
- another aspect relates to a non-transitory computer-readable storage medium storing instructions which, when executed by an information-providing apparatus, cause the information-providing apparatus to perform a method for controlling the presentation of a menu over a network.
- the method may include receiving, at the information-providing apparatus, a selection of information for processing from an information-processing apparatus over the network, retrieving, from a storage unit at the information-providing apparatus, a first menu associated with the selected information to be combined with a second menu associated with the selected information, the second menu being stored at the information-processing apparatus, and sending the retrieved first menu to the information-processing apparatus over the network
- FIG. 1 is a view to explain a client-server system in which a server creates a screen
- FIG. 2 is a view to explain a client-server system in which a client creates a screen
- FIG. 3 is a view showing an example of display of a screen prestored in a client
- FIG. 4 is a view showing an example of display of a screen created by integrating menu items prestored in an information processing device according to an embodiment and menu items received from an information providing device;
- FIG. 5 is a view to explain an overview of functions of an information processing system according to the embodiment.
- FIG. 6 is a view showing a functional configuration of an information providing device according to the embodiment.
- FIG. 7 is a view showing a functional configuration of an information processing device according to the embodiment.
- FIG. 8 is a view showing meaning of menu items transmitted from the information providing device according to the embodiment with respect to each use case;
- FIG. 9 is a view showing commands executed by the information processing device according to the embodiment with respect to each use case
- FIG. 10 is a view to explain an operation type indicating whether an extended definition of a remote operation according to the embodiment is used;
- FIG. 11 is a view showing whether each property is necessary to support each use case to which the information processing system according to the embodiment is applied;
- FIG. 12 is a view showing whether each command is necessary to support each use case to which the information processing system according to the embodiment is applied;
- FIG. 13 is a view to explain each property used in the information processing system according to the embodiment.
- FIG. 14 is a view to explain each variable used in the information processing system according to the embodiment.
- FIG. 15 is a view to explain each command used in the information processing system according to the embodiment.
- FIG. 16 is a view to explain an argument and a returned value of a command (first command) used in the information processing system according to the embodiment;
- FIG. 17 is a view to explain types of the returned value of the command (first command) used in the information processing system according to the embodiment.
- FIG. 18 is a view to explain an argument and a returned value of a command (second command) used in the information processing system according to the embodiment;
- FIG. 19 is a view to explain types of the returned value of the command (second command) used in the information processing system according to the embodiment.
- FIG. 20 is a view to explain an argument and a returned value of a command (third command) used in the information processing system according to the embodiment;
- FIG. 21 is a view to explain types of the returned value of the command (third command) used in the information processing system according to the embodiment.
- FIG. 22 is a view to explain an argument and a returned value of a command (fourth command) used in the information processing system according to the embodiment;
- FIG. 23 is a view to explain types of the returned value of the command (fourth command) used in the information processing system according to the embodiment.
- FIG. 24 is a view showing an example of description of an acquisition response transmitted by the information providing device according to the embodiment.
- FIG. 25 is a view showing an example of description and an example of display of an acquisition response transmitted by the information processing device according to the embodiment.
- FIG. 26 is a view showing an example of description of an execution request containing operation identification information selected by the information processing device according to the embodiment.
- FIG. 27 is a view (first view) showing an example of description of an execution response transmitted by the information providing device according to the embodiment
- FIG. 28 is a view (second view) showing an example of description of an execution response transmitted by the information providing device according to the embodiment
- FIG. 29 is a view to explain an example (first example) of application of the information processing system according to the embodiment.
- FIG. 30 is a view to explain an example (second example) of application of the information processing system according to the embodiment.
- FIG. 31 is a view showing information for specifying a menu item to be displayed from types of contents by the information processing device according to the embodiment.
- FIG. 32 is a view showing information for specifying a command to be executed from menu items prestored in the information processing device according to the embodiment
- FIG. 33 is a view showing information for specifying a command to be executed from menu items transmitted from the information providing device according to the embodiment.
- FIG. 34 is a flowchart showing a flow of a process executed by the information processing device according to the embodiment.
- FIG. 35 is a view to explain combination of menu items prestored in the information processing device according to the embodiment and menu items transmitted from the information providing device according to the embodiment;
- FIG. 36 is a view showing an example of description of an execution response containing a message with a label indicating a type of the message.
- FIG. 37 is a view showing an example of correspondence between a type of a message and a value of a label.
- FIG. 1 is a view to explain a client-server system in which a server creates a screen.
- a screen GU displayed on a client CL 1 is created by a server SV 1 .
- a fixed UI (User Interface) transfer mode is used.
- client-server system include a system in which a Web server creates a Web screen, a system in which an IPTV server creates a screen to be delivered to electronic equipment such as a television, a system in which a computer being operated in a remote desktop creates a screen to be displayed on a computer at hand and so on, for example.
- Such a system has a property that compatibility between a screen created by a function of screen display inherent to the client CL 1 and a screen created by the server SV 1 is not favorable. Further, the system has a property that differentiation from another client is not made for display of a screen created by the server SV 1 .
- FIG. 2 is a view to explain a client-server system in which a client creates a screen.
- a screen GU displayed on a client CL 2 is created by the client CL 2 itself.
- a protocol used for communication between the client CL 2 and a server SV 2 varies. Examples of such a client-server system include a system in which the client CL 2 operating in conformity with a protocol such as DLNA creates a screen and so on, for example.
- Such a system has a property that, when a protocol used between the server SV 2 and the client CL 2 changes, it is necessary to change the function of creating the screen by the client CL 2 in accordance with the protocol after change.
- an information processing system that does not have such properties of the client-server system in which the server creates a screen and the client-server system in which the client creates a screen.
- FIG. 3 is a view showing an example of display of a screen prestored in a client.
- buttons buttons “track 1” to “track 4”
- focus is placed on “track 2”.
- operation specific information (which is also referred to hereinafter as a “menu item”) which are executable for a content corresponding to “track 2” are displayed within a window of a screen G 12 .
- “menu item” which are executable for a content corresponding to “track 2” are displayed within a window of a screen G 12 .
- “play” and “detail information” are displayed as the operation specific information executable for a content corresponding to “track 2”.
- various kinds of information contained in a request or a response is set to a predetermined position in the request or the response specified for each type of information by a transmission source device and acquired from the predetermined position by a transmission destination device.
- FIG. 4 is a view showing an example of display of a screen created by integrating menu items prestored in an information processing device according to an embodiment and menu items received from an information providing device.
- buttons buttons “track 1” to “track 4”
- focus is placed on “track 2 ”.
- menu items which are executable for a content corresponding to “track 2” are displayed within a window of a screen G 22 .
- “play”, “detail information”, “favorites” and “rate” are displayed as the menu items executable for a content corresponding to “track 2”.
- “play” and “detail information” are menu items prestored in the information processing device 200
- “favorites” and “rate” are menu items received from the information providing device 100 .
- the information processing device 200 displays the screen created by integrating the prestored menu items and the menu items received from the information providing device 100 based on screen information held in its own device.
- the information processing device 200 uses prestored information as the screen information such as display positions of menu items and uses both prestored information and information received from the information processing device 100 as the menu items.
- ROP Remote OPeration
- the information processing device 200 is referred to as an ROP client
- the information providing device 100 is referred to as an ROP server, occasionally.
- FIG. 5 is a view to explain an overview of functions of an information processing system according to the embodiment.
- an information processing system 10 includes the information providing device 100 and the information processing device 200 .
- the information providing device 100 and the information processing device 200 exist within the same home network, for example, and the information providing device 100 serves as DMS (Digital Media Server) and the information processing device 200 serves as DMP (Digital Media Player), for example.
- the information processing device 200 acquires a content and a content list from the information providing device 100 in conformity with DLNA (Digital Living Network Alliance).
- DLNA Digital Living Network Alliance
- the information providing device 100 may serve as DMS
- the information processing device 200 may serve as DMR (Digital Media Renderer). This is described later with reference to FIGS. 29 and 30 .
- Types of contents may be music data, video data, text data or the like, although not particularly limited.
- the information processing system 10 executes processing in the sequence of ROP compatibility check, acquisition of an additional operation menu, and execution of an operation menu.
- the additional operation menu means a menu item received from the information providing device 100 .
- the information processing device 200 checks a CDS object (content) with an additional operation menu by using CDS (Content Directory Service) provided from the information providing device 100 .
- CDS Content Directory Service
- the information processing device 200 checks whether there is an additional operation menu in a content currently set to the information providing device 100 .
- the information processing device 200 acquires the additional operation menu for the content with the additional operation menu. Then, the information processing device 200 executes an operation menu.
- the information processing device 200 acquires metadata of a content by a command “CDS:Browse( )”, for example, and performs ROP compatibility check depending on whether “av:msOplist” is contained as the metadata.
- the information processing device 200 acquires metadata of the currently set content by a command “AVT:GetPositionInfo( )”, for example, and performs ROP compatibility check depending on whether “av:mrOplist” is contained as the metadata.
- the information processing device 200 acquires an additional operation menu by a command “CDS:X_GetOperationList( )”, for example.
- the information processing device 200 acquires an additional operation menu by a command “AVT:X_GetOperationList( )”, for example.
- the additional operation menu is sent from the information providing device 100 to the information processing device 200 as “OpList”, for example.
- the information processing device 200 executes an operation menu by a command “CDS:X_ExecuteOperation( )”, for example.
- the information processing device 200 executes an operation menu by a command “AVT:X_ExecuteOperation( )”, for example.
- An execution result of the operation menu is sent from the information providing device 100 to the information processing device 200 as “result display information”, for example.
- FIG. 6 is a view showing a functional configuration of an information providing device according to the embodiment.
- the information providing device 100 at least includes a storage unit 130 , a transmitting unit 140 , a receiving unit 110 , and an execution unit 124 .
- the storage unit 130 has a function of storing first operation specific information indicating a specific detail of a first operation to be executed by the information providing device 100 and storing first operation identification information for identifying the first operation.
- the first operation is an operation that saves a content to favorites, an operation that changes the rate of a content or the like
- the first operation specific information is a character string “favorites”, “rate” or the like
- the first operation identification information is information for identifying processing to save a content to favorites, information for identifying an operation to change the rate of a content or the like.
- the storage unit 130 may be a storage device such as HDD or semiconductor memory, for example.
- the transmitting unit 140 has a function of transmitting the first operation specific information and the first operation identification information stored in the storage unit 130 to the information processing device 200 .
- the transmitting unit 140 may be a communication device, for example, and serves as a communication interface with the information processing device 200 .
- the receiving unit 110 has a function of receiving an execution request which contains selected operation identification information after either one of the first operation identification information or second operation identification information indicating a specific detail of a second operation is selected as the selected operation identification information by the information processing device 200 .
- the second operation is an operation that plays a content, an operation that displays detail information of a content or the like, and the second operation specific information a character string “play”, “detail information” or the like
- the second operation identification information is information for identifying an operation to play a content, information for identifying an operation to display detail information of a content or the like.
- the receiving unit 110 may be a communication device, for example, and serves as a communication interface with the information processing device 200 .
- the execution unit 124 has a function of executing the operation identified by the selected operation identification information contained in the execution request received by the receiving unit 110 .
- the execution request is received by execution of a command “CDS:X_ExecuteOperation( )” or “AVT:X_ExecuteOperation( )” by the information processing device 200 .
- the selected operation identification information contained in the execution request received by the receiving unit 11 is information for identifying the operation to play a content
- the execution unit 124 executes the operation of playing a content, which is the operation identified by the identification information.
- the information providing device 100 may further include a checking unit 122 .
- the checking unit 122 has a function of, as a response to a check request received by the receiving unit 110 , generating a check response which contains content identification information for identifying a content stored in the storage unit 130 and content relevant information relevant to the content.
- the check response is transmitted to the information processing device 200 by the transmitting unit 140 .
- the information providing device 100 may further include an acquisition unit 123 .
- the acquisition unit 123 has a function of, as a response to an acquisition request received by the receiving unit 110 , acquiring an operation list (first operation specific information) of the content identified by the content identification information contained in the acquisition request from the storage unit 130 and generating an acquisition response which contains the acquired operation list.
- the acquisition response is transmitted to the information processing device 200 by the transmitting unit 140 .
- the information providing device 100 may further include a received information determination unit 121 .
- the received information determination unit 121 has a function of determining the information received by the receiving unit 110 . For example, when the information received by the receiving unit 110 contains information for identifying the acquisition request, the received information determination unit 121 determines that the information received by the receiving unit 110 is the acquisition request and outputs the request to the acquisition unit 123 . Further, when the information received by the receiving unit 110 contains information for identifying the check request, for example, the received information determination unit 121 determines that the information received by the receiving unit 110 is the check request and outputs the request to the acquisition unit 123 . Furthermore, when the information received by the receiving unit 110 contains information for identifying the execution request, for example, the received information determination unit 121 determines that the information received by the receiving unit 110 is the execution request and outputs the request to the execution unit 124 .
- the control unit 120 that includes the received information determination unit 121 , the checking unit 122 , the acquisition unit 123 , the execution unit 124 and so on may be a CPU, RAM or the like, for example, and its functions are implemented by the CPU loading a program stored in the storage unit 130 (or other non-transitory computer-readable storage medium) to the RAM and executing the program.
- the configuration is not limited thereto, and some of the received information determination unit 121 , the checking unit 122 , the acquisition unit 123 , and the execution unit 124 may be implemented by dedicated hardware.
- the storage unit 130 may further store various data to be used for execution of a program by the CPU.
- FIG. 7 is a view showing a functional configuration of an information processing device according to the embodiment.
- the information processing device 200 at least includes a receiving unit 250 , a data storage unit 230 , a storage control unit 226 , a screen information storage unit 240 , and a display control unit 222 .
- the receiving unit 250 has a function of receiving the first operation specific information indicating a specific detail of the first operation to be executed by the information providing device 100 from the information providing device 100 .
- the first operation specific information is contained in the acquisition request and received from the information providing device 100 .
- the first operation is the operation that saves a content to favorites, the operation that changes the rate of a content or the like, and the first operation specific information is a character string “favorites”, “rate” or the like.
- the receiving unit 250 may be a communication device, for example, and serves as a communication interface with the information providing device 100 .
- the data storage unit 230 has a function of storing the second operation specific information indicating a specific detail of the second operation to be executed by the information providing device 100 .
- the second operation is the operation that plays a content
- the second operation specific information is a character string “play”, “detail information” or the like.
- the data storage unit 230 may be a storage device such as HDD or semiconductor memory, for example.
- the storage control unit 226 has a function of controlling storing of the first operation specific information received by the receiving unit 250 into the data storage unit 230 .
- the first operation specific information is stored into the data storage unit 230 by control of the storage control unit 226 as information constituting operation information 231 , for example.
- the second operation specific information is already stored in the data storage unit 230 as information constituting the operation information 231 , for example.
- the screen information storage unit 240 has a function of storing screen information 241 , which is information to be used for creating a screen.
- the screen information 241 is information indicating a position of each information to be displayed in the screen, for example.
- the screen information 241 contains information indicating a position of operation specific information indicating a specific detail of an operation in the screen.
- the display control unit 222 has a function of creating a screen to which the first operation specific information and the second operation specific information stored in the data storage unit 230 based on the screen information 241 stored in the screen information storage unit 240 and displaying the screen on the display unit 260 .
- a result that the display control unit 222 displays the character strings “favorites” and “rate” as the first operation specific information on the display unit 260 and the character strings “play” and “detail information” as the second operation specific information on the display unit 260 based on the screen information 241 stored in the screen information storage unit 240 is displayed like the screen G 22 shown in FIG. 4 .
- the display unit 260 is included in the information processing device 200 in this example, the display unit 260 may be outside the information processing device 200 .
- the display unit 260 may be a display device, for example.
- the receiving unit 250 may further receive the first operation identification information for identifying the first operation from the information providing device 100 .
- the data storage unit 230 further stores the second operation identification information for identifying the second operation
- the storage control unit 226 may further control storing of the first operation identification information received by the receiving unit 250 into the data storage unit 230 .
- the first operation identification information is stored into the data storage unit 230 as information constituting the operation information 231 in association with the first operation specific information by the storage control unit 226 , for example.
- the second operation specific information is stored into the data storage unit 230 as information constituting the operation information 231 in association with the second operation specific information, for example.
- the information processing device 200 may further include an execution request generation unit 224 and a transmitting unit 270 .
- the execution request generation unit 224 selects any one of the first operation identification information and the second operation identification information stored in the data storage unit 230 as selected operation identification information and generates the execution request which contains the selected operation identification information. Specifically, the execution request generation unit 224 uses the operation identification information selected by selection information 232 as the selected operation identification information. Further, the execution request generation unit 224 may generate the execution request which further contains the content identification information selected by the selection information 232 .
- the format of the execution request is not particularly limited.
- the transmitting unit 270 has a function of transmitting the execution request generated by the execution request generation unit 224 to the information providing device 100 .
- the transmitting unit 270 may be a communication device, for example, and serves as a communication interface with the information providing device 100 .
- the first operation identification information is information for identifying processing to save a content favorites, information for identifying an operation to change the rate of a content or the like.
- the second operation identification information is information for identifying an operation to play a content, information for identifying an operation to display detail information of a content or the like.
- the display control unit 222 may determine whether the first operation identification information and the second operation identification information stored in the data storage unit 230 match each other or not, and, when it determines that the first operation identification information and the second operation identification information match, omit setting of either one of the first operation specific information or the second operation specific information to the screen, for example. This prevents that the first operation specific information and the second operation specific information are both displayed, thereby reducing the possibility of bringing confusion to a user.
- the display control unit 222 may omit setting of the first operation specific information to the screen when it is determined that the first operation identification information and the second operation identification information match.
- the execution request generation unit 224 may exclude the first operation identification information from information to be selected in the case where setting of the first operation specific information to the screen is omitted, and exclude the second operation identification information from information to be selected in the case where setting of the second operation specific information to the screen is omitted.
- the execution request generation unit 224 is thereby unable to select the operation identification information corresponding to the operation specific information which is omitted to be set to the screen by the display control unit 222 , which enables further reduction of the possibility that confusion is brought to a user.
- the display control unit 222 may determine whether the first function name and the second function name match each other.
- the display control unit 222 may determine whether the first operation identification information and the second operation identification information match or not based on the determination, for example. Specifically, the display control unit 222 may determine that the first operation identification information and the second operation identification information match when the first function name and the second function name match, and determine that the first operation identification information and the second operation identification information do not match when the first function name and the second function name do not match.
- the display control unit 222 may further determine whether an argument to the first function and an argument to the second function match each other in addition to determining whether the first function name and the second function name match each other. Based on the determination, the display control unit 222 may determine whether the first operation identification information and the second operation identification information match or not. Specifically, the display control unit 222 may determine that the first operation identification information and the second operation identification information match when the argument to the first function and the argument to the second function match in addition to that the first function name and the second function name match, and may determine that the first operation identification information and the second operation identification information do not match when the argument to the first function and the argument to the second function do not match while the first function name and the second function name match. This is described in further detail later with reference to FIGS. 34 and 35 .
- the receiving unit 250 may further have a function of receiving an execution response which contains an execution result obtained as a result that the information providing device 100 executes the operation identified by the selected operation identification information contained in the execution request, as a response to the execution request.
- the display control unit 222 may display the execution result contained in the execution response received by the receiving unit 250 on the display unit 260 .
- FIG. 4 shows an example in which the execution result “saved to favorites” is displayed on the screen G 24 of the display unit 260 by the display control unit 222 .
- the display control unit 222 may display the message in a display format according to the type on the display unit 260 . This is further described later with reference to FIGS. 36 and 37 .
- the receiving unit 110 may further receive transmission availability information indicating whether the first operation specific information is transmittable to the information processing device 200 by the information providing device 100 from the information providing device 100 .
- the information processing device 200 may further include a transmission availability determination unit 227 that determines whether the transmission availability information received by the receiving unit 250 indicates that the first operation specific information is transmittable to the information processing device 200 by the information providing device 100 , and an acquisition request generation unit 228 that generates an acquisition request for acquiring the first operation specific information when the transmission availability determination unit 227 determines that the transmission availability information indicates that the first operation specific information is transmittable.
- the transmitting unit 270 may transmit the acquisition request generated by the acquisition request generation unit 228 to the information providing device 100 , and the receiving unit 250 may receive the first operation specific information from the information providing device 100 as a response to the acquisition request.
- the information processing device 200 may further include a check request generation unit 223 that generates a check request for acquiring content identification information for identifying a content held by the information providing device 100 and content relevant information relevant to the content.
- the transmitting unit 270 transmits the check request generated by the check request generation unit 223 to the information providing device 100
- the receiving unit 250 receives the content identification information and the content relevant information from the information providing device 100 as a response to the check request.
- the transmission availability determination unit 227 acquires the transmission availability information from the content relevant information and determines whether the acquired transmission availability information indicates that the first operation specific information is transmittable to the information processing device 200 by the information providing device 100 .
- the transmission availability determination unit 227 may store the content relevant information received by the receiving unit 250 as content information 233 . It is assumed that the content relevant information contains a content list including content identification information or the like and metadata including transmission availability information or the like, for example, and the content relevant information can be used later once it is stored as the content information 233 .
- the acquisition request generation unit 228 generates an acquisition request containing content identification information when the transmission availability determination unit 227 determines that the transmission availability information indicates that the first operation specific information is transmittable.
- the transmitting unit 270 transmits the acquisition request generated by the acquisition request generation unit 228 to the information providing device 100 , and the receiving unit 250 receives the first operation specific information indicating a specific detail of the first operation to be executed for the content identified by the content identification information contained in the check request from the information providing device 100 as a response to the acquisition request.
- the input information determination unit 221 determines that information input by a user through the input unit 210 is information designating transmission of the check request
- the input information determination unit 221 outputs the information designating transmission of the check request to the acquisition request generation unit 228 . Further, when the input information determination unit 221 determines that information input by a user through the input unit 210 is information designating transmission of the execution request, the input information determination unit 221 outputs the information designating transmission of the execution request to the execution request generation unit 224 .
- the input information determination unit 221 determines that information input by a user through the input unit 210 is information designating a change of the selection information 232 , the input information determination unit 221 outputs the information designating a change of the selection information 232 to the display control unit 222 .
- the display control unit 222 updates the selection information 232 based on the information designating a change of the selection information 232 input from the input information determination unit 221 .
- the selection information 232 is information for selecting a combination of the content identification information and the operation identification information constituting the operation information 231 .
- the information processing device 200 may include a received information determination unit 225 .
- the received information determination unit 225 has a function of determining information received by the receiving unit 250 . For example, when the information received by the receiving unit 250 contains information for identifying the acquisition response, the received information determination unit 225 determines that the information received by the receiving unit 250 is the acquisition response and outputs the response to the storage control unit 226 . Further, when the information received by the receiving unit 250 contains information for identifying the check response, for example, the received information determination unit 225 determines that the information received by the receiving unit 250 is the check response and outputs the response to the transmission availability determination unit 227 . Further, when the information received by the receiving unit 250 contains information for identifying the execution response, for example, the received information determination unit 225 determines that the information received by the receiving unit 250 is the execution response and outputs the response to the display control unit 222 .
- Each of the input information determination unit 221 , the display control unit 222 , the check request generation unit 223 , the execution request generation unit 224 , the received information determination unit 225 , the storage control unit 226 , the transmission availability determination unit 227 and the acquisition request generation unit 228 may be a CPU, RAM or the like, for example, and its functions are implemented by the CPU loading a program stored in the data storage unit 230 (or other non-transitory computer-readable storage medium) to the RAM and executing the program.
- the configuration is not limited thereto, and some of the input information determination unit 221 , the display control unit 222 , the check request generation unit 223 , the execution request generation unit 224 , the received information determination unit 225 , the storage control unit 226 , the transmission availability determination unit 227 and the acquisition request generation unit 228 may be implemented by dedicated hardware.
- the data storage unit 230 may further store various data to be used for execution of a program by the CPU.
- FIG. 8 is a view showing meaning of menu items transmitted from the information providing device according to the embodiment with respect to each use case.
- a content operation and a media operation are assumed principally.
- the content operation displays menu items of a selected content when, in the case where the information processing device 200 is DMP or DMC, and the information providing device 100 is DMS, the information processing device 200 selects the content of CDS held by the information providing device 100 and detects pressing of an option button.
- the example shown in FIG. 4 corresponds to it.
- the media operation displays menu items of a content set to the information providing device 100 when, in the case where the information processing device 200 is DMC, and the information providing device 100 is DMR, the information processing device 200 detects pressing of an option button.
- the menu item transmitted from the information providing device is also applicable to a device configuration menu (network configuration etc.), a menu automatically displayed at the start of playing a content (a menu prompting input of whether or not to agree with regulation etc.), a menu automatically displayed at the end of playing a content (a menu prompting input of whether or not to make recommendations to a friend) or the like.
- common definition which can be used in common among different use cases.
- Operation List, Action Directive, Result Document or the like which is described later, is an example of the common definition.
- Such common definition may be prepared in advance, and only a way of acquisition and a way of setting (network API etc.) for the common definition may be defined for each use case.
- an AV/C command may be defined in addition to enable use for IEEE 1394.
- FIG. 9 is a view showing commands executed by the information processing device according to the embodiment with respect to each use case.
- the use cases are as shown in FIG. 8 .
- the commands executed by the information processing device correspond to the commands described above with reference to FIG. 5 .
- FIG. 10 is a view to explain an operation type indicating whether an extended definition of a remote operation according to the embodiment is used or not.
- the operation type is common, regulation is made for a required part for the information processing device 200 compatible with ROP.
- an operation containing more sophisticated UI transition such as BIVL (Bravia Internet Video Link) may be defined extensionally.
- BIVL is a type of the service in which a server provides contents to a television through the Internet.
- the operation type as shown in FIG. 10 may be defined.
- FIG. 11 is a view showing whether each property is necessary to support each use case to which the information processing system according to the embodiment is applied.
- R indicates that the property is required to support the use case.
- FIG. 12 is a view showing whether each command is necessary to support each use case to which the information processing system according to the embodiment is applied.
- the DMS is the ROP server in the use case “Content Operation”.
- the DMP, DMC or the like that refers to the DMS serves as the ROP client.
- the DMS provides the content list in the DIDL-Lite XML document.
- the metadata of the content is provided as the property (XML element attribute) included in the CDS object indicating the content.
- “av:msOpList” may be added as the property to the object which can provide the operation list according to an embodiment.
- the operation list XML document can be obtained by issuing “CDS::X_GetOperationList action” with designation of CDS object ID (@id) of the CDS object having “av:msOpList”.
- the information processing device 200 can add the operation corresponding to the CDS object to the UI by translating the operation list.
- CDS::X_ExecuteOperation action is issued by designating “Action Directive” of the operation.
- Action Directive is described in the operation list document.
- “Result Argument” of “response” of “X_ExecuteOperation action” contains information necessary for UI after execution, such as a character string for an error message.
- the DMR servers as the ROP server.
- a push controller, DMC or the like which refers to the DMR serves as the ROP client.
- the DMC or the like makes UI display of the operation menu of the content set to the DMR, use of the remote operation enables addition of the operation list provided by the DMR to the operation menu.
- the metadata of the content to which the DMR is set is provided in the DIDL-Lite XML document with use of “AVT::GetPositionInfo” or the like.
- “av:mrOpList” may be added to the document.
- “AVT::X_GetOperationList action” is issued with designation of instance ID of AVT Instance having “av:mrOpList”
- the operation list XML document can be obtained.
- the information processing device 200 can add the operation to the UI by translating the operation list.
- FIG. 13 is a view to explain each property used in the information processing system according to the embodiment. Description as shown in FIG. 13 is added to the property placed in the object in the DIDL-Lite XML document. For example, “urn:schemas-sony-com:av” may be used as a namespace, and “av” may be used as a namespace prefix.
- FIG. 14 is a view to explain each variable used in the information processing system according to the embodiment. Variables which do not begin with “X_” are not shown in FIG. 14 because it has the same definition as State Variable of the same name of UPnP AV CDS/AVT.
- CDS/AVT:X_A_ARG_TYPE_OperationList” includes the XML-escaped Operation List document.
- X_A_ARG_TYPE_ActionDirective includes “Action Directive” indicating which operation or parameter is selected.
- X_A_ARG_TYPE_ROPResult includes the XML-escaped Result document.
- FIG. 15 is a view to explain each command used in the information processing system according to the embodiment.
- the “CDS:X_GetOperationList” action returns the operation list corresponding to the designated CDS object ID.
- the “CDS:X_GetOperationList” action returns 701 when the designated object ID does not exist and returns 805 when the corresponding object does not have the operation list.
- CDS:X_ExecuteOperation action executes the operation corresponding to “ActionDirective” of the operation list with the designated object ID.
- An execution result of “CDS:X_ExecuteOperation” action is returned as “Result”.
- “Result Argument” may be empty.
- CDS update ID of the object at the returned time is also returned.
- the CDS update ID is handled in the same manner as the update ID when checking with Browse( ).
- the ROP client may determine that the configuration of the object has changed as a result of the operation (or at that timing by coincidence).
- the “CDS:X_ExecuteOperation” action returns 701 when the designated object ID does not exist and returns 805 when the corresponding object does not have the operation list. Further, it returns 806 when the content of the designated “ActionDirective” does not match the content of the operation list and is irrelevant.
- the “AVT:X_GetOperationList” action returns the operation list corresponding to the content set to the designated AVT instance ID.
- the “AVT:X_GetOperationList” action returns 718 when the designated AVT instance ID does not exist and returns 805 when there is no corresponding operation list.
- the “AVT:X_ExecuteOperation” action executes the operation corresponding to “ActionDirective” of the operation list of the designated AVT instance ID. An execution result of the “AVT:X_ExecuteOperation” action is returned as “Result”. When “result information” is not contained, “Result Argument” may be empty.
- the “AVT:X_ExecuteOperation” action returns 718 when the designated AVT instance ID does not exist and returns 805 when there is no corresponding operation list.
- the content of the designated “ActionDirective” does not match the content of the operation list and is irrelevant, it returns 806 .
- FIG. 16 is a view to explain an argument and a returned value of a command (first command) used in the information processing system according to the embodiment.
- the first command is “CDS:X_GetOperationList” shown in FIG. 15 .
- FIG. 17 is a view to explain types of the returned value of the command (first command) used in the information processing system according to the embodiment.
- the first command is “CDS:X_GetOperationList” shown in FIG. 15 .
- FIG. 18 is a view to explain an argument and a returned value of a command (second command) used in the information processing system according to the embodiment.
- the second command is “CDS:X_ExecuteOperation” shown in FIG. 15 .
- FIG. 19 is a view to explain types of the returned value of the command (second command) used in the information processing system according to the embodiment.
- the second command is “CDS:X_ExecuteOperation” shown in FIG. 15 .
- FIG. 20 is a view to explain an argument and a returned value of a command (third command) used in the information processing system according to the embodiment.
- the third command is “AVT:X_GetOperationList” shown in FIG. 15 .
- FIG. 21 is a view to explain types of the returned value of the command (third command) used in the information processing system according to the embodiment.
- the third command is “AVT:X_GetOperationList” shown in FIG. 15 .
- FIG. 22 is a view to explain an argument and a returned value of a command (fourth command) used in the information processing system according to the embodiment.
- the fourth command is “AVT:X_ExecuteOperation” shown in FIG. 15 .
- FIG. 23 is a view to explain types of the returned value of the command (fourth command) used in the information processing system according to the embodiment.
- the fourth command is “AVT:X_ExecuteOperation” shown in FIG. 15 .
- FIG. 24 is a view showing an example of description of an acquisition response transmitted by the information providing device according to the embodiment.
- “Elements” and “Attributes” of the description example D 11 are described hereinbelow.
- ⁇ operation> indicates a single operation.
- the number of ⁇ operation> is 16 or less.
- ⁇ operation@type> represents a type of the operation. Omission is possible only when operation@type is “common type”.
- ⁇ displayString> is required and indicates a display character string when making UI display of the operation or parameter. ⁇ displayString> is within 256 bytes.
- ⁇ shortDisplayString> is required when the character string length of ⁇ displayString> is greater than 32 bytes in the case of “common type”. When the character string length of ⁇ displayString> is 32 bytes or less, it is optional.
- ⁇ shortDisplayString> is a display character string when making UI display of the operation or parameter, and it is used instead of ⁇ displayString> by equipment having only a short display area. ⁇ shortDisplayString> is within 32 bytes.
- ⁇ selected> is optional. It indicates that, when making UI display of the list, the operation or parameter should be selected by default. ⁇ selected> is placed in one or less operation in the operation list. When ⁇ selected> is placed for the parameter, it is placed in one or less parameter in the parameter list with respect to each operation.
- ⁇ confirm> is optional, and it indicates whether or not to reconfirm execution when the operation or parameter is selected. A way of reconfirmation is not limited.
- ⁇ iconUrl> is optional, and it indicates URL to acquire an icon representing the operation or parameter.
- ⁇ iconUrl@profile> is required when ⁇ iconUrl> is present.
- ⁇ iconUrl@profile> indicates the format of the icon. At present, the format of the icon conforms to the DLNA JPEG_TN profile, and therefore the value of ⁇ iconUrl@profile> is “JPEG_TN”, for example.
- ⁇ action> is required when ⁇ paramerterList> is not present in ⁇ operation> and banned when it is present.
- ⁇ action> is required for ⁇ parameter>, and action directive to be used for execution of the operation or parameter is described in ⁇ action>.
- action@ropOnly> is “1”, it indicates that the description of the action directive is not parsible by the ROP client.
- ⁇ action@ropOnly> is “0”, it indicates that omission is possible.
- ⁇ parameterList> is required when ⁇ action> is not present in ⁇ operation> and banned when it is present.
- ⁇ parameterList> indicates a list of parameters (sub-choices) relevant to the operation.
- ⁇ parameterList> has one or more ⁇ parameter> as child elements.
- ⁇ parameter> indicates a single parameter. The number of ⁇ parameter> is 16 or less.
- FIG. 25 is a view showing an example of description and an example of display of an acquisition response transmitted by the information processing device according to the embodiment.
- An operation list contained in the acquisition response described like a description example D 12 is displayed like a screen G 3 .
- the structural definition of the operation list shown in FIG. 25 is just by way of illustration.
- the structural definition may be more complicated.
- the depth of the hierarchy may be increased, not limited to the two-level hierarchy.
- a request for a character input form may be made, for example.
- Such extension may be applied in the future profile other than common and bivl. Building the schemes like common and bivl allows implementation with no adverse effect on equipment supporting only common and bivl even when extension is applied in the future.
- the item menu for common and bivl and the item menu for a new type may be separated.
- FIG. 26 is a view showing an example of description of an execution request containing operation identification information selected by the information processing device according to the embodiment.
- the execution request described like a description example D 21 corresponds to “Normative Action Directive” in the following description.
- Action Directive is a character string acting like an ID which is transmitted to the ROP server when the operation or parameter described in the operation list is selected by a user.
- Normal Action Directive is the XML document which is configured according to the following syntax, and it represents that performing a remote operation with selection of the operation parameter is equivalent to the case where corresponding SOAP
- ⁇ action> is a root tag of Action Directive document.
- the action element is different from the action element in the operation list, and xml namespace declaration is made.
- namespace “urn:schemas-sony-com:av:ropactiondirective” is used.
- ⁇ name> is the name of the corresponding SOAP Action.
- ⁇ argumentList> is required when there is IN Argument in the SOAP Action.
- ⁇ argumentList> has one or more ⁇ element> respectively representing IN Argument as child elements.
- an element name is IN Argument name of the SOAP Action, and a value is the element value.
- FIG. 27 is a view (first view) showing an example of description of an execution response transmitted by the information providing device according to the embodiment.
- the execution response is described as a description example D 31 .
- the Result document as described as the description example D 31 is the XML document representing what UI transition should be made in the information processing device 200 after execution of the operation.
- result information representing zero or more transition information is included.
- the result information specified in the operation list of the common type is only ⁇ message>, which represents an UI message text to be displayed as the execution result.
- the UI message at an error is not SOAP error, and it is performed using the message result information after success of SOAP. Unknown result information is ignored.
- FIG. 28 is a view (second view) view showing an example of description of an execution response transmitted by the information providing device according to the embodiment.
- the execution response is described as a description example D 32 .
- FIG. 29 is a view to explain an example (first example) of application of the information processing system according to the embodiment.
- the DMC may give a play command by setting a content 2 on the DMS to an instance 1 of the DMR, for example.
- FIG. 30 is a view to explain an example (second example) of application of the information processing system according to the embodiment. As shown in FIG. 30 , display may vary depending on the content set to the DMR.
- FIG. 31 is a view showing information for specifying a menu item to be displayed from types of contents by the information processing device according to the embodiment.
- the information processing device 200 may store correspondence information between a type of a content and a menu item as shown in FIG. 31 in the data storage unit 230 , for example.
- FIG. 32 is a view showing information for specifying a command to be executed from menu items prestored in the information processing device according to the embodiment.
- the information processing device 200 may store correspondence information between a prestored menu item (own menu item) and a command (Network API) as shown in FIG. 32 in the data storage unit 230 , for example.
- FIG. 33 is a view showing information for specifying a command to be executed from menu items transmitted from the information providing device according to the embodiment.
- the information providing device 100 may store correspondence information between a menu item (ROP menu) transmitted from the information providing device and a command (Network API) as shown in FIG. 33 in the storage unit 130 , for example.
- ROI menu a menu item transmitted from the information providing device
- Network API Network API
- the DMP creates an option menu by combining the own menu items and the menu items acquired through the ROP. If items having the same function are contained in the respective menu items, the composite UI becomes unnatural.
- a first issue is how the DMP detects items with the same function.
- Translating “Normative Action Directive” of the ROP menu item allows the DMP to grasp to what DLNA API the function of the menu item corresponds.
- the DMP knows by what DLNA API its item is implemented. The items implemented by the same DLNA API may be determined to have the same function. Thus, either one of those is eliminated from the UI. It is considered to be more effective to leave the own menu because the DMP completely grasps the meaning of the own menu.
- FIG. 34 is a flowchart showing a flow of a process executed by the information processing device according to the embodiment.
- the receiving unit 250 of the information processing device 200 acquires a content list and metadata (step S 101 ), and the display unit 260 displays the content list (step S 102 ).
- DLNA CDS::Browse
- Types of contents and titles of contents can be thereby acquired.
- the input information determination unit 221 decides a content to be processed (step S 103 ). For example, information for deciding a content to be processed is input through the input unit 210 by a user's operation (e.g. up/down key).
- the display control unit 222 decides the own content menu (step S 104 ) and determines whether there is ROP menu or not (step S 105 ). Because an available operation can differ depending on the type of the content, for example, the display control unit 222 decides the menu to be displayed based on the correspondence information as shown in FIG. 31 .
- the determination as to whether the ROP menu exists or not can be made by checking whether an element (av:msOpList) indicating that ROP is available exists in the metadata. When the ROP menu does not exist (No in step S 105 ), the display control unit 222 proceeds to the step S 109 .
- the display control unit 222 acquires the ROP menu (step S 106 ), checks an overlap (step S 107 ), eliminates the overlap (step S 108 ), displays the menu (step S 109 ), and then ends the process.
- the display control unit 222 may acquire the ROP operation menu by “CDS::X_GetOperationList”, for example.
- Some menu items contain “Normative Action Directive”, in which API when implemented with DLNA API is described (cf. FIG. 33 ).
- the display control unit 222 grasps in advance which DLNA API is to be used for implementing the own menu items (cf. FIG. 32 ).
- the display control unit 222 searches for an overlap between the API (cf. FIG. 33 ) of the items obtained by the ROP and the API (cf. FIG. 32 ) to be used for the items (cf. FIG. 31 ) prepared on its own for the content.
- “rating change” of the own menu is synonymous with “rate” of the ROP menu.
- the step of eliminating an overlap eliminates one of the overlapping elements before combining the menu items, and the step of displaying a menu (step S 109 ) obtains the menu to be displayed.
- the case for music contents in this example is shown in FIG. 35 .
- FIG. 35 is a view to explain combination of menu items prestored in the information processing device according to the embodiment and menu items transmitted from the information providing device according to the embodiment.
- “rating change” of the own menu is determined to be synonymous with “rate” of the ROP menu, and “rate” of the ROP menu is eliminated.
- FIG. 36 is a view showing an example of description of an execution response containing a message with a label indicating a type of the message.
- FIG. 37 is a view showing an example of correspondence between a type of a message and a value of a label.
- “ROP result information message” is used for the ROP server to direct the ROP client to make UI display of the message from the server as the UI transition adequate after execution of the menu by the ROP.
- the message displayed herein may be “recording succeeded”, “saving failed due to too many favorites” or the like, for example.
- ROP result information message may be extended so that not only the message text but also a label indicating a type of its meaning can be transmitted in addition to the ROP client.
- the label may indicate “success”, “failure”, “warning” or the like, for example.
- the message without label may indicate general information.
- the ROP client may make modification according to the label when displaying the message. For example, the way of modification can be decided by the ROP client, such as displaying “recording succeeded” after the mark ⁇ or displaying “saving failed” together with a beep sound after the mark ⁇ . Further, there may be the ROP client that ignores the labels and handles all messages in the same manner, for example.
- the embodiment it is possible to solve the problem of compatibility between the screen prestored in the information processing device 200 and the screen created by the information providing device 100 and flexibly respond to a change in the protocol used between the information providing device 100 and the information processing device 200 .
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
- Digital Computer Display Output (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
- The present application claims the benefit of priority to Japanese Priority Patent Application JP 2010-105471 filed in the Japan Patent Office on Apr. 30, 2010, which is expressly incorporated herein by reference in its entirety.
- 1. Technical Field
- The present disclosure relates to an information processing device, an information processing method, a program, an information providing device, and an information processing system.
- 2. Description of the Related Art
- In recent years, a client-server system in which a client (which is also referred to hereinafter as an “information processing device”) and a server (hereinafter as an “information providing device”) share the role of a computer is used in various situations. In the client-server system, a user inputs a desired command to the client with looking at the screen, and the client transmits a request corresponding to the command input by the user to the server. The server receives the request transmitted from the client, executes an operation corresponding to the request, and transmits a result obtained by the execution as a response to the request back to the client.
- The screen to be displayed on the client is broadly classified into the one created by the server and the one created by the client. The technique that creates the screen to be displayed on the client by the server includes a technique that creates a Web screen by a Web server, a technique that creates a screen to be delivered to electronic equipment such as a television by an IPTV (Internet Protocol TeleVision) server, a technique that creates a screen to be displayed on a computer at hand by a computer being operated in a remote desktop (cf. e.g. Japanese Unexamined Patent Application Publication No. 2007-219790) and so on, for example.
- Further, the technique that creates the screen to be displayed on the client by the client itself includes a technique that creates a screen by a client operating in conformity with a protocol such as DLNA (Digital Living Network Alliance) and so on, for example.
- However, the technique that creates a screen to be displayed on the client by the server has an issue that compatibility between the screen prestored in the client and the screen created by the server is not favorable in some cases. The technique further has an issue that the displayed screen is made uniform among clients, and variations of the screen to be displayed by the screen are reduced.
- On the other hand, the technique that creates the screen to be displayed on the client by the client itself has an issue that, when a protocol used between the server and the client changes, for example, it is necessary to change the function of creating the screen by the client in accordance with the protocol after change.
- In light of the foregoing, it is desirable to provide a novel and improved technique capable of solving the problem of compatibility between the screen prestored in the client and the screen created by the server and flexibly responding to a change in the protocol used between the server and the client.
- According to exemplary embodiments of the disclosed subject matter described above, it is possible to solve the problem of compatibility between the screen prestored in the client and the screen created by the server and flexibly respond to a change in the protocol used between the server and the client.
- One aspect of the disclosure relates to an information-processing apparatus for controlling presentation of a menu over a network. The information processing apparatus may include a communication unit configured to communicate with an information-providing apparatus over the network, an input unit configured to receive input from a user of the information-processing apparatus, a storage unit storing one or more menus, and a control unit. The control unit may be configured to receive, via the input unit, a selection of information for processing, to retrieve, from the storage unit, a first menu associated with the selected information, to receive, via the communication unit, a second menu associated with the selected information from the information-providing apparatus over the network, and to generate a third menu associated with the selected information based on the first menu and on the second menu.
- Another aspect relates to a computer-implemented method for controlling presentation of a menu over a network. The method may include receiving a selection of information for processing, accessing a first menu associated with the selected information, the first menu stored at an information-processing apparatus, and receiving, from an information-providing apparatus over the network, a second menu associated with the selected information. The method may further include generating a third menu associated with the selected information based on the first menu and on the second menu.
- Another aspect relates to a non-transitory computer-readable storage medium storing instructions which, when executed by an information-processing apparatus, cause the information-processing apparatus to perform a method for controlling presentation of a menu over a network. The method may include receiving a selection of information for processing, accessing a first menu associated with the selected information, the first menu stored at an information-processing apparatus, and receiving, from an information-providing apparatus over the network, a second menu associated with the selected information. The method may further include generating a third menu associated with the selected information based on the first menu and on the second menu.
- Another aspect relates to an information-providing apparatus for controlling the presentation of a menu over a network. The information-providing apparatus may include a communication unit configured to communicate with an information-processing apparatus over the network, a storage unit storing one or more menus, and a control unit. The control unit may be configured to receive, via the communication unit, a selection of information for processing, to retrieve, from the storage unit, a first menu associated with the selected information to be combined with a second menu associated with the selected information, the second menu being stored at the information-processing apparatus, and to send, via the communication unit, the retrieved first menu to the information-processing apparatus over the network. The information processing apparatus may generate a third menu associated with the selected information by combining the first menu and the second menu.
- Yet another aspect relates to a method for controlling the presentation of a menu over a network. The method may include receiving, at an information-providing apparatus, a selection of information for processing from an information-processing apparatus over the network, retrieving, from a storage unit at the information-providing apparatus, a first menu associated with the selected information to be combined with a second menu associated with the selected information, the second menu being stored at the information-processing apparatus. The method may further include sending the retrieved first menu to the information-processing apparatus over the network. The information processing apparatus may then generate a third menu associated with the selected information by combining the first menu and the second menu.
- Finally, another aspect relates to a non-transitory computer-readable storage medium storing instructions which, when executed by an information-providing apparatus, cause the information-providing apparatus to perform a method for controlling the presentation of a menu over a network. The method may include receiving, at the information-providing apparatus, a selection of information for processing from an information-processing apparatus over the network, retrieving, from a storage unit at the information-providing apparatus, a first menu associated with the selected information to be combined with a second menu associated with the selected information, the second menu being stored at the information-processing apparatus, and sending the retrieved first menu to the information-processing apparatus over the network
-
FIG. 1 is a view to explain a client-server system in which a server creates a screen; -
FIG. 2 is a view to explain a client-server system in which a client creates a screen; -
FIG. 3 is a view showing an example of display of a screen prestored in a client; -
FIG. 4 is a view showing an example of display of a screen created by integrating menu items prestored in an information processing device according to an embodiment and menu items received from an information providing device; -
FIG. 5 is a view to explain an overview of functions of an information processing system according to the embodiment; -
FIG. 6 is a view showing a functional configuration of an information providing device according to the embodiment; -
FIG. 7 is a view showing a functional configuration of an information processing device according to the embodiment; -
FIG. 8 is a view showing meaning of menu items transmitted from the information providing device according to the embodiment with respect to each use case; -
FIG. 9 is a view showing commands executed by the information processing device according to the embodiment with respect to each use case; -
FIG. 10 is a view to explain an operation type indicating whether an extended definition of a remote operation according to the embodiment is used; -
FIG. 11 is a view showing whether each property is necessary to support each use case to which the information processing system according to the embodiment is applied; -
FIG. 12 is a view showing whether each command is necessary to support each use case to which the information processing system according to the embodiment is applied; -
FIG. 13 is a view to explain each property used in the information processing system according to the embodiment; -
FIG. 14 is a view to explain each variable used in the information processing system according to the embodiment; -
FIG. 15 is a view to explain each command used in the information processing system according to the embodiment; -
FIG. 16 is a view to explain an argument and a returned value of a command (first command) used in the information processing system according to the embodiment; -
FIG. 17 is a view to explain types of the returned value of the command (first command) used in the information processing system according to the embodiment; -
FIG. 18 is a view to explain an argument and a returned value of a command (second command) used in the information processing system according to the embodiment; -
FIG. 19 is a view to explain types of the returned value of the command (second command) used in the information processing system according to the embodiment; -
FIG. 20 is a view to explain an argument and a returned value of a command (third command) used in the information processing system according to the embodiment; -
FIG. 21 is a view to explain types of the returned value of the command (third command) used in the information processing system according to the embodiment; -
FIG. 22 is a view to explain an argument and a returned value of a command (fourth command) used in the information processing system according to the embodiment; -
FIG. 23 is a view to explain types of the returned value of the command (fourth command) used in the information processing system according to the embodiment; -
FIG. 24 is a view showing an example of description of an acquisition response transmitted by the information providing device according to the embodiment; -
FIG. 25 is a view showing an example of description and an example of display of an acquisition response transmitted by the information processing device according to the embodiment; -
FIG. 26 is a view showing an example of description of an execution request containing operation identification information selected by the information processing device according to the embodiment; -
FIG. 27 is a view (first view) showing an example of description of an execution response transmitted by the information providing device according to the embodiment; -
FIG. 28 is a view (second view) showing an example of description of an execution response transmitted by the information providing device according to the embodiment; -
FIG. 29 is a view to explain an example (first example) of application of the information processing system according to the embodiment; -
FIG. 30 is a view to explain an example (second example) of application of the information processing system according to the embodiment; -
FIG. 31 is a view showing information for specifying a menu item to be displayed from types of contents by the information processing device according to the embodiment; -
FIG. 32 is a view showing information for specifying a command to be executed from menu items prestored in the information processing device according to the embodiment; -
FIG. 33 is a view showing information for specifying a command to be executed from menu items transmitted from the information providing device according to the embodiment; -
FIG. 34 is a flowchart showing a flow of a process executed by the information processing device according to the embodiment; -
FIG. 35 is a view to explain combination of menu items prestored in the information processing device according to the embodiment and menu items transmitted from the information providing device according to the embodiment; -
FIG. 36 is a view showing an example of description of an execution response containing a message with a label indicating a type of the message; and -
FIG. 37 is a view showing an example of correspondence between a type of a message and a value of a label. - Hereinafter, exemplary embodiments consistent with the present disclosure will be described in detail with reference to the appended drawings. Note that, in this specification and the appended drawings, structural elements that have substantially the same function and structure are denoted with the same reference numerals, and repeated explanation of these structural elements is omitted.
- Exemplary embodiments will be described hereinafter in the following order.
-
- 1. Embodiment
- 1-1. Client-Server System in which Server Creates Screen
- 1-2. Client-Server System in which Client Creates Screen
- 1-3. Example of Display of Screen Prestored in Client
- 1-4. Example of Display of Screen Created by Integrating Menu Items
- 1-5. Overview of Functions of Information Processing Device
- 1-6. Functional Configuration of Information Providing Device
- 1-7. Functional Configuration of Information Processing Device
- 1-8. Meaning of Menu Item Transmitted from Information Providing Device
- 1-9. Command Executed by Information Processing Device
- 1-10. Operation Type Indicating whether Extended Definition is Used
- 1-11. Property Necessary to Support Each Use Case
- 1-12. Command Necessary to Support Each Use Case
- 1-13. Each Property Used in Information Processing System
- 1-14. Variable Used in Information Processing System
- 1-15. Command Used in Information Processing System
- 1-16. Argument and Returned Value of First Command
- 1-17. Type of Returned Value of First Command
- 1-18. Argument and Returned Value of Second Command
- 1-19. Type of Returned Value of Second Command
- 1-20. Argument and Returned Value of Third Command
- 1-21. Type of Returned Value of Third Command
- 1-22. Argument and Returned Value of Fourth Command
- 1-23. Type of Returned Value of Fourth Command
- 1-24. Example of Description of Acquisition Response
- 1-25. Example of Description and Example of Display of Acquisition Response
- 1-26. Example of Description of Execution Request
- 1-27. First Example of Description of Execution Response
- 1-28. Second Example of Description of Execution Response
- 1-29. First Example of Application of Information Processing System
- 1-30. Second Example of Application of Information Processing System
- 1-31. Information for Specifying Menu Item from Type of Content
- 1-32. Correspondence between Menu Item Stored in Information Processing Device and Command
- 1-33. Correspondence between Menu Item Transmitted from Information Providing Device and Command
- 1-34. Flow of Process Executed by Information Processing Device
- 1-35. Combination of Menu Items
- 1-36. Execution Response Containing Message with Label
- 1-37. Correspondence between Type of Message and Value of Label
- 2. Alternative Example
- 3. Summary
- 1. Embodiment
- [1-1. Client-Server System in which Server Creates Screen]
-
FIG. 1 is a view to explain a client-server system in which a server creates a screen. Referring toFIG. 1 , in the client-server system, a screen GU displayed on a client CL1 is created by a server SV1. When the screen is transmitted from the server SV1 to the client CL1, a fixed UI (User Interface) transfer mode is used. Examples of such a client-server system include a system in which a Web server creates a Web screen, a system in which an IPTV server creates a screen to be delivered to electronic equipment such as a television, a system in which a computer being operated in a remote desktop creates a screen to be displayed on a computer at hand and so on, for example. - Such a system has a property that compatibility between a screen created by a function of screen display inherent to the client CL1 and a screen created by the server SV1 is not favorable. Further, the system has a property that differentiation from another client is not made for display of a screen created by the server SV1.
- [1-2. Client-Server System in which Client Creates Screen]
-
FIG. 2 is a view to explain a client-server system in which a client creates a screen. Referring toFIG. 2 , in the client-server system, a screen GU displayed on a client CL2 is created by the client CL2 itself. A protocol used for communication between the client CL2 and a server SV2 varies. Examples of such a client-server system include a system in which the client CL2 operating in conformity with a protocol such as DLNA creates a screen and so on, for example. - Such a system has a property that, when a protocol used between the server SV2 and the client CL2 changes, it is necessary to change the function of creating the screen by the client CL2 in accordance with the protocol after change.
- In this specification, an information processing system that does not have such properties of the client-server system in which the server creates a screen and the client-server system in which the client creates a screen.
-
FIG. 3 is a view showing an example of display of a screen prestored in a client. On a screen G11 which is prestored in the client, buttons (buttons “track 1” to “track 4”) indicating contents are set, and focus is placed on “track 2”. - In the state where the focus is placed on “
track 2”, when a command for selecting a content on which the focus is placed is given to the client, operation specific information (which is also referred to hereinafter as a “menu item”) which are executable for a content corresponding to “track 2” are displayed within a window of a screen G12. In the example shown inFIG. 3 , “play” and “detail information” are displayed as the operation specific information executable for a content corresponding to “track 2”. - Hereinafter, various kinds of information contained in a request or a response is set to a predetermined position in the request or the response specified for each type of information by a transmission source device and acquired from the predetermined position by a transmission destination device.
-
FIG. 4 is a view showing an example of display of a screen created by integrating menu items prestored in an information processing device according to an embodiment and menu items received from an information providing device. Referring toFIG. 4 , on a screen G21 which is prestored in theinformation providing device 200, buttons (buttons “track 1” to “track 4”) indicating contents are set, and focus is placed on “track 2”. - In the state where the focus is placed on “
track 2”, when a command for selecting a content on which the focus is placed is given to theinformation processing device 200, menu items which are executable for a content corresponding to “track 2” are displayed within a window of a screen G22. In the example shown inFIG. 4 , “play”, “detail information”, “favorites” and “rate” are displayed as the menu items executable for a content corresponding to “track 2”. Of those menu items, “play” and “detail information” are menu items prestored in theinformation processing device 200, and “favorites” and “rate” are menu items received from theinformation providing device 100. - In the state where the focus is placed on “
track 2”, when a command for shifting the focus among menu items is given to theinformation processing device 200, the focus shifts within a window of a screen G23, and the focus is placed on the menu item “favorites”. In the state where the focus is placed on “track 2” and “favorites”, when a command for executing the operation is given to theinformation processing device 200, processing for saving a content corresponding to “track 2” to “favorites” is executed. Then, on a screen G24, a message “saved to favorites” is displayed. - As described above, in this embodiment, the
information processing device 200 displays the screen created by integrating the prestored menu items and the menu items received from theinformation providing device 100 based on screen information held in its own device. Theinformation processing device 200 uses prestored information as the screen information such as display positions of menu items and uses both prestored information and information received from theinformation processing device 100 as the menu items. - In this manner, prestored menu items and menu items received from the
information providing device 100 can be displayed in compatibility. Such a technique is referred to hereinafter as ROP (Remote OPeration). Further, theinformation processing device 200 is referred to as an ROP client, and theinformation providing device 100 is referred to as an ROP server, occasionally. -
FIG. 5 is a view to explain an overview of functions of an information processing system according to the embodiment. Referring toFIG. 5 , aninformation processing system 10 includes theinformation providing device 100 and theinformation processing device 200. Theinformation providing device 100 and theinformation processing device 200 exist within the same home network, for example, and theinformation providing device 100 serves as DMS (Digital Media Server) and theinformation processing device 200 serves as DMP (Digital Media Player), for example. Specifically, theinformation processing device 200 acquires a content and a content list from theinformation providing device 100 in conformity with DLNA (Digital Living Network Alliance). - Further, the
information providing device 100 may serve as DMS, and theinformation processing device 200 may serve as DMR (Digital Media Renderer). This is described later with reference toFIGS. 29 and 30 . Types of contents may be music data, video data, text data or the like, although not particularly limited. - Referring to
FIG. 5 , theinformation processing system 10 executes processing in the sequence of ROP compatibility check, acquisition of an additional operation menu, and execution of an operation menu. In the above description, the additional operation menu means a menu item received from theinformation providing device 100. For example, in the ROP compatibility check, when theinformation providing device 100 serves as DMS, theinformation processing device 200 checks a CDS object (content) with an additional operation menu by using CDS (Content Directory Service) provided from theinformation providing device 100. Further, in the ROP compatibility check, when theinformation providing device 100 serves as DMR, for example, theinformation processing device 200 checks whether there is an additional operation menu in a content currently set to theinformation providing device 100. - Next, the
information processing device 200 acquires the additional operation menu for the content with the additional operation menu. Then, theinformation processing device 200 executes an operation menu. - When the
information providing device 100 serves as DMS, theinformation processing device 200 acquires metadata of a content by a command “CDS:Browse( )”, for example, and performs ROP compatibility check depending on whether “av:msOplist” is contained as the metadata. When theinformation providing device 100 serves as DMR, theinformation processing device 200 acquires metadata of the currently set content by a command “AVT:GetPositionInfo( )”, for example, and performs ROP compatibility check depending on whether “av:mrOplist” is contained as the metadata. - Further, when the
information providing device 100 serves as DMS, theinformation processing device 200 acquires an additional operation menu by a command “CDS:X_GetOperationList( )”, for example. When theinformation providing device 100 serves as DMR, theinformation processing device 200 acquires an additional operation menu by a command “AVT:X_GetOperationList( )”, for example. The additional operation menu is sent from theinformation providing device 100 to theinformation processing device 200 as “OpList”, for example. - Further, when the
information providing device 100 serves as DMS, theinformation processing device 200 executes an operation menu by a command “CDS:X_ExecuteOperation( )”, for example. When theinformation providing device 100 serves as DMR, theinformation processing device 200 executes an operation menu by a command “AVT:X_ExecuteOperation( )”, for example. An execution result of the operation menu is sent from theinformation providing device 100 to theinformation processing device 200 as “result display information”, for example. -
FIG. 6 is a view showing a functional configuration of an information providing device according to the embodiment. Theinformation providing device 100 at least includes astorage unit 130, a transmittingunit 140, a receivingunit 110, and anexecution unit 124. - The
storage unit 130 has a function of storing first operation specific information indicating a specific detail of a first operation to be executed by theinformation providing device 100 and storing first operation identification information for identifying the first operation. In the above example, the first operation is an operation that saves a content to favorites, an operation that changes the rate of a content or the like, the first operation specific information is a character string “favorites”, “rate” or the like, and the first operation identification information is information for identifying processing to save a content to favorites, information for identifying an operation to change the rate of a content or the like. Thestorage unit 130 may be a storage device such as HDD or semiconductor memory, for example. - The transmitting
unit 140 has a function of transmitting the first operation specific information and the first operation identification information stored in thestorage unit 130 to theinformation processing device 200. The transmittingunit 140 may be a communication device, for example, and serves as a communication interface with theinformation processing device 200. - The receiving
unit 110 has a function of receiving an execution request which contains selected operation identification information after either one of the first operation identification information or second operation identification information indicating a specific detail of a second operation is selected as the selected operation identification information by theinformation processing device 200. In the above example, the second operation is an operation that plays a content, an operation that displays detail information of a content or the like, and the second operation specific information a character string “play”, “detail information” or the like, and the second operation identification information is information for identifying an operation to play a content, information for identifying an operation to display detail information of a content or the like. The receivingunit 110 may be a communication device, for example, and serves as a communication interface with theinformation processing device 200. - The
execution unit 124 has a function of executing the operation identified by the selected operation identification information contained in the execution request received by the receivingunit 110. The execution request is received by execution of a command “CDS:X_ExecuteOperation( )” or “AVT:X_ExecuteOperation( )” by theinformation processing device 200. For example, when the selected operation identification information contained in the execution request received by the receiving unit 11 is information for identifying the operation to play a content, theexecution unit 124 executes the operation of playing a content, which is the operation identified by the identification information. - The
information providing device 100 may further include achecking unit 122. Thechecking unit 122 has a function of, as a response to a check request received by the receivingunit 110, generating a check response which contains content identification information for identifying a content stored in thestorage unit 130 and content relevant information relevant to the content. The check response is transmitted to theinformation processing device 200 by the transmittingunit 140. - The
information providing device 100 may further include anacquisition unit 123. Theacquisition unit 123 has a function of, as a response to an acquisition request received by the receivingunit 110, acquiring an operation list (first operation specific information) of the content identified by the content identification information contained in the acquisition request from thestorage unit 130 and generating an acquisition response which contains the acquired operation list. The acquisition response is transmitted to theinformation processing device 200 by the transmittingunit 140. - The
information providing device 100 may further include a receivedinformation determination unit 121. The receivedinformation determination unit 121 has a function of determining the information received by the receivingunit 110. For example, when the information received by the receivingunit 110 contains information for identifying the acquisition request, the receivedinformation determination unit 121 determines that the information received by the receivingunit 110 is the acquisition request and outputs the request to theacquisition unit 123. Further, when the information received by the receivingunit 110 contains information for identifying the check request, for example, the receivedinformation determination unit 121 determines that the information received by the receivingunit 110 is the check request and outputs the request to theacquisition unit 123. Furthermore, when the information received by the receivingunit 110 contains information for identifying the execution request, for example, the receivedinformation determination unit 121 determines that the information received by the receivingunit 110 is the execution request and outputs the request to theexecution unit 124. - The
control unit 120 that includes the receivedinformation determination unit 121, thechecking unit 122, theacquisition unit 123, theexecution unit 124 and so on may be a CPU, RAM or the like, for example, and its functions are implemented by the CPU loading a program stored in the storage unit 130 (or other non-transitory computer-readable storage medium) to the RAM and executing the program. However, the configuration is not limited thereto, and some of the receivedinformation determination unit 121, thechecking unit 122, theacquisition unit 123, and theexecution unit 124 may be implemented by dedicated hardware. Thestorage unit 130 may further store various data to be used for execution of a program by the CPU. -
FIG. 7 is a view showing a functional configuration of an information processing device according to the embodiment. Theinformation processing device 200 at least includes a receivingunit 250, adata storage unit 230, astorage control unit 226, a screeninformation storage unit 240, and adisplay control unit 222. - The receiving
unit 250 has a function of receiving the first operation specific information indicating a specific detail of the first operation to be executed by theinformation providing device 100 from theinformation providing device 100. The first operation specific information is contained in the acquisition request and received from theinformation providing device 100. In the above example, the first operation is the operation that saves a content to favorites, the operation that changes the rate of a content or the like, and the first operation specific information is a character string “favorites”, “rate” or the like. The receivingunit 250 may be a communication device, for example, and serves as a communication interface with theinformation providing device 100. - The
data storage unit 230 has a function of storing the second operation specific information indicating a specific detail of the second operation to be executed by theinformation providing device 100. In the above example, the second operation is the operation that plays a content, the operation that displays detail information of a content or the like, and the second operation specific information is a character string “play”, “detail information” or the like. Thedata storage unit 230 may be a storage device such as HDD or semiconductor memory, for example. - The
storage control unit 226 has a function of controlling storing of the first operation specific information received by the receivingunit 250 into thedata storage unit 230. The first operation specific information is stored into thedata storage unit 230 by control of thestorage control unit 226 as information constitutingoperation information 231, for example. The second operation specific information is already stored in thedata storage unit 230 as information constituting theoperation information 231, for example. - The screen
information storage unit 240 has a function of storingscreen information 241, which is information to be used for creating a screen. Thescreen information 241 is information indicating a position of each information to be displayed in the screen, for example. As a matter of course, thescreen information 241 contains information indicating a position of operation specific information indicating a specific detail of an operation in the screen. - The
display control unit 222 has a function of creating a screen to which the first operation specific information and the second operation specific information stored in thedata storage unit 230 based on thescreen information 241 stored in the screeninformation storage unit 240 and displaying the screen on thedisplay unit 260. A result that thedisplay control unit 222 displays the character strings “favorites” and “rate” as the first operation specific information on thedisplay unit 260 and the character strings “play” and “detail information” as the second operation specific information on thedisplay unit 260 based on thescreen information 241 stored in the screeninformation storage unit 240 is displayed like the screen G22 shown inFIG. 4 . - Note that, although the
display unit 260 is included in theinformation processing device 200 in this example, thedisplay unit 260 may be outside theinformation processing device 200. Thedisplay unit 260 may be a display device, for example. - The receiving
unit 250 may further receive the first operation identification information for identifying the first operation from theinformation providing device 100. In this case, thedata storage unit 230 further stores the second operation identification information for identifying the second operation, and thestorage control unit 226 may further control storing of the first operation identification information received by the receivingunit 250 into thedata storage unit 230. The first operation identification information is stored into thedata storage unit 230 as information constituting theoperation information 231 in association with the first operation specific information by thestorage control unit 226, for example. The second operation specific information is stored into thedata storage unit 230 as information constituting theoperation information 231 in association with the second operation specific information, for example. - Further, in this case, the
information processing device 200 may further include an executionrequest generation unit 224 and a transmittingunit 270. The executionrequest generation unit 224 selects any one of the first operation identification information and the second operation identification information stored in thedata storage unit 230 as selected operation identification information and generates the execution request which contains the selected operation identification information. Specifically, the executionrequest generation unit 224 uses the operation identification information selected byselection information 232 as the selected operation identification information. Further, the executionrequest generation unit 224 may generate the execution request which further contains the content identification information selected by theselection information 232. The format of the execution request is not particularly limited. - The transmitting
unit 270 has a function of transmitting the execution request generated by the executionrequest generation unit 224 to theinformation providing device 100. The transmittingunit 270 may be a communication device, for example, and serves as a communication interface with theinformation providing device 100. - In the example shown in
FIG. 4 , the first operation identification information is information for identifying processing to save a content favorites, information for identifying an operation to change the rate of a content or the like. The second operation identification information is information for identifying an operation to play a content, information for identifying an operation to display detail information of a content or the like. Thus, in the example shown inFIG. 4 , a case can occur where the first operation identification information and the second operation identification information match each other. In such a case, displaying both the first operation specific information and the second operation specific information can cause confusion to a user. - Therefore, the
display control unit 222 may determine whether the first operation identification information and the second operation identification information stored in thedata storage unit 230 match each other or not, and, when it determines that the first operation identification information and the second operation identification information match, omit setting of either one of the first operation specific information or the second operation specific information to the screen, for example. This prevents that the first operation specific information and the second operation specific information are both displayed, thereby reducing the possibility of bringing confusion to a user. - Various techniques may be used to select one of the first operation specific information and the second operation specific information as the operation specific information which is omitted to be set to the screen. However, considering that the
information processing device 200 stores the second operation specific information in advance, thedisplay control unit 222 may omit setting of the first operation specific information to the screen when it is determined that the first operation identification information and the second operation identification information match. - The execution
request generation unit 224 may exclude the first operation identification information from information to be selected in the case where setting of the first operation specific information to the screen is omitted, and exclude the second operation identification information from information to be selected in the case where setting of the second operation specific information to the screen is omitted. The executionrequest generation unit 224 is thereby unable to select the operation identification information corresponding to the operation specific information which is omitted to be set to the screen by thedisplay control unit 222, which enables further reduction of the possibility that confusion is brought to a user. - When the first operation identification information contains a first function name, which is a function for causing the
information providing device 100 to execute the first operation, and the second operation identification information contains a second function name, which is a function for causing theinformation providing device 100 to execute the second operation, thedisplay control unit 222 may determine whether the first function name and the second function name match each other. Thedisplay control unit 222 may determine whether the first operation identification information and the second operation identification information match or not based on the determination, for example. Specifically, thedisplay control unit 222 may determine that the first operation identification information and the second operation identification information match when the first function name and the second function name match, and determine that the first operation identification information and the second operation identification information do not match when the first function name and the second function name do not match. - The
display control unit 222 may further determine whether an argument to the first function and an argument to the second function match each other in addition to determining whether the first function name and the second function name match each other. Based on the determination, thedisplay control unit 222 may determine whether the first operation identification information and the second operation identification information match or not. Specifically, thedisplay control unit 222 may determine that the first operation identification information and the second operation identification information match when the argument to the first function and the argument to the second function match in addition to that the first function name and the second function name match, and may determine that the first operation identification information and the second operation identification information do not match when the argument to the first function and the argument to the second function do not match while the first function name and the second function name match. This is described in further detail later with reference toFIGS. 34 and 35 . - The receiving
unit 250 may further have a function of receiving an execution response which contains an execution result obtained as a result that theinformation providing device 100 executes the operation identified by the selected operation identification information contained in the execution request, as a response to the execution request. In this case, thedisplay control unit 222 may display the execution result contained in the execution response received by the receivingunit 250 on thedisplay unit 260.FIG. 4 shows an example in which the execution result “saved to favorites” is displayed on the screen G24 of thedisplay unit 260 by thedisplay control unit 222. - When a type is added to a message contained in the execution result, the
display control unit 222 may display the message in a display format according to the type on thedisplay unit 260. This is further described later with reference toFIGS. 36 and 37 . - The receiving
unit 110 may further receive transmission availability information indicating whether the first operation specific information is transmittable to theinformation processing device 200 by theinformation providing device 100 from theinformation providing device 100. In this case, theinformation processing device 200 may further include a transmissionavailability determination unit 227 that determines whether the transmission availability information received by the receivingunit 250 indicates that the first operation specific information is transmittable to theinformation processing device 200 by theinformation providing device 100, and an acquisitionrequest generation unit 228 that generates an acquisition request for acquiring the first operation specific information when the transmissionavailability determination unit 227 determines that the transmission availability information indicates that the first operation specific information is transmittable. - In this case, the transmitting
unit 270 may transmit the acquisition request generated by the acquisitionrequest generation unit 228 to theinformation providing device 100, and the receivingunit 250 may receive the first operation specific information from theinformation providing device 100 as a response to the acquisition request. - The
information processing device 200 may further include a checkrequest generation unit 223 that generates a check request for acquiring content identification information for identifying a content held by theinformation providing device 100 and content relevant information relevant to the content. In this case, the transmittingunit 270 transmits the check request generated by the checkrequest generation unit 223 to theinformation providing device 100, and the receivingunit 250 receives the content identification information and the content relevant information from theinformation providing device 100 as a response to the check request. - When the content relevant information received by the receiving
unit 250 contains the transmission availability information indicating whether the first operation specific information indicating the first operation to be executed for a content is transmittable to theinformation processing device 200 by theinformation providing device 100, the transmissionavailability determination unit 227 acquires the transmission availability information from the content relevant information and determines whether the acquired transmission availability information indicates that the first operation specific information is transmittable to theinformation processing device 200 by theinformation providing device 100. The transmissionavailability determination unit 227 may store the content relevant information received by the receivingunit 250 ascontent information 233. It is assumed that the content relevant information contains a content list including content identification information or the like and metadata including transmission availability information or the like, for example, and the content relevant information can be used later once it is stored as thecontent information 233. - The acquisition
request generation unit 228 generates an acquisition request containing content identification information when the transmissionavailability determination unit 227 determines that the transmission availability information indicates that the first operation specific information is transmittable. The transmittingunit 270 transmits the acquisition request generated by the acquisitionrequest generation unit 228 to theinformation providing device 100, and the receivingunit 250 receives the first operation specific information indicating a specific detail of the first operation to be executed for the content identified by the content identification information contained in the check request from theinformation providing device 100 as a response to the acquisition request. - When the input
information determination unit 221 determines that information input by a user through theinput unit 210 is information designating transmission of the check request, the inputinformation determination unit 221 outputs the information designating transmission of the check request to the acquisitionrequest generation unit 228. Further, when the inputinformation determination unit 221 determines that information input by a user through theinput unit 210 is information designating transmission of the execution request, the inputinformation determination unit 221 outputs the information designating transmission of the execution request to the executionrequest generation unit 224. When the inputinformation determination unit 221 determines that information input by a user through theinput unit 210 is information designating a change of theselection information 232, the inputinformation determination unit 221 outputs the information designating a change of theselection information 232 to thedisplay control unit 222. - The
display control unit 222 updates theselection information 232 based on the information designating a change of theselection information 232 input from the inputinformation determination unit 221. Theselection information 232 is information for selecting a combination of the content identification information and the operation identification information constituting theoperation information 231. - The
information processing device 200 may include a receivedinformation determination unit 225. The receivedinformation determination unit 225 has a function of determining information received by the receivingunit 250. For example, when the information received by the receivingunit 250 contains information for identifying the acquisition response, the receivedinformation determination unit 225 determines that the information received by the receivingunit 250 is the acquisition response and outputs the response to thestorage control unit 226. Further, when the information received by the receivingunit 250 contains information for identifying the check response, for example, the receivedinformation determination unit 225 determines that the information received by the receivingunit 250 is the check response and outputs the response to the transmissionavailability determination unit 227. Further, when the information received by the receivingunit 250 contains information for identifying the execution response, for example, the receivedinformation determination unit 225 determines that the information received by the receivingunit 250 is the execution response and outputs the response to thedisplay control unit 222. - Each of the input
information determination unit 221, thedisplay control unit 222, the checkrequest generation unit 223, the executionrequest generation unit 224, the receivedinformation determination unit 225, thestorage control unit 226, the transmissionavailability determination unit 227 and the acquisitionrequest generation unit 228 may be a CPU, RAM or the like, for example, and its functions are implemented by the CPU loading a program stored in the data storage unit 230 (or other non-transitory computer-readable storage medium) to the RAM and executing the program. However, the configuration is not limited thereto, and some of the inputinformation determination unit 221, thedisplay control unit 222, the checkrequest generation unit 223, the executionrequest generation unit 224, the receivedinformation determination unit 225, thestorage control unit 226, the transmissionavailability determination unit 227 and the acquisitionrequest generation unit 228 may be implemented by dedicated hardware. Thedata storage unit 230 may further store various data to be used for execution of a program by the CPU. - 1-8. Meaning of Menu Item Transmitted from Information Providing Device]
-
FIG. 8 is a view showing meaning of menu items transmitted from the information providing device according to the embodiment with respect to each use case. Referring toFIG. 8 , as a use case to which theinformation processing device 200 according to an embodiment is applied, a content operation and a media operation are assumed principally. - The content operation displays menu items of a selected content when, in the case where the
information processing device 200 is DMP or DMC, and theinformation providing device 100 is DMS, theinformation processing device 200 selects the content of CDS held by theinformation providing device 100 and detects pressing of an option button. The example shown inFIG. 4 corresponds to it. - The media operation displays menu items of a content set to the
information providing device 100 when, in the case where theinformation processing device 200 is DMC, and theinformation providing device 100 is DMR, theinformation processing device 200 detects pressing of an option button. - The menu item transmitted from the information providing device according to the embodiment is also applicable to a device configuration menu (network configuration etc.), a menu automatically displayed at the start of playing a content (a menu prompting input of whether or not to agree with regulation etc.), a menu automatically displayed at the end of playing a content (a menu prompting input of whether or not to make recommendations to a friend) or the like.
- Further, because it takes specification development costs and design and implementation costs to make over a part, which can be used in common, for each use case, it may be preferable in some embodiments to prepare common definition which can be used in common among different use cases. Operation List, Action Directive, Result Document or the like, which is described later, is an example of the common definition. Such common definition may be prepared in advance, and only a way of acquisition and a way of setting (network API etc.) for the common definition may be defined for each use case.
- By defining API for acquisition and setting of such common definition for a protocol different from DLNA, scenes in which ROP is available can increase. For example, an AV/C command may be defined in addition to enable use for IEEE 1394.
-
FIG. 9 is a view showing commands executed by the information processing device according to the embodiment with respect to each use case. The use cases are as shown inFIG. 8 . The commands executed by the information processing device correspond to the commands described above with reference toFIG. 5 . - [1-10. Operation Type Indicating whether Extended Definition is Used]
-
FIG. 10 is a view to explain an operation type indicating whether an extended definition of a remote operation according to the embodiment is used or not. In the case where the operation type is common, regulation is made for a required part for theinformation processing device 200 compatible with ROP. Further, in addition, an operation containing more sophisticated UI transition such as BIVL (Bravia Internet Video Link) may be defined extensionally. BIVL is a type of the service in which a server provides contents to a television through the Internet. - For example, when checking compatibility with remote operation, by introducing the concept of the operation type, it is possible to discriminate whether extended definition is used or not. For example, the operation type as shown in
FIG. 10 may be defined. - Although a variety of schemes may occur for “result information” and “operation list”, if it is required that all clients can translate all the schemes, the schemes which are hardly used are unnecessarily implemented for all combinations of equipment, which increases costs. Therefore, only the schemes required to be compatible (translatable), among various schemes, are defined (common type). Of the other schemes, schemes necessary for a certain use case (a use case to link up contents of BIVL etc.) are put together into a profile (e.g. bivl type). For the latter optional profile, the server makes it clear to the client which profile needs to be supported to translate the ROP which it intends to provide. For example, a value of “av:msOpList” tag or the like may be used.
-
FIG. 11 is a view showing whether each property is necessary to support each use case to which the information processing system according to the embodiment is applied. InFIG. 11 , R indicates that the property is required to support the use case. -
FIG. 12 is a view showing whether each command is necessary to support each use case to which the information processing system according to the embodiment is applied. As described above, the DMS is the ROP server in the use case “Content Operation”. The DMP, DMC or the like that refers to the DMS serves as the ROP client. - When the DMP or the like makes UI display of an operation menu at the selection of a content, use of the remote operation enables addition of the operation list provided by the DMS to the operation menu. According to the DLNA, the DMS provides the content list in the DIDL-Lite XML document. The metadata of the content is provided as the property (XML element attribute) included in the CDS object indicating the content. Note that “av:msOpList” may be added as the property to the object which can provide the operation list according to an embodiment.
- The operation list XML document can be obtained by issuing “CDS::X_GetOperationList action” with designation of CDS object ID (@id) of the CDS object having “av:msOpList”. The
information processing device 200 can add the operation corresponding to the CDS object to the UI by translating the operation list. - When a user performs an operation included in the operation list, “CDS::X_ExecuteOperation action” is issued by designating “Action Directive” of the operation. “Action Directive” is described in the operation list document. “Result Argument” of “response” of “X_ExecuteOperation action” contains information necessary for UI after execution, such as a character string for an error message.
- As described earlier, in the use case “Media Operation”, the DMR servers as the ROP server. A push controller, DMC or the like which refers to the DMR serves as the ROP client. When the DMC or the like makes UI display of the operation menu of the content set to the DMR, use of the remote operation enables addition of the operation list provided by the DMR to the operation menu.
- According to the DLNA, the metadata of the content to which the DMR is set is provided in the DIDL-Lite XML document with use of “AVT::GetPositionInfo” or the like. When the operation list according to the embodiment can be provided, “av:mrOpList” may be added to the document. When “AVT::X_GetOperationList action” is issued with designation of instance ID of AVT Instance having “av:mrOpList”, the operation list XML document can be obtained. The
information processing device 200 can add the operation to the UI by translating the operation list. - When a user performs an operation included in the operation list, “AVT::X_ExecuteOperation action” is issued by designating “Action Directive” of the operation. “Action Directive” is described in the operation list document. “Result Argument” of “response” of “X_ExecuteOperation action” contains information necessary for UI after execution, such as a character string for an error message.
-
FIG. 13 is a view to explain each property used in the information processing system according to the embodiment. Description as shown inFIG. 13 is added to the property placed in the object in the DIDL-Lite XML document. For example, “urn:schemas-sony-com:av” may be used as a namespace, and “av” may be used as a namespace prefix. -
FIG. 14 is a view to explain each variable used in the information processing system according to the embodiment. Variables which do not begin with “X_” are not shown inFIG. 14 because it has the same definition as State Variable of the same name of UPnP AV CDS/AVT. “CDS/AVT:X_A_ARG_TYPE_OperationList” includes the XML-escaped Operation List document. “X_A_ARG_TYPE_ActionDirective” includes “Action Directive” indicating which operation or parameter is selected. “X_A_ARG_TYPE_ROPResult” includes the XML-escaped Result document. -
FIG. 15 is a view to explain each command used in the information processing system according to the embodiment. The “CDS:X_GetOperationList” action returns the operation list corresponding to the designated CDS object ID. The “CDS:X_GetOperationList” action returns 701 when the designated object ID does not exist and returns 805 when the corresponding object does not have the operation list. - The “CDS:X_ExecuteOperation” action executes the operation corresponding to “ActionDirective” of the operation list with the designated object ID. An execution result of “CDS:X_ExecuteOperation” action is returned as “Result”. When “result information” is not contained, “Result Argument” may be empty.
- Further, by the “CDS:X_ExecuteOperation” action, a CDS update ID of the object at the returned time is also returned. The CDS update ID is handled in the same manner as the update ID when checking with Browse( ). When the update ID has changed, the ROP client may determine that the configuration of the object has changed as a result of the operation (or at that timing by coincidence).
- The “CDS:X_ExecuteOperation” action returns 701 when the designated object ID does not exist and returns 805 when the corresponding object does not have the operation list. Further, it returns 806 when the content of the designated “ActionDirective” does not match the content of the operation list and is irrelevant.
- The “AVT:X_GetOperationList” action returns the operation list corresponding to the content set to the designated AVT instance ID. The “AVT:X_GetOperationList” action returns 718 when the designated AVT instance ID does not exist and returns 805 when there is no corresponding operation list.
- The “AVT:X_ExecuteOperation” action executes the operation corresponding to “ActionDirective” of the operation list of the designated AVT instance ID. An execution result of the “AVT:X_ExecuteOperation” action is returned as “Result”. When “result information” is not contained, “Result Argument” may be empty.
- The “AVT:X_ExecuteOperation” action returns 718 when the designated AVT instance ID does not exist and returns 805 when there is no corresponding operation list. When the content of the designated “ActionDirective” does not match the content of the operation list and is irrelevant, it returns 806.
- Even when the list of contents is changed as a result of the ROP, because the client does not understand the semantics of the ROP, the old list may remain displayed. However, it is wasteful in terms of communication cost and screen display transition time to update the list each time. Therefore, when the contents list is changed by ROP process or by coincidence, the value of the update ID may be incremented to prompt the client to update display of the contents list. This is the same as the scheme of the update ID in CDS:Browse. This enables the client to become aware that the list is obsolete when the update ID changes between the fourth and fifth time in the course of browsing the list having many contents to view ten contents each, for example, and start the browsing over again.
-
FIG. 16 is a view to explain an argument and a returned value of a command (first command) used in the information processing system according to the embodiment. The first command is “CDS:X_GetOperationList” shown inFIG. 15 . -
FIG. 17 is a view to explain types of the returned value of the command (first command) used in the information processing system according to the embodiment. The first command is “CDS:X_GetOperationList” shown inFIG. 15 . -
FIG. 18 is a view to explain an argument and a returned value of a command (second command) used in the information processing system according to the embodiment. The second command is “CDS:X_ExecuteOperation” shown inFIG. 15 . -
FIG. 19 is a view to explain types of the returned value of the command (second command) used in the information processing system according to the embodiment. The second command is “CDS:X_ExecuteOperation” shown inFIG. 15 . -
FIG. 20 is a view to explain an argument and a returned value of a command (third command) used in the information processing system according to the embodiment. The third command is “AVT:X_GetOperationList” shown inFIG. 15 . -
FIG. 21 is a view to explain types of the returned value of the command (third command) used in the information processing system according to the embodiment. The third command is “AVT:X_GetOperationList” shown inFIG. 15 . -
FIG. 22 is a view to explain an argument and a returned value of a command (fourth command) used in the information processing system according to the embodiment. The fourth command is “AVT:X_ExecuteOperation” shown inFIG. 15 . -
FIG. 23 is a view to explain types of the returned value of the command (fourth command) used in the information processing system according to the embodiment. The fourth command is “AVT:X_ExecuteOperation” shown inFIG. 15 . -
FIG. 24 is a view showing an example of description of an acquisition response transmitted by the information providing device according to the embodiment. “Elements” and “Attributes” of the description example D11 are described hereinbelow. In the oplist is root tag. namespace declaration (xmlns= . . . ) of the operation list document. As the namespace, “urn:schemas-sony-com:av:ropoplist” is used. The oplist has one or more <operation> as a child element. - <operation> indicates a single operation. The number of <operation> is 16 or less. <operation@type> represents a type of the operation. Omission is possible only when operation@type is “common type”. <displayString> is required and indicates a display character string when making UI display of the operation or parameter. <displayString> is within 256 bytes.
- <shortDisplayString> is required when the character string length of <displayString> is greater than 32 bytes in the case of “common type”. When the character string length of <displayString> is 32 bytes or less, it is optional. <shortDisplayString> is a display character string when making UI display of the operation or parameter, and it is used instead of <displayString> by equipment having only a short display area. <shortDisplayString> is within 32 bytes.
- <selected> is optional. It indicates that, when making UI display of the list, the operation or parameter should be selected by default. <selected> is placed in one or less operation in the operation list. When <selected> is placed for the parameter, it is placed in one or less parameter in the parameter list with respect to each operation.
- <confirm> is optional, and it indicates whether or not to reconfirm execution when the operation or parameter is selected. A way of reconfirmation is not limited. <iconUrl> is optional, and it indicates URL to acquire an icon representing the operation or parameter. <iconUrl@profile> is required when <iconUrl> is present. <iconUrl@profile> indicates the format of the icon. At present, the format of the icon conforms to the DLNA JPEG_TN profile, and therefore the value of <iconUrl@profile> is “JPEG_TN”, for example.
- <action> is required when <paramerterList> is not present in <operation> and banned when it is present. <action> is required for <parameter>, and action directive to be used for execution of the operation or parameter is described in <action>. When <action@ropOnly> is “1”, it indicates that the description of the action directive is not parsible by the ROP client. When <action@ropOnly> is “0”, it indicates that omission is possible.
- <parameterList> is required when <action> is not present in <operation> and banned when it is present. <parameterList> indicates a list of parameters (sub-choices) relevant to the operation. <parameterList> has one or more <parameter> as child elements. <parameter> indicates a single parameter. The number of <parameter> is 16 or less.
- When there is no <shortDisplayString>, all equipment are necessary to use a menu item name designed with a short character string for mobile use or an item name is displayed only partially in mobiles. When there is no <selected>, the client is unable to determine which choice should be default. A client application can grasp the name of the item but not its meaning, and if it is designed to be able to grasp the meaning, additional implementation is needed for the client when a new function is added to the server. When there is no <confirm>, the client is unable to recognize which item needs reconfirmation. If reconfirmation is made for all items as another technique, there is an inadequate case and UX is thereby degraded. Thus, it is necessary to use some scheme to improve user-friendliness of a set item whose meaning is ungraspable for the client application.
-
FIG. 25 is a view showing an example of description and an example of display of an acquisition response transmitted by the information processing device according to the embodiment. An operation list contained in the acquisition response described like a description example D12 is displayed like a screen G3. However, the structural definition of the operation list shown inFIG. 25 is just by way of illustration. For example, the structural definition may be more complicated. For example, the depth of the hierarchy may be increased, not limited to the two-level hierarchy. Further, a request for a character input form may be made, for example. Such extension may be applied in the future profile other than common and bivl. Building the schemes like common and bivl allows implementation with no adverse effect on equipment supporting only common and bivl even when extension is applied in the future. The item menu for common and bivl and the item menu for a new type may be separated. -
FIG. 26 is a view showing an example of description of an execution request containing operation identification information selected by the information processing device according to the embodiment. The execution request described like a description example D21 corresponds to “Normative Action Directive” in the following description. - “Action Directive” is a character string acting like an ID which is transmitted to the ROP server when the operation or parameter described in the operation list is selected by a user. There are two kinds of implementation of “Action Directive”: a format that is used as it is as an opaque ID without translating its substance and a format that can be used by parsing its substance and understanding its semantics as to what selection of the operation or parameter means. Those formats can be distinguished by an attribute value of ropOnly in the operation list.
- In “ROP-Only Action Directive”, the ROP client is unable to translate the character string of Action Directive. It is used opaquely as an argument to the operation execution action specified for each use case, such as “CDS::ExecuteOperation( )”. The value in this case is ropOnly=1.
- “Normative Action Directive” is the XML document which is configured according to the following syntax, and it represents that performing a remote operation with selection of the operation parameter is equivalent to the case where corresponding SOAP
- Action is executed. The value in this case is ropOnly=0 (or omitted). “Normative Action Directive” is XML-escaped in the operation list.
- In the description example D21, <action> is a root tag of Action Directive document. The action element is different from the action element in the operation list, and xml namespace declaration is made. As the namespace, “urn:schemas-sony-com:av:ropactiondirective” is used.
- <name> is the name of the corresponding SOAP Action. <argumentList> is required when there is IN Argument in the SOAP Action. <argumentList> has one or more <element> respectively representing IN Argument as child elements. In <argument>, an element name is IN Argument name of the SOAP Action, and a value is the element value.
-
FIG. 27 is a view (first view) showing an example of description of an execution response transmitted by the information providing device according to the embodiment. InFIG. 27 , the execution response is described as a description example D31. The Result document as described as the description example D31 is the XML document representing what UI transition should be made in theinformation processing device 200 after execution of the operation. As a child element of the result root element, result information representing zero or more transition information is included. - Currently, the result information specified in the operation list of the common type is only <message>, which represents an UI message text to be displayed as the execution result. For example, the UI message at an error is not SOAP error, and it is performed using the message result information after success of SOAP. Unknown result information is ignored.
-
FIG. 28 is a view (second view) view showing an example of description of an execution response transmitted by the information providing device according to the embodiment. InFIG. 28 , the execution response is described as a description example D32. -
FIG. 29 is a view to explain an example (first example) of application of the information processing system according to the embodiment. As shown inFIG. 29 , the DMC may give a play command by setting acontent 2 on the DMS to aninstance 1 of the DMR, for example. -
FIG. 30 is a view to explain an example (second example) of application of the information processing system according to the embodiment. As shown inFIG. 30 , display may vary depending on the content set to the DMR. - [1-31. Information for Specifying Menu Item from Type of Content]
-
FIG. 31 is a view showing information for specifying a menu item to be displayed from types of contents by the information processing device according to the embodiment. Theinformation processing device 200 may store correspondence information between a type of a content and a menu item as shown inFIG. 31 in thedata storage unit 230, for example. - [1-32. Correspondence between Menu Item Stored in Information Processing Device and Command]
-
FIG. 32 is a view showing information for specifying a command to be executed from menu items prestored in the information processing device according to the embodiment. Theinformation processing device 200 may store correspondence information between a prestored menu item (own menu item) and a command (Network API) as shown inFIG. 32 in thedata storage unit 230, for example. - [1-33. Correspondence between Menu Item Transmitted from Information Providing Device and Command]
-
FIG. 33 is a view showing information for specifying a command to be executed from menu items transmitted from the information providing device according to the embodiment. Theinformation providing device 100 may store correspondence information between a menu item (ROP menu) transmitted from the information providing device and a command (Network API) as shown inFIG. 33 in thestorage unit 130, for example. - The DMP (ROP client) creates an option menu by combining the own menu items and the menu items acquired through the ROP. If items having the same function are contained in the respective menu items, the composite UI becomes unnatural. A first issue is how the DMP detects items with the same function. Translating “Normative Action Directive” of the ROP menu item allows the DMP to grasp to what DLNA API the function of the menu item corresponds. On the other hand, for the own menu, the DMP knows by what DLNA API its item is implemented. The items implemented by the same DLNA API may be determined to have the same function. Thus, either one of those is eliminated from the UI. It is considered to be more effective to leave the own menu because the DMP completely grasps the meaning of the own menu.
-
FIG. 34 is a flowchart showing a flow of a process executed by the information processing device according to the embodiment. Referring toFIG. 34 , the receivingunit 250 of theinformation processing device 200 acquires a content list and metadata (step S101), and thedisplay unit 260 displays the content list (step S102). DLNA (CDS::Browse) may be used for acquisition of the content list and the metadata. Types of contents and titles of contents can be thereby acquired. - The input
information determination unit 221 decides a content to be processed (step S103). For example, information for deciding a content to be processed is input through theinput unit 210 by a user's operation (e.g. up/down key). Thedisplay control unit 222 decides the own content menu (step S104) and determines whether there is ROP menu or not (step S105). Because an available operation can differ depending on the type of the content, for example, thedisplay control unit 222 decides the menu to be displayed based on the correspondence information as shown inFIG. 31 . The determination as to whether the ROP menu exists or not can be made by checking whether an element (av:msOpList) indicating that ROP is available exists in the metadata. When the ROP menu does not exist (No in step S105), thedisplay control unit 222 proceeds to the step S109. - When, on the other hand, the ROP menu exists (Yes in step S105), the
display control unit 222 acquires the ROP menu (step S106), checks an overlap (step S107), eliminates the overlap (step S108), displays the menu (step S109), and then ends the process. Thedisplay control unit 222 may acquire the ROP operation menu by “CDS::X_GetOperationList”, for example. Some menu items contain “Normative Action Directive”, in which API when implemented with DLNA API is described (cf.FIG. 33 ). - The
display control unit 222 grasps in advance which DLNA API is to be used for implementing the own menu items (cf.FIG. 32 ). Thedisplay control unit 222 searches for an overlap between the API (cf.FIG. 33 ) of the items obtained by the ROP and the API (cf.FIG. 32 ) to be used for the items (cf.FIG. 31 ) prepared on its own for the content. In the example shown inFIGS. 32 and 33 , “rating change” of the own menu is synonymous with “rate” of the ROP menu. The step of eliminating an overlap (step S108) eliminates one of the overlapping elements before combining the menu items, and the step of displaying a menu (step S109) obtains the menu to be displayed. The case for music contents in this example is shown inFIG. 35 . -
FIG. 35 is a view to explain combination of menu items prestored in the information processing device according to the embodiment and menu items transmitted from the information providing device according to the embodiment. In the example shown inFIG. 35 , “rating change” of the own menu is determined to be synonymous with “rate” of the ROP menu, and “rate” of the ROP menu is eliminated. - [1-36. Execution Response Containing Message with Label]
-
FIG. 36 is a view showing an example of description of an execution response containing a message with a label indicating a type of the message. As shown in a description example D41 ofFIG. 36 , label xml attribute is added to the current format <message>[message text]</message> of “Result information”, so that it is described in the format of <message label=“1”>[message text]</message>. - [1-37. Correspondence between Type of Message and Value of Label]
-
FIG. 37 is a view showing an example of correspondence between a type of a message and a value of a label. “ROP result information message” is used for the ROP server to direct the ROP client to make UI display of the message from the server as the UI transition adequate after execution of the menu by the ROP. The message displayed herein may be “recording succeeded”, “saving failed due to too many favorites” or the like, for example. - Note that, “ROP result information message” may be extended so that not only the message text but also a label indicating a type of its meaning can be transmitted in addition to the ROP client. The label may indicate “success”, “failure”, “warning” or the like, for example. The message without label may indicate general information. The ROP client may make modification according to the label when displaying the message. For example, the way of modification can be decided by the ROP client, such as displaying “recording succeeded” after the mark ∘ or displaying “saving failed” together with a beep sound after the mark ×. Further, there may be the ROP client that ignores the labels and handles all messages in the same manner, for example.
- Although exemplary embodiments are described in detail above with reference to the appended drawings, the present disclosure is not limited thereto. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and alterations may occur depending on design requirements and other factors insofar as they are within the scope of the appended claims or the equivalents thereof.
- According to the embodiment, it is possible to solve the problem of compatibility between the screen prestored in the
information processing device 200 and the screen created by theinformation providing device 100 and flexibly respond to a change in the protocol used between theinformation providing device 100 and theinformation processing device 200.
Claims (2)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/941,719 US9612718B2 (en) | 2010-04-30 | 2013-07-15 | Information processing device, information processing method, program, information providing device, and information processing system |
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010105471A JP5589537B2 (en) | 2010-04-30 | 2010-04-30 | Information processing apparatus, information processing method, program, information providing apparatus, and information processing system |
| JP2010-105471 | 2010-04-30 | ||
| JPJP2010-105471 | 2010-04-30 | ||
| US13/090,956 US8516378B2 (en) | 2010-04-30 | 2011-04-20 | Information processing device, information processing method, program, information providing device, and information processing system |
| US13/941,719 US9612718B2 (en) | 2010-04-30 | 2013-07-15 | Information processing device, information processing method, program, information providing device, and information processing system |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US13/090,956 Continuation US8516378B2 (en) | 2010-04-30 | 2011-04-20 | Information processing device, information processing method, program, information providing device, and information processing system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US20130305161A1 true US20130305161A1 (en) | 2013-11-14 |
| US9612718B2 US9612718B2 (en) | 2017-04-04 |
Family
ID=44859303
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US13/090,956 Expired - Fee Related US8516378B2 (en) | 2010-04-30 | 2011-04-20 | Information processing device, information processing method, program, information providing device, and information processing system |
| US13/941,719 Expired - Fee Related US9612718B2 (en) | 2010-04-30 | 2013-07-15 | Information processing device, information processing method, program, information providing device, and information processing system |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US13/090,956 Expired - Fee Related US8516378B2 (en) | 2010-04-30 | 2011-04-20 | Information processing device, information processing method, program, information providing device, and information processing system |
Country Status (3)
| Country | Link |
|---|---|
| US (2) | US8516378B2 (en) |
| JP (1) | JP5589537B2 (en) |
| CN (1) | CN102238173B (en) |
Families Citing this family (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10976981B2 (en) * | 2011-07-15 | 2021-04-13 | Vmware, Inc. | Remote desktop exporting |
| JP2013164680A (en) * | 2012-02-09 | 2013-08-22 | Toshiba Tec Corp | Communication controller, communication control method and communication control program |
| US20140108940A1 (en) * | 2012-10-15 | 2014-04-17 | Nvidia Corporation | Method and system of remote communication over a network |
| US9679344B2 (en) * | 2012-10-24 | 2017-06-13 | Nubo Software | Server-based fast remote display on client devices |
| CN103036962A (en) * | 2012-12-06 | 2013-04-10 | 惠州Tcl移动通信有限公司 | File sharing method and handheld device |
| KR102158842B1 (en) * | 2012-12-17 | 2020-09-22 | 삼성전자주식회사 | Presenting user interface presenting method and device therefore |
| US9667703B1 (en) | 2013-01-22 | 2017-05-30 | Hypori, Inc. | System, method and computer program product for generating remote views in a virtual mobile device platform |
| US9697629B1 (en) | 2013-01-22 | 2017-07-04 | Hypori, Inc. | System, method and computer product for user performance and device resolution settings |
| US9380562B1 (en) | 2013-01-22 | 2016-06-28 | Hypori, Inc. | System, method and computer program product for providing notifications from a virtual device to a disconnected physical device |
| US9380523B1 (en) | 2013-01-22 | 2016-06-28 | Hypori, Inc. | System, method and computer program product for connecting roaming mobile devices to a virtual device platform |
| US9380456B1 (en) | 2013-01-22 | 2016-06-28 | Hypori, Inc. | System, method and computer program product for dynamically switching operating systems in a virtual mobile device platform |
| US9819593B1 (en) | 2013-01-22 | 2017-11-14 | Hypori, Inc. | System, method and computer program product providing bypass mechanisms for a virtual mobile device platform |
| US9619673B1 (en) | 2013-01-22 | 2017-04-11 | Hypori, Inc. | System, method and computer program product for capturing touch events for a virtual mobile device platform |
| JP6044400B2 (en) * | 2013-03-11 | 2016-12-14 | ブラザー工業株式会社 | TERMINAL DEVICE, TERMINAL DEVICE PROGRAM, SYSTEM, AND SYSTEM CONTROL METHOD |
| KR102052977B1 (en) * | 2013-03-11 | 2019-12-06 | 삼성전자 주식회사 | Multi Input Control Method and System thereof, and Electronic Device supporting the same |
| US9819604B2 (en) | 2013-07-31 | 2017-11-14 | Nvidia Corporation | Real time network adaptive low latency transport stream muxing of audio/video streams for miracast |
| CN105792017A (en) * | 2016-03-04 | 2016-07-20 | 青岛海信电器股份有限公司 | Terminal system parameter setting method and terminal system parameter setting device |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060242638A1 (en) * | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Adaptive systems and methods for making software easy to use via software usage mining |
| US20070005727A1 (en) * | 2005-06-30 | 2007-01-04 | Jim Edwards | Systems, methods, and media for discovering remote user interface applications over a network |
| US20070288960A1 (en) * | 2006-06-07 | 2007-12-13 | Hitoshi Akiyama | Receiving apparatus |
| US20090037463A1 (en) * | 2007-07-30 | 2009-02-05 | Canon Kabushiki Kaisha | Image processing apparatus, control method thereof, and storage medium that stores program thereof |
Family Cites Families (30)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6424360B1 (en) * | 1995-09-21 | 2002-07-23 | International Business Machines Corporation | Dynamically constructed integration menus |
| US6437803B1 (en) * | 1998-05-29 | 2002-08-20 | Citrix Systems, Inc. | System and method for combining local and remote windows into a single desktop environment |
| US6675371B1 (en) * | 1999-04-30 | 2004-01-06 | Hewlett-Packard Development Company, L.P. | Java and native application window integration |
| US7099948B2 (en) * | 2001-02-16 | 2006-08-29 | Swsoft Holdings, Ltd. | Virtual computing environment |
| US20020130900A1 (en) * | 2001-03-16 | 2002-09-19 | Tomorrowsoft Corporation | System for generating an interface for software applications in a client-server environment |
| CA2467826C (en) * | 2001-10-23 | 2012-03-13 | Visto Corporation | System and method for merging remote and local data in a single user interface |
| US20040111398A1 (en) * | 2002-12-09 | 2004-06-10 | International Business Machines Corporation | Performance mechanism for presenting integrated information in a graphical user interface |
| US20050080807A1 (en) * | 2003-10-12 | 2005-04-14 | Microsoft Corporation | Extensible creation and editing of integrated collections |
| US20040215706A1 (en) * | 2003-03-31 | 2004-10-28 | Lavender Scott D. | System and method for updating software and version control in a production printer |
| US8127248B2 (en) * | 2003-06-20 | 2012-02-28 | Apple Inc. | Computer interface having a virtual single-layer mode for viewing overlapping objects |
| EP1683154B1 (en) * | 2003-11-12 | 2015-12-02 | Thomson Licensing | Method and device for composing a menu |
| US7412665B2 (en) * | 2004-02-13 | 2008-08-12 | Microsoft Corporation | Menu management in an OLE document environment |
| US7707399B2 (en) * | 2004-04-23 | 2010-04-27 | Intel Corporation | Adjusting depiction of user interface based upon state |
| US7996785B2 (en) * | 2004-06-30 | 2011-08-09 | Microsoft Corporation | Systems and methods for integrating application windows in a virtual machine environment |
| US20060288097A1 (en) * | 2005-06-20 | 2006-12-21 | Xerox Corporation | Integration of local and remote jobs in the job queue |
| JP4741908B2 (en) * | 2005-09-08 | 2011-08-10 | キヤノン株式会社 | Information processing apparatus and information processing method |
| JP5002165B2 (en) * | 2006-02-16 | 2012-08-15 | 株式会社日立製作所 | Remote desktop system |
| JP2007299030A (en) * | 2006-04-27 | 2007-11-15 | Victor Co Of Japan Ltd | Program for acquiring gui display information |
| US20100179876A1 (en) * | 2007-05-04 | 2010-07-15 | Bjorn Holte | Computer-accessible medium, method and system for assisting in navigating the internet |
| CA2697936A1 (en) * | 2007-09-12 | 2009-03-19 | Citrix Systems, Inc. | Methods and systems for generating desktop environments providing integrated access to remote and local resources |
| US20090113507A1 (en) * | 2007-10-31 | 2009-04-30 | Michael Casey Gotcher | Media System for Facilitating Interaction with Media Data Across a Plurality of Media Devices |
| US20090150541A1 (en) * | 2007-12-06 | 2009-06-11 | Sony Corporation And Sony Electronics Inc. | System and method for dynamically generating user interfaces for network client devices |
| KR101560183B1 (en) * | 2008-04-17 | 2015-10-15 | 삼성전자주식회사 | Method and apparatus for providing / receiving a user interface |
| KR20090110202A (en) * | 2008-04-17 | 2009-10-21 | 삼성전자주식회사 | Method and apparatus for displaying personalized user interface |
| US9009216B2 (en) * | 2008-06-17 | 2015-04-14 | Panasonic Intellectual Property Corporation Of America | Server device, and method and program for processing on the same |
| US20090327892A1 (en) * | 2008-06-27 | 2009-12-31 | Ludovic Douillet | User interface to display aggregated digital living network alliance (DLNA) content on multiple servers |
| US20100042684A1 (en) * | 2008-08-13 | 2010-02-18 | Managed Interface Technologies LLC | Adaptive user interfaces and methods for displaying, accessing, and organizing electronic assets |
| RU2419890C1 (en) * | 2009-09-24 | 2011-05-27 | Общество с ограниченной ответственностью "Центр речевых технологий" | Method of identifying speaker from arbitrary speech phonograms based on formant equalisation |
| US11418842B2 (en) * | 2009-11-03 | 2022-08-16 | DISH Technologies L.L.C. | Methods and apparatus for presenting content selection menus |
| US9268466B2 (en) * | 2009-12-09 | 2016-02-23 | Citrix Systems, Inc. | Methods and systems for updating a dock with a user interface element representative of a remote application |
-
2010
- 2010-04-30 JP JP2010105471A patent/JP5589537B2/en not_active Expired - Fee Related
-
2011
- 2011-04-20 US US13/090,956 patent/US8516378B2/en not_active Expired - Fee Related
- 2011-04-22 CN CN201110106957.0A patent/CN102238173B/en not_active Expired - Fee Related
-
2013
- 2013-07-15 US US13/941,719 patent/US9612718B2/en not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060242638A1 (en) * | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Adaptive systems and methods for making software easy to use via software usage mining |
| US20070005727A1 (en) * | 2005-06-30 | 2007-01-04 | Jim Edwards | Systems, methods, and media for discovering remote user interface applications over a network |
| US20070288960A1 (en) * | 2006-06-07 | 2007-12-13 | Hitoshi Akiyama | Receiving apparatus |
| US20090037463A1 (en) * | 2007-07-30 | 2009-02-05 | Canon Kabushiki Kaisha | Image processing apparatus, control method thereof, and storage medium that stores program thereof |
Also Published As
| Publication number | Publication date |
|---|---|
| US9612718B2 (en) | 2017-04-04 |
| CN102238173A (en) | 2011-11-09 |
| CN102238173B (en) | 2016-06-29 |
| JP2011233097A (en) | 2011-11-17 |
| US8516378B2 (en) | 2013-08-20 |
| US20110271200A1 (en) | 2011-11-03 |
| JP5589537B2 (en) | 2014-09-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9612718B2 (en) | Information processing device, information processing method, program, information providing device, and information processing system | |
| US7890470B2 (en) | Method and apparatus for synchronizing device providing content directory service with device not providing content directory | |
| KR100667742B1 (en) | Method for controlling at least one controlled device of the control device | |
| KR101528854B1 (en) | How to process UI components in RUI proxy device and RUI proxy device | |
| US20120060100A1 (en) | System and method for transferring media content | |
| US7904575B2 (en) | Apparatus and method for matching protocols of embedded audio/video contents | |
| US20160249114A1 (en) | Method and apparatus for executing application in wireless communication system | |
| US20120215882A1 (en) | Content management method, management storage device, and non-transistory content management computer program product | |
| WO2013117140A1 (en) | Method, apparatus and system for processing and controlling media play | |
| US9432220B2 (en) | Apparatus, method and system to select content from history information representing previously reproduced content | |
| JP2009146384A (en) | Information processing apparatus and information processing method | |
| US20110196915A1 (en) | Method and apparatus for using service of home network device based on remote access | |
| EP3094046B1 (en) | Apparatus and method for matching protocols of embedded audio/video contents | |
| US20110119351A1 (en) | Content providing device and portable terminal device and content submission method and content management method | |
| JP2009512008A (en) | A device that handles data items that can be rendered to the user | |
| US9843634B2 (en) | Method and apparatus for synchronizing content directory service objects of universal plug and play media servers | |
| US20100250533A1 (en) | Generating Recommendations for Content Servers | |
| US8531707B2 (en) | Systems and methods for executing forms | |
| US20120023539A1 (en) | Information processing apparatus and content receiving method | |
| US7941500B2 (en) | Method and device for managing content, storage medium, and adaptive content playing method using the same | |
| US20060155766A1 (en) | Structure of objects stored in a media server and improving accessibility to the structure | |
| CN111654753B (en) | Application program starting method and display device | |
| US8645487B2 (en) | Method of requesting services of network devices, network devices capable of performing the method, and storage medium for storing the method | |
| KR100724940B1 (en) | How to update the contents of DMS in DLNA system | |
| JP2008204269A (en) | Server apparatus, client apparatus, communication method, and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
| MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
| FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
| FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20250404 |