Information processing device, control method, and program
By pre-generating management information for video files before data acquisition, the computational burden is reduced, enabling efficient editing and transmission of partial files, addressing the high load issues in existing video file generation methods.
Patent Information
- Application Number
- JP2024088271
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-30
- Publication Date
- 2025-12-11
AI Technical Summary
Existing methods for generating video files, such as MP4 files, incur high computational load due to frequent updates of management information when shooting at high frame rates, straining computing resources.
The information processing device generates management information in bulk before acquiring media data, determining address information for each piece of media data in advance, and stores it in a temporary storage area, reducing the need for real-time updates during the data acquisition process.
This approach significantly reduces computational load during the generation of moving image files, allowing efficient editing and transmission of partial files without the need for continuous management information updates.
Smart Images

Figure 2025180735000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing device, a control method, and a program, and more particularly to a technique for generating a moving image file. [Background technology]
[0002] A video file includes a management information area for storing metadata and a data area for storing video and audio media data constituting the video, which are linked from the beginning of the file. The management information area stores information for referencing the media data stored in the data area, and the management information area is referenced, for example, when the video file is played. The data area sequentially stores encoded video and audio data (media data) acquired over a predetermined period, defined by, for example, frames.
[0003] Here, the data size of the media data stored in the data area may vary depending on, for example, the shooting environment. Therefore, when generating a video file, it is necessary to provide a process for storing, in a management information area, metadata describing the offset amount from the file start address of each piece of media data stored in the data area and the data size of that data. In other words, since the information to be stored in the management information area cannot be determined unless the data size, etc. of the media data stored in the data area is determined, when generating a video file, it was necessary to generate the data to be stored in each area in memory or a temporary file, and then copy and combine the data.
[0004] Various proposals have been made to reduce such redundant processing when generating video files. Patent Document 1 discloses a method in which free space for metadata is reserved in advance, media data is sequentially stored in a data area following the free space, and the metadata is constructed while the media data is being stored, and the metadata is inserted into the free space after the media data generation process is completed. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Japanese Patent Application Laid-Open No. 2006-074391 Summary of the Invention [Problem to be solved by the invention]
[0006] In the technology described in Patent Document 1, an update process is performed to add information corresponding to the metadata each time the number of media data (number of samples) stored per track in the data area increases. However, when shooting at a high frame rate, for example, performing an update process each time the number of samples stored increases may strain computing resources.
[0007] The present invention has been made in consideration of the above-mentioned problems, and has as its object to provide an information processing device, a control method, and a program that reduce the computational load involved in generating a moving image file. [Means for solving the problem]
[0008] In order to achieve the above-mentioned object, the information processing device of the present invention is an information processing device that generates a video file comprising a management information area that stores management information and a data area that stores media data, wherein the management information includes address information regarding each address of the media data that is stored in the data area of the video file to be generated, and the information processing device has: a first generation means that generates management information for the video file to be generated based on predetermined information; an acquisition means that sequentially acquires the media data to be stored in the data area of the video file to be generated; a second generation means that generates the data area of the video file to be generated by storing the media data acquired by the acquisition means at an address based on address information corresponding to the media data in the management information generated by the first generation means; and a third generation means that generates a management information area that stores the management information generated by the first generation means and links it to the data area generated by the second generation means to generate the video file, and is characterized in that the first generation means generates the management information for the video file to be generated in bulk before the acquisition means completes acquisition of the media data. [Effects of the Invention]
[0009] With this configuration, the present invention makes it possible to reduce the computational load involved in generating a moving image file. [Brief explanation of the drawings]
[0010] [Figure 1] FIG. 1 is a block diagram illustrating a functional configuration of an information processing device 100 according to an embodiment and a modification of the present invention. [Figure 2] An example of the structure of an MP4 file [Figure 3] FIG. 1 is a diagram illustrating control of generating a partial MP4 file according to the first embodiment of the present invention; [Figure 4] FIG. 10 is another diagram illustrating the generation control of a partial MP4 file according to the first embodiment of the present invention. [Figure 5] 1 is a flowchart illustrating an output process executed by the information processing device 100 according to an embodiment and a modification of the present invention; [Figure 6] FIG. 10 is a diagram illustrating the structure of a partial MP4 file according to a first modified example of the present invention; [Figure 7] FIG. 10 is a diagram illustrating the structure of a partial MP4 file according to a second modified example of the present invention; [Figure 8] FIG. 10 is another diagram illustrating the structure of a partial MP4 file according to the second modification of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0011] [Embodiment 1] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the invention claimed. Although multiple features are described in the embodiments, not all of these multiple features are necessarily essential to the invention, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same reference numerals are used to designate the same or similar components, and redundant explanations will be omitted.
[0012] In the embodiment described below, the present invention is applied to an information processing device that sequentially acquires image signals and audio signals related to captured moving images as input and generates a moving image file, as an example of an information processing device. However, the present invention can be applied to any device that can generate a moving image file.
[0013] <Configuration of information processing device> The functional configuration of the information processing device 100 according to this embodiment will be described below with reference to the block diagram of FIG.
[0014] The control unit 101 controls the operation of each block included in the information processing device 100. The control unit 101 can be, for example, a microcomputer. In this embodiment, the control unit 101 includes a memory (not shown) and controls the operation of each block by loading a program stored in advance in the memory into a RAM (not shown) and executing the program.
[0015] The image encoding unit 102 performs a compression encoding process on the input image signal and generates media data (hereinafter referred to as video samples) to be stored in a moving image file as the encoding result. In this embodiment, the image encoding unit 102 performs a compression encoding process on the input image signal using a variable bit rate (VBR) method in which an upper limit code amount and a lower limit code amount are set. The video samples generated by the image encoding unit 102 are stored in a video ring buffer provided in the temporary storage unit 104, which will be described later.
[0016] The audio encoder 103 performs compression encoding on the input audio signal and generates media data (hereinafter referred to as audio samples) to be stored in a video file as the encoding result. The audio samples generated by the audio encoder 103 are stored in an audio ring buffer provided in the temporary storage unit 104, which will be described later.
[0017] The temporary storage unit 104 is a storage device provided for temporary storage of data. In this embodiment, the temporary storage unit 104 is used as a work memory for generating video files in addition to the video ring buffer and audio ring buffer described above. The temporary storage unit 104 can also be used as a memory for updating the file system of the recording medium 110 described below. In one aspect, the temporary storage unit 104 may be used as a work memory for the control unit 101.
[0018] The recording control unit 105 controls writing of data to the recording medium 110 and reading of data from the recording medium 110. More specifically, when writing data, the recording control unit 105 writes data accumulated in the temporary storage unit 104 to the recording medium 110, and when reading data, the recording control unit 105 copies data read from the recording medium 110 to the recording medium 110. The recording control unit 105 controls access to the recording medium 110 via a file system. Here, the recording medium 110 is a recording device configured to be capable of permanently storing information, such as a memory card. The recording medium 110 may be a recording device built into the information processing device 100, or may be a recording device that is detachably attached to the information processing device 100.
[0019] The communication unit 106 is a communication interface with an external device provided in the information processing device 100. The communication unit 106 may communicate with the external device via a wired connection or via a wireless connection. In the latter case, the communication unit 106 includes an antenna and a communication controller for realizing wireless communication in accordance with, for example, IEEE802.11a / b / g / n / ac / ax.
[0020] <<Outline of video file generation>> Next, an overview of the generation of a moving image file performed by the information processing device 100 of this embodiment having such a configuration will be described.
[0021] <File structure> In this embodiment, the video file generated by the information processing device 100 is described as an MP4 file. More specifically, the image encoding unit 102 compresses and encodes the image signal using MPEG4-AVC, the audio encoding unit 103 compresses and encodes the audio signal using AAC, and the control unit 101 packages this compressed and encoded data in MP4 format to generate the MP4 file.
[0022] An MP4 file has a structure as shown in Fig. 2. As shown in the figure, an MP4 file is broadly divided into an mdat box 203 that stores media data, and an ftyp box 201 and a moov box 202 that store information other than media data. Each of the video samples generated by the image encoding unit 102 and each of the audio samples generated by the audio encoding unit 103 are stored in the mdat box 203.
[0023] The ftyp box 201 stores file compatibility identification information, which indicates that the MP4 file is in MP4 format when the file is accessed. The moov box 202 stores metadata (management information) for accessing each piece of media data stored in the mdat box 203 when playing the MP4 file, etc. That is, the management information stored in the moov box 202 of an MP4 file makes it possible to obtain information about the location (address) of the MP4 file at which each piece of media data constituting a moving image is stored.
[0024] Information relating to the addresses of such media data (hereinafter sometimes referred to as address information) is stored in a trak box 211 provided for each type of sample. An MP4 file is configured so that one or more types of tracks can be played in the same frame, and in the example shown in the figure, one track is provided for video data and one track for audio data. Therefore, two types of trak boxes 211, (video) and (audio), are provided in the moov box 202.
[0025] In one aspect, the address information can be identified by information stored in the stsz box 221 and the stco box 222 in the trak box 211. Here, the stsz box 221 and the stco box 222 each consist of a table whose entries contain information about each piece of media data stored in the corresponding track. Specifically, each entry in the stsz box 221 stores data size information for the corresponding media data. Furthermore, each entry in the stco box 222 stores offset information for the corresponding media data from the start address of the MP4 file to the address of the media data.
[0026] The management information of an MP4 file also includes information other than the boxes described above, but this information is not particularly related to the features of the present invention, and details are disclosed in ISO / IEC 14496-12, so it will not be discussed in this specification.
[0027] To facilitate understanding of the invention, hereinafter, the mdat box 203 in which various media data are stored will be referred to as the "data area," and the ftyp box 201 and moov box 202 in which data other than media data, including management information, will be referred to as the "management information area." When generating an MP4 file, the ftyp box 201 and moov box 202 relating to the management information area, and the mdat box 203 relating to the data area are each generated in temporary storage unit 104. Then, after all media data has been stored in the mdat box 203, the information in the management information area and the information in the data area are concatenated to generate an MP4 file.
[0028] Incidentally, there is a demand for editing video files (MP4 files) generated by video shooting or the like without waiting for the shooting to be completed. That is, an MP4 file generated for one video shoot is configured by storing all media data obtained by the shoot in the mdat box 203, so the MP4 file can be edited after the video shoot is completed. For this reason, when a single video shoot takes a long time, the video editing work may not be performed efficiently.
[0029] In recent years, in response to such demand, there has been a technology that outputs MP4 files that package media data for a predetermined period of time (e.g., 60 seconds) in parallel with the MP4 file generated for each video shoot. This technology makes it possible to output MP4 files of a specified length at predetermined time intervals to, for example, an external device, even when video shooting spans a long period of time, allowing editing work to proceed while shooting continues. Hereinafter, such short-duration MP4 files generated at predetermined time intervals will be referred to as "partial MP4 files," and will be described as distinct from MP4 files generated for each video shoot.
[0030] The information processing device 100 of this embodiment is configured to sequentially generate partial MP4 files of a predetermined length during a period in which image signals and audio signals related to video shooting are input, and transmit the files to an external device via the communication unit 106. In the following explanation, the partial MP4 files generated by the information processing device 100 are described as including 60 seconds of video images with a frame rate of 30 fps and one video sample per chunk.
[0031] <Partial MP4 file generation control> As described above, in the conventional method of configuring management information in parallel with storing media data in the data area, the stsz box 221 and the stco box 222 must be updated, which can increase the amount of calculations per unit time. Furthermore, to configure a partial MP4 file, the data in the management information area and the data area, which are configured separately, must be copied and linked again in memory space for output. For this reason, the information processing device 100 of this embodiment performs the following control when generating the data in the management information area and the data area.
[0032] First, when the control unit 101 receives an instruction to start shooting, it reserves a video ring buffer 303 and an audio ring buffer 304 on the temporary storage unit 104, as shown in Fig. 3(a). That is, the video ring buffer 303 and the audio ring buffer 304 are reserved in the temporary storage unit 104 as memory spaces for the data areas of the partial MP4 files to be generated.
[0033] The control unit 101 also generates management information such as that shown in FIG. 3(b), which includes an ftyp box and a moov box, in area 301 of the temporary storage unit 104. In the information processing device 100 of this embodiment, in order to efficiently generate partial MP4 files, the management information is generated in a batch before storage of various media data in the data area begins. Here, generating the management information in a batch includes configuring, for each piece of media data that can be stored in the data area of the partial MP4 file, information to be stored in at least the stsz box 221 and the stco box 222 prior to storing the media data.
[0034] As described above, for partial MP4 files generated by the information processing device 100 of this embodiment, information regarding their configuration is determined in advance, so it is also possible to configure the stsz box 221 and the stco box 222 in advance based on that information. For example, if a partial MP4 file contains 60 seconds of video at 30 fps, the number of video samples stored is 30 x 60 = 1800. Furthermore, in this embodiment, the number of video samples per chunk is 1, so 1800 / 1 = 1800 chunks are provided for the video track, and the number of entries in the table of the stco box 222 is 1800.
[0035] At the time of batch generation of management information, the data size of each piece of media data stored in the video ring buffer 303 and the audio ring buffer 304 is not known. Therefore, the control unit 101 can determine the data size of the media data stored in the buffer memory of each track as a specified size (reference data size) and configure the information of the STSZ box 221. In one aspect, the reference data size can be, for example, the maximum size expected for the media data related to each track. The STSZ box 221, like the STCO box 222, has 1800 table entries, and as shown in the figure, all 1800 entries can be determined to have the same data size.
[0036] Furthermore, since the data size of each media data can be determined in this manner, the information of each entry in the stco box 222 can also be determined in a similar manner. For example, as shown in Fig. 4, for each chunk (containing one video sample) stored in the video track, the stco box 222 stores information on the offset of the start address of each chunk relative to the start of the partial MP4 file to be generated. In the example shown in the figure, the mdat box 203 contains "Video chunk 1," "Video chunk 2," and "Video chunk 3." The control unit 101 can determine "offset 1," "offset 2," and "offset 3" for each of these chunks based on information about the video to be included in the partial MP4 file and information about the reference data size of the media data.
[0037] In the information processing device 100 of this embodiment, the control unit 101 generates address information for each chunk collectively in this way, and then stores the media data in the ring buffer based on the address information. That is, the control unit 101 controls the storage of the media data in the ring buffer at an address specified by the address information already determined for the media data, regardless of the data size of the media data obtained by compression encoding.
[0038] Therefore, in the information processing device 100 of this embodiment, the address information (stsz box 221 and stco box 222) for each media data included in the management information is determined before the media data is stored in the ring buffer and is not changed during storage. Therefore, as shown in Figure 3(a), the control unit 101 reserves area 302 as a memory space (work memory) for the management information area in the temporary storage unit 104, and copies and stores the generated management information.
[0039] When one chunk of media data is accumulated in each ring buffer, the control unit 101 outputs the media data to the recording medium 110 via the recording control unit 105, and generates an mdat box 203 on the recording medium 110. Therefore, during video shooting, the control unit 101 repeatedly acquires media data from the image encoding unit 102 and audio encoding unit 103, stores the media data in the ring buffer, monitors data accumulation in the ring buffer, and outputs the data to the recording control unit 105.
[0040] Thereafter, in response to detection of an operation input related to video shooting, for example, control unit 101 outputs the media data accumulated in each ring buffer at that time to recording medium 110, thereby completing mdat box 203 related to the partial MP4 file to be transmitted. Furthermore, control unit 101 outputs the data in area 302 on temporary storage unit 104 to recording medium 110 via recording control unit 105, thereby generating ftyp box 201 and moov box 202 on recording medium 110. Then, control unit 101 combines ftyp box 201, moov box 202, and mdat box 203 in the file system of recording medium 110 via recording control unit 105, thereby completing the partial MP4 file.
[0041] When the partial MP4 file is completed in this manner, the control unit 101 transmits the partial MP4 file to an external device via the communication unit 106. This allows the external device to start editing the video being shot without waiting for the shooting to be completed. That is, when the partial MP4 file is generated and transmitted, the stsz box 221 and stco box 222 included in the management information area do not need to be updated after they are generated in bulk before the media data is stored, thereby reducing the computational load.
[0042] <<Output Processing>> The output process for sequentially generating and outputting partial MP4 files relating to moving images captured in the information processing device 100 of this embodiment having such a configuration will be described in detail using the flowchart in Fig. 5. The process corresponding to the flowchart can be realized by the control unit 101 reading out a corresponding processing program stored in a memory (not shown), for example, and expanding and executing the program in RAM.
[0043] This output process will be described as being started when, for example, an operation input related to the start of video capture is detected. Upon detection of this operation input, the information processing device 100 starts receiving image signals and audio signals related to the captured video, and the image encoding unit 102 and audio encoding unit 103 sequentially acquire the corresponding signals and perform compression encoding processing. In addition, the control unit 101 allocates a video ring buffer 303 and an audio ring buffer 304 in the temporary storage unit 104 in response to the detection of this operation input.
[0044] In S501, the control unit 101 generates management information in area 301 in the temporary storage unit 104, and copies and stores the management information in area 302 secured in the temporary storage unit 104. The process of generating management information includes a process of collectively generating address information for each piece of media data to be included in the partial MP4 file, based on predetermined information about the configuration of the file.
[0045] In S502, the control unit 101 starts storing the video samples generated by the image encoding unit 102 and the audio samples generated by the audio encoding unit 103 in the corresponding ring buffers based on the address information generated in bulk in S501. Furthermore, when one chunk of media data has been accumulated in the ring buffer, the control unit 101 controls the recording control unit 105 to output the one chunk of media data to the recording medium 110 as data in the mdat box 203 of the partial MP4 file.
[0046] In S503, the control unit 101 determines whether an operation input related to the end of shooting has been made. That is, the control unit 101 determines whether acquisition of media data to be stored in the partial MP4 file has been completed. If the control unit 101 determines that an operation input related to the end of shooting has been made, the control unit 101 proceeds to S507, and if it determines that an operation input related to the end of shooting has not been made, the control unit 101 proceeds to S504.
[0047] In S504, the control unit 101 determines whether the output conditions for the partial MP4 file have been satisfied. In this embodiment, the conditions are set to output a partial MP4 file containing media data for 60 seconds of video. Therefore, the control unit 101 can make this determination, for example, based on whether 60 seconds have elapsed since the start of generation of the partial MP4 file currently storing media data. Alternatively, since the configuration of the partial MP4 file is known in advance and the number of entries in the stsz box 221 and stco box 222 of the management information is determined, the control unit 101 may make this determination based on whether media data has been stored for the number of entries. If the control unit 101 determines that the output conditions for the partial MP4 file have been satisfied, the control unit 101 proceeds to S505. If the control unit 101 determines that the output conditions for the partial MP4 file have not been satisfied, the control unit 101 returns to S503.
[0048] In S505, the control unit 101 controls the recording control unit 105 to output the management information stored in the temporary storage unit 104 in S501 to the recording medium 110 as data in the ftyp box 201 and moov box 202 of the partial MP4 file. The control unit 101 also controls the recording control unit 105 to link the ftyp box 201 and moov box 202 with the mdat box 203 on the recording medium 110 to complete the partial MP4 file.
[0049] In S506, the control unit 101 transmits the partial MP4 file completed in S505 to the communication unit 106, and causes it to be transmitted to an external device, thereby completing this output process.
[0050] Furthermore, if it is determined in S503 that an operation input related to ending shooting has been made, the control unit 101 controls the recording control unit 105 to output the media data remaining in the ring buffer at that time to the recording medium 110 in S507, and then moves the process to S504. At this time, the recording control unit 105 forms a chunk including the remaining media data and stores it in the mdat box 203 on the recording medium 110.
[0051] As described above, the information processing device of this embodiment can reduce the computational load associated with generating a moving image file.
[0052] [Variation 1] In the above-described embodiment, a partial MP4 file is generated without updating management information after management information is generated in step S501 of the output process. However, the present invention is not limited to this. For example, depending on the timing of an input operation related to the end of shooting, even if a chunk containing media data remaining in the ring buffer is generated, the mdat box 203 on the recording medium 110 may not contain a predetermined number of chunks. That is, while the management information specifies address information for a predetermined number of entries, the mdat box 203 may not store media data corresponding to some of the address information. In such a case, for example, when playing a partial MP4 file, unnecessary address reference processing based on the management information occurs in order to play non-existent media data.
[0053] Therefore, when completing the partial MP4 file in S505 of the output process, the control unit 101 may exceptionally update the entries in the stsz box 221 and the stco box 222 for which no media data was stored in the corresponding address. The management information may be updated, for example, by replacing the entry with the free box 601 before writing to the recording medium 110, as shown in Fig. 6. In other words, the management information may be updated by padding the area for the address information while keeping the data size of the entire management information fixed, so that the offset from the beginning of the partial MP4 file of each piece of media data already stored in the mdat box 203 does not change.
[0054] In this way, a partial MP4 file can be generated that avoids unnecessary read processing.
[0055] [Variation 2] In the above-described embodiment, a partial MP4 file having one track for video data and one track for audio data is generated as shown in FIG. 2, but the present invention is not limited to this. For example, some video files have audio tracks for multiple channels, i.e., multiple tracks for audio data. For example, the structure of an MP4 file having four channels for audio data is shown in FIG. 7. In the example shown in the figure, the mdat box 203 stores audio samples for four channels, ch1 to ch4, and the moov box 202 has four types of trak boxes 211 for audio data.
[0056] In this manner, in a case where the number of tracks of media data stored in the data area is assumed to be three or more, i.e., where the number of channels of image signals and audio signals input to the information processing device 100 can be increased or decreased within a predetermined range, the present invention can be applied as follows. When generating management information in step S501 of the output process, the control unit 101 generates address information for each chunk included in the partial MP4 file for each trak box with the maximum number of selectable tracks. Thereafter, when completing the partial MP4 file in step S505 of the output process, the control unit 101 exceptionally updates the trak boxes associated with unused tracks. The management information can be updated, for example, by replacing the corresponding trak box with a free box 801 before writing the data to the recording medium 110, as shown in FIG. 8 . In other words, the management information is updated by padding the area of the corresponding trak box while keeping the data size of the entire management information fixed so that the offsets of the media data already stored in the mdat box 203 do not change.
[0057] In this way, the computational load can be reduced in a mode in which moving image files with one or more tracks can be dynamically generated.
[0058] [Embodiment 2] In the above-described embodiment and modified examples, it is assumed that the data size of each piece of media data does not exceed a reference data size. However, the present invention is not limited to this. The media data stored in the data area may vary depending on the captured scene. In this embodiment, a description is given of an embodiment in which the generation control of partial MP4 files is varied depending on the data size of the media data obtained as the output of the compression encoding process by, for example, the image encoding unit 102 or the audio encoding unit 103.
[0059] <<Partial MP4 file generation control>> An outline of the control performed in relation to the generation of partial MP4 files in the information processing device 100 of this embodiment will be described below.
[0060] When media data to be stored in the data area is obtained, the control unit 101 acquires the data size of the media data. If the data size of the media data exceeds the reference data size, storing the media data at the location indicated by the predetermined address information will prevent other media data from being stored based on the address information. In other words, when media data exceeding the reference data size is stored in the data area, data already exists at the address where the media data of the chunk following the data (the subsequent media data) should be stored at the time of storage. Therefore, if the subsequent media data is stored at the predetermined address information, the media data of the immediately preceding chunk (the immediately preceding media data) will be lost. Alternatively, if the subsequent media data is shifted to an address where no immediately preceding media data is stored and stored, it may become inconsistent with the management information or may affect the storage of the subsequent media data.
[0061] Therefore, if the data size of the media data to be stored exceeds the reference data size, the control unit 101 expands the memory space associated with the data area reserved for storing the media data. The control unit 101 then controls the storage of the media data to an address immediately following the area originally intended for use, i.e., an address immediately following the area reserved for the final sample to be stored in the partial MP4 file. In other words, if the data size exceeds the reference data size, the control unit 101 stores the media data to a location different from the predetermined address, i.e., a location not based on address information. Therefore, when completing the partial MP4 file, the control unit 101 updates the address information of the media data to an address associated with the new storage location.
[0062] Note that the data size of the obtained media data may exceed the reference data size more than once during the generation of a partial MP4 file. Therefore, whenever the storage location is changed, the control unit 101 may update the final address of the area that was scheduled to be used to store the media data. In this way, each time media data with a data size exceeding the reference data size is obtained, the media data is stored following the final address stored in the data area.
[0063] [Variation 3] In the above-described embodiment and modified examples, the information in the stsz box 221 and the stco box 222 is generated collectively based on a reference data size in generating management information so that the data size of the entire partial MP4 file is minimized. However, the present invention is not limited to this, and this information may be determined based on, for example, a value obtained by adding a predetermined number to the reference data size so that there is a gap between pieces of media data.
[0064] [Variation 4] In the above-described embodiment and modified examples, the information processing device 100 has the image encoding unit 102 and the audio encoding unit 103, and performs compression encoding processing on image signals and audio signals related to moving images, but the implementation of the present invention is not limited to this. For example, the audio signals stored in the data area as audio samples can be uncompressed PCM data, and in this case, it will be easily understood that the audio encoding unit 103 does not perform compression processing on the audio signals.
[0065] [Variation 5] In the above-described embodiment and modified examples, the present invention is applied to the generation of partial MP4 files because management information can be contained within a predetermined data size, but the present invention is not limited to this. For example, it will be understood that the present invention can also be applied to situations in which the length of a captured video is guaranteed to be finite, such as 30 seconds or 60 seconds, or in which the maximum length of a captured video is specified.
[0066] [Variation 6] In the above-described embodiment and modified examples, the generated video file is described as an MP4 file, but the present invention is not limited to this. The present invention can be applied to the generation of a video file in any format in which media data relating to the video and metadata, which is information for referencing the media data, are configured in separate areas.
[0067] [Other embodiments] The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program.The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.
[0068] The invention is not limited to the above-described embodiments, and various changes and modifications can be made without departing from the spirit and scope of the invention. Accordingly, the following claims are appended to apprise the public of the scope of the invention.
[0069] [Summary of the embodiment and modifications] The disclosure of this specification includes the following information processing device, control method, and program. (Item 1) 1. An information processing device that generates a moving image file including a management information area for storing management information and a data area for storing media data, the management information includes address information relating to addresses of the media data stored in the data area of the generated moving image file; The information processing device includes: a first generating means for generating the management information for the moving image file to be generated based on predetermined information; an acquisition means for sequentially acquiring the media data to be stored in the data area of the moving image file to be generated; a second generating means for generating the data area of the video file to be generated by storing the media data acquired by the acquiring means at an address based on the address information corresponding to the media data in the management information generated by the first generating means; a third generating means for generating the management information area storing the management information generated by the first generating means, and linking the management information area with the data area generated by the second generating means to generate the moving image file; and The first generating means generates the management information for the video image files to be generated in a batch before the acquiring means completes acquiring the media data. 1. An information processing device comprising: (Item 2) 2. The information processing device according to item 1, wherein the first generating means generates the management information by determining the address information for a predetermined number of entries all at once. (Item 3) The information processing device described in item 2 is characterized in that the third generation means generates the video file including the data area on the condition that the media data of the predetermined number of entries has been stored in the data area. (Item 4) the predetermined information includes information about a reference data size of the media data; the second generating means, when a data size of the media data acquired by the acquiring means exceeds the reference data size, stores the media data at an address that is not based on the address information corresponding to the media data, thereby generating the data area of the video file to be generated; The information processing device further includes a first update unit that updates the address information of the management information in which the media data is stored at an address that is not based on the address information. 4. The information processing device according to any one of items 1 to 3. (Item 5) The second generating means reserving a memory space for the data area of the video file to be generated based on the predetermined information, and storing the media data acquired by the acquisition means in the memory space, thereby generating the data area of the video file; When the data size of the media data acquired by the acquisition means exceeds the reference data size, the media data is stored at a subsequent address in the memory space. 5. The information processing device according to item 4. (Item 6) a detection means for detecting completion of acquisition of the media data by the acquisition means; a second updating means for updating, when the completion of the acquisition of the media data is detected, the address information in the management information corresponding to the address at which the media data was not stored; Further having 6. The information processing device according to any one of items 1 to 5, (Item 7) 7. The information processing device according to item 6, wherein the second updating means updates the address information by padding an area in the address information where the media data was not stored in the corresponding address. (Item 8) The moving image file may include a predetermined number of tracks of the media data for the same frame, The information processing device includes: a determining means for determining the number of tracks to be used for the motion picture file to be generated; a third updating means for updating the address information relating to unused tracks in the management information when the number of used tracks is less than the predetermined number of tracks; Further having 8. The information processing device according to any one of items 1 to 7, (Item 9) 9. The information processing device according to item 8, wherein the third updating means updates the address information area relating to the unused track by padding. (Item 10) 10. The information processing device according to any one of items 1 to 9, wherein the video file generated by the third generation means includes a video of a predetermined length of time. (Item 11) 11. The information processing device according to item 10, further comprising an output unit that transmits the video file to an external device in response to the video file being generated by the third generation unit. (Item 12) 1. A control method for an information processing device that generates a moving image file including a management information area for storing management information and a data area for storing media data, comprising: the management information includes address information relating to addresses of the media data stored in the data area of the generated moving image file; The control method includes: a first generation step of generating the management information for the moving image file to be generated based on predetermined information; an acquisition step of sequentially acquiring the media data to be stored in the data area of the generated moving image file; a second generation step of generating the data area of the video file to be generated by storing the media data acquired in the acquisition step at an address based on the address information corresponding to the media data in the management information generated in the first generation step; a third generation step of generating the management information area storing the management information generated in the first generation step, and linking the management information area to the data area generated in the second generation step to generate the moving image file; and In the first generating step, the management information is generated all at once for the video image files to be generated before the acquisition of the media data is completed in the acquiring step. A control method comprising: (Item 13) 12. A program for causing a computer to function as each of the means of the information processing device according to any one of items 1 to 11. [Explanation of symbols]
[0070] 100: Information processing device, 101: Control unit, 104: Temporary storage unit, 105: Recording control unit, 110: Recording medium
Claims
1. 1. An information processing device that generates a moving image file including a management information area for storing management information and a data area for storing media data, the management information includes address information relating to addresses of the media data stored in the data area of the generated moving image file; The information processing device includes: a first generating means for generating the management information for the moving image file to be generated based on predetermined information; an acquisition means for sequentially acquiring the media data to be stored in the data area of the moving image file to be generated; a second generating means for generating the data area of the moving image file to be generated by storing the media data acquired by the acquiring means at an address based on the address information corresponding to the media data in the management information generated by the first generating means; a third generating means for generating the management information area storing the management information generated by the first generating means, and linking the management information area with the data area generated by the second generating means to generate the moving image file; and The first generating means generates the management information for the video image files to be generated in a batch before the acquiring means completes acquiring the media data.
1. An information processing device comprising:
2. 2. The information processing apparatus according to claim 1, wherein the first generating means generates the management information by determining the address information for a predetermined number of entries all at once.
3. 3. The information processing device according to claim 2, wherein the third generation means generates the video file including the data area on the condition that the media data of the predetermined number of entries has been stored in the data area.
4. the predetermined information includes information about a reference data size of the media data; the second generating means, when a data size of the media data acquired by the acquiring means exceeds the reference data size, stores the media data at an address that is not based on the address information corresponding to the media data, thereby generating the data area of the video file to be generated; The information processing device further includes a first update unit that updates the address information of the management information in which the media data is stored at an address that is not based on the address information.
2. The information processing apparatus according to claim 1, wherein:
5. The second generating means reserving a memory space for the data area of the video file to be generated based on the predetermined information, and storing the media data acquired by the acquisition means in the memory space, thereby generating the data area of the video file; When the data size of the media data acquired by the acquisition means exceeds the reference data size, the media data is stored at a subsequent address in the memory space.
5. The information processing apparatus according to claim 4,
6. a detection means for detecting completion of acquisition of the media data by the acquisition means; a second updating means for updating, when the completion of the acquisition of the media data is detected, the address information in the management information corresponding to the address in which the media data was not stored; Further having 2. The information processing apparatus according to claim 1, wherein:
7. 7. The information processing apparatus according to claim 6, wherein the second updating means updates the address information by padding an area of the address information where the media data is not stored at the corresponding address.
8. The moving image file may include a predetermined number of tracks of the media data for the same frame, The information processing device includes: a determining means for determining the number of tracks to be used for the motion picture file to be generated; a third updating means for updating the address information relating to unused tracks in the management information when the number of used tracks is less than the predetermined number of tracks; Further having 2. The information processing apparatus according to claim 1, wherein:
9. 9. The information processing apparatus according to claim 8, wherein the third updating means updates the address information by padding an area of the address information relating to the unused track.
10. 2. The information processing apparatus according to claim 1, wherein the moving image file generated by the third generating means includes a moving image of a predetermined length.
11. 11. The information processing apparatus according to claim 10, further comprising an output unit that transmits the moving image file to an external device in response to the moving image file being generated by the third generation unit.
12. 1. A control method for an information processing device that generates a moving image file including a management information area for storing management information and a data area for storing media data, comprising: the management information includes address information relating to addresses of the media data stored in the data area of the generated moving image file; The control method includes: a first generation step of generating the management information for the moving image file to be generated based on predetermined information; an acquisition step of sequentially acquiring the media data to be stored in the data area of the generated moving image file; a second generation step of generating the data area of the moving image file by storing the media data acquired in the acquisition step at an address based on the address information corresponding to the media data in the management information generated in the first generation step; a third generation step of generating the management information area storing the management information generated in the first generation step, and linking the management information area to the data area generated in the second generation step to generate the moving image file; and In the first generating step, the management information is generated all at once for the moving image files to be generated before the acquisition of the media data is completed in the acquiring step. A control method comprising:
13. A program for causing a computer to function as each of the means of the information processing apparatus according to any one of claims 1 to 11.
Citation Information
Patent Citations
File recording method and recorder
JP2006074391A