Multimedia file making method, device, system and equipment and storage medium
By creating an independent production container for each terminal device in the cloud environment and using code streams to merge containers for task operations, the resource competition and security problems of video production services in the cloud environment are solved, resource isolation and security are achieved, resource consumption is reduced, and system scalability is improved.
Patent Information
- Application Number
- CN202510036954.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-09
- Publication Date
- 2025-05-06
AI Technical Summary
In the cloud environment, video production services have sharing modes of resource competition and security issues, as well as exclusive modes of problems such as large resource consumption and poor scalability.
By creating independent production containers for each terminal device, resource isolation is achieved, and task operations are merged through code streams to reduce resource consumption, while designing different container types for scalability.
Resource isolation is realized, security is ensured, resource consumption is reduced, and system scalability is improved.
Smart Images

Figure CN119946028A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a method, device, system, equipment and storage medium for producing multimedia files. Background Art
[0002] In cloud environments, video production services usually adopt two different architectural modes to meet the needs of different users and resource utilization efficiency. The first mode is the shared mode, in which services are provided to all users through one or more lightweight interfaces. However, multiple users share node resources, which leads to resource competition and security issues. The second mode is the exclusive mode, in which an independent node resource is allocated to each user or each task, and users can produce videos in an exclusive environment. However, the exclusive use of node resources leads to high resource consumption and poor scalability. Therefore, there is an urgent need to provide a method that can achieve resource isolation to ensure security, reduce resource consumption and have scalability. Summary of the invention
[0003] In order to solve the above technical problems, the embodiments of the present disclosure provide a method, apparatus, system, device and storage medium for producing a multimedia file.
[0004] In a first aspect, an embodiment of the present disclosure provides a method for producing a multimedia file, the method comprising:
[0005] Receiving a first creation instruction issued by a first terminal device for multimedia material, and creating a first production container according to the first creation instruction, wherein the first production container has access rights only for the first terminal device;
[0006] In response to a first editing instruction for at least one first material in the multimedia materials, editing the at least one first material through a first production container to generate at least one first multimedia file;
[0007] In response to a first merge instruction issued for at least one first multimedia file, create a first code stream merge container, wherein the first code stream merge container has access rights only to the first production container;
[0008] The first stream merging container performs stream merging processing on at least one first multimedia file to generate a first playable multimedia file.
[0009] Optionally, the multimedia material is stored in a production container of the target channel, and the multimedia material refers to a collection of all materials produced by the target channel within a set period of time;
[0010] Optionally, before receiving a first creation instruction issued by the first terminal device for the multimedia material, the method further includes:
[0011] A preview of the multimedia material is provided to the first terminal device by making a container, so that the first terminal device issues a first creation instruction when previewing the multimedia material.
[0012] Optionally, the production container is a lightweight container with an allowed storage period of the multimedia material as a period, wherein the amount of resources consumed by the lightweight container when providing services is less than a first set threshold;
[0013] The production container is a medium-weight container with the use period of the terminal device as a cycle. The production container is released after receiving the end-of-use instruction issued by the terminal device, wherein the amount of resources consumed by the medium-weight container when providing services is greater than the first set threshold and less than the second set threshold;
[0014] The codestream merging container is a heavyweight container with a task period of the codestream merging task submitted by the production container as a period, and the codestream merging container is released after receiving an end task instruction issued by the production container, wherein the amount of resources consumed by the heavyweight container when providing services is greater than a second set threshold; wherein the use period is greater than the task period and less than the allowed storage period.
[0015] Optionally, after receiving a first creation instruction issued by the first terminal device for the multimedia material corresponding to the target channel, the method further includes:
[0016] Receiving a second creation instruction issued by the second terminal device for the multimedia material, and creating a second production container according to the second creation instruction; wherein the first production container and the second production container are different, and the second production container has access rights only for the second terminal device;
[0017] In response to a first editing instruction for at least one second material in the multimedia materials, editing the at least one second material through a second production container to generate at least one second multimedia file;
[0018] In response to a second merge instruction issued for at least one second multimedia file, creating a second code stream merge container, wherein the second code stream merge container has access rights only to the second production container;
[0019] The at least one second multimedia file is subjected to stream merging processing through the second stream merging container to generate a second playable multimedia file; wherein the first stream merging container and the second stream merging container are different.
[0020] Optionally, the first code stream merging container includes a plurality of sub-merging containers corresponding to different code streams, and performing code stream merging processing on at least one first multimedia file through the first code stream merging container to generate a first playable multimedia file includes:
[0021] Obtaining a code stream merging requirement corresponding to at least one first multimedia file;
[0022] Determine, from among the multiple sub-merge containers, a target sub-merge container corresponding to each target code stream in the same code stream merging requirement;
[0023] The first multimedia file is subjected to code stream merging processing through each target sub-merging container to generate a first playable multimedia file that satisfies each target code stream.
[0024] Optionally, before receiving a first creation instruction issued by the first terminal device for the multimedia material, the method further includes:
[0025] receiving a multimedia signal through a receiving container of a target channel;
[0026] Obtaining a code stream conversion requirement of a multimedia signal, and determining a target transcoding container according to the code stream conversion requirement;
[0027] The multimedia signal is converted into a code stream through the target transcoding container to generate multimedia materials for the target channel.
[0028] Optionally, after editing the at least one first material through the first production container to generate at least one first multimedia file, the method further includes:
[0029] storing at least one first multimedia file in a file system, and determining a storage path of the at least one first multimedia file in the file system;
[0030] A first merging instruction is generated according to the storage path, wherein the first merging instruction is used to instruct the creation of a first code stream merging container.
[0031] Optionally, performing stream merging processing on at least one first multimedia file by using a first stream merging container to generate a first playable multimedia file includes:
[0032] At least one first multimedia file is read from the file system based on the storage path through the first code stream merging container, and code stream merging processing is performed on the at least one first multimedia file to generate a first playable multimedia file.
[0033] In a second aspect, an embodiment of the present disclosure provides a multimedia file production device, the device comprising:
[0034] A receiving unit, configured to receive a first creation instruction issued by a first terminal device for multimedia material, and create a first production container according to the first creation instruction, wherein the first production container has access rights only for the first terminal device;
[0035] A production unit, configured to respond to a first editing instruction for at least one first material in the multimedia materials, edit the at least one first material through a first production container to generate at least one first multimedia file;
[0036] a creating unit, configured to create a first code stream merging container in response to a first merging instruction issued for at least one first multimedia file, wherein the first code stream merging container has access rights only to the first production container;
[0037] The merging unit is used to perform code stream merging processing on at least one first multimedia file through a first code stream merging container to generate a first playable multimedia file.
[0038] In a third aspect, an embodiment of the present disclosure provides a multimedia file production system, the multimedia file generation system includes a production container, a production container and a stream merging container, wherein:
[0039] Creating a container for providing a preview of pre-stored multimedia material;
[0040] The production container is used to edit at least one of the multimedia materials to generate at least one multimedia file;
[0041] The code stream merging container is used to perform code stream merging processing on at least one multimedia file to generate a playable multimedia file.
[0042] In a fourth aspect, an embodiment of the present disclosure provides an electronic device, including:
[0043] Memory;
[0044] Processor; and
[0045] Computer programs;
[0046] The computer program is stored in the memory and is configured to be executed by the processor to implement the method of the first aspect as described above.
[0047] In a fifth aspect, an embodiment of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps of the method in the first aspect are implemented.
[0048] The multimedia file production method provided by the present disclosure includes: receiving a first creation instruction issued by a first terminal device for multimedia materials, and creating a first production container according to the first creation instruction, wherein the first production container has access rights only to the first terminal device; responding to a first editing instruction for at least one first material in the multimedia materials, editing the at least one first material through the first production container to generate at least one first multimedia file; responding to a first merging instruction issued for at least one first multimedia file, creating a first stream merging container, wherein the first stream merging container has access rights only to the first production container; performing stream merging processing on at least one first multimedia file through the first stream merging container to generate a first playable multimedia file. The method provided by the present application, when performing multimedia file production, achieves resource isolation and ensures security by creating an independent production container for the device being used, and the designed task operation type stream merging container also reduces resource consumption, and the design of different container types is also extensible. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0050] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0051] Figure 1 A flowchart of a multimedia file production method provided by an embodiment of the present disclosure;
[0052] Figure 2 A schematic diagram of a business interaction provided by an embodiment of the present disclosure;
[0053] Figure 3 A composition relationship diagram of a production node provided in an embodiment of the present disclosure;
[0054] Figure 4 A schematic diagram of a production page provided in an embodiment of the present disclosure;
[0055] Figure 5 A flowchart of another multimedia file production method provided by an embodiment of the present disclosure;
[0056] Figure 6 A composition relationship diagram of a production node provided in an embodiment of the present disclosure;
[0057] Figure 7 A diagram showing the composition of a multimedia file production system provided by an embodiment of the present disclosure;
[0058] Figure 8 A schematic diagram of the structure of a multimedia file production device provided by an embodiment of the present disclosure;
[0059] Fig. 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0060] In order to more clearly understand the above-mentioned objectives, features and advantages of the present disclosure, the scheme of the present disclosure will be further described below. It should be noted that the embodiments of the present disclosure and the features in the embodiments can be combined with each other without conflict.
[0061] In the following description, many specific details are set forth to facilitate a full understanding of the present disclosure, but the present disclosure may also be implemented in other ways different from those described herein; it is obvious that the embodiments in the specification are only part of the embodiments of the present disclosure, rather than all of the embodiments.
[0062] In view of the above technical problems, the embodiments of the present disclosure provide a multimedia file production method, which physically isolates resources based on the tenant model, performs video production on the user side, and achieves the purpose of reducing costs on the server side. An independent production container is created for each user, so that the use of resources by the user side does not affect each other. At the same time, multiple users share data sources by making containers, and can reuse data sources without repeatedly transcoding the data sources. In the process of video editing and production, users can use more video data sources without affecting each other, and at the same time, the server-side resources can also reduce costs. This is described in detail through one or more of the following embodiments.
[0063] The multimedia file production method provided by the embodiment of the present disclosure can be applied to multimedia material editing scenes. The method can be executed by a multimedia file production device, which can be implemented by software and / or hardware, and the device can be integrated in an electronic device. Among them, the electronic device can include but is not limited to mobile terminals such as smart phones, laptops, digital broadcast receivers, personal digital assistants (PDAs), tablet computers (Tablet Personal Computers, Tablet PCs), PMPs (portable multimedia players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), wearable devices, etc., and fixed terminals such as digital televisions, desktop computers, smart home devices, etc.
[0064] Figure 1A flowchart of a multimedia file production method provided by an embodiment of the present disclosure specifically includes the following steps: Figure 1 The following steps are shown:
[0065] For example, see Figure 2 , Figure 2 A business interaction diagram is provided for an embodiment of the present disclosure. After signal conversion, satellite TV signals, cable TV signals and / or live network signals are transmitted to a production platform through multiple protocols. The production platform is used to generate multimedia files. The production platform includes a scheduling node, a collection node, a transcoding node, a production node and a distributed file system (Ceph File System, cephfs). The services provided by the scheduling node, the collection node and the transcoding node are used through the collection list page to process the collected signals, generate multimedia materials, and store the multimedia materials in cephfs. The services provided by the production node are used through the production page to edit the multimedia materials stored in cephfs, generate playable multimedia files with different code streams, and upload the playable multimedia files to the program library and material library of the cloud server.
[0066] A multimedia file production method, comprising:
[0067] S101. Receive a first creation instruction issued by a first terminal device for multimedia material, and create a first production container according to the first creation instruction.
[0068] The first production container has access rights only for the first terminal device.
[0069] It is understandable that multimedia material refers to the playback material of the target channel. Specifically, the target channel refers to a TV channel or a live broadcast channel, etc. Multimedia material refers to all multimedia materials played by the target channel within a preset time period, such as program materials in the form of video, subtitles and / or audio. The following embodiment takes the multimedia material as a video material as an example to explain each step in detail. When the first terminal device wants to perform video processing such as editing on the video material, a first creation instruction can be generated through the production page. Subsequently, in response to the first creation instruction, an independent first production container is created for the first terminal device, that is, an exclusive production container is created for the first terminal device. The first production container has access rights only for the first terminal device, so as to physically isolate the resources of the first terminal device and other terminal devices, that is, the first terminal device can monopolize the resources of the first production container. It is understandable that the production container refers to a production pod (node), and the specific creation process of the pod is not limited here.
[0070] The multimedia material is stored in the production container of the target channel, and the multimedia material refers to a collection of all materials generated by the target channel within a set period of time.
[0071] For example, see Figure 3 , Figure 3 A composition relationship diagram of a production node provided for an embodiment of the present disclosure, wherein the production node includes a production container, a production container and a stream merging container, wherein the production container is used to store video materials obtained based on program signal conversion, such as multiple program videos played by channel A within a week, and the production container is also used to provide preview services for devices using channel A; the production container is used to perform video processing on the video materials, such as providing pre-processing operations such as boundary clipping, title recognition, mask range, and advertisement boundary point selection on the production page, which is created based on a creation instruction issued by a device and is a container exclusive to the device; the stream merging container is used to perform stream merging processing on video files produced by the production container, and the video production user can directly view a playable video file by using the device.
[0072] The production container is a lightweight container with the allowed storage period of the multimedia material as a period, wherein the amount of resources consumed by the lightweight container when providing services is less than a first set threshold; the production container is a medium-weight container with the use period of the terminal device as a period, and the production container is released after receiving the end-use instruction issued by the terminal device, wherein the amount of resources consumed by the medium-weight container when providing services is greater than the first set threshold and less than the second set threshold; the stream merging container is a heavyweight container with the task period of the stream merging task submitted by the production container as a period, and the stream merging container is released after receiving the end-task instruction issued by the production container, wherein the amount of resources consumed by the heavyweight container when providing services is greater than the second set threshold; wherein the use period is greater than the task period and less than the set period.
[0073] It is understandable that the production container is a lightweight container with an allowed storage period as a cycle, for example, the allowed storage period is 1 week. The lightweight container specifically refers to a container that consumes less than the first set threshold when providing services, wherein the production container mainly provides storage and preview services, and the consumed resources are usually relatively small. The production container is a medium-weight container with a terminal device usage period as a cycle. The production container is released after receiving the end-of-use instruction issued by the terminal device. The usage period refers to the period or working period when the terminal device performs the video production task, such as a 7-hour working day. The medium-weight container specifically refers to a container that consumes more than the first set threshold and less than the second set threshold when providing editing services. The second set threshold is greater than the first set threshold. The production container mainly provides video editing services and consumes more resources than the production container. The stream merging container is a heavyweight container with the task period of the video merging task / stream merging task submitted by the production container as the cycle. The stream merging container is released after receiving the end task instruction issued by the production container. The task period can be the execution period of a stream merging task issued by a production container to the stream merging container, for example, 10 minutes. The heavyweight container refers to a container that consumes more resources than the second set threshold when providing video stream merging services. The stream merging container mainly provides stream merging services for multiple videos, and usually consumes a lot of resources. Among them, the usage period is greater than the task period and less than the set period. Under normal circumstances, the production container is a permanent container that always exists. The production container is a usage container created when the terminal device has a usage demand. The stream merging container is a task job container created when there is a task processing demand, which can be understood as a task job container. By managing the three types of containers in different life cycles, the user usage isolation and resource on-demand allocation are achieved in the form of periodic container use, which solves the problem of resource monopoly and more consumption.
[0074] Optionally, before receiving a first creation instruction issued by the first terminal device for the multimedia material, the method further includes:
[0075] A preview of the multimedia material is provided to the first terminal device by making a container, so that the first terminal device issues a first creation instruction when previewing the multimedia material.
[0076] Understandably, the production container stores a large amount of video materials, and can provide a video material preview service to the terminal device. Subsequently, the user / terminal device can issue a first creation instruction when previewing the video material, so as to complete the editing process of at least part of the video material (first material) based on the first production container.
[0077] Optionally, a first creation instruction issued by a first terminal device for multimedia material is received; and the first material is edited on a production page by a first production container to generate at least one first multimedia file.
[0078] It is understandable that the video material can be displayed on the production page, the first creation instruction can be issued by the user through the production page after previewing the video material, and the editing of the video material can also be completed on the production page to obtain at least one multimedia file after editing.
[0079] For example, see Figure 4 , Figure 4 A schematic diagram of a production page provided in an embodiment of the present disclosure, including a preview area and a creation mark, in which each video material can be viewed, and a creation instruction can be generated by triggering the creation mark. The production page also includes a selection mark, which is used to submit the video material to be edited selected by the user, that is, the first material. In addition, based on the production page, the user can submit video materials multiple times, produce multiple video files, and then merge the multiple video files into a complete playable video file.
[0080] S102: In response to a first editing instruction for at least one first material in the multimedia materials, edit the at least one first material through a first production container to generate at least one first multimedia file.
[0081] It is understandable that, based on the above S101, the at least one first material refers to at least part of the video material, and the terminal device can select the material to be edited by itself through the production page. Figure 4 In the production page shown, the user can select the video materials numbered 12 and 13 in the preview area as the first material, and can also select according to the time of each material in all video materials. Other ways of selecting the first material are not limited. After determining the first material, at least one first material is edited on the production page, and at least one first multimedia file is generated through the first production container. The first multimedia file can be understood as a clipped video file.
[0082] S103: Create a first stream merging container in response to a first merging instruction issued for at least one first multimedia file.
[0083] The first stream merging container has access rights only to the first production container.
[0084] It can be understood that, based on the above S102, after the first production container submits the stream merging task for the first time, it creates a first stream merging container for the task or allocates a first stream merging container for the task, wherein the stream merging task refers to combining the streams in multiple independent multimedia files into a single multimedia file, or synchronizing and integrating multiple multimedia files, that is, after the production container completes the video material editing for the first time, it will submit a stream merging task, and only determine a first stream merging container at the first submission, and subsequent submissions for the same task multiple times will use the first stream merging container for merging operations. After the task is completed and the task end instruction is received, the first stream merging container will be released and wait for the execution of the stream merging task of the next production container.
[0085] S104: Perform stream merging processing on at least one first multimedia file through a first stream merging container to generate a first playable multimedia file.
[0086] It is understandable that, based on the above S103, when the terminal device submits multiple video files, the multiple video files are merged through the first bitstream merging container to generate a playable video file, such as merging the first multimedia file with the previous multimedia file, and the specific bitstream merging process is not limited.
[0087] Optionally, the first code stream merging container includes a plurality of sub-merging containers corresponding to different code streams, and merging at least one first multimedia file through the first code stream merging container to generate a first playable multimedia file can be specifically implemented by the following steps:
[0088] Obtain a code stream merging requirement corresponding to at least one first multimedia file; determine a target sub-merging container corresponding to each target code stream in the same code stream merging requirement among multiple sub-merging containers; perform code stream merging processing on at least one first multimedia file through each target sub-merging container to generate a first playable multimedia file that meets each target code stream.
[0089] It can be understood that stream merging refers to the process of integrating multiple independent audio and video streams (such as video, audio, subtitles, etc.) into a complete playable multimedia file. It is usually used in scenarios such as video editing, live broadcast, and on-demand platforms to ensure that different types of multimedia data can be displayed synchronously during playback and can be transmitted and stored as a whole. The stream merging requirements include merging rules and encoding parameters. The merging rules can be video splicing. Video splicing refers to connecting multiple video clips together in sequence to form a continuous video file. The encoding parameters include stream, resolution, and frame rate, such as merging into ultra-high-definition video, standard-definition video, and high-definition video. According to the code stream merging requirements, a target sub-merging container corresponding to each target code stream is determined in multiple sub-merging containers, wherein the code stream is also called bit rate, which refers to the data flow used by a video file per unit time, and is one of the most important parts of picture quality control in video encoding. For example, for at least one first multimedia file, a first target sub-merging container is used to generate a high-definition video, a second target sub-merging container is used to generate a standard-definition video, and a third target sub-merging container is used to generate an ultra-high-definition video, that is, each code stream corresponds to a sub-merging container, and video files of different resolutions are generated accordingly.
[0090] Optionally, before receiving a first creation instruction issued by the first terminal device for the multimedia material, the method further includes:
[0091] The multimedia signal is received through the collection container of the target channel; the code stream conversion requirement of the multimedia signal is obtained, and the target transcoding container is determined according to the code stream conversion requirement; the multimedia signal is processed by code stream conversion through the target transcoding container to generate the multimedia material of the target channel.
[0092] It can be understood that the target channel has multiple recording containers, each recording container records signals transmitted from different regions, that is, the same channel will send signals from multiple regions. Multiple recording containers can also be understood as main and backup recording containers to ensure that any recording container can receive the channel signal. The specific recording container refers to Figure 2 In addition, each collection container corresponds to a transcoding container, which specifically refers to Figure 2 The transcoding node shown in the figure is used to transcode the signal and generate video materials. The video materials are stored in cephfs. For a certain signal, it can be transcoded through multiple transcoding containers for different code streams to generate video materials of various resolutions to meet the user's video production needs.
[0093] Optionally, after editing the at least one first material through the first production container to generate at least one first multimedia file, the method further includes:
[0094] The method comprises the steps of: storing at least one first multimedia file in a file system, and determining a storage path of the at least one first multimedia file in the file system; generating a first merge instruction according to the storage path, wherein the first merge instruction is used to instruct the creation of a first code stream merge container; reading at least one first multimedia file from the file system based on the storage path through the first code stream merge container, and performing code stream merge processing on the at least one first multimedia file to generate a first playable multimedia file.
[0095] It is understandable that after the first production container generates at least one first multimedia file, the at least one multimedia file is stored in a distributed file system (cephfs), and the storage path of each first multimedia file in cephfs is determined. Subsequently, a file list is generated according to at least one storage path, wherein at least one storage path is stored in the file list, and in response to the submission operation of the file list, a first merge instruction is generated, and the first merge instruction is sent to the first stream merging container. Subsequently, the first stream merging container reads the first multimedia file from cephfs based on the storage path in the file list, performs stream merging processing on the first multimedia file, generates a first playable multimedia file, and uploads the first playable multimedia file to the cloud server for viewing by other terminal devices.
[0096] A multimedia file generation method provided by the embodiment of the present disclosure, in the case of video editing, classifies and manages containers through life cycles, provides business interaction between containers and video multi-container sharing, can reasonably use resources, and reduce the waste of idle container resources. Specifically, the video material is stored and previewed through a lightweight container, so that the data source data can be shared between terminal devices, and the video material is edited through a medium-weight container. The medium-weight container is an independent container created according to the use requirements, and only has access rights to a certain use device, achieving the effect of resource isolation and on-demand allocation, and the medium-weight container can be moved forward to the terminal device, and the relevant operations are completed locally on the terminal device to reduce the resource expenditure of the server. Subsequently, the video file is merged through the heavyweight container. The heavyweight container is a task operation container, which is only used when executing a task, and only has access rights to a certain production container, that is, it is released after receiving the end task instruction. Through the use of periodic containers, this application not only achieves user use isolation, but also achieves reasonable resource utilization, and also allows users to experience the video production effect of exclusive use, with a good user experience.
[0097] Based on the above embodiments, Figure 5 A flowchart of another multimedia file generation method provided by an embodiment of the present disclosure is shown. After receiving a first creation instruction issued by a first terminal device for multimedia material, the method further includes: Figure 5The following steps are shown:
[0098] S501, receiving a second creation instruction issued by a second terminal device for multimedia materials; and creating a second production container according to the second creation instruction.
[0099] The first production container and the second production container are different, and the second production container has access permission only for the second terminal device.
[0100] It is understandable that after receiving the first creation instruction issued by the first terminal device, in the process of creating the first production container, in the process of generating a video file, or in the process of generating a complete playable video file, a second creation instruction for the video material is received by the second terminal device. In response to the second creation instruction, an independent second production container is created for the second terminal device, and the second production container has access rights only for the second terminal device, wherein the second production container is an exclusive resource of the second terminal device, the first production container is an exclusive resource of the first terminal device, and the first production container and the second production container are different. The video material is a resource stored in the production container and shared by all terminal devices, that is, for the video material of the same channel, multiple terminal devices can perform editing processing at the same time. For example, the first terminal device edits the sports program material broadcasted from 7 to 7:10 on the target channel, and the second terminal device edits the variety show material broadcasted from 10 to 10:10 on the target channel, wherein the video material includes sports editing material and variety editing material.
[0101] S502: In response to a first editing instruction for at least one second material in the multimedia material, edit the at least one second material through a second production container to generate at least one second multimedia file.
[0102] S503: In response to a second merge instruction issued for at least one second multimedia file, create a second stream merge container, wherein the second stream merge container has access rights only to the second production container.
[0103] S504: Perform stream merging processing on at least one second multimedia file through a second stream merging container to generate a second playable multimedia file; wherein the first stream merging container and the second stream merging container are different.
[0104] It can be understood that the specific implementation process of the second terminal device performing video editing and bitstream merging based on the second production container and the second bitstream merging container can be referred to the process of the first terminal device performing video editing and merging based on the first production container and the first bitstream merging container, which will not be repeated here.
[0105] For example, see Figure 6 , Figure 6A composition relationship diagram of a production node provided in an embodiment of the present disclosure, wherein the production node includes a production container of a target channel, multiple production containers exclusively used by different users, and multiple stream merging containers for performing different tasks. The multiple production containers include a first production container exclusively used by a first terminal device and a second production container exclusively used by a second terminal device, and the multiple stream merging containers include a first stream merging container for performing a task provided by the first production container and a second stream merging container for performing a task provided by the second production container. For the first stream merging container, in a scenario where multiple stream files need to be produced, in one case, the first stream merging container includes multiple sub-merging containers, which are recorded as stream 1 merging container to stream n merging container, and each sub-merging container will produce a stream file. In another case, multiple first stream merging containers are provided for the task submitted by the first production container, which are also recorded as stream 1 merging container to stream n merging container, and each first stream merging container will produce a stream file.
[0106] The multimedia file production method provided by the embodiment of the present disclosure adopts a tenant mode. For the video material corresponding to the same target channel, preview data is provided for users of the channel by manufacturing a container, video material sharing is supported, and a user-exclusive production container is provided. Multiple production containers can edit shared videos at the same time, thereby realizing both user isolation and on-demand resource allocation.
[0107] Based on the above embodiments, Figure 7 A diagram showing the composition of a multimedia file production system provided by an embodiment of the present disclosure. The system includes a production container, a production container, and a stream merging container, wherein:
[0108] Creating a container for providing a preview of pre-stored multimedia material;
[0109] The production container is used to edit at least one of the multimedia materials to generate at least one multimedia file;
[0110] The code stream merging container is used to perform code stream merging processing on at least one multimedia file to generate a playable multimedia file.
[0111] Optionally, the system further includes a collection container and a transcoding container, wherein the collection container is used to collect the signal of the target channel, and the transcoding container is used to convert the signal into multimedia material.
[0112] Understandable, such as Figure 7As shown, the target channel corresponds to two collection containers, which are recorded as collection container 1 and collection container 2, wherein collection container 1 is used to receive signal 1 of the target channel sent by region 1, and collection container 2 is used to receive signal 2 of the target channel sent by region 2. Collection container 1 corresponds to n transcoding containers, which are recorded as code stream 1 transcoding container to code stream n transcoding container, and n transcoding containers correspond to n code streams. The target channel corresponds to a production container, which is used to store video data generated by n transcoding containers corresponding to the two collection containers. In the scenario where user 1 and user 2 want to edit video data, user 1 exclusively uses production container 1 to edit video data, and user 2 exclusively uses production container 2 to edit video data. Production container 1 corresponds to n code stream merging containers, and n code stream merging containers correspond to n code streams. The n code stream merging containers merge multiple video files submitted by production container 1 to generate a complete video file.
[0113] The multimedia file production system provided by the embodiment of the present disclosure divides production services that consume different resources into three types of containers: lightweight, medium, and heavy, and performs different life cycle management on the three types of containers, allocating processing tasks on demand, thereby solving the problems of resource monopoly and high resource consumption.
[0114] Based on the above embodiments, Figure 8 The structure diagram of a multimedia file production device provided by an embodiment of the present disclosure is as follows. The multimedia file production device provided by an embodiment of the present disclosure can execute the processing flow provided by an embodiment of a multimedia file production method. As shown in FIG800, the multimedia file production device 800 includes a receiving unit 801, a production unit 802, a creation unit 803 and a merging unit 804, wherein:
[0115] The receiving unit 801 is configured to receive a first creation instruction issued by a first terminal device for multimedia material, and create a first production container according to the first creation instruction, wherein the first production container has access rights only for the first terminal device;
[0116] The production unit 802 is used for responding to a first editing instruction for at least one first material in the multimedia materials, editing the at least one first material through a first production container to generate at least one first multimedia file;
[0117] A creating unit 803 is configured to create a first stream merging container in response to a first merging instruction issued for at least one first multimedia file, wherein the first stream merging container has access permission only for the first production container;
[0118] The merging unit 804 is configured to perform stream merging processing on at least one first multimedia file through a first stream merging container to generate a first playable multimedia file.
[0119] Optionally, the multimedia material is stored in a production container of the target channel, and the multimedia material refers to a collection of all materials generated by the target channel within a set time period.
[0120] Optionally, the multimedia file production device 800 is further used for:
[0121] A preview of the multimedia material is provided to the first terminal device by making a container, so that the first terminal device issues a first creation instruction when previewing the multimedia material.
[0122] The production container is a lightweight container with a period of storage allowed for multimedia materials as a period, wherein the amount of resources consumed by the lightweight container when providing services is less than a first set threshold;
[0123] The production container is a medium-weight container with the use period of the terminal device as a cycle. The production container is released after receiving the end-of-use instruction issued by the terminal device, wherein the amount of resources consumed by the medium-weight container when providing services is greater than the first set threshold and less than the second set threshold;
[0124] The codestream merging container is a heavyweight container with a task period of the codestream merging task submitted by the production container as a period, and the codestream merging container is released after receiving an end task instruction issued by the production container, wherein the amount of resources consumed by the heavyweight container when providing services is greater than a second set threshold; wherein the use period is greater than the task period and less than the allowed storage period.
[0125] Optionally, the multimedia file production device 800 is further used for:
[0126] Receiving a second creation instruction issued by the second terminal device for the multimedia material, and creating a second production container according to the second creation instruction; wherein the first production container and the second production container are different, and the second production container has access rights only for the second terminal device;
[0127] In response to a first editing instruction for at least one second material in the multimedia materials, editing the at least one second material through a second production container to generate at least one second multimedia file;
[0128] In response to a second merge instruction issued for at least one second multimedia file, creating a second code stream merge container, wherein the second code stream merge container has access rights only to the second production container;
[0129] The at least one second multimedia file is subjected to stream merging processing through the second stream merging container to generate a second playable multimedia file; wherein the first stream merging container and the second stream merging container are different.
[0130] Optionally, the first codestream merging container includes multiple sub-merging containers corresponding to different codestreams.
[0131] Optionally, the merging unit 803 is used for:
[0132] Obtaining a code stream merging requirement corresponding to at least one first multimedia file;
[0133] Determine, from among the multiple sub-merge containers, a target sub-merge container corresponding to each target code stream in the same code stream merging requirement;
[0134] The code stream merging process is performed on at least one first multimedia file through each target sub-merging container to generate a first playable multimedia file that meets the corresponding target code stream.
[0135] Optionally, the multimedia file production device 800 is further used for:
[0136] receiving a multimedia signal through a receiving container of a target channel;
[0137] Obtaining a code stream conversion requirement of a multimedia signal, and determining a target transcoding container according to the code stream conversion requirement;
[0138] The multimedia signal is converted into a code stream through the target transcoding container to generate multimedia materials for the target channel.
[0139] Optionally, the multimedia file production device 800 is further used for:
[0140] storing at least one first multimedia file in a file system, and determining a storage path of the at least one first multimedia file in the file system;
[0141] A first merging instruction is generated according to the storage path, wherein the first merging instruction is used to instruct the creation of a first code stream merging container.
[0142] Optionally, the merging unit 804 is used for:
[0143] At least one first multimedia file is read from the file system based on the storage path through the first code stream merging container, and code stream merging processing is performed on the at least one first multimedia file to generate a first playable multimedia file.
[0144] Figure 8 The multimedia file production device of the illustrated embodiment can be used to execute the technical solution of the above-mentioned method embodiment, and its implementation principle and technical effect are similar and will not be repeated here.
[0145] Fig. 9 This is a schematic diagram of the structure of an electronic device provided by an embodiment of the present disclosure. Fig. 9, which shows a schematic diagram of the structure of an electronic device 900 suitable for implementing the embodiment of the present disclosure. The electronic device 900 in the embodiment of the present disclosure may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle terminals (such as vehicle navigation terminals), wearable electronic devices, etc., and fixed terminals such as digital TVs, desktop computers, smart home devices, etc. Fig. 9 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.
[0146] like Fig. 9 As shown, the electronic device 900 may include a processing device 901 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage device 908 into a random access memory (RAM) 903 to implement a multimedia file production method as an embodiment of the present disclosure. In the RAM 903, various programs and data required for the operation of the electronic device 900 are also stored. The processing device 901, the ROM 902, and the RAM 903 are connected to each other via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.
[0147] Typically, the following devices may be connected to the I / O interface 905: an input device 906 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 907 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 908 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 909. The communication device 909 may allow the electronic device 900 to communicate with other devices wirelessly or by wire to exchange data. Although Fig. 9 The electronic device 900 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.
[0148] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program contains a program code for executing the method shown in the flowchart, thereby implementing the above multimedia file production method. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 909, or installed from the storage device 908, or installed from the ROM 902. When the computer program is executed by the processing device 901, the above functions defined in the method of the embodiment of the present disclosure are executed.
[0149] It should be noted that the computer-readable medium disclosed above may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
[0150] In some embodiments, the client and the server may communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), an internet (e.g., the Internet), and a peer-to-peer network (e.g., an ad hoc peer-to-peer network), as well as any currently known or future developed network.
[0151] The computer-readable medium may be included in the electronic device, or may exist independently without being incorporated into the electronic device.
[0152] Optionally, when the above one or more programs are executed by the electronic device, the electronic device may also execute other steps of the above embodiments.
[0153] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages or a combination thereof, including, but not limited to, object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).
[0154] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0155] The units involved in the embodiments described in the present disclosure may be implemented by software or hardware, wherein the name of a unit does not, in some cases, limit the unit itself.
[0156] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.
[0157] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0158] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or gateway that includes a series of elements includes not only those elements, but also other elements that are not explicitly listed, or also includes elements inherent to such process, method, article or gateway. In the absence of further restrictions, the elements defined by the sentence "comprises one..." do not exclude the presence of other identical elements in the process, method, article or gateway that includes the elements.
[0159] The above are only specific embodiments of the present disclosure, so that those skilled in the art can understand or implement the present disclosure. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure will not be limited to these embodiments herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for producing a multimedia file, characterized in that: The method comprises: receiving a first creation instruction issued by a first terminal device for multimedia material, and creating a first production container according to the first creation instruction, wherein the first production container has access rights only for the first terminal device; In response to a first editing instruction for at least one first material among the multimedia materials, editing the at least one first material through the first production container to generate at least one first multimedia file; In response to a first merge instruction issued for the at least one first multimedia file, create a first code stream merge container, wherein the first code stream merge container has access rights only to the first production container; The at least one first multimedia file is subjected to stream merging processing through the first stream merging container to generate a first playable multimedia file.
2. The method according to claim 1, characterized in that The multimedia material is stored in a production container. Before receiving a first creation instruction issued by a first terminal device for the multimedia material, the method further includes: A preview of the multimedia material is provided to the first terminal device through the production container, so that the first terminal device issues the first creation instruction when previewing the multimedia material.
3. The method according to claim 2, characterized in that The production container is a lightweight container with the allowed storage period of the multimedia material as a period, wherein the amount of resources consumed by the lightweight container when providing services is less than a first set threshold; The production container is a medium-weight container with a usage period of the terminal device as a cycle, and the production container is released after receiving an end-of-use instruction issued by the terminal device, wherein the amount of resources consumed by the medium-weight container when providing services is greater than the first set threshold and less than the second set threshold; The codestream merging container is a heavyweight container with a task period of the codestream merging task submitted by the production container as a period, and the codestream merging container is released after receiving an end task instruction issued by the production container, wherein the amount of resources consumed by the heavyweight container when providing services is greater than the second set threshold; wherein the usage period is greater than the task period and less than the allowed storage period.
4. The method according to claim 1, characterized in that After receiving the first creation instruction issued by the first terminal device for the multimedia material, the method further includes: receiving a second creation instruction issued by a second terminal device for the multimedia material, and creating a second production container according to the second creation instruction; wherein the first production container and the second production container are different, and the second production container has access rights only for the second terminal device; In response to a first editing instruction for at least one second material in the multimedia materials, editing the at least one second material through the second production container to generate at least one second multimedia file; In response to a second merge instruction issued for the at least one second multimedia file, create a second code stream merge container, wherein the second code stream merge container has access permission only for the second production container; The at least one second multimedia file is subjected to stream merging processing through the second stream merging container to generate a second playable multimedia file; wherein the first stream merging container and the second stream merging container are different.
5. The method according to claim 1, characterized in that The first code stream merging container includes a plurality of sub-merging containers corresponding to different code streams, and performing code stream merging processing on the at least one first multimedia file by using the first code stream merging container to generate a first playable multimedia file includes: Obtaining a code stream merging requirement corresponding to the at least one first multimedia file; Determine, from the multiple sub-merge containers, a target sub-merge container corresponding to each target code stream in the code stream merging requirement; The at least one first multimedia file is subjected to code stream merging processing through each target sub-merging container to generate a first playable multimedia file that satisfies the corresponding target code stream.
6. The method according to claim 1, characterized in that Before receiving the first creation instruction issued by the first terminal device for the multimedia material, the method further includes: receiving a multimedia signal through a receiving container of a target channel; Acquire a code stream conversion requirement of the multimedia signal, and determine a target transcoding container according to the code stream conversion requirement; The multimedia signal is subjected to code stream conversion processing through the target transcoding container to generate multimedia material of the target channel.
7. The method according to claim 1, characterized in that After the at least one first material is edited by the first production container to generate at least one first multimedia file, the method further includes: storing the at least one first multimedia file in a file system, and determining a storage path of the at least one first multimedia file in the file system; generating a first merging instruction according to the storage path, wherein the first merging instruction is used to instruct the creation of the first codestream merging container; The step of performing stream merging processing on the at least one first multimedia file by using the first stream merging container to generate a first playable multimedia file includes: The at least one first multimedia file is read from the file system based on the storage path through the first code stream merging container, and code stream merging processing is performed on the at least one first multimedia file to generate a first playable multimedia file.
8. A multimedia file production device, characterized in that: The device comprises: A receiving unit, configured to receive a first creation instruction issued by a first terminal device for multimedia material, and create a first production container according to the first creation instruction, wherein the first production container has access rights only for the first terminal device; a production unit, configured to respond to a first editing instruction for at least one first material in the multimedia materials, edit the at least one first material through the first production container to generate at least one first multimedia file; a creating unit, configured to create a first code stream merging container in response to a first merging instruction issued for the at least one first multimedia file, wherein the first code stream merging container has access rights only to the first production container; The merging unit is used to perform code stream merging processing on the at least one first multimedia file through the first code stream merging container to generate a first playable multimedia file.
9. A multimedia file production system, characterized in that: The multimedia file production system includes a production container, a production container and a stream merging container, wherein: The production container is used to provide a preview of the pre-stored multimedia material; The production container is used to edit at least one of the multimedia materials to generate at least one multimedia file; The code stream merging container is used to perform code stream merging processing on the at least one multimedia file to generate a playable multimedia file.
10. An electronic device, characterized in that: include: Memory; processor; as well as Computer programs; The computer program is stored in the memory and is configured to be executed by the processor to implement the multimedia file production method as described in any one of claims 1 to 7.
11. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the multimedia file production method as described in any one of claims 1 to 7 are implemented.