This application claims the benefit of Korean Patent Application No. 10-2012-0085392, filed on Aug. 3, 2012 in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference.
1. Field
The exemplary embodiments discussed herein relate to an apparatus for reproducing multimedia data and an application from a disc. More particularly, the exemplary embodiments relate to methods and apparatuses for reproducing and recording a discless application that is not dependent on the presence of a disc, and an information storage medium for recording the discless application.
2. Description of the Related Art
In order touse a contents service recorded in an optical disc, such as a digital video disc (DVD) or a Blu-ray disc (BD) from a contents provider in an application platform of an apparatus for reproducing an optical disc, a process of inserting the optical disc into the apparatus and loading an application is needed. More specifically, the contents provider provides consumers with a service through the following process.
Specifically, a disc containing contents that a consumer wants to view is purchased.
Upon insertion of the disc into a reproduction apparatus, the reproduction apparatus enables an application recorded in the disc to be executed through a series of loading processes.
The enabled application provides the consumer with the latest information, such as the latest movie information, via download over a network, as well as movie contents recorded in the disc, which is provided by the contents provider.
The consumer may be provided with the latest information that was not previously recorded in the disc during a disc reproduction process. The latest information may provide assistance in, for example, purchasing other discs related to the disc of which contents stored thereon are being reproduced for the consumer.
Referring to
In a case where the application is a title-bound application 120 that is subordinate to a specific title, when reproduction of the title begins, the application is enabled, and, when either reproduction of the title ends or a title change occurs in which reproduction of another title begins, the application ends. In a case where the application is a title-unbound application 130 that is not subordinate to a specific title, when reproduction of the title begins, the application is enabled, and, even when reproduction of the title ends or the title change occurs in which reproduction of another title begins, the application does not end. The application ends when the optical disc is ejected.
That is, in the application platform of a known apparatus for reproducing contents stored on the optical disc, both the title-bound application 120 and the title-unbound application 130 may be in an activation state only after the optical disc is inserted and before the optical disc is ejected. In this regard, there is an exception in a disc-unbound application in that the disc-unbound application does not end even when disc change occurs, as long as the disc change is between discs that are related to each other, such as with series discs. However, in this case, after the conventional apparatus for reproducing the optical disc has been booted, the disc-unbound application cannot be executed until the optical disc is inserted.
As described above, a consumer may be provided with a contents service only after the optical disc has been completely loaded into the conventional apparatus for reproducing contents stored in the optical disc, and a contents provider may provide the consumer with the contents service or information only after the consumer has loaded the optical disc into the known apparatus for reproducing contents stored in the optical disc. In particular, a reproduction of the optical disc is required to directly exchange information between the consumer and the contents provider. Since contents stored in the optical disc need to be reproduced all the time, such that the consumer may obtain the latest information, there was no way to obtain, from a contents provider, information of a disc that the consumer does not own.
Meanwhile, according to a recent optical disc based service, it is possible to provide the latest information or a latest application frame work based service by downloading the latest contents related to a disc and updating information which corresponds to a disc over a network during a reproduction of contents stored in the disc. However, to this end, it takes a substantial amount of time to receive the latest data over a network, record the received latest data in a reproduction apparatus, and update the information which corresponds to a disc. These operations are performed after the disc has been inserted into the reproduction apparatus, resulting in an excessive amount of time required for loading the disc.
The exemplary embodiments provide a method and apparatus for driving an application when a disc is not inserted into a reproduction apparatus.
The exemplary embodiments also provide a method and apparatus for allowing a contents provider and a user to exchange information when a disc is not reproduced.
The exemplary embodiments also provide a method and apparatus for reducing disc loading time by receiving data necessary for a disc update before a disc is inserted into a reproduction apparatus.
The exemplary embodiments also provide a discless application having a life cycle that is not bound to a disc.
According to an aspect of the exemplary embodiments, there is provided an apparatus for reproducing data from a disc, the apparatus including: a storage for storing discless application data including program data which corresponds to a discless application that is not recorded in the disc and a discless application description (DAD) used to access the program data; and an application driver which executes an application recorded in the disc by using application data recorded in the disc, executing the discless application by using the discless application data stored in the storage, and controlling a life cycle of the discless application in such a manner that the life cycle of the discless application is not dependent on whether the disc has been loaded.
The application driver may use the DAD to generate a user interface which provides information regarding the discless application.
The application driver may use the DAD generate a user interface which controls at least one of a start and an end of at least one discless application.
The application driver may execute the discless application before the disc has been loaded.
The discless application may be an application that downloads data which is needed to update the disc.
The application driver may control communication between the application recorded in the disc and the discless application.
According to another aspect of the exemplary embodiments, there is provided an apparatus for recording a discless application that is not recorded in a disc, the apparatus including: a communicator which obtains discless application data including program data which corresponds to the discless application and a discless application description (DAD) used to access the included program data from an external apparatus; and a controller which stores the obtained discless application data in a storage of the apparatus, wherein the obtained discless application data includes life cycle information which indicates that a life cycle of the discless application is not dependent on whether the disc has been loaded.
The included program data includes an application object which includes management information regarding the discless application and at least one application program which corresponds to the discless application, wherein the life cycle information of the discless application is included in the application object.
The controller stores the obtained discless application data in a predetermined area identified by identification information of a content provider.
When storing the discless application data in the predetermined area, the controller classifies and stores the obtained discless application data according to the discless application.
The DAD may include information for controlling the life cycle of the discless application, information for controlling resources, information regarding related applications, and information for configuring a user interface.
The DAD may include information used to generate a user interface which controls at least one of a start and an end of the discless application.
According to another aspect of the exemplary embodiments, there is provided a non-transitory computer readable information storage medium used by an apparatus for reproducing data from a disc, including: discless application data including program data which corresponds to a discless application that is not recorded in the disc and a discless application description (DAD) used to access the included program data, wherein the discless application data includes life cycle information which indicates that a life cycle of the discless application is not dependent on whether the disc has been loaded.
According to another aspect of the exemplary embodiments, a reproduction method is provided, where the method is performed by an apparatus for reproducing data from a disc, the method including: executing a discless application by using discless application data that is stored in a storage of the apparatus and includes program data which corresponds to the discless application that is not recorded in the disc and a discless application description (DAD) used to access the included program data; controlling a life cycle of the discless application so that the life cycle of the discless application is not dependent on whether the disc has been loaded by referring to the discless application data; and executing an application recorded in the disc after loading the disc.
According to another aspect of the exemplary embodiments, there is provided a method of recording a discless application that is not recorded in a disc, the method including: obtaining discless application data including program data which corresponds to the discless application and a DAD used to access the included program data from an external apparatus; and storing the obtained discless application data in a storage, wherein the obtained discless application data stored in the storage includes life cycle information which indicates that a life cycle of the discless application is not dependent on whether the disc has been loaded.
Another exemplary embodiment may provide an apparatus for reproducing data from a disc, the apparatus including: a storage which stores discless application data and a discless application description (DAD); and an application driver which executes an application recorded in the disc, executes the discless application by using the discless application data stored in the storage, and controls a life cycle of the discless application in such a manner that the life cycle of the discless application is not dependent upon whether the disc has been loaded. The discless application data may include program data which corresponds to the discless application, and the discless application description (DAD) may be used to access the included program data from an external apparatus.
The above and other features and advantages will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings in which:
Hereinafter, the exemplary embodiments will be described in detail with reference to the attached drawings. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
Referring to
Data 215 for driving a discless application other than a disc based application recorded in the disc 230 is stored in the storage 210. The discless application corresponds to one service provided by an application producer (a contents provider), from the standpoint of a consumer. Discless application data necessary for driving one discless application includes program data 212 including at least one application program and discless application description information 211 used to access the program data 212. The program data 212 may include the at least one application program and an application detailed description file including application management information, etc. In a case of a Blu-ray disc (BD) based application, the application program corresponds to xlet, and the application detailed description file corresponds to a BD Java object (BDJO) that is an application object. The discless application according to the exemplary embodiments may be implemented by using a program data structure of the above disc based application.
The application driver 220 is a module that executes the discless application by using the discless application data 215 stored in the storage 210, controls a life cycle of the discless application in such a manner that the life cycle of the discless application is independent of whether the disc 230 has been loaded into the disc reproducing apparatus. After the disc 230 has been loaded therein, executes the disc based application recorded in the disc 230. In a case where the discless application is a Java application, Java middleware and a Java virtual machine that are responsible for executing the Java application and controlling a life cycle thereof correspond to the application driver 220. The exemplary embodiments improve a disc platform of a given disc standard and drives the discless application as well as the disc based application.
Referring to
Referring to
Referring to
Although the reproduction apparatus 200 and the recording apparatus 400, according to the exemplary embodiments, may be implemented as separate physical devices, the exemplary embodiments are not limited thereto. The reproduction apparatus 200 and the recording apparatus 400 may be implemented as a single physical device.
Referring to
According to an exemplary embodiment, a discless application 660 may continue to run after the reproduction apparatus 620 is booted and the application driver 220 is prepared and executed until the reproduction apparatus 620 terminates or it is turned off, irrespective of whether the disc 650 is inserted or ejected. That is, the discless application 660 may perform a predetermined operation while in a state where the disc 650 is not inserted into the reproduction apparatus 620 and/or during the reproduction of the disc 650. The preparation of the application driver 220 refers to a state where a module or middleware for executing an application is executed in the reproduction apparatus 620 and thus the application can be executed by the application driver 220. In a case where the reproduction apparatus 620 is a Blu-ray disc reproduction apparatus, the preparation of the application driver 220 may be a state where operations of generating Java middleware and virtual machine are completed.
Meanwhile, applications recorded in the disc 650 may be classified as either a title-bound application 670 or a title-unbound application 680 and may be enabled by the application driver 220 in the same manner as the discless application 660. In a case of the title-bound application 670 in which an application is subordinate to a specific title, when reproduction of the corresponding title begins, the application is enabled, and, when reproduction of the title ends or a title change occurs in which reproduction of another title begins, the application ends. Meanwhile, in a case of the title-unbound application 680 in which the application is not subordinate to a specific title, when the corresponding title starts, the application is enabled, and, although reproduction of the title ends or the title change occurs in which reproduction of another title starts, the application does not end. When the disc is ejected, the application ends.
The discless application 660 according to the exemplary embodiments may operate based on a given optical disc application reproduction standard, such as the BD standard. That is, the given standard is extended, and the result is a discless application capable of performing a disc unbound operation in addition to the given disc bound application. Specifically, new application life cycle control information, data processing methods, data utilization methods, etc. are added to the given optical disc application reproduction standards, and thus the discless application providing a disc unbound service may be implemented.
Data necessary for driving a discless application, i.e., discless application data, may be downloaded, from an external apparatus, in a predetermined Read/Write area to which a reproduction apparatus is accessible. An example of the Read/Write area to which the reproduction apparatus is accessible may include a non-volatile memory area in the reproduction apparatus or a storage area to which the reproduction apparatus is accessible over a network. The discless application may be obtained and/or installed by a separate application 710 executed in a recording apparatus. Examples of the application 710 may include an application recorded in a predetermined disc, a PC application or a specific discless application.
Referring to
The DADA includes at least one area for at least one application producer (contents provider). The area for each application producer includes at least one discless application unit (DAU) for discless applications provided by the each application producer. Each of the DAUB stores data necessary for driving a discless application. That is, the DAU is a unit area for a single discless application. The area for the each application producer includes a discless application descriptor (DAD) includes descriptions of a location and construction of data used to drive each of the discless applications. The application driver 220 performs an operation of enabling the corresponding discless application based on the DAD. More specifically, the application driver 220 of the reproduction apparatus 200 accesses a DAU which corresponds to each of the discless applications through a DAD file to obtain information necessary for driving each of the discless applications. The area for each of the application producers may include a separate area for storing data that is commonly used by the discless applications.
The DADA may be implemented in a hierarchy structure in folder form. An uppermost folder corresponding to the DADA is provided in a local storage of the reproduction apparatus or a storage apparatus to which the reproduction apparatus is accessible. Folders having a name comprising an organization identifier (OID) of an application producer may be generated as subfolders of the DADA folder. The folders for the application producers may be of the same number as the application producers providing discless applications. The OID is a value unique to each application producer that must not be repeated between application producers. The application driver 220 needs to prevent a discless application in an OID folder of an application producer A from accessing an OID folder of an application producer B. When a discless application which corresponds to a particular application producer is installed, a folder which corresponds to the installed discless application may be generated in the OID folder and the generated folder may have a name including an identifier of the discless application. That is, in a case where an application producer provides an N number of discless applications, an N number of DAU folders are generated in a corresponding OID folder.
Referring to
In light of the BD standard, an application detailed description file and an application program are required to drive an application. The application detailed description file is present in a title unit, is referred to as a BDJO, and includes management information for executing the application. The application program is recorded in a jar file or in a separate file. In the exemplary embodiment of
In addition, DAD files including descriptions of a location and construction of a file used to driving the corresponding discless application may be recorded in the App1 ID 820 and App2 ID 830. Although the DAD files regarding the two discless applications App1 ID 820 and App2 ID 830 have the same file name App.xml in 824 and 834 in
Further, a separate sub area for data commonly used by discless applications may be provided in a DADA for a corresponding application producer. In
Referring to
Referring to
Next, a method of driving a discless application according to an exemplary embodiment in a case where the BD standard is employed will now be described. A single discless application is a single service provided by an application producer according to operations of an M number of xlets stored in the corresponding DAU. A detailed description of the M xlet consisting of the discless application is provided in a corresponding BDJO. In a case where an N number of discless applications are present in a DADA, an N number of BDJOs corresponding to the N number of discless applications may be recorded. The application driver 220 enables the N number of discless applications based on information described in the N number of BDJOs. Based on life cycle information of the xlets described in the corresponding BDJO, the application driver 220 determines whether the xlets are to end or continue when an event such as a change in title, an ejection of a disc, etc., occurs.
A field application_binding of an application management table (AMT) including application management information corresponds to the life cycle information of the xlets. Life cycles of the xlets are controlled based on the field application— binding. The given BD standard defines application— binding values of “00b,” “01b,” “10b,” and “11b.” “00b” denotes a title unbound/disc unbound application. Although a current disc is ejected or titles are changed, applications in which “00b” is set as the application_binding value do not end and continue to be executed. “01b” denotes a title unbound/disc bound application. An application in which “01b” is set as the application_binding value ends when the current disc is ejected. “10b” denotes a reserved value for a future use. “11b” denotes a title bound application. An application in which “11b” is set as the application_binding value ends when a current title ends or when titles are changed.
A given disc standard such as the BD standard does not define an application that continues to run irrespective of whether a disc is loaded. According to the exemplary embodiments, a discless application that can be enabled at any time after a reproduction apparatus is booted, irrespective of whether a disc is inserted or loaded, may be defined.
Referring to
The discless application according to an exemplary embodiment may be driven by an application driver in accordance with a given disc standard, like a disc based application. For example, the discless application may be driven by Java middleware when following the given BD standard. As described above, since the discless application also operates by being registered to the middleware, the middleware may provide the discless application with various pieces of state information that are provided to the given disc based application. The discless application may operate by using the state information provided by the middleware and may minimize or end resources according to the self-determination.
A discless application producer provides a user and the application driver 220 with the DAD. The DAD includes information for controlling a life cycle of a discless application, information regarding resources (a network, memory, a font, etc.) used by the discless application, a description of an operation performed by the discless application, image information, information regarding a recommended operation scenario, etc. The reproduction apparatus 200 may provide a variety of services by using the DAD. Referring to
Referring to
An item <Filename> 1220 designates image data of an icon corresponding to the discless application. A guide message for the user, and font type information and font size information of the guide message are recorded in an item <Text> 1230. After the reproduction apparatus 200 is booted, the application driver 220 may generate and output a user interface of
An item <Resource> 1240 includes information regarding resources (for example, a network, memory, a font, etc.) used by the discless application. A property “DataSize” is used to designate a size of discless application data. A property “Memory” is used to designate a size of memory used by the discless application. A property “UseNetwork” is used to designate whether to use a network. A property “UserVideoMem” is used to designate whether to use video memory. A property “InterestedPeriod” is used to designate an execution time recommended by an application producer. A property “Priority” is used to designate a priority of the discless application. These items may be used to control resources of the application driver 220. In a case where the discless application requires a network connection, the application driver 220 may provide a user interface “please connect to the network to operate a corresponding application.” when available memory is determined to be low, the application driver 220 may determine priorities of discless applications that are being executed by using a value of the property “Priority.” Based on the determination, the application driver 220 may then perform operations of terminating a discless application having a low priority, requesting a return of resources previously used by the terminated discless application having the low priority, forcibly returning resources previously used by the terminated discless application having the low priority, or changing the discless application having the low priority to a paused state. In this case, the application driver 220 requests operations that are to be performed by the discless application by using a predetermined communication method so as to allow the discless application to process operations for itself, or forcibly ends the discless application, when necessary.
An item <RelatedApp> 1250 is used to describe information regarding another discless application which is related to the discless application 00000 described by the DAD file or another application that may be concurrently driven with the discless application 00000. In
An example of the discless application is a discless application that previously receives data necessary for a disc update before a disc is inserted or loaded. A loading time of the disc may be reduced by using the discless application.
Another example of the discless application is a discless application that stores data in advance in a specific area of the reproduction apparatus 200, the stored data being necessary for updating all discs of a corresponding application producer when the discs are reproduced. The discless application may result in a reduction in the disc loading time when any of the discs of the corresponding application producer are reproduced.
Another example of the discless application is a discless application that is continuously executed in the background after the reproduction apparatus 200 is booted and displays an icon or a selection button on a reproduction screen even during reproduction of contents stored in a disc. If the icon or the selection button is selected, the discless application that is continuously executed in the background performs a predetermined function such as providing latest information.
The exemplary embodiments can also be implemented through computer readable code/instructions in/on a medium, e.g., a non-transitory computer readable storage medium. The medium can correspond to any medium/media permitting the storage and/or transmission of the computer readable code. The computer readable code can be recorded/transferred on a medium in a variety of ways, with examples of the medium including recording media, such as magnetic storage media (e.g., ROM, floppy disks, hard disks, etc.) and optical recording media (e.g., CD-ROMs, or DVDs), and transmission media such as Internet transmission media. The media may also be a distributed network, so that the computer readable code is stored/transferred and executed in a distributed fashion.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by one of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the following claims. The exemplary embodiments should be considered in a descriptive sense only and not for purposes of limitation. Therefore, the scope of the invention is defined not by the detailed description of the invention but by the following claims, and all differences within the scope will be construed as being included in the present invention.
Number | Date | Country | Kind |
---|---|---|---|
10-2012-0085392 | Aug 2012 | KR | national |