WO2017008611A2 - 多媒体文件上传方法、装置以及存储介质 - Google Patents

多媒体文件上传方法、装置以及存储介质 Download PDF

Info

Publication number
WO2017008611A2
WO2017008611A2 PCT/CN2016/086005 CN2016086005W WO2017008611A2 WO 2017008611 A2 WO2017008611 A2 WO 2017008611A2 CN 2016086005 W CN2016086005 W CN 2016086005W WO 2017008611 A2 WO2017008611 A2 WO 2017008611A2
Authority
WO
WIPO (PCT)
Prior art keywords
multimedia file
file
data
uploading
multimedia
Prior art date
Application number
PCT/CN2016/086005
Other languages
English (en)
French (fr)
Other versions
WO2017008611A3 (zh
Inventor
向晨宇
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2017008611A2 publication Critical patent/WO2017008611A2/zh
Publication of WO2017008611A3 publication Critical patent/WO2017008611A3/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip

Definitions

  • the present invention relates to the field of the Internet, and in particular, to a multimedia file uploading method, apparatus, and storage medium.
  • terminals can download or record multimedia files from the network to store multiple multimedia files in the terminal.
  • the terminal may synthesize the plurality of multimedia files into one multimedia file, and upload the synthesized multimedia file to the server for viewing by other users.
  • the terminal can combine multiple video files into one video file and upload the synthesized video file to the server.
  • the embodiment of the invention provides a multimedia file uploading method, device and storage medium.
  • the third multimedia file is sliced and uploaded.
  • a multimedia file uploading apparatus includes: a processor and a storage medium storing an operation instruction, when executing an operation instruction in the storage medium, the processor executes, for example, Next steps:
  • the third multimedia file is sliced and uploaded.
  • Embodiments of the present invention provide a non-transitory computer readable storage medium having stored thereon computer executable instructions. When the executable instructions are executed in a computer, the following steps are performed:
  • the third multimedia file is sliced and uploaded.
  • FIG. 1 is a flowchart of a multimedia file uploading method according to an embodiment of the present invention
  • FIG. 2 is a flowchart of another multimedia file uploading method according to an embodiment of the present invention.
  • FIG. 3 is a schematic structural diagram of a multimedia file uploading apparatus according to an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of an upload module according to an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of another multimedia file uploading apparatus according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of another multimedia file uploading apparatus according to an embodiment of the present invention.
  • FIG. 1 is a flowchart of a method for uploading a multimedia file according to an embodiment of the present invention.
  • the method can be applied to a terminal such as a mobile phone, a personal computer, or a tablet telegram.
  • the method includes step 101 to Step 104.
  • step 101 the first multimedia file is played.
  • step 102 during the process of playing the first multimedia file, the user behavior event related to the first multimedia file is recorded to obtain a second multimedia file.
  • step 103 the first multimedia file and the second multimedia file are combined to obtain a third multimedia file.
  • step 104 the third multimedia file is sliced and uploaded during the synthesizing process.
  • the process of synthesizing the third multimedia file and the uploading process are performed in parallel, which saves the uploading time of the multimedia file, thereby improving the uploading efficiency of the multimedia file.
  • the third multimedia file is uploaded in pieces, including:
  • the data block is added to the data upload queue and uploaded;
  • the data that has been synthesized and not added to the data upload queue is divided to obtain a plurality of data blocks of a second specified size
  • the plurality of second specified size data blocks are added to the data upload queue and uploaded.
  • the method further includes:
  • the method further includes:
  • the file verification response is received, and the corresponding file verification prompt information is displayed based on the file verification response.
  • the optional embodiments of the present invention may be used in any combination to form an optional embodiment of the present invention.
  • FIG. 2 is a flowchart of a multimedia file uploading method according to an embodiment of the present invention.
  • the method can be applied to a mobile phone, a personal computer, a tablet telegraph, and the like.
  • the method includes step 201 to Step 207.
  • step 201 when the play instruction of the first multimedia file is received, the first multimedia file is played.
  • the terminal when the terminal receives the play instruction of the first multimedia file, the terminal may acquire the multimedia data of the first multimedia file, and play the first based on the multimedia data of the first multimedia file.
  • a multimedia file A multimedia file.
  • the playing instruction of the first multimedia file is used to play the first multimedia file, and the playing instruction may be triggered by the user, the user may trigger by a specified operation, and the specified operation may be a click operation,
  • the sliding operation, the shaking operation, the voice operation, and the like are not specifically limited in the embodiment of the present invention.
  • the first multimedia file may be a multimedia file such as a video or an audio, and the embodiment of the present invention also does not specifically limit the same.
  • the number of the first multimedia files may be one or more, and the number of the first multimedia files is not specifically limited in the embodiment of the present invention.
  • step 202 during the process of playing the first multimedia file, the user behavior event related to the first multimedia file is recorded to obtain a second multimedia file.
  • the terminal in the process of playing the first multimedia file, may collect image data generated by the user, or collect sound data generated by the user, and the terminal may also generate the user data at the same time. Image data and sound data are collected. The terminal encodes the collected image data and/or sound data to obtain a second multimedia file.
  • the user behavior event related to the first multimedia file may refer to a related behavior event generated by the user in the process of playing the first multimedia file by the terminal, that is, playing the first multimedia medium.
  • the image data and sound data generated by the user during the process of the volume file For example, when the first multimedia file is a dance video, the terminal can simulate the dance action in the dance video during the process of playing the dance video, thereby generating image data related to the dance video; When a multimedia file is a song, the terminal can play the song during the process of playing the song, and the sound data related to the song is generated. .
  • the method for recording the user behavior event related to the first multimedia file may refer to the related art, which is not specifically limited in this embodiment of the present invention.
  • step 203 the first multimedia file and the second multimedia file are combined to obtain a third multimedia Body file.
  • the terminal may synthesize according to the data frame of the first multimedia file and the second multimedia file, of course, the actual application
  • the terminal may be combined in other manners, for example, based on the playing duration of the first multimedia file and the second multimedia file, which is not specifically limited in the embodiment of the present invention.
  • the operation of synthesizing the terminal according to the data frame of the first multimedia file and the second multimedia file may be: the terminal may separately obtain the location from the first multimedia file and the second multimedia file. The data frame in the same position, and the acquired data frames are combined to obtain a new data frame, thereby forming a third multimedia file.
  • the first multimedia file and the second multimedia file may include image data and sound data.
  • the third multimedia file may be synthesized by the image data in the first multimedia file and the sound data in the second multimedia file; the third multimedia file may also be composed of the sound data in the first multimedia file. Combining with image data in the second multimedia file; or the third multimedia file may also be composed of image data and sound data in the first multimedia file and image data and sound data in the second multimedia file synthesis. This embodiment of the present invention does not limit this.
  • the terminal may implement the method provided by the embodiment of the present invention by using an application, and since an application program may include one main process and multiple slave processes, the main process affects the application.
  • An important process of response speed therefore, in order not to affect the response speed of the application, the terminal can synthesize the first multimedia file and the second multimedia file through a slave process included in the application. That is, the slave process can run in parallel with the master process to implement asynchronous synthesis of the first multimedia file and the second multimedia file.
  • step 204 in the synthesis process, when each of the data blocks of a specified size is synthesized, it is judged whether or not the synthesis process is finished, and if so, step 205 is performed, otherwise, step 206 is performed.
  • the terminal can judge whether the synthesis process ends when each data block of a specified size is synthesized.
  • the operation of the terminal to determine whether the merging process is finished may be: the terminal may acquire remaining data of the first multimedia file and remaining data of the second multimedia file, where the remaining data refers to data that is not synthesized; If there is a surplus in the first multimedia file If the data or the second multimedia file has remaining data, the terminal may determine that the synthesis process has not ended yet, and if the first multimedia file does not have remaining data and the second multimedia file does not have remaining data, the The terminal can determine that the synthesis process has ended.
  • the terminal can determine whether the merging process is completed by using the foregoing manner, and the terminal can also be judged by other means, which is not listed in the embodiment of the present invention.
  • the specified size may be set in advance, for example, the specified size may be 20K, 30K, etc., which is not specifically limited in this embodiment of the present invention.
  • step 205 the data block is added to the data upload queue, and step 207 is performed.
  • the synthesized data may be cached, and the cached data may be data that has been synthesized and not added to the data upload queue, so when the terminal determines that the synthesizing process is not completed, the terminal may acquire a data block of a specified size from the cached data, and add the data block to the data uploading queue.
  • the data uploading queue is used to store the data blocks to be uploaded, and the data blocks to be uploaded may be arranged in a certain order in the data uploading queue, or the data blocks to be uploaded may not be arranged in a certain order, but A sequence identifier may be set for each data block to be uploaded, which is not specifically limited in this embodiment of the present invention.
  • step 206 the data that has been synthesized and not added to the data uploading queue is divided, and a plurality of data blocks of a specified size are obtained, and the data blocks of the specified size are added to the data uploading queue, and step 207 is performed.
  • the terminal may continuously upload the data block in the data upload queue, that is, the data upload queue is always in the upload state, and therefore, when the terminal determines the synthesis process If the speed of the terminal is greater than the upload speed, the data in the cache may be more. In this case, the terminal can directly divide the data in the cache to obtain a plurality of data blocks of a specified size. Add the multiple data blocks of the specified size to the data upload queue.
  • step 207 the data block in the data upload queue is uploaded until the third multimedia file is uploaded.
  • the data uploading queue stores the data blocks to be uploaded, and the data blocks to be uploaded have a certain order. Therefore, when the terminal uploads the data blocks in the data uploading queue, the terminal may In this order, the data block in the data upload queue is uploaded until the third multimedia file is uploaded.
  • the terminal synthesizes the first multimedia file and the second multimedia file through a slave process included in the application.
  • the terminal may also start another slave process, and upload the synthesized data through another process, for the convenience of description, the first multimedia file is
  • the slave process that is synthesized with the second multimedia file may be referred to as a first slave process
  • the slave process that uploads the synthesized data is referred to as a second slave process.
  • the second slave process may be a process corresponding to the data upload queue. Therefore, when the first slave process joins the data block to the data upload queue, the second slave process may upload the data block in the data upload queue. That is, the first slave process can run in parallel with the second slave process to implement asynchronous upload of the multimedia file.
  • the terminal may start the second slave process when the first data block of the specified size is synthesized.
  • the terminal may also start the second slave process when the data blocks of the specified size are combined and the synthesis process is not finished. This embodiment of the present invention does not specifically limit this.
  • the data block in the cache may be deleted, thereby avoiding a large memory footprint of the terminal and causing the application to crash.
  • the terminal since the terminal uploads the third multimedia file, packet loss may occur. Therefore, after the terminal uploads the third multimedia file, the terminal may send a file check to the server.
  • the request the file verification request carries the data amount of the third multimedia file, so that the server returns a file verification response after verifying the data volume of the third multimedia file; when receiving the verification response of the file Based on the file verification response, the corresponding file verification prompt information is displayed.
  • the operation of returning the file verification response after the server performs verification based on the total data size may be: the server determines the amount of data received, and compares the received data amount with the data volume of the third multimedia file, if If the two are the same, it is determined that the file upload is successful. Otherwise, it is determined that the file upload failed.
  • the server may send a file upload success response to the terminal, and when it is determined that the file upload fails, the server may send a file upload failure response to the terminal, that is, the file verification response includes file uploading. Successful response and file upload failure response.
  • the terminal displays the corresponding file verification prompt information based on the file verification response.
  • the operation may be: when the file verification response is a file upload success response, the terminal may display a file upload success prompt message, and when the file verification response is a file upload failure response, the terminal may display a file upload failure prompt message. .
  • the terminal may re-synthesize the first multimedia file and the second multimedia file, and again Upload.
  • the terminal may further record the user behavior events related to the first multimedia file, and then perform synthesis and upload.
  • the process of synthesizing the third multimedia file and the uploading process are performed in parallel, which saves the uploading time of the multimedia file, thereby improving the uploading efficiency of the multimedia file.
  • FIG. 3 is a schematic structural diagram of a multimedia file uploading apparatus according to an embodiment of the present invention, which may be applied to a terminal such as a mobile terminal or a personal computer.
  • the apparatus includes:
  • the playing module 301 plays the first multimedia file
  • the recording module 302 is configured to: during a process of playing the first multimedia file, record a user behavior event related to the first multimedia file to obtain a second multimedia file;
  • a synthesizing module 303 configured to synthesize the first multimedia file and the second multimedia file to obtain a third multimedia file
  • the uploading module 304 is configured to upload the third multimedia file into pieces during the synthesizing process.
  • the uploading module 304 includes:
  • the determining unit 3041 is configured to determine, when each of the first specified size data blocks is synthesized in the synthesizing process, whether the synthesizing process ends;
  • the first adding unit 3042 is configured to add the data block to the data upload queue if the synthesizing process is not completed;
  • the dividing unit 3043 is configured to, if the merging process has ended, divide the data that has been synthesized and not added to the data uploading queue, to obtain a plurality of data blocks of a second specified size;
  • a second adding unit 3044 configured to add the plurality of data blocks of the second specified size to the data uploading queue
  • the uploading unit 3045 is configured to upload the data block in the data upload queue.
  • the device further includes:
  • the delete module is used to delete the uploaded data block stored in the cache.
  • the apparatus further includes:
  • the sending module 305 is configured to send a file verification request to the server, where the file verification request carries the data amount of the third multimedia file, so that the server returns the file based on the data amount of the third multimedia file. Test response
  • the display module 306 is configured to display corresponding file verification prompt information based on the file verification response when the file verification response is received.
  • the process of synthesizing the third multimedia file and the uploading process are performed in parallel, which saves the uploading time of the multimedia file, thereby improving the uploading efficiency of the multimedia file.
  • multimedia file uploading device provided by the foregoing embodiment is only illustrated by the division of the foregoing functional modules when the multimedia file is uploaded. In actual applications, the function distribution may be completed by different functional modules as needed. The internal structure of the device is divided into different functional modules to perform all or part of the functions described above. In addition, the multimedia file uploading device and the multimedia file uploading device are provided in the same embodiment. The specific implementation process is described in detail in the method embodiment, and details are not described herein again.
  • FIG. 6 is a schematic structural diagram of a terminal according to an embodiment of the present invention.
  • the terminal 600 can include a communication unit 610, a memory 620 including one or more computer readable storage media, an input unit 630, a display unit 640, a sensor 650, an audio circuit 660, and a WIFI (Wireless Fidelity).
  • the module 670 includes a processor 680 having one or more processing cores, and a power supply 690 and the like. It will be understood by those skilled in the art that the terminal structure shown in FIG. 6 does not constitute a limitation to the terminal, and may include more or less components than those illustrated, or a combination of certain components, or different component arrangements.
  • the communication unit 610 can be used for transmitting and receiving information and receiving and transmitting signals during a call.
  • the communication unit 610 can be an RF (Radio Frequency) circuit, a router, a modem, or the like.
  • RF Radio Frequency
  • the communication unit 610 is an RF circuit
  • the downlink information of the base station is received, and then processed by one or more processors 680; in addition, data related to the uplink is transmitted to the base station.
  • an RF circuit as a communication unit includes, but is not limited to, an antenna, at least one amplifier, a tuner, one or more oscillators, and a SIM (Subscriber Identification Module). Identity module) card, transceiver, coupler, LNA (Low Noise Amplifier), duplexer, etc.
  • the communication unit 610 can also communicate with the network and other devices through wireless communication.
  • the wireless communication may use any communication standard or protocol, including but not limited to GSM (Global System of Mobile communication), GPRS (General Packet Radio Service), CDMA (Code Division Multiple Access). , Code Division Multiple Access), WCDMA (Wideband Code Division Multiple Access), LTE (Long Term Evolution), e-mail, SMS (Short Messaging Service), and the like.
  • the memory 620 can be used to store software programs and modules, and the processor 680 executes various functional applications and data processing by running software programs and modules stored in the memory 620.
  • the memory 620 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored according to The data created by the use of the terminal 600 (such as audio data, phone book, etc.) and the like.
  • memory 620 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device. Accordingly, memory 620 can also include a memory controller to provide access to memory 620 by processor 680 and input unit 630.
  • Input unit 630 can be used to receive input numeric or character information, as well as to generate keyboard, mouse, joystick, optical or trackball signal inputs related to user settings and function controls.
  • input unit 630 can include touch-sensitive surface 631 as well as other input devices 632.
  • a touch-sensitive surface 631 also referred to as a touch display or trackpad, can collect touch operations on or near the user (eg, the user uses a finger, stylus, etc., on any suitable object or accessory on the touch-sensitive surface 631 or The operation near the touch-sensitive surface 631) and driving the corresponding connecting device according to a preset program.
  • the touch-sensitive surface 631 can include two portions of a touch detection device and a touch controller.
  • the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts the touch information into contact coordinates, and sends the touch information.
  • the processor 680 is provided and can receive commands from the processor 680 and execute them.
  • the touch sensitive surface 631 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves.
  • the input unit 630 can also include other input devices 632.
  • other input devices 632 may include, but are not limited to, a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), One or more of a trackball, a mouse, a joystick, and the like.
  • Display unit 640 can be used to display information entered by the user or information provided to the user and various graphical user interfaces of terminal 600, which can be composed of graphics, text, icons, video, and any combination thereof.
  • the display unit 640 can include a display panel 641.
  • the display panel 641 can be configured in the form of an LCD (Liquid Crystal Display), an OLED (Organic Light-Emitting Diode), or the like.
  • the touch-sensitive surface 631 can cover the display panel 641, and when the touch-sensitive surface 631 detects a touch operation thereon or nearby, it is transmitted to the processor 680 to determine the type of touch event, and then the processor 680 is based on the touch event.
  • the type provides a corresponding visual output on display panel 641.
  • touch-sensitive surface 631 and display panel 641 are implemented as two separate components to implement input and input functions, in some embodiments, touch-sensitive surface 631 can be integrated with display panel 641 for input. And output function.
  • Terminal 600 may also include at least one type of sensor 650, such as a light sensor, motion sensor, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 641 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 641 and/or the backlight when the terminal 600 moves to the ear.
  • the gravity acceleration sensor can detect the magnitude of acceleration in all directions (usually three axes). When it is stationary, it can detect the magnitude and direction of gravity.
  • the gesture of the mobile phone such as horizontal and vertical screen switching, related Game, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tapping), etc.; as for the terminal 600 can also be configured with gyroscopes, barometers, hygrometers, thermometers, infrared sensors and other sensors, here Let me repeat.
  • An audio circuit 660, a speaker 661, and a microphone 662 can provide an audio interface between the user and the terminal 600.
  • the audio circuit 660 can transmit the converted electrical data of the received audio data to the speaker 661 for conversion to the sound signal output by the speaker 661; on the other hand, the microphone 662 converts the collected sound signal into an electrical signal by the audio circuit 660. After receiving, it is converted into audio data, and then processed by the audio data output processor 680, sent to, for example, another terminal via the communication unit 610, or outputted to the memory 620 for further processing.
  • the audio circuit 660 may also include an earbud jack to provide communication of the peripheral earphones with the terminal 600.
  • the terminal may be configured with a wireless communication unit 670, which may be a WIFI module.
  • WIFI belongs to short-range wireless transmission technology, and terminal 600 passes none.
  • the line communication unit 670 can help the user to send and receive emails, browse web pages, access streaming media, etc., which provides users with wireless broadband Internet access.
  • the wireless communication unit 670 is shown in the drawing, it can be understood that it does not belong to the essential configuration of the terminal 600, and may be omitted as needed within the scope of not changing the essence of the invention.
  • Processor 660 is the control center of terminal 600, which connects various portions of the entire handset using various interfaces and lines, by running or executing software programs and/or modules stored in memory 620, and recalling data stored in memory 620, The various functions and processing data of the terminal 600 are performed to perform overall monitoring of the mobile phone.
  • the processor 680 may include one or more processing cores; preferably, the processor 680 may integrate an application processor and a modem processor, where the application processor mainly processes an operating system, a user interface, an application, and the like.
  • the modem processor primarily handles wireless communications. It will be appreciated that the above described modem processor may also not be integrated into the processor 680.
  • the terminal 600 also includes a power source 690 (such as a battery) that supplies power to the various components.
  • a power source 690 such as a battery
  • the power source can be logically coupled to the processor 680 through a power management system to manage functions such as charging, discharging, and power management through the power management system.
  • Power supply 660 may also include any one or more of a DC or AC power source, a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator, and the like.
  • the terminal 600 may further include a camera, a Bluetooth module, and the like, and details are not described herein.
  • the terminal further includes one or more programs, the one or more programs being stored in the memory and configured to be executed by one or more processors, the one or more programs including The instructions for the multimedia file uploading method as described below are provided in the embodiment of the present invention:
  • the third multimedia file is sliced and uploaded.
  • the third multimedia file is uploaded in pieces, including:
  • the data block is added to the data upload queue and uploaded;
  • the data that has been synthesized and not added to the data upload queue is divided to obtain a plurality of data blocks of a second specified size
  • the plurality of second specified size data blocks are added to the data upload queue and uploaded.
  • the method further includes:
  • the method further includes:
  • the file verification response is received, and the corresponding file verification prompt information is displayed based on the file verification response.
  • the process of synthesizing the third multimedia file and the uploading process are performed in parallel, which saves the uploading time of the multimedia file, thereby improving the uploading efficiency of the multimedia file.
  • a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
  • the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明提供了一种多媒体文件上传方法、装置以及存储介质,属于互联网领域。该方法包括:播放第一多媒体文件;在播放第一多媒体文件的过程中,对与第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;将第一多媒体文件和第二多媒体文件合成,得到第三多媒体文件;在合成过程中,将第三多媒体文件分片上传。根据本发明所提供的技术方案,第三多媒体文件的合成过程和上传过程并行执行,节省了多媒体文件的上传时间,从而降低了多媒体文件的上传效率。

Description

多媒体文件上传方法、装置以及存储介质
本申请要求于2015年7月15日提交中国专利局、申请号为201510417394.5、发明名称为“多媒体文件上传方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及互联网领域,特别涉及一种多媒体文件上传方法、装置以及存储介质。
背景技术
随着互联网的快速发展,终端可以从网络上下载或者自己录制多媒体文件,从而在终端中存储多个多媒体文件。为了丰富多媒体文件的播放内容,以及提高多媒体文件的播放效果,该终端可以将该多个多媒体文件合成一个多媒体文件,并将合成的多媒体文件上传到服务器,以供其他用户进行观看。比如,该终端可以将多个视频文件合成一个视频文件,并将合成后的视频文件上传到服务器。
发明内容
本发明实施例提供了一种多媒体文件上传方法、装置以及存储介质。
本发明实施例所提供的一种多媒体文件上传方法包括:
播放第一多媒体文件;
在播放所述第一多媒体文件的过程中,对与所述第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;
将所述第一多媒体文件和所述第二多媒体文件合成,得到第三多媒体文件;以及
在合成过程中,将所述第三多媒体文件分片上传。
本发明实施例所提供的一种多媒体文件上传装置包括:处理器和存储有操作指令的存储介质,当运行所述存储介质中的操作指令时,所述处理器执行如 下步骤:
播放第一多媒体文件;
在播放所述第一多媒体文件的过程中,对与所述第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;
将所述第一多媒体文件和所述第二多媒体文件合成,得到第三多媒体文件;以及
在合成过程中,将所述第三多媒体文件分片上传。
本发明实施例提供一种非瞬时性的计算机可读存储介质,其上存储有计算机可执行指令,当计算机中运行这些可执行指令时,执行如下步骤:
播放第一多媒体文件;
在播放所述第一多媒体文件的过程中,对与所述第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;
将所述第一多媒体文件和所述第二多媒体文件合成,得到第三多媒体文件;以及
在合成过程中,将所述第三多媒体文件分片上传。
附图说明
图1是本发明实施例提供的一种多媒体文件上传方法流程图;
图2是本发明实施例提供的另一种多媒体文件上传方法流程图;
图3是本发明实施例提供的一种多媒体文件上传装置结构示意图;
图4是本发明实施例提供的一种上传模块结构示意图;
图5是本发明实施例提供的另一种多媒体文件上传装置结构示意图;以及
图6是本发明实施例提供的再一种多媒体文件上传装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的一种多媒体文件上传方法流程图,本方法可以应用于手机、个人电脑、平板电报等终端。参见图1,该方法包括步骤101至 步骤104。
在步骤101中,播放第一多媒体文件。
在步骤102中,在播放第一多媒体文件的过程中,对与第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件。
在步骤103中,将第一多媒体文件和第二多媒体文件合成,得到第三多媒体文件。
在步骤104中,在合成过程中,将第三多媒体文件分片上传。
在本发明实施例中,第三多媒体文件的合成过程和上传过程是并行执行的,节省了多媒体文件上传时间,从而提高了多媒体文件的上传效率。
可选地,在合成过程中,将第三多媒体文件分片上传,包括:
在合成过程中,当每合成第一指定大小的数据块时,判断该合成过程是否结束;
如果该合成过程未结束,则将该数据块加入数据上传队列并上传;
如果该合成过程已结束,则对当前已合成且未加入数据上传队列的数据进行划分,得到多个第二指定大小的数据块;
将该多个第二指定大小的数据块加入该数据上传队列并上传。
可选地,在合成过程中,将第三多媒体文件分片上传之后,还包括:
将缓存中所存储的已上传数据块删除。
可选地,在合成过程中,将第三多媒体文件分片上传之后,还包括:
向服务器发送文件校验请求,该文件校验请求中携带第三多媒体文件的数据量,使该服务器基于第三多媒体文件的数据量进行校验后返回文件校验响应;
接收到该文件校验响应,基于该文件校验响应,显示对应的文件校验提示信息。
上述所有可选技术方案,均可按照任意结合形成本发明的可选实施例,本发明实施例对此不再一一赘述。
图2是本发明实施例提供的一种多媒体文件上传方法流程图,本方法可以应用于手机、个人电脑、平板电报等终端。参见图2,该方法包括步骤201至 步骤207。
在步骤201中,当接收到第一多媒体文件的播放指令时,播放第一多媒体文件。
在本发明实施例中,当终端接收到第一多媒体文件的播放指令时,该终端可以获取第一多媒体文件的多媒体数据,并基于第一多媒体文件的多媒体数据,播放第一多媒体文件。
需要说明的是,第一多媒体文件的播放指令用于播放第一多媒体文件,且该播放指令可以由用户触发,该用户可以通过指定操作触发,且该指定操作可以为点击操作、滑动操作、摇晃操作、语音操作等等,本发明实施例对此不做具体限定。
另外,第一多媒体文件可以为视频、音频等多媒体文件,本发明实施例对此同样不做具体限定。再者,第一多媒体文件可以为一个,也可以为多个,本发明实施例对第一多媒体文件的个数不做具体限定。
在步骤202中,在播放第一多媒体文件的过程中,对与第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件。
在本发明实施例中,终端在播放第一多媒体文件的过程中,该终端可以对用户产生的图像数据进行采集,或者对用户产生的声音数据进行采集,该终端还可以同时对用户产生图像数据和声音数据进行采集。终端将采集到的图像数据和/或声音数据进行编码,从而得到第二多媒体文件。
需要说明的是,与第一多媒体文件相关的用户行为事件可以是指该终端播放第一多媒体文件的过程中该用户产生的相关行为事件,也即是,在播放第一多媒体文件的过程中,该用户产生的图像数据和声音数据。比如,当第一多媒体文件为一段舞蹈视频时,该终端在播放该舞蹈视频的过程中,用户可以模仿该舞蹈视频中的舞蹈动作,从而产生与该舞蹈视频相关的图像数据;当第一多媒体文件为一段歌曲时,终端可以在播放该歌曲的过程中,用户对该歌曲进行翻唱,产生与该歌曲相关的声音数据。。
其中,该终端对与第一多媒体文件相关的用户行为事件进行录制的方法可以参考相关技术,本发明实施例对此不做具体限定。
在步骤203中,将第一多媒体文件和第二多媒体文件合成,得到第三多媒 体文件。
由于第二多媒体文件是对与第一多媒体文件相关的用户行为事件进行录制得到,因此,第一多媒体文件和第二多媒体文件包括的数据帧基本相等。因此,当该终端将第一多媒体文件和第二多媒体文件进行合成时,该终端可以按照第一多媒体文件和第二多媒体文件的数据帧进行合成,当然,实际应用中,该终端还可以通过其他的方式进行合成,比如,基于第一多媒体文件和第二多媒体文件的播放时长进行合成,本发明实施例对此不做具体限定。其中,该终端按照第一多媒体文件和第二多媒体文件的数据帧进行合成的操作可以为:该终端可以从第一多媒体文件和第二多媒体文件中,分别获取位于同一位置的数据帧,并将获取的数据帧进行合成,得到一个新数据帧,从而构成第三多媒体文件。
如上所述,第一多媒体文件和第二多媒体文件可能包括图像数据和声音数据。第三多媒体文件可以由第一多媒体文件中的图像数据和第二多媒体文件中的声音数据合成;第三多媒体文件还可以由第一多媒体文件中的声音数据和第二多媒体文件中的图像数据合成;或者第三多媒体文件还可以由第一多媒体文件中的图像数据和声音数据以及第二多媒体文件中的图像数据和声音数据合成。本发明实施例对此不做限定。
另外,在本发明实施例中,该终端可以通过一个应用程序来实现本发明实施例提供的方法,并且由于一个应用程序可以包括一个主进程和多个从进程,而主进程是影响该应用程序响应速度的重要进程,因此,为了不影响该应用程序的响应速度,该终端可以通过该应用程序包括的一个从进程,将第一多媒体文件和第二多媒体文件进行合成。也即是,该从进程可以与该主进程并行运行,实现第一多媒体文件和第二多媒体文件的异步合成。
在步骤204中,在合成过程中,当每合成指定大小的数据块时,判断合成过程是否结束,如果是,则执行步骤205,否则,执行步骤206。
该终端在合成第三多媒体文件的过程中,当每合成指定大小的数据块时,该终端可以判断该合成过程是否结束。而该终端判断该合成过程是否结束的操作可以为:该终端可以获取第一多媒体文件的剩余数据和第二多媒体文件的剩余数据,此处剩余数据是指未进行合成的数据;如果第一多媒体文件存在剩余 数据或者第二多媒体文件存在剩余数据,则该终端可以确定该合成过程还未结束,而如果第一多媒体文件不存在剩余数据且第二多媒体文件不存在剩余数据,则该终端可以确定该合成过程已结束。
需要说明的是,该终端不仅可以通过上述方式来判断该合成过程是否结束,该终端还可以通过其他的方式来判断,本发明实施例对此不再一一列出。
另外,指定大小可以事先设置,比如,指定大小可以为20K、30K等,本发明实施例对此不做具体限定。
在步骤205中,将该数据块加入数据上传队列,执行步骤207。
该终端将第一多媒体文件和第二多媒体文件进行合成时,可以将已合成的数据进行缓存,该缓存的数据可以为已合成且未加入数据上传队列的数据,因此,当该终端判断出该合成过程未结束时,该终端可以从缓存的数据中,获取指定大小的数据块,并将该数据块加入该数据上传队列中。
其中,数据上传队列用于存储待上传的数据块,且待上传的数据块在该数据上传队列中可以按照一定的顺序进行排列,或者待上传的数据块可以不按照一定的顺序进行排列,但是可以为每个待上传的数据块设置一个顺序标识,本发明实施例对此不做具体限定。
在步骤206中,对当前已合成且未加入数据上传队列的数据进行划分,得到多个指定大小的数据块,将该多个指定大小的数据块加入该数据上传队列,执行步骤207。
当数据上传队列中存在数据块时,该终端可以持续地将该数据上传队列中的数据块进行上传,也即是,该数据上传队列一直处于上传状态,因此,当该终端判断出该合成过程已结束时,如果该终端的合成速度大于上传速度,则该终端缓存中的数据可能较多,此时,该终端可以直接对缓存中的数据进行划分,得到多个指定大小的数据块,并将该多个指定大小的数据块加入该数据上传队列。
在步骤207中,将该数据上传队列中的数据块进行上传,直至将第三多媒体文件上传完毕。
由于数据上传队列中存储待上传的数据块,且待上传的数据块存在一定的顺序,因此,当该终端将该数据上传队列中的数据块进行上传时,该终端可以 按照该顺序,将该数据上传队列中的数据块进行上传,直至将第三多媒体文件上传完毕。
上述步骤203中提到,该终端是通过该应用程序包括的一个从进程,将第一多媒体文件和第二多媒体文件进行合成。而为了在合成数据的过程中将已合成的数据进行上传,该终端还可以启动另一个从进程,通过另一个从进程将已合成的数据进行上传,为了便于描述,将第一多媒体文件和第二多媒体文件进行合成的从进程可以称为第一从进程,将已合成的数据进行上传的从进程称为第二从进程。第二从进程可以为该数据上传队列对应的进程,因此,当第一从进程将该数据块加入该数据上传队列时,第二从进程可以将该数据上传队列中的数据块进行上传。也即是,第一从进程可以与第二从进程并行运行,实现多媒体文件的异步上传。
其中,该终端可以合成第一个指定大小的数据块时,启动第二从进程,当然,该终端还可以在合成多个指定大小的数据块且合成过程未结束时,启动第二从进程,本发明实施例对此不做具体限定。
优选地,为了节省该终端的内存占用大小,当每个数据块上传完毕时,可以将缓存中该数据块删除,从而避免终端的内存占用较大,而导致应用程序崩溃的现象。
进一步地,由于该终端上传第三多媒体文件的过程中,可能会出现丢包的情况,因此,当该终端将第三多媒体文件上传完毕之后,该终端可以向服务器发送文件校验请求,该文件校验请求中携带第三多媒体文件的数据量,使服务器基于第三多媒体文件的数据量进行校验后返回文件校验响应;当接收到该文件校验响应时,基于该文件校验响应,显示对应的文件校验提示信息。
其中,服务器基于该总数据大小进行校验后返回文件校验响应的操作可以为:该服务器确定接收到的数据量,将接收到的数据量与第三多媒体文件数据量进行比较,如果两者相同,则确定文件上传成功,否则,确定文件上传失败。而当确定文件上传成功时,该服务器可以向终端发送文件上传成功响应,而当确定文件上传失败时,该服务器可以向该终端发送文件上传失败响应,也即是,文件校验响应包括文件上传成功响应和文件上传失败响应。
相应地,该终端基于该文件校验响应,显示对应的文件校验提示信息的操 作可以为:当该文件校验响应为文件上传成功响应时,该终端可以显示文件上传成功提示信息,而当该文件校验响应为文件上传失败响应时,该终端可以显示文件上传失败提示信息。
进一步地,当该终端接收到文件上传失败响应时,确定第三多媒体文件上传失败,此时,该终端可以重新将第一多媒体文件和第二多媒体文件进行合成,并再次上传。可选地,该终端还可以重新对与第一多媒体文件相关的用户行为事件进行录制,再进行合成与上传。
在本发明实施例中,第三多媒体文件的合成过程和上传过程是并行执行的,节省了多媒体文件上传时间,从而提高了多媒体文件的上传效率。
图3是本发明实施例提供的一种多媒体文件上传装置结构示意图,该装置可以应用于移动终端、个人电脑等终端。参见图3,该装置包括:
播放模块301,播放第一多媒体文件;
录制模块302,用于在播放第一多媒体文件的过程中,对与第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;
合成模块303,用于将第一多媒体文件和第二多媒体文件合成,得到第三多媒体文件;
上传模块304,用于在合成过程中,将第三多媒体文件分片上传。
可选地,参见图4,上传模块304包括:
判断单元3041,用于在合成过程中,当每合成第一指定大小的数据块时,判断该合成过程是否结束;
第一加入单元3042,用于如果该合成过程未结束,则将该数据块加入数据上传队列;
划分单元3043,用于如果该合成过程已结束,则对当前已合成且未加入该数据上传队列的数据进行划分,得到多个第二指定大小的数据块;
第二加入单元3044,用于将该多个第二指定大小的数据块加入该数据上传队列;
上传单元3045,用于将该数据上传队列中的数据块进行上传。
可选地,该装置还包括:
删除模块,用于将缓存中所存储的已上传数据块删除。
可选地,参见图5,该装置还包括:
发送模块305,用于向服务器发送文件校验请求,该文件校验请求中携带第三多媒体文件的数据量,使服务器基于第三多媒体文件的数据量进行校验后返回文件校验响应;
显示模块306,用于当接收到该文件校验响应时,基于该文件校验响应,显示对应的文件校验提示信息。
在本发明实施例中,第三多媒体文件的合成过程和上传过程是并行执行的,节省了多媒体文件上传时间,从而提高了多媒体文件的上传效率。
需要说明的是:上述实施例提供的多媒体文件上传装置在多媒体文件上传时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的多媒体文件上传装置与多媒体文件上传装置方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图6是本发明实施例提供的一种终端结构示意图。参见图6,终端600可以包括通信单元610、包括有一个或一个以上计算机可读存储介质的存储器620、输入单元630、显示单元640、传感器650、音频电路660、WIFI(Wireless Fidelity,无线保真)模块670、包括有一个或者一个以上处理核心的处理器680、以及电源690等部件。本领域技术人员可以理解,图6中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
通信单元610可用于收发信息或通话过程中,信号的接收和发送,该通信单元610可以为RF(Radio Frequency,射频)电路、路由器、调制解调器、等网络通信设备。特别地,当通信单元610为RF电路时,将基站的下行信息接收后,交由一个或者一个以上处理器680处理;另外,将涉及上行的数据发送给基站。通常,作为通信单元的RF电路包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、SIM(Subscriber Identification Module,用户 身份模块)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,通信单元610还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端600的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器620还可以包括存储器控制器,以提供处理器680和输入单元630对存储器620的访问。
输入单元630可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。优选地,输入单元630可包括触敏表面631以及其他输入设备632。触敏表面631,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面631上或在触敏表面631附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面631。除了触敏表面631,输入单元630还可以包括其他输入设备632。优选地,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、 轨迹球、鼠标、操作杆等中的一种或多种。
显示单元640可用于显示由用户输入的信息或提供给用户的信息以及终端600的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元640可包括显示面板641,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板641。进一步的,触敏表面631可覆盖显示面板641,当触敏表面631检测到在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图6中,触敏表面631与显示面板641是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面631与显示面板641集成而实现输入和输出功能。
终端600还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板641的亮度,接近传感器可在终端600移动到耳边时,关闭显示面板641和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端600还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路660、扬声器661,传声器662可提供用户与终端600之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660接收后转换为音频数据,再将音频数据输出处理器680处理后,经通信单元610以发送给比如另一终端,或者将音频数据输出至存储器620以便进一步处理。音频电路660还可能包括耳塞插孔,以提供外设耳机与终端600的通信。
为了实现无线通信,该终端上可以配置有无线通信单元670,该无线通信单元670可以为WIFI模块。WIFI属于短距离无线传输技术,终端600通过无 线通信单元670可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图中示出了无线通信单元670,但是可以理解的是,其并不属于终端600的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器660是终端600的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行终端600的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器680可包括一个或多个处理核心;优选的,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。
终端600还包括给各个部件供电的电源690(比如电池),优选的,电源可以通过电源管理系统与处理器680逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源660还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端600还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本实施例中,终端还包括有一个或者一个以上的程序,这一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行,所述一个或者一个以上程序包含用于进行本发明实施例提供的如下所述的多媒体文件上传方法的指令:
播放第一多媒体文件;
在播放第一多媒体文件的过程中,对与第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;
将第一多媒体文件和第二多媒体文件合成,得到第三多媒体文件;以及
在合成过程中,将第三多媒体文件分片上传。
可选地,在合成过程中,将第三多媒体文件分片上传,包括:
在合成过程中,当每合成第一指定大小的数据块时,判断该合成过程是否结束;
如果该合成过程未结束,则将该数据块加入数据上传队列并上传;
如果该合成过程已结束,则对当前已合成且未加入数据上传队列的数据进行划分,得到多个第二指定大小的数据块;
将该多个第二指定大小的数据块加入该数据上传队列并上传。
可选地,在合成过程中,将第三多媒体文件分片上传之后,还包括:
将缓存中所存储的已上传数据块删除。
可选地,在合成过程中,将第三多媒体文件分片上传之后,还包括:
向服务器发送文件校验请求,该文件校验请求中携带第三多媒体文件的数据量,使该服务器基于第三多媒体文件的数据量进行校验后返回文件校验响应;
接收到该文件校验响应,基于该文件校验响应,显示对应的文件校验提示信息。
在本发明实施例中,第三多媒体文件的合成过程和上传过程是并行执行的,节省了多媒体文件上传时间,从而提高了多媒体文件的上传效率。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

  1. 一种多媒体文件上传方法,包括:
    播放第一多媒体文件;
    在播放所述第一多媒体文件的过程中,对与所述第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;
    将所述第一多媒体文件和所述第二多媒体文件合成,得到第三多媒体文件;以及
    在合成过程中,将所述第三多媒体文件分片上传。
  2. 如权利要求1所述的方法,所述在合成过程中,将所述第三多媒体文件分片上传,包括:
    在所述合成过程中,当每合成第一指定大小的数据块时,判断所述合成过程是否结束;
    如果所述合成过程未结束,则将所述数据块加入数据上传队列并上传;
    如果所述合成过程已结束,则对当前已合成且未加入所述数据上传队列的数据进行划分,得到多个第二指定大小的数据块;
    将所述多个第二指定大小的数据块加入所述数据上传队列并上传。
  3. 如权利要求1或2所述的方法,所述在合成过程中,将所述第三多媒体文件分片上传之后,还包括:
    将缓存中所存储的已上传数据块删除。
  4. 如权利要求1所述的方法,所述在合成过程中,将所述第三多媒体文件分片上传之后,还包括:
    向服务器发送文件校验请求,所述文件校验请求中携带所述第三多媒体文件的数据量,使所述服务器基于所述第三多媒体文件的数据量进行校验后返回文件校验响应;以及
    接收到所述文件校验响应,基于所述文件校验响应,显示对应的文件校验提示信息。
  5. 一种多媒体文件上传装置,包括:处理器和存储有操作指令的存储介质,当运行所述存储介质中的操作指令时,所述处理器执行如下步骤:
    播放第一多媒体文件;
    在播放所述第一多媒体文件的过程中,对与所述第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;
    将所述第一多媒体文件和所述第二多媒体文件合成,得到第三多媒体文件;以及
    在合成过程中,将所述第三多媒体文件分片上传。
  6. 如权利要求5所述的装置,所述处理器在执行将所述第三多媒体文件分片上传时,执行:
    在所述合成过程中,当每合成第一指定大小的数据块时,判断所述合成过程是否结束;
    如果所述合成过程未结束,则将所述数据块加入数据上传队列并上传;
    如果所述合成过程已结束,则对当前已合成且未加入所述数据上传队列的数据进行划分,得到多个第二指定大小的数据块;
    将所述多个第二指定大小的数据块加入所述数据上传队列并上传。
  7. 如权利要求5或6所述的装置,所述处理器还执行:
    将缓存中所存储的已上传数据块删除。
  8. 如权利要求5所述的装置,其特征在于,所述处理器还执行:
    向服务器发送文件校验请求,所述文件校验请求中携带所述第三多媒体文件的数据量,使所述服务器基于所述第三多媒体文件的数据量进行校验后返回文件校验响应;以及
    接收到所述文件校验响应,基于所述文件校验响应,显示对应的文件校验提示信息。
  9. 一种非瞬时性的计算机可读存储介质,其上存储有计算机可执行指令,当计算机中运行这些可执行指令时,执行如下步骤:
    播放第一多媒体文件;
    在播放所述第一多媒体文件的过程中,对与所述第一多媒体文件相关的用户行为事件进行录制,得到第二多媒体文件;
    将所述第一多媒体文件和所述第二多媒体文件合成,得到第三多媒体文件;以及
    在合成过程中,将所述第三多媒体文件分片上传。
PCT/CN2016/086005 2015-07-15 2016-06-16 多媒体文件上传方法、装置以及存储介质 WO2017008611A2 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510417394.5 2015-07-15
CN201510417394.5A CN106358070B (zh) 2015-07-15 2015-07-15 多媒体文件上传方法及装置

Publications (2)

Publication Number Publication Date
WO2017008611A2 true WO2017008611A2 (zh) 2017-01-19
WO2017008611A3 WO2017008611A3 (zh) 2017-03-02

Family

ID=57756838

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/086005 WO2017008611A2 (zh) 2015-07-15 2016-06-16 多媒体文件上传方法、装置以及存储介质

Country Status (2)

Country Link
CN (1) CN106358070B (zh)
WO (1) WO2017008611A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359099A (zh) * 2018-08-21 2019-02-19 中国平安人寿保险股份有限公司 分布式文件上传方法、装置、计算机设备及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110229104A1 (en) * 2009-10-22 2011-09-22 Hundemer Hank J System And Method For Recording and Playback Of Multimedia Content
TWI559778B (zh) * 2011-09-18 2016-11-21 觸控調諧音樂公司 具有卡拉ok及/或照相亭特徵的數位點唱機裝置以及與其相關聯的方法
CN103166831B (zh) * 2011-12-14 2016-01-20 腾讯科技(深圳)有限公司 数据处理方法、终端及系统
CN103474055A (zh) * 2012-08-06 2013-12-25 苏州沃通信息科技有限公司 一种手机ktv解决方案
US20140289626A1 (en) * 2013-03-15 2014-09-25 Cloudeck Inc. Cloud based audio recording system
CN103997514A (zh) * 2014-04-23 2014-08-20 汉柏科技有限公司 一种文件并行传输的方法及系统
CN104361057A (zh) * 2014-10-31 2015-02-18 无锡天脉聚源传媒科技有限公司 一种上传多媒体文件的方法及装置
CN104462226B (zh) * 2014-11-14 2018-03-23 中国传媒大学 一种基于云技术的网络演唱平台的构建方法
CN104506950A (zh) * 2014-12-29 2015-04-08 珠海全志科技股份有限公司 网络流媒体播放中的多线程下载方法、装置及下载设备
CN105635129B (zh) * 2015-12-25 2020-04-21 腾讯科技(深圳)有限公司 歌曲合唱方法、装置及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359099A (zh) * 2018-08-21 2019-02-19 中国平安人寿保险股份有限公司 分布式文件上传方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN106358070B (zh) 2020-11-06
WO2017008611A3 (zh) 2017-03-02
CN106358070A (zh) 2017-01-25

Similar Documents

Publication Publication Date Title
US10964300B2 (en) Audio signal processing method and apparatus, and storage medium thereof
WO2017206916A1 (zh) 处理器中内核运行配置的确定方法以及相关产品
WO2017008627A1 (zh) 多媒体直播方法、装置和系统
WO2017202348A1 (zh) 一种视频播放方法、装置及计算机存储介质
US20160323610A1 (en) Method and apparatus for live broadcast of streaming media
WO2017020663A1 (zh) 弹幕视频直播方法、装置、视频源设备及网络接入设备
US9760998B2 (en) Video processing method and apparatus
WO2017215660A1 (zh) 一种场景音效的控制方法、及电子设备
CN103391473B (zh) 一种提供及获取音视频的方法和装置
CN107333162B (zh) 一种播放直播视频的方法和装置
WO2017215661A1 (zh) 一种场景音效的控制方法、及电子设备
CN106371964B (zh) 一种进行消息提示的方法和装置
TW201715496A (zh) 多媒體海報生成方法及裝置
US10173135B2 (en) Data processing method, terminal and server
WO2015131768A1 (en) Video processing method, apparatus and system
WO2018095130A1 (zh) 一种确定直播时长的方法和系统
JP6910300B2 (ja) チャット履歴記録を表示するための方法およびチャット履歴記録を表示するための装置
WO2017215511A1 (zh) 一种场景音效的控制方法、及相关产品
WO2014032559A1 (zh) 下载文件的方法和装置
WO2020103070A1 (zh) 一种对应用程序进行处理的方法、装置和电子设备
CN106791916B (zh) 一种推荐音频数据的方法、装置和系统
WO2019076250A1 (zh) 推送消息的管理方法及相关产品
WO2017101260A1 (zh) 音频切换方法、装置以及存储介质
WO2018161788A1 (zh) 多媒体数据共享方法及装置
KR101876394B1 (ko) 단말기에 미디어 데이터를 재생하는 방법 및 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16823758

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16823758

Country of ref document: EP

Kind code of ref document: A2