Information processing device, program, and method installed on computer
Patent Information
- Application Number
- HK42026128366
- Authority / Receiving Office
- HK · HK
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-06-03
- Filing Date
- 2026-09-03
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2046-04-01
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
(19) State Intellectual Property Office (12) Invention Patent Application (10) Application Publication Number (43) Application Publication Date (21) Application Number 202610468935.5 (22) Application Date 2026.04.02 (30) Priority Data 2025-091348 2025.05.30 JP 2025-092706 2025.06.03 JP (62) Divisional Application Data 202610426481.5 2026.04.02 (71) Applicant Nintendo Co., Ltd. Address Japan (72) Inventors Ayumi Sekine, Tatsumi Matsumoto, Daisuke Kakei (74) Patent Agency Beijing Linda Liu Intellectual Property Agency (General Partnership) 11277 Patent Attorneys Wang Xiaoxiang, Li Jing (51) Int.Cl. A63F 13 / 54 (2014.01) G10L 19 / 16(2013.01) (54) Invention Title: Information Processing Apparatus, Program, and Method Installed on a Computer (57) Abstract: This invention provides an information processing apparatus, program, and method installed on a computer. The process involves specifying a decoding category and requesting decoding of the data to be decoded; storing the decoding request in a manner that distinguishes the decoding category; indicating the start of decoding; decoding the data to be decoded with respect to a set of decoding requests at the start-indicated time point; storing the decoded data obtained through decoding in a manner that distinguishes the decoding category; and retrieving the decoded data from the stored decoded data in a manner that specifies the decoding category.Claims 6 pages, Description 12 pages, Drawings 7 pages, CN 122537778 A 2026.08.11 CN 1 22 53 77 78 A 1. An information processing apparatus comprising the following units: a unit for specifying a decoding category and giving an instruction to decode object data; a unit for storing the decoded object data into an input buffer in a specified buffer according to the instruction, and generating and storing a decoding request containing at least identification data of the specified decoding category and identification data of the buffer storing the decoded object data as a set of decoding requests; a unit for giving a decoding start instruction; a unit for acquiring the set of decoding requests at the time of the start instruction, independent of the identification data of the decoding category; a unit for acquiring decoded object data from an input buffer in a buffer represented by the identification data of the buffer included in the decoding request for each acquired decoding request, and decoding each acquired decoded object data respectively; a unit for storing the decoded data obtained by the decoding into an output buffer in a buffer represented by the identification data of the buffer included in the decoding request for each decoding; Regarding each of the decoding requests, the following units are involved: generating a decoding response containing at least the identification data of the decoding category included in the decoding request and the identification data of the buffer included in the decoding request, and saving it as a set of decoding responses; determining the completion of decoding for all the acquired decoding requests; issuing a decoding completion notification when completion is determined; waiting for decoding completion after the start instruction; releasing the completion wait if the completion notification is issued; specifying a decoding category and instructing the acquisition of decoded data after the completion wait is released; and obtaining the decoded data from the output buffer of the buffer represented by the identification data of the buffer included in the decoding response, based on the decoding response containing the identification data of the specified decoding category in the set of decoding responses, according to the instruction to obtain the decoded data. 2. The information processing apparatus according to claim 1, further comprising: including in the decoding request the last saved decoding request before the start indication data for identifying it as the last saved decoding request, wherein the determination of decoding completion is configured to, at least by referring to the data for identifying it as the last saved decoding request, determine that decoding is complete when decoding of the last saved decoding request ends.3. The information processing apparatus according to claim 1 or 2, wherein the completion wait is configured to be executed by a code different from the start instruction, and the issuance of the completion notification and the release of the completion wait are configured to be performed in such a way that the release is performed according to the issuance, regardless of whether the processing of the completion wait code starts before or after the issuance. 4. The information processing apparatus according to claim 1, wherein the decoded object data is data of the specified units in encoded data consisting of a series of specified units of data, the decoding request is a decoding request for the specified units of data, and the information processing apparatus further comprises a unit for storing past decoding information according to each decoding category, wherein the decoding is configured to perform decoding of the decoding request using the past decoding information of the decoding category represented by the identification data of the decoding category included in each of the acquired decoding requests. 5. The information processing apparatus according to claim 4, wherein the instruction to decode the decoding object data is configured to include an instruction to initialize the past decoding information, and the generation of the decoding request is configured to include the initialization instruction data in the decoding request based on the initialization instruction, and the information processing apparatus further comprises the following unit: based on the instruction data included in the acquired decoding request, before or after decoding the decoding object data of the acquired decoding request, initializing the past decoding information of the decoding category represented by the identification data of the decoding category included in the acquired decoding request. 6. The information processing apparatus according to claim 5, wherein the initialization of the past decoding information is configured to be performed before decoding the decoding object data of the acquired decoding request. 7. The information processing apparatus according to claim 1, further comprising the following unit: based on the identification data of the decoding category included in the acquired decoding request, sorting the acquired decoding requests according to each decoding category, and the decoding is configured to perform the decoding based on each of the sorted decoding requests. 8. The information processing apparatus according to claim 1, further comprising: a buffer that issues a search empty for each of the decoding requests, the buffer for storing the data of the decoded object being a buffer discovered by the search.9. The information processing apparatus according to claim 1, wherein the generation of the decoding response is configured to further include size data representing the size of the decoded data in the decoding response, and the acquisition of the decoded data is configured to acquire the decoded data based on the size data included in the decoding response. 10. The information processing apparatus according to claim 1, wherein the decoded object data is data in the defined units of encoded data composed of a series of defined units of data, and an instruction to decode the decoded object data is given according to each defined unit of data, and the acquisition of the decoded data is configured to acquire the defined units of the decoded object data. 11. A program for enabling a computer to function as: a unit for acquiring a set of decoding requests at a time point at which decoding begins, independent of the identification data of the decoding category; a unit for acquiring decoding object data from an input buffer in a buffer represented by the identification data of the buffer included in the decoding request, and decoding each acquired decoding object data, for each of the acquired decoding requests; a unit for saving the decoded data obtained by the decoding to an output buffer in a buffer represented by the identification data of the buffer included in the decoding request, for each of the decoding requests; a unit for generating a decoding response that includes at least the identification data of the decoding category included in the decoding request and the identification data of the buffer included in the decoding request, for each of the decoding requests; a unit for determining that decoding is complete for all the acquired decoding requests; and a unit for issuing a decoding completion notification when decoding is determined to be complete. 12. The procedure of claim 11, wherein the determination of decoding completion is configured to, at least with reference to data included in the decoding request for identifying that it was the last saved decoding request before the decoding start indication, determine that decoding is complete when decoding of the last saved decoding request ends. 13. The procedure of claim 11 or 12, wherein the procedure causes the computer to further function as: storing past decoding information according to each decoding category, wherein the decoding is configured to perform decoding of each of the decoding requests using the past decoding information of the decoding category represented by the identification data of the decoding category included in each of the acquired decoding requests.14. The program of claim 13, wherein the program causes the computer to further function as: initializing the past decoding information of the decoding category represented by the identification data of the decoding category included in the acquired decoding request, based on the instruction data for initializing the past decoding information contained in the acquired decoding request, before or after decoding the decoding object data of the acquired decoding request. 15. The program of claim 14, wherein the initialization of the past decoding information is configured to be performed before decoding the decoding object data of the acquired decoding request. 16. The program of claim 11 or 12, wherein the program causes the computer to further function as: sorting the acquired decoding requests according to each decoding category based on the identification data of the decoding category included in the acquired decoding request, wherein the decoding is configured to perform the decoding based on the sorted decoding requests. 17. The program according to claim 11 or 12, wherein the generation of the decoding response is configured such that the decoding response further includes size data representing the size of the decoded data. 18. An information processing apparatus comprising: a unit for generating decoding requests for decoding object data in a manner capable of distinguishing decoding categories and storing them as a set of decoding requests; a unit for instructing a start of decoding; a unit for decoding each set of decoding object data independently of the decoding categories based on the set of decoding requests at the start of the instruction; a unit for storing each decoded data obtained through the decoding in a manner capable of distinguishing the decoding categories; and a unit for specifying the decoding categories and acquiring the decoded data. Claims 3 / 6 Page 4 CN 122537778 A 19. A program that causes a computer to function as: a unit for acquiring a set of decoding requests capable of distinguishing decoding categories at the start of decoding, independent of the decoding categories; a unit for decoding the decoding object data based on the acquired decoding requests; and a unit for storing the decoded data obtained through the decoding in a manner capable of distinguishing the decoding categories.20. An information processing apparatus comprising: a unit for storing a set of decoding requests in a manner including identification data of a decoding category; a unit for acquiring the set of decoding requests independently of the identification data of the decoding category; a unit for decoding decoding object data for each acquired decoding request; a unit for storing each decoded data obtained through each decoding in a manner associated with the identification data of the decoding category included in the decoding request involved in the decoding; and a unit for acquiring decoded data from the stored decoded data that is associated with the identification data of a specified decoding category. 21. A program that causes a computer to function as: a unit for acquiring a set of decoding requests including identification data of the decoding category independently of the identification data of the decoding category; a unit for decoding decoding object data for each acquired decoding request; and a unit for storing each decoded data obtained through the decoding in a manner associated with the identification data of the decoding category included in the decoded decoding request.22. A method installed on a computer, in which: a decoding category is specified, and a request to decode object data is indicated; the decoding object data is saved to an input buffer in a specified buffer according to the indication; and a set of decoding requests, including at least identification data of the specified decoding category and identification data of the buffer containing the decoding object data, is saved as a set of decoding requests; a decoding start indication is given; the set of decoding requests at the time of the start indication is acquired independently of the identification data of the decoding category; for each acquired decoding request, decoding object data is acquired from an input buffer in a buffer represented by the identification data of the buffer included in the decoding request, and each acquired decoding object data is decoded; for each decoding, the decoded data obtained by the decoding is saved to an output buffer in a buffer represented by the identification data of the buffer included in the decoding request; for each decoding, a set of decoding responses, including at least identification data of the decoding category included in the decoded decoding request and identification data of the buffer included in the decoded decoding request, is saved as a set of decoding responses; and the completion of decoding for all acquired decoding requests is determined. Upon determining that the completion is achieved, a decoding completion notification is issued. After the start instruction, a decoding completion wait is initiated. If the completion notification is issued, the completion wait is lifted. (Claims 4 / 6, page 5, CN 122537778 A) After the completion wait is lifted, a decoding category is specified and an instruction to retrieve the decoded data is given. Based on the instruction to retrieve the decoded data, the decoded data is retrieved from the output buffer of the buffer represented by the identification data of the buffer contained in the set of decoding responses, based on the decoding response containing the identification data of the specified decoding category.23. An information apparatus comprising: a unit for storing decoded object data into an input buffer in a predetermined buffer, and generating and storing a set of decoding requests that include at least identification data of a decoding category and identification data of the buffer storing the decoded object data; a unit for indicating the start of decoding; a unit for acquiring the set of decoding requests at the time of the start indication, independent of the identification data of the decoding category; a unit for acquiring decoded object data from an input buffer in a buffer represented by the identification data of the buffer included in the decoding request for each acquired decoding request, and decoding each acquired decoded object data respectively; a unit for storing decoded data obtained by the decoding into an output buffer in a buffer represented by the identification data of the buffer included in the decoding request for each decoding; a unit for generating and storing a set of decoding responses that include at least identification data of the decoding category included in the decoding request and identification data of the buffer included in the decoding request for each decoding; and a unit for determining the completion of decoding for all acquired decoding requests. A unit that issues a completion notification when the completion is determined; and a unit that, after issuing the completion notification, obtains the decoded data from the output buffer of the buffer represented by the identification data of the buffer included in the decoding response, based on a set of decoding responses. 24. A program that enables a computer to function as: a unit for acquiring a set of decoding requests at a time point at which decoding begins, independent of the identification data of the decoding category; a unit for acquiring decoding object data from an input buffer in a buffer represented by the identification data of the buffer included in the decoding request, and decoding each acquired decoding object data, for each of the acquired decoding requests; a unit for saving the decoded data obtained by the decoding to an output buffer in a buffer represented by the identification data of the buffer included in the decoding request, for each of the decoding requests; a unit for generating and saving a decoding response, which at least includes the identification data of the decoding category included in the decoding request and the identification data of the buffer included in the decoding request, as a set of decoding responses, for each of the decoding requests; a unit for determining the completion of decoding for all the acquired decoding requests; and a unit for issuing a decoding completion notification when the completion is determined.25. A method installed on a computer, wherein, regarding the identification data of at least the decoding classification and the identification data of a buffer storing the decoding object data, a decoding request is obtained, independent of the identification data of the decoding classification, at a time point at which decoding begins; regarding each of the obtained decoding requests, the decoding object data is obtained from an input buffer in a buffer represented by the identification data of the buffer included in the decoding request, and the obtained decoding object data is decoded respectively; regarding each of the decodings, the decoded data obtained by the decoding is saved to an output buffer in a buffer represented by the identification data of the buffer included in the decoding request; regarding each of the decodings, a decoding response is generated, which at least includes the identification data of the decoding classification included in the decoding request and the identification data of the buffer included in the decoding request; the decoding of all the obtained decoding requests is determined to be complete; and a decoding completion notification is issued when the decoding is determined to be complete. Claims 6 / 6 Page 7 CN 122537778 A Information processing apparatus, program and method installed on a computer
[0001] This application is a divisional application of the application filed on April 2, 2026, with application number 202610426481.5 and invention title "Information processing apparatus, computer program product and method installed on a computer". Technical Field
[0002] This disclosure relates to an information processing apparatus, a computer program product and a method installed on a computer. Background Art
[0003] Conventionally, there are systems for decoding. For example, Japanese Patent Application Publication No. 2023-166047 discloses a game system for playing audio. Generally, in a game program, various data (in the example of the above document, sound data) are encoded and stored, and then decoded when used.
[0004] There is room for improvement in the method of decoding. Summary of the Invention
[0005] The information processing apparatus of this disclosure can, for example, adopt the following structures (1) to (13).
[0006] (1)
[0007] A first structural example of the information processing apparatus of the present disclosure includes the following units: a unit that specifies a decoding category and gives an instruction to decode the decoding object data; a unit that saves the decoding object data into an input buffer in a specified buffer according to the instruction, and generates a decoding request that includes at least the identification data of the specified decoding category and the identification data of the buffer in which the decoding object data is saved, and saves it as a set of decoding requests; a unit that gives a decoding start instruction; a unit that acquires a set of decoding requests at the time of the start instruction regardless of the identification data of the decoding category; a unit that, with respect to each acquired decoding request, acquires the decoding object data from the input buffer in the buffer represented by the identification data of the buffer included in the decoding request, and decodes each acquired decoding object data respectively; a unit that, with respect to each decoding, saves the decoded data obtained by decoding into the output buffer in the buffer represented by the identification data of the buffer included in the decoding request; and a unit that, with respect to each decoding, generates a decoding response that includes at least the identification data of the decoding category included in the decoding request and the identification data of the buffer included in the decoding request, and saves it as a set of decoding responses; A unit for determining the completion of decoding of all acquired decoding requests; a unit for notifying the completion of decoding when completion is determined; a unit for waiting for the completion of decoding after a start instruction; a unit for releasing the completion wait when a completion notification exists; a unit for specifying a decoding category and instructing the acquisition of decoded data after the completion wait is released; and a unit for acquiring decoded data from the output buffer of the buffer represented by the identification data of the buffer contained in the decoding response, based on the instruction to acquire decoded data and the decoding response containing the identification data of the specified decoding category in a set of decoding responses.
[0008] According to the structure of (1) above, decoding requests made before the decoding start instruction can be processed centrally regardless of the decoding category.
[0009] (2)
[0010] In each of the structures of (1) above, (11), (12), and (13) below, the following unit may also be included: making the decoding request last saved before the start instruction include data for identifying that it is the last saved decoding request. Alternatively, the above-mentioned determination of decoding completion can be made by at least referring to the data used to identify the last saved decoding request, and determining that decoding is complete when the decoding of the last saved decoding request ends.
[0011] According to the structure of (2) above, the accuracy of the determination of decoding completion can be improved.
[0012] (3)
[0013] In each of the structures described above (1), (2), and (11), (12), and (13) below, the completion wait may be configured to be executed by a code different from the start instruction. Alternatively, the completion notification and the release of the completion wait may be configured to be performed in such a way that the completion wait is released based on the completion notification, regardless of whether the processing of the completion wait code begins before or after the completion notification.
[0014] According to the structure described above (3), after the decoding start instruction, other processing can be performed without waiting for the decoding result.
[0015] (4)
[0016] In each of the structures described above (1) to (3), or (11), (12), and (13) below, the decoding object data may be data of a specified unit in encoded data composed of a series of specified units of data. Alternatively, the decoding request may be a decoding request for specified units of data, and the information processing device may further include a unit that stores past decoding information according to each decoding category. Alternatively, the above decoding configuration may be configured to use past decoding information of the decoding category represented by the identification data of the decoding category included in each of the acquired decoding requests to perform decoding of the decoding request.
[0017] According to the structure of (4) above, decoding object data encoded in a manner that requires past decoding information during decoding can be correctly decoded.
[0018] (5)
[0019] In the structure of (4) above, the instruction to decode the above-mentioned decoding object data may be configured to include an instruction to initialize the above-mentioned past decoding information. Alternatively, the above-mentioned decoding request generation configuration may be configured to include the initialization instruction data in the decoding request based on the initialization instruction. Alternatively, the information processing apparatus may further include the following unit: based on the instruction data included in the acquired decoding request, before or after decoding the decoding object data of the acquired decoding request, initializing the past decoding information of the decoding category represented by the identification data of the decoding category included in the acquired decoding request.
[0020] According to the structure of (5) above, it is possible to handle loop processing of the same source data, changes in playback position, changes to different source data, etc.
[0021] (6)
[0022] In the structure of (5) above, the initialization of the above-mentioned past decoding information may also be configured to be performed before decoding the decoding object data of the obtained decoding request.
[0023] According to the structure of (6) above, it is possible to handle changes in playback position, etc.
[0024] (7)
[0025] In each of the structures (1) to (6) above, and (11), (12), and (13) below, the following unit may also be included: sorting the obtained decoding requests according to each decoding category based on the identification data of the decoding category contained in the obtained decoding request. Alternatively, the above decoding configuration may be performed based on each of the sorted decoding requests.
[0026] According to the structure (7) above, when decoding decoding object data encoded in a manner that requires past decoding information during decoding, the decoding efficiency is high.
[0027] (8)
[0028] In each of the structures (1) to (7) above, and (11), (12), and (13) below, the following unit may also be included: searching for an empty buffer for each decoding request. Alternatively, the buffer used to store the above decoding object data may be a buffer discovered by searching, as described on page 2 / 12 of the specification, CN 122537778 A.
[0029] According to the structure of (8) above, resources can be utilized efficiently by dynamically allocating IO buffers.
[0030] (9)
[0031] In each of the structures (1) to (8) above, and (11), (12), and (13) below, the generation of the decoding response may also include size data representing the size of the decoded data in the decoding response. Alternatively, the acquisition of the decoded data may be configured to acquire the decoded data based on the size data included in the decoding response.
[0032] According to the structure of (9) above, the decoded data can be acquired appropriately.
[0033] (10)
[0034] In each of the structures (1) to (9) above, or (11), (12), and (13) below, the decoded object data may be data in a specified unit of encoded data composed of a series of specified units of data. Alternatively, the instruction to decode the decoded object data may be given according to each specified unit of data. Alternatively, the acquisition of the aforementioned decoded data may be configured to acquire the decoded object data of the specified unit.
[0035] According to the structure of (10) above, multiple categories can be decoded in a concentrated manner, and the scope of concentrated decoding can be determined for the same category.
[0036] (11)
[0037] A second structural example of the information processing apparatus in this disclosure includes the following units: a unit that generates a decoding request for the decoded object data in a manner that can distinguish the decoding category and saves it as a set of decoding requests; a unit that performs a decoding start indication; a unit that decodes each decoded object data separately based on a set of decoding requests at the start indication time point, regardless of the decoding category; a unit that saves each decoded data obtained by decoding in a manner that can distinguish the decoding category; and a unit that specifies the decoding category and acquires the decoded data.
[0038] (12)
[0039] A third structural example of the information processing apparatus of this disclosure includes the following units: a unit for storing a set of decoding requests in a manner that includes identification data of decoding classification; a unit for acquiring a set of decoding requests independently of the identification data of decoding classification; a unit for decoding the decoding object data of each acquired decoding request; a unit for storing each decoded data obtained by decoding in a manner that is associated with the identification data of the decoding classification included in the decoded decoding request; and a unit for acquiring the decoded data of the stored decoded data that is associated with the identification data of the specified decoding classification.
[0040] (13)
[0041] The fourth structural example of the information processing apparatus disclosed herein includes the following units: a unit for storing decoded object data into an input buffer in a predetermined buffer, and generating and storing a decoding request containing at least identification data for decoding classification and identification data of the buffer storing the decoded object data as a set of decoding requests; a unit for indicating the start of decoding; a unit for acquiring a set of decoding requests at the time of the start indication, independent of the identification data for decoding classification; a unit for acquiring decoded object data from an input buffer in a buffer represented by the identification data of the buffer included in the decoding request for each acquired decoding request, and decoding each acquired decoded object data respectively; a unit for storing decoded data obtained through decoding into an output buffer in a buffer represented by the identification data of the buffer included in the decoding request for each decoding; a unit for generating and storing a decoding response containing at least identification data for decoding classification included in the decoding request and identification data of the buffer included in the decoding request for each decoding; a unit for determining the completion of decoding for all acquired decoding requests; a unit for issuing a decoding completion notification when completion is determined; and a unit for, after the completion notification, retrieving decoded object data from an input buffer in a buffer included in the decoding response based on the set of decoding responses. (Page 3 / 12, 10 CN) 122537778 A The unit that acquires the decoded data in the output buffer of the buffer represented by the identification data.
[0042] As examples of the structure of the computer program product in this disclosure, the following computer program products in each of the information processing devices described above (1) to (13) can be cited.
[0043] • Computer program products used in the information processing apparatus of each structural example for executing the system program described later
[0044] • Computer program products used in the information processing apparatus of each structural example for executing the game program described later
[0045] • Computer program products used in the information processing apparatus of each structural example for executing the SDK program described later
[0046] As structural examples of the method installed on a computer in this disclosure, the various methods executed by the information processing apparatus of each of the above-described (1) to (13), or the methods executed by the computer program products of each of the above-described structural examples, can be cited.
[0047] These and other objects, features, aspects, and effects of the present invention should become more apparent from comparison with the accompanying drawings and from the following detailed description. Brief Description of the Drawings
[0048] FIG1 is a hardware block diagram showing an example of the game device 1 of this embodiment.
[0049] FIG2 is a diagram showing an example of the program and data stored in the non-volatile memory 11 of the game device 1.
[0050] FIG3 is a diagram showing an example of the data contained in the audio data D1.
[0051] FIG4 is a diagram showing an example of data stored in the volatile memory 12 of the game device 1 during program execution.
[0052] FIG5 is a sequence diagram showing an example of the first stage of processing of each program.
[0053] FIG6 is a sequence diagram showing an example of the second stage of processing of each program.
[0054] FIG7 is a sequence diagram showing an example of the third stage of processing of each program. Detailed Description
[0055] An embodiment will be described below. FIG1 shows an example of the hardware structure of the game device 1 of this embodiment. The game device 1 includes a processor 10, a non-volatile memory 11, a volatile memory 12, an operation unit 13, a display controller 14, an audio controller 15, etc. The processor 10 is a SoC (System-on-a-chip) including a CPU (Central Processing Unit) 100 and a GPU (Graphics Processing Unit) 101, etc. The CPU 100 and GPU 101 may also be provided separately.The non-volatile memory 11 can be any type of memory capable of non-volatile storage, such as ROM (Read Only Memory), NAND (Not AND) flash memory, SSD (Solid State Drive), HDD (Hard Disk Drive), USB (Universal Serial Bus) memory, NOR (Not OR) flash memory, or MRAM (Magnetoresistive Random Access Memory). It can be built-in memory or memory within a removable memory card. The volatile memory 12 can be, for example, DRAM (Dynamic Random Access Memory). The operation unit 43 may also include operation buttons, joysticks, various sensors (motion sensors, etc.), a mouse, etc. The display controller 14 is a controller that outputs display data or signals to the display; for example, a display controller IC can be used. The display 16 can be a built-in display in a portable gaming device or an external monitor (TV, PC monitor, etc.) in a fixed gaming device. The audio controller 15 is an IC that outputs audio data or signals to the speaker. (See specification 4 / 12, page 11, CN 122537778 A). The speaker 17 is, for example, a built-in speaker in a portable gaming device, or an external speaker (such as a TV speaker) in a fixed gaming device.
[0056] The gaming device 1 may also have a DSP (Digital Signal Processor) for a decoder. Alternatively, the audio controller 15 may have a decoder function.
[0057] FIG2 shows an example of programs and data stored in the non-volatile memory 11 of the gaming device 1. The game program P1 and system program P2 are stored in the non-volatile memory 11. The game program P1 and system program P2 are executed by the CPU 100.
[0058] The game program P1 includes game processing code C1-1, audio data generation code C1-2, decoding request registration instruction code C1-3, decoding request registration code C1-4, decoding start instruction code C1-5, all decoding request handover code C1-6, completion notification waiting code C1-7, individual response queue generation code C1-8, decoded data acquisition instruction code C1-9, decoded data acquisition code C1-10, playback instruction code C1-11, audio data D1, etc.
[0059] The game processing code C1-1 is code that performs character movement, motion control, collision judgment, script progress, etc., based on the operation data of the operation unit 13.Audio data generation code C1-2 is a code that sets audio data D1 as the data to be played when an audio event (specified operation, specified action of an object, collision of an object, performance timing, etc.) occurs. Audio data D1 is audio data pre-stored corresponding to the audio event. Audio data D1 is data obtained by encoding through a specified codec, as shown in Figure 3, and includes multiple audio data corresponding to the audio event. Each audio data is divided into frames of a specified unit. The audio data of each frame is the decoding object data.
[0060] Decoding request registration instruction code C1-3 is a code that indicates the registration of the following data (decoding request data): the data (decoding request data) is used to request the decoding of a certain decoding object data. By repeatedly executing this code before performing decoding, decoding request data for multiple decoding object data can be registered, or decoding request data for different audio data decoding object data can be registered by specifying different decoding categories and making a decoding request registration instruction. Decoding classification refers to specifying different categories for different audio data so that the decoding results and / or decoding processing of multiple audio data are not mixed. For example, when decoding audio data 1 and audio data 2 in parallel, decoding category 1 is assigned to the decoding request of audio data 1, and decoding category 2 is assigned to the decoding request of audio data 2. Additionally, the decoding request registration instruction code C1-3 contains a command to set an initialization flag, as described later.
[0061] The decoding request registration code C1-4 is a code that registers the decoding request data into a queue prepared for each decoding category (hereinafter referred to as an individual request queue) according to the instruction from the decoding request registration instruction code C1-3, and stores the decoding object data in an input buffer. The decoding request data in this embodiment includes data for identifying the decoding category, data for identifying the input buffer storing the decoding object data, data for identifying the decoding request, a final identification flag, and an initialization flag. The data for identifying the decoding request is, for example, data that increments whenever a decoding request is made, thereby identifying each decoding request. The final identification flag is data used to identify the last registered decoding request among the decoding requests registered before the decoding start instruction. The initialization flag is a flag used to initialize the past decoding information Dpast, as described later, for each decoding category. Furthermore, in this disclosure, a queue refers to a FIFO (First-In First-Out) method for registering and utilizing data. When data is retrieved from the queue for utilization, it is retrieved starting from the earliest registered data, and the retrieved data is deleted from the queue.
[0062] The decoding start indication code C1-5 is a code that indicates the start of decoding. In addition, no decoding category is specified in this indication.
[0063] Code C1-6 for handing over all decoding requests is a code that retrieves all decoding request data registered before the decoding start indication from the individual request queues of each decoding category and hands it over (centrally or sequentially) to system program P2. In this embodiment, all decoding request data for the decoding category (page 5 / 12 of the full specification, CN 122537778 A) are sorted and handed over in the order represented by the data used to identify the decoding requests. In addition, the last identification flag of the last registered decoding request data (the last registered decoding request data among the decoding request data registered before the decoding start indication) is set to 1 (other last identification flags are 0).
[0064] Code C1-7 for waiting for completion notification is a code for waiting for decoding completion notification.
[0065] Individual response queue generation code C1-8 is a code that, upon receiving a decoding completion notification, retrieves each decoding response data registered in the queue containing all decoding response data for all decoding categories (hereinafter referred to as the overall response queue), and transfers it to the queue for each decoding category (hereinafter referred to as the individual response queue). The decoding response data is the metadata of the decoding result, as described later.
[0066] Decoded data acquisition instruction code C1-9 is a code that specifies the decoding category and instructs the acquisition of one frame of decoded data. By repeatedly executing this code, decoded data for all previously registered decoding requests can be acquired for the specified decoding category.
[0067] Decoded data acquisition code C1-10 is a code that, based on the instruction of decoded data acquisition instruction code C1-9, acquires one decoding response data from the individual response queue of the specified decoding category and hands over one frame of decoded data stored in the output buffer as indicated by the information for identifying the output buffer contained in the decoded response data.
[0068] Playback instruction code C1-11 is code that provides playback instructions based on the decoded data.
[0069] System program P2 includes all decoding request acquisition code C2-1, decoding code C2-2, playback code C2-3, etc.
[0070] All decoding request acquisition code C2-1 is code that acquires all decoding request data related to all decoding categories handed over from all decoding request handover code C1-6. Then, in this embodiment, the acquired decoding request data is registered in a queue (a queue different from the individual request queue mentioned above, called the all request queue) while maintaining the order. That is, all decoding request data related to all decoding categories is registered in the all request queue.
[0071] After that, decoding of decoding code C2-2 begins.In addition, registration with the entire request queue is not mandatory, and the handed-over decoding request data can be used without being registered in the queue. Furthermore, before acquiring all the decoding request data, decoding processing can be performed, for example, each time a decoding request data of one or a specified unit is acquired. The order of handover can also be changed for decoding processing.
[0072] Decoding code C2-2 is code that decodes each decoding object data based on the acquired decoding request data. Specifically, decoding request data is retrieved one by one from the entire request queue, decoding of the decoding object data specified by each decoding request data is performed, and the decoding response data, which is the metadata of the decoding result, is registered in a queue (a queue different from the individual request queue and the entire request queue mentioned above, called the entire response queue). In this embodiment, the decoding response data includes the decoding classification identification data contained in the decoded decoding request data, the input buffer identification data contained in the decoded decoding request data (which becomes the output buffer identification data), the decoding request identification data contained in the decoded decoding request data, and the size data of the decoded data. If decoding of all the decoded request data handed over is completed, a decoding completion notification is issued.
[0073] Decoding processing can also be performed by a hardware decoder.
[0074] Playback code C2-3 is code that causes the audio controller 15 to perform audio playback based on the instructions from playback instruction code C1-11 and on the decoded data.
[0075] FIG4 shows an example of the data stored in the volatile memory 12 when executing the above-described procedures. The volatile memory 12 is equipped with the areas for individual request queues, the area for all request queues, the area for individual response queues, and the area for all response queues. In the areas for individual request queues and individual response queues, there is a queue area for each decoding category. Decoding request data or decoding response data is stored in each area. The volatile memory 12 is equipped with an IO buffer area. Regarding the IO buffer area, there are multiple IO buffer areas, each IO buffer area including an input buffer that stores the data to be decoded and an output buffer that stores the decoded data. The input buffer and output buffer are managed using the same identification data. Furthermore, the aforementioned initialization flag is included in each decoding request data, but it is not shown in Figure 4 for the purposes of this document.
[0076] In addition, a decoding operation area is ensured in the volatile memory 12. In the decoding operation area, past decoding information, etc., is stored according to each decoding category. Past decoding information is stored because the audio data D used in this embodiment is encoded in a manner that requires past decoding information (features, etc.) to decode certain frames.Specifically, the audio data D1 can also be encoded using the Opus codec.
[0077] In FIG4, for reference when illustrating the processing sequence using FIG5, references are attached for the following: decoding request data (Req), decoding classification identification data (IDdiv), IO buffer identification data (IDbf), decoding request identification data (IDreq), last identification flag (F), decoding response data (Res), size of decoded data (S), individual request queue (Qreq), individual response queue (Qres), all request queue (WQreq), all response queue (WQres), IO buffer (Bf), input buffer (Bi), output buffer (Bo), decoding object data (De), decoded data (Dd), and past decoding information (Dpast).
[0078] FIG5 to 7 show sequences representing an example of the processing of the above-described procedures. When audio data D1 to be played is generated, this sequence is repeatedly executed to decode the decoding object data of each frame contained in the audio data D1.
[0079] In Figures 5-7, the left side shows the processing performed by executing the code of the game application included in the game program P1, the center shows the processing performed by executing the code of the SDK (Software Development Kit: a software toolkit provided to game application developers) included in the game program P1, and the right side shows the processing performed by executing the code of the system program P2. Game application developers can utilize the SDK code without creating the SDK code themselves. Furthermore, the distinction between processing the game application code and processing the SDK code is an example. For example, part or all of the SDK code can be installed in the game application. In this case, interaction between the game application code and the SDK code is not required, therefore, some of the code shown in Figures 5-7 is not needed (for example, when registering a decoding request on the game application side, only the decoding request registration code C1-4 is needed; the decoding request registration instruction code C1-3 is not required. The same applies to other instruction codes, etc.). Additionally, part or all of the code of the game program P1 can also be installed in the system program P2, and part or all of the system program P2 can also be installed in the game program P1.
[0080] In the event of an audio event, the audio data D1 to be played is generated. Specifically, the audio data D1 to be played may also be stored in the playback object area (not shown) of the volatile memory 12. When the audio data D1 to be played is generated, the decoding classification is specified based on the game application code (S1-1).
[0081] Next, based on the game application code, the registration instruction for decoding request data Req regarding the decoding object data De (a quantity of 1 frame) is made (S1-2).Furthermore, although not illustrated, the registration instruction for the decoding request data Req in S1-2 includes the setting instruction for the aforementioned initialization flag (hereinafter, the reference numeral F2). The initialization flag F2 is set to "on" in cases such as (i) making a decoding request for new audio data D1, (ii) making a decoding request for the beginning decoding object data De again while looping the same audio data D1, or (iii) changing the playback position midway through playing the same audio data D1; otherwise, the initialization flag F2 is set to "off". Additionally, the initialization flag F2 can also be set to "on" when making a decoding request for the last decoding object data De of audio data D1.
[0082] According to the instruction in S1-2, an empty buffer Bf is searched based on the SDK code (S1-3). Then, the decoding object data De is stored in the input buffer Bi of the found IO buffer Bf (S1-4). Next, the identification data IDdiv containing the specified decoding category, the identification data IDbf of the IO buffer Bf used for saving, the identification data IDreq of the decoding request, and the decoding request data Req containing the last identification flag F are registered in the individual request queue Qreq of the specified decoding category. At this point, the last identification flag F is set to "0". Then, the identification data IDreq of the decoding request is updated (S1-5). In addition, although not shown, the following process is performed in S1-5: the initialization flag F2 is set according to the instruction in S1-2 and included in the decoding request data Req.
[0083] Next, a decoding start instruction is given based on the code of the game application (S1-6). In addition, the processing of S1-1 and S1-2 can be performed multiple times before the decoding start instruction, and correspondingly, the processing of S1-3 to S1-5 can be performed multiple times. Before the decoding start instruction, the decoding request registration for decoding object data of several frames and / or the decoding request registration for decoding object data of which decoding category is performed is arbitrary and can be determined according to each game application. Decoding request registration for the same decoding category can be performed multiple times for one audio data D1, or decoding request registration for different decoding categories can be performed to decode multiple audio data D1 in parallel, or both. The specification of the decoding category (S1-1) does not have to be performed every time; in this case, the decoding request can be made with the already specified decoding category.
[0084] Before the decoding start indication, if multiple decoding requests have been registered for one audio data D1, that is, if the same decoding category is repeatedly specified in the decoding category specification in S1-1, the decoding request data Req for the decoding object data De of multiple frames is registered in the individual request queue Qreq of the specified decoding category. Alternatively, if multiple decoding requests have been registered for multiple audio data D1, that is, if different decoding categories are specified in the decoding category specification in S1-1, the decoding request data is registered in the individual request queue Qreq of the multiple decoding categories. Furthermore, the decoding start indication is not accompanied by the specification of a decoding category. That is, the decoding start indication is used to indicate the start of decoding for all decoding requests for all decoding categories registered before the decoding start indication.
[0085] After the decoding start indication, based on the game application code, decoding completion notification waiting processing (S1-7) is performed at any time. Furthermore, arbitrary game processing, etc., can also be performed before this waiting processing. In this embodiment, the decoding start indication and the decoding completion waiting processing are commands. Therefore, it is not necessary to wait for decoding to complete immediately after the decoding start indication is given; other processing can be performed.
[0086] In the case of a decoding start indication, the following processing (S1-8) is performed: Based on the SDK code, all decoding request data Req from the individual request queues Qreq of all decoding categories are retrieved and passed to the system program P2. At this time, all decoding request data Req of all decoding categories are sorted using the decoding request identification data IDreq, and handed over to the system program P2 in a manner that reveals the registration order of the decoding requests. At this time, if the decoding request identification data IDreq indicates that it is the last data registered before the decoding start indication, the last identification flag F of the decoding request data is set to "1". In addition, the retrieved decoding request data Req can be summarized (for example, set as a list in the registration order of decoding requests) and passed to the system program P2, or they can be passed one by one or in parts. Sorting with the decoding request identification data IDreq before handover is not necessary. For example, they can be sorted by each decoding category and passed to the system program P2, or they can be passed to the system program P2 without any sorting.
[0087] When such a decoding request data Req is handed over, based on the code of system program P2, the following processing (S2-1) is performed in this embodiment: the handed-over decoding request data Req is registered in the overall request queue WQreq in a manner that maintains the order. That is, in the overall request queue WQreq, all decoding request data Req existing in the individual request queues Qreq of all decoding categories are registered in the order of decoding requests.Furthermore, it is not necessary to decode each request in the order in which the requests were generated. For example, it is also possible to divide or sort them according to each decoding category and decode them sequentially according to each decoding category. In this case, if only a certain decoding category is considered, the decoding request data Req is also registered in the overall request queue WQreq in the order of the decoding requests. When the encoding is performed in a way that requires past decoding information (features, etc.) for decoding a certain frame, it is necessary to maintain the order of decoding requests within each decoding category.
[0088] Then, decoding processing is performed based on the code of system program P2. In the decoding process, firstly, the following process is performed (S2-2): a decoding request data Req is taken from the overall request queue WQreq. Although omitted in Figure 6, the following process is performed after S2-2 and before S2-3.
[0089] • When the initialization flag F2 contained in the retrieved decoding request data Req is enabled, the past decoding information Dpast of the decoding category represented by the decoding category identification data IDdiv contained in the retrieved decoding request data Req is initialized.
[0090] In addition, when making a decoding request for the last decoding object data De of audio data D1, if the initialization flag F2 is set to enabled, after the decoding process is performed, the past decoding information Dpast of the decoding category represented by the decoding category identification data IDdiv contained in the retrieved decoding request data Req is initialized. However, in this case, it is difficult to cope with the situation where the playback position changes suddenly.
[0091] Next, the decoding process of the decoding object data De stored in the input buffer Bi represented by the IO buffer identification data IDbf contained in the retrieved decoding request data Req is performed. In this process, the past decoding information Dpast of the decoding category represented by the decoding category identification data IDdiv contained in the retrieved decoding request data Req is used. Additionally, the following processing is performed (S2-3): the past decoding information Dpast for this decoding category is updated.
[0092] Next, the decoded data Dd obtained through decoding is saved to the output buffer Bo represented by the IO buffer identification data IDbf contained in the retrieved decoding request data Req (S2-4).
[0093] Next, the process of registering the decoding response data Res containing the following data into the entire response queue WQres is performed (S2-5).
[0094] • The decoding category identification data IDdiv contained in the extracted decoding request data Req
[0095] • The IO buffer identification data IDbf contained in the extracted decoding request data Req
[0096] • The decoding request identification data IDreq contained in the extracted decoding request data Req
[0097] • The data size S of the decoded data
[0098] Processing steps S2-2 to S2-5 is performed until all the handed-over decoding request data has been processed (S2-6). Thus, decoding of all decoding object data is performed regardless of the decoding category. All decoding response data Res, regardless of the decoding category, is registered in the overall response queue WQres. In this embodiment, the decoding response data Res is registered in the overall response queue WQres in the order in which decoding is performed (in the order in which decoding results are obtained). When decoding is performed in the order of decoding requests, the decoding response data Res is registered in the overall response queue WQres in the order of decoding requests. Furthermore, in the case of performing multiple decodings in parallel as described later, the order in which decoding begins may not be consistent with the order in which decoding results are obtained. However, if decoding requests of the same decoding category are assigned to the same decoding processing system, the order in which decoding results are obtained is maintained. If limited to a certain decoding category, the decoding response data Res is registered in the overall response queue WQres in the order of the decoding requests. Similarly, if the decoding requests are sorted according to each decoding category before decoding, the decoding response data Res is registered in the order of the decoding requests if limited to a certain decoding category. In addition, the decoding response data Res does not need to be registered in the overall response queue WQres in the order of the decoding requests. However, in this embodiment, as described later, the decoding response data Res is retrieved from individual response queues Qres in a FIFO manner. Therefore, it is preferable that the decoding response data Res is registered in the order of the decoding requests for each decoding category. Specification 9 / 12 pages 16 CN 122537778 A
[0099] When all the decoded request data that has been handed over has been processed, a decoding completion notification is issued (S2-7). As a method for determining whether all handed-over decoding request data has been processed, it can be determined that there is no data in the overall request queue WQreq. However, in this embodiment, it is determined whether the last identification flag F contained in the retrieved and processed decoding request data Req is 1. If the last identification flag F is "1", it is determined that all handed-over decoding request data has been processed. This is because, in this embodiment, after the decoding start indication, new decoding requests can be indicated and registered. Therefore, the overall request queue WQreq may contain decoding request data registered after the decoding start indication.In this case, by referring to the last identification flag F, it can be determined that the data registered at the start indication time of decoding has been processed.
[0100] Alternatively, a structure can be adopted in which multiple decodings are performed in parallel, such as having multiple decoding cores. However, in this case, when the last identification flag F contained in the decoded request data Req that is retrieved and processed is "1", it can be confirmed that all decoded request data Req registered before the retrieved and processed decoded request data Req has been decoded (for example, it is determined that metadata of the decoding result is registered in the overall response queue WQres). Thus, it is determined that all decoded request data registered before the decoding start indication has been processed. Therefore, it is possible to deal with the situation where the order of decoding results obtained in parallel decoding processing changes. In addition, in the case of adopting a structure that performs multiple decodings in parallel, decoded request data that specifies the same decoding category can be assigned to the same decoding processing system during decoding processing.
[0101] The decoding completion notification may be, for example, by notifying the kernel of this meaning, or by setting a completion flag in memory shared with the game application. Furthermore, the release of the wait in the decoding completion wait process may be done by a corresponding instruction from the kernel, or by referring to the completion flag. Therefore, the decoding completion wait process can be released regardless of whether it begins before or after the decoding completion notification process (S2-7).
[0102] When a decoding completion notification is issued, the wait process is released in the aforementioned decoding completion notification wait process (S1-7).
[0103] Next, based on the game application's code, the following processing (S1-8) is performed: all decoding response data Res from the entire response queue WQres is retrieved, and in this embodiment, all decoding response data Res is transferred to the individual response queue Qres for each decoding category while maintaining the order. That is, the following processing is performed: the decoding response data registered in the entire response queue WQres is divided into individual response queues Qres for each decoding category.
[0104] Next, based on the game application code, a process for specifying the decoding category is performed (S1-9). This process is used to specify the decoding category of the decoded data that is to be obtained.
[0105] Next, based on the game application code, a request to obtain the decoded data Dd is made (S1-10).
[0106] According to the request, based on the SDK code, the following process is performed (S1-11): a decoded response data Res is retrieved from the individual response queue Qres of the specified decoder category.Then, the following processing (S1-12) is performed: the decoded data Dd stored in the output buffer Bo represented by the identification data IDbf of the IO buffer contained in the extracted decoded response data Res is obtained according to the data size S and passed to the game application side, and the IO buffer is set to empty.
[0107] Then, the game application code (decoded data acquisition instruction code C1-9) acquires the decoded data Dd passed from the SDK.
[0108] By repeating the code of S1-9 and S1-10 in the game application code, all the decoded data Dd of the decoded object data De for which a decoding request is registered can be acquired separately according to the decoding category. In addition, as with the decoding request, when acquiring the decoded data, the decoding category may not be specified every time. In this case, the acquisition of the decoded data under the decoding category specified in the specification 10 / 12 pages 17 CN 122537778 A can also be performed.
[0109] By repeating the sequence shown in FIG5 to FIG7, the game application can obtain the decoded data of all frames contained in the audio data D1.
[0110] The above is a description of this embodiment.
[0111] Each decoded response data Res can also be retrieved directly from the entire response queue WQres. Alternatively, all or more decoded response data Res from the entire response queue WQres or individual response queues Qres can be retrieved at once, and all or more decoded data Dd, or all or more decoded data Dd of a certain decoding category can be obtained at once.
[0112] Input buffers and output buffers can also be set separately and managed with different identification data. In this case, for example, it is sufficient to store the decoded data Dd in an empty output buffer and set the identification data IDbf of the buffer for the decoded response data Res to the identification data of the output buffer storing the decoded data Dd.
[0113] Alternatively, when there is a release of the wait in the decoding completion waiting process, the process of obtaining the decoded data Dd can be performed automatically. Alternatively, the decoding completion waiting process can be performed automatically after the decoding start indication process.
[0114] The descriptions of elements such as "game device," "processor," "non-volatile memory," "volatile memory," "audio controller," programs, codes, and data ("decoding request data," "decoding response data," identification data, etc.) in the above embodiments are descriptions of elements in one embodiment, and this is true even if such meaning is not specifically stated.
[0115] In the above embodiments, queues are used in storing decoding request data and decoding response data, but it is possible to store each data without using queues and retrieve the required data from the required location for use as appropriate. It is not necessary to continuously maintain the order of decoding requests in all scenes of the sequence.When it is desired to maintain the order of decoding requests, the decoding request identification data IDreq can also be used.
[0116] The game device 1 can be a fixed game device, a portable game device, or a hybrid (comprehensive) game console that combines fixed and portable types. It can also be an information processing device such as a smartphone, tablet terminal, personal computer, or server device in a network system, instead of a game device. It can also replace the information processing device and distribute the above-mentioned processing in an information processing system that connects multiple devices through a local or remote network.
[0117] The processor mentioned above can be a general-purpose processor or a dedicated processor. The IC mentioned above can also be a hardware logic circuit.
[0118] The program mentioned above can be pre-stored in non-volatile memory or downloaded from a server. The program mentioned above can also be a program module group. Each program can also be stored in different memories. Each program contains program code in a form that the processor can execute, and each program code contains commands for the above-mentioned processing.
[0119] The system program includes OS (Operating System), firmware, system-provided applications, applets, etc. The system program can also be a simulation program.
[0120] The programs and / or codes described above can also be processed by multiple processors. The execution order of the codes described above can also be changed appropriately. The execution order of the processes within the codes described above can also be changed appropriately. The codes described above can also be included in programs other than the programs described above. For example, code described as being included in a game program can also be included in a system program. Code described as being included in a system program can also be included in a game program. Code described as being included in a system program can be included in an OS or firmware, etc.
[0121] In the above embodiments, an example of a game program was used, but it is not limited to a game program and can be applied to any application. In addition, in the above embodiments, an example of audio data was used, but it is not limited to audio data and can be applied to the decoding of any encoded source data, such as encoded image data.
[0122] The above-described decoding classification related processing is not necessary, and the decoding classification related processing and data can be removed from the above embodiments.
[0123] Several system examples, method examples, device examples, and apparatus examples have been described in detail above, but the above description is merely illustrative in all respects and is not intended to limit their scope. It is self-evident that various modifications and variations can be made without departing from the spirit and scope of the appended claims. It is understood that the scope should be interpreted solely by the scope of the appended claims.Furthermore, it is understood that those skilled in the art can implement equivalent scopes based on the description of specific embodiments, the description of this embodiment, and common technical knowledge. Additionally, it is understood that the terminology used herein is used in the sense commonly understood in the art, unless otherwise stated. Therefore, unless otherwise defined, all technical and technical terms used herein have the same meaning as commonly understood by those skilled in the art to which this embodiment pertains. In case of conflict, this specification (including definitions) takes precedence.Instruction manual 12 / 12 pages 19 CN 122537778 A Figure 1 Instruction manual drawing 1 / 7 pages 20 CN 122537778 A Figure 2 Instruction manual drawing 2 / 7 pages 21 CN 122537778 A Figure 3 Instruction manual drawing 3 / 7 pages 22 CN 122537778 A Figure 4 Instruction manual drawing 4 / 7 pages 23 CN 122537778 A Figure 5 Instruction manual drawing 5 / 7 pages 24 CN 122537778 A Figure 6 Instruction manual drawing 6 / 7 pages 25 CN 122537778 A Figure 7 Instruction manual drawing 7 / 7 pages 26 CN 122537778 A Abstract The present invention provides an information processing device, program, and a method installed on a computer. A decoding class is specified and decoding of the decoding target data is requested, the decoding request is stored in such a manner that the decoding class can be distinguished, a start of decoding is instructed, the decoding target data is decoded with respect to a set of decoding requests at the time point of the start instruction, decoded data obtained by decoding is stored in such a manner that the decoding class can be distinguished, and the decoded data is acquired from the stored decoded data in such a manner that the decoding class is specified..
Claims
1. An information processing device comprising the following units: A unit that specifies the decoding category and provides instructions for decoding the data of the decoding object; According to the instructions, the decoded object data is saved to the input buffer in the specified buffer, and a decoding request is generated that includes at least the identification data of the specified decoding category and the identification data of the buffer that saves the decoded object data, and saved as a unit of a set of decoding requests; The unit that indicates the start of decoding; A unit that acquires the set of decoding requests at the start indicated time point, independent of the identification data of the decoding classification; Regarding each of the obtained decoding requests, a unit that obtains decoding object data from the input buffer in the buffer represented by the identification data of the buffer included in the decoding request, and performs decoding on each of the obtained decoding object data respectively; Regarding each of the aforementioned decodings, the decoded data obtained through the decoding is saved to a unit of the output buffer in the buffer represented by the identification data of the buffer included in the decoding request; For each of the aforementioned decodings, a decoding response is generated that includes at least the identification data of the decoding category contained in the decoding request and the identification data of the buffer contained in the decoding request, and is saved as a unit of a set of the decoding responses; A unit for determining the completion of decoding for all the obtained decoding requests; The unit that sends a decoding completion notification when the completion is determined; The unit that waits for the completion of decoding after the start indication; The unit that releases the completion wait if the completion notification has been issued; After the completion wait is lifted, the decoding category is specified and the unit that retrieves the decoded data is instructed; as well as According to the instruction to obtain the decoded data, a unit that obtains the decoded data from the output buffer of the buffer represented by the identification data of the buffer contained in the decoded response, based on the decoding response containing the identification data of the specified decoding category in a set of decoding responses.
2. The information processing apparatus according to claim 1, wherein, It also includes the following unit: to include data for identifying that the decoding request is the last saved decoding request before the start indication in the decoding request. The determination of decoding completion is made by at least referring to the data used to identify the last saved decoding request, and determining that decoding is complete when the decoding of the last saved decoding request ends.
3. The information processing apparatus according to claim 1 or 2, wherein, The completion wait is configured to be executed using code different from the start instruction. The issuance of the completion notification and the release of the completion wait are configured to be performed in such a way that the release is performed based on the issuance, regardless of whether the processing of the completion wait code begins before or after the issuance.
4. The information processing apparatus according to claim 1, wherein, The decoded object data is the data in the encoded data consisting of a series of data in defined units. The decoding request is a decoding request for the data in the specified unit. The information processing device also includes a unit for storing past decoding information according to each of the decoding categories. The decoding is configured to use past decoding information of the decoding category represented by the identification data of the decoding category contained in each of the acquired decoding requests to perform decoding of the decoding request.
5. The information processing apparatus according to claim 4, wherein, The instruction to decode the data of the object being decoded is configured to include an instruction to initialize the previously decoded information. The decoding request is generated by including the initialization instruction data in the decoding request, based on the initialization instruction. The information processing device further includes the following unit: based on the indication data contained in the acquired decoding request, before or after decoding the decoding object data of the acquired decoding request, initializing the past decoding information of the decoding category represented by the identification data of the decoding category contained in the acquired decoding request.
6. The information processing apparatus according to claim 5, wherein, The initialization of the past decoding information is configured to be performed before decoding the decoding object data of the obtained decoding request.
7. The information processing apparatus according to claim 1, wherein, It also includes the following unit: based on the identification data of the decoding category contained in the acquired decoding request, sorting the acquired decoding request according to each decoding category. The decoding is performed based on the sorted decoding requests.
8. The information processing apparatus according to claim 1, wherein, It also includes the following unit: issuing a search empty buffer for each of the decoding requests. The buffer used to store the data of the decoded object is a buffer discovered through the search.
9. The information processing apparatus according to claim 1, wherein, The decoding response is generated by including dimension data representing the size of the decoded data. The acquisition of the decoded data is configured to obtain the decoded data based on the size data contained in the decoding response.
10. The information processing apparatus according to claim 1, wherein, The decoded object data is the data in the encoded data consisting of a series of data in defined units. Instructions for decoding the data of the object to be decoded are given according to the data of each of the specified units. The acquisition of the decoded data is constituted by acquiring the decoded object data of the specified unit.
11. A program that enables a computer to function as: Regarding the decoding request for identification data that includes at least identification data for decoding classification and a buffer storing decoding object data, a set of units of the decoding request at the time point indicated by the decoding start is obtained, independent of the identification data for the decoding classification. Regarding each of the obtained decoding requests, a unit that obtains decoding object data from the input buffer in the buffer represented by the identification data of the buffer included in the decoding request, and performs decoding on each of the obtained decoding object data respectively; Regarding each of the aforementioned decodings, the decoded data obtained through the decoding is saved to a unit of the output buffer in the buffer represented by the identification data of the buffer included in the decoding request; For each of the aforementioned decodings, a unit generates a decoding response that includes at least the identification data of the decoding category contained in the decoding request and the identification data of the buffer contained in the decoding request; A unit for determining whether decoding of all the obtained decoding requests is complete; as well as A unit that issues a decoding completion notification when it is determined that the decoding is complete.
12. The procedure according to claim 11, wherein, The determination of decoding completion is made by at least referring to the data contained in the decoding request for identifying that it was the last saved decoding request before the decoding start indication, and determining that decoding is complete when the decoding of the last saved decoding request ends.
13. The procedure according to claim 11 or 12, wherein, The program enables the computer to also function as a unit that stores past decoding information according to each of the decoding categories. The decoding is configured to use past decoding information of the decoding category represented by the identification data of the decoding category contained in each of the acquired decoding requests to perform decoding of each of the decoding requests.
14. The procedure according to claim 13, wherein, The program enables the computer to also function as a unit that initializes the past decoding information of the decoding category represented by the identification data of the decoding category contained in the acquired decoding request, based on the instruction data for initializing the past decoding information contained in the acquired decoding request, before or after decoding the decoding object data of the acquired decoding request.
15. The procedure according to claim 14, wherein, The initialization of the past decoding information is configured to be performed before decoding the decoding object data of the obtained decoding request.
16. The procedure according to claim 11 or 12, wherein, The program enables the computer to also function as a unit for: sorting the acquired decoding requests according to each decoding category based on the identification data of the decoding categories contained in the acquired decoding requests. The decoding is performed based on the sorted decoding requests.
17. The procedure according to claim 11 or 12, wherein, The decoding response is generated by including dimension data representing the size of the decoded data.
18. An information processing apparatus comprising the following units: Decoding requests for decoded object data are generated in a way that can distinguish between decoding categories and saved as a unit of a set of decoding requests; The unit that indicates the start of decoding; A unit that decodes each decoding object data separately based on the set of decoding requests at the start indicated time point, regardless of the decoding classification; Units that store each decoded data obtained through decoding in a manner that can distinguish the decoding categories; and A unit that specifies the decoding category and obtains the decoded data.
19. A program that causes a computer to function as: Regardless of the decoding classification, acquire a set of decoding request units at the start of decoding that can distinguish the decoding classification; A unit that decodes the data of the decoding object based on the obtained decoding requests; and A unit that stores the decoded data obtained through the decoding in a manner that can distinguish the decoding categories.
20. An information processing apparatus comprising the following units: A unit that stores a set of decoding requests in a manner that includes identification data for decoding classification; A unit that acquires the set of decoding requests independently of the identification data of the decoding classification; A unit that decodes the decoding object data for each of the obtained decoding requests; A unit that saves each decoded data obtained through each of the decoding processes in a manner that associates it with the identification data of the decoding category contained in the decoding request involved in the decoding process; as well as A unit that retrieves the decoded data that is associated with the identification data of the specified decoding category from the saved decoded data.
21. A program that causes a computer to function as: A unit that acquires a set of decoding requests containing the recognition data of the decoding classification, independent of the recognition data of the decoding classification; A unit for decoding the decoding object data for each of the acquired decoding requests; and A unit that saves each decoded data obtained through the decoding process in a manner that associates it with the identification data of the decoding classification contained in the decoding request that was decoded.
22. A method for installation on a computer, wherein, Specify the decoding category and indicate the request to decode the data of the decoding object. According to the instructions, the decoded object data is saved to the input buffer in the specified buffer, and the decoding request, which contains at least the identification data of the specified decoding category and the identification data of the buffer containing the decoded object data, is saved as a set of decoding requests. The decoding process begins. The set of decoding requests at the start indicated time point is obtained independently of the identification data of the decoding classification. Regarding each of the obtained decoding requests, the decoding object data is obtained from the input buffer in the buffer represented by the identification data of the buffer included in the decoding request, and the obtained decoding object data is decoded respectively. Regarding each of the aforementioned decoding processes, the decoded data obtained through the decoding is saved to the output buffer of the buffer represented by the identification data of the buffer included in the decoding request. Regarding each of the aforementioned decodings, a set of decoding responses is saved, which includes at least the identification data of the decoding classification contained in the decoding request that has been decoded and the identification data of the buffer contained in the decoding request that has been decoded. Determine the completion of decoding for all the obtained decoding requests. Upon determining that the decoding is complete, a decoding completion notification is issued. After the start instruction, wait for the decoding to complete. Release the completion wait if the completion notification has been issued. After the completion wait is lifted, specify the decoding category and indicate that the decoded data should be retrieved. According to the instruction to obtain the decoded data, based on the decoding response containing the identification data of the specified decoding category in the set of decoding responses, the decoded data is obtained from the output buffer of the buffer represented by the identification data of the buffer contained in the decoding response.
23. An information device comprising the following units: The input buffer saves the decoded object data to the specified buffer, and generates a decoding request that includes at least the identification data of the decoding classification and the identification data of the buffer that saves the decoded object data, and saves it as a unit of a set of decoding requests; The unit that indicates the start of decoding; A unit that acquires the set of decoding requests at the start indicated time point, independent of the identification data of the decoding classification; Regarding each of the obtained decoding requests, a unit that obtains decoding object data from the input buffer in the buffer represented by the identification data of the buffer included in the decoding request, and performs decoding on each of the obtained decoding object data respectively; Regarding each of the aforementioned decodings, the decoded data obtained through the decoding is saved to a unit of the output buffer in the buffer represented by the identification data of the buffer included in the decoding request; For each of the aforementioned decodings, a decoding response is generated that includes at least the identification data of the decoding category contained in the decoding request and the identification data of the buffer contained in the decoding request, and is saved as a unit of a set of the decoding responses; A unit for determining the completion of decoding for all the obtained decoding requests; The unit that sends a decoding completion notification when the completion is determined; as well as After the completion notification is issued, a unit is used to obtain the decoded data from the output buffer of the buffer represented by the identification data of the buffer contained in the decoding response, based on a set of decoding responses.
24. A program that enables a computer to function as: Regarding the decoding request for identification data that includes at least the identification data for decoding classification and the buffer for storing the data of the decoded object, a set of units of the decoding request are obtained at the time point indicated by the start of decoding, independent of the identification data for the decoding classification. Regarding each of the obtained decoding requests, a unit that obtains decoding object data from the input buffer in the buffer represented by the identification data of the buffer included in the decoding request, and performs decoding on each of the obtained decoding object data respectively; Regarding each of the aforementioned decodings, the decoded data obtained through the decoding is saved to a unit of the output buffer in the buffer represented by the identification data of the buffer included in the decoding request; For each of the aforementioned decodings, a decoding response is generated that includes at least the identification data of the decoding category contained in the decoding request and the identification data of the buffer contained in the decoding request, and is saved as a unit of a set of the decoding responses; A unit for determining the completion of decoding for all the obtained decoding requests; as well as The unit that issues a completion notification when the completion is determined.
25. A method for installation on a computer, wherein, Regarding decoding requests for identification data that at least include identification data for decoding classification and a buffer storing decoding object data, a set of decoding requests at the time point indicated by the decoding start is obtained, independent of the identification data for decoding classification. Regarding each of the obtained decoding requests, the decoding object data is obtained from the input buffer in the buffer represented by the identification data of the buffer included in the decoding request, and the obtained decoding object data is decoded respectively. Regarding each of the aforementioned decoding processes, the decoded data obtained through the decoding is saved to the output buffer of the buffer represented by the identification data of the buffer included in the decoding request. For each of the aforementioned decodings, a decoding response is generated that includes at least the identification data of the decoding category contained in the decoding request and the identification data of the buffer contained in the decoding request. Determine whether decoding of all the obtained decoding requests is complete. When the decoding is determined to be complete, a decoding completion notification is sent.