CN106815074B - Multimedia file downloading method and electronic device - Google Patents

Multimedia file downloading method and electronic device Download PDF

Info

Publication number
CN106815074B
CN106815074B CN201510857130.1A CN201510857130A CN106815074B CN 106815074 B CN106815074 B CN 106815074B CN 201510857130 A CN201510857130 A CN 201510857130A CN 106815074 B CN106815074 B CN 106815074B
Authority
CN
China
Prior art keywords
multimedia file
electronic device
multimedia
information
time
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201510857130.1A
Other languages
Chinese (zh)
Other versions
CN106815074A (en
Inventor
梁圣瑜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Acer Inc
Original Assignee
Acer Inc
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 Acer Inc filed Critical Acer Inc
Priority to CN201510857130.1A priority Critical patent/CN106815074B/en
Publication of CN106815074A publication Critical patent/CN106815074A/en
Application granted granted Critical
Publication of CN106815074B publication Critical patent/CN106815074B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5017Task decomposition

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention provides a multimedia file downloading method and an electronic device. The method comprises the following steps: obtaining first bandwidth information of a first source device; calculating a first time point according to the first bandwidth information; sending a first download request to the first source device to request download of a first multimedia stream of a multimedia file prior to the first point in time; and sending a second download request to a second source device to request downloading of a second multimedia stream of the multimedia file after the first time point; thereby increasing the downloading efficiency of the multimedia file and the efficiency of streaming playing.

Description

Multimedia file downloading method and electronic device
Technical Field
The present invention relates to file sharing methods, and particularly to a multimedia file downloading method and an electronic device.
Background
In a private cloud environment, the electronic device may play multimedia files such as photos, music, movies, etc. on the cloud device through network streaming. Generally, if a multimedia file is downloaded from a fixed cloud device, the downloading speed and streaming playing efficiency of the multimedia file are limited by the bandwidth and performance of the cloud device.
Although downloading multimedia files from multiple remote devices has been proposed, it is not optimized for multimedia file sharing in a private cloud environment. In addition, the existing Peer-to-Peer (P2P) transmission mechanism cannot adjust the download distribution of a multimedia file according to the network environment or system performance of the source end.
Disclosure of Invention
In view of the above, the present invention provides a multimedia file downloading method and an electronic device, which can enhance the efficiency of downloading multimedia files.
An embodiment of the present invention provides a multimedia file downloading method, which is suitable for an electronic device, and the method includes: obtaining first bandwidth information of a first source device; calculating a first time point according to the first bandwidth information; sending a first download request to the first source device to request download of a first multimedia stream of a multimedia file prior to the first point in time; and sending a second download request to a second source device to request downloading of a second multimedia stream of the multimedia file after the first time point.
Another embodiment of the present invention provides an electronic device, which includes a storage medium and a processor. The storage medium is used for storing a plurality of modules. The processor is coupled to the storage medium and configured to load and execute the module. The module comprises a connecting module, a transmission information obtaining module, a time point calculating module, a first downloading module and a second downloading module. The connection module is used for connecting a first source device and a second source device. The transmission information obtaining module is used for obtaining first bandwidth information of the first source device. The time point calculating module is used for calculating a first time point according to the first bandwidth information. The first download module is configured to send a first download request to the first source device to request a download of a first multimedia stream of a multimedia file prior to the first time point. The second downloading module is configured to send a second downloading request to the second source device to request downloading of a second multimedia stream of the multimedia file after the first time point.
Based on the above, the electronic device that wants to download a multimedia file may determine at least one time point in the multimedia file according to the bandwidth information of at least one electronic device that can share the multimedia file. According to the time point, the multimedia file is divided into a plurality of parts and is respectively downloaded from the corresponding electronic devices, so that the downloading efficiency of the multimedia file and the efficiency of streaming playing are improved.
In order to make the aforementioned and other features and advantages of the invention more comprehensible, embodiments accompanied with figures are described in detail below.
Drawings
FIG. 1 is a schematic diagram of a multimedia file download system according to an embodiment of the present invention;
FIG. 2 is a schematic diagram illustrating a segmented download of a multimedia file according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a multimedia file download system according to another embodiment of the present invention;
FIG. 4 is a schematic diagram illustrating a segmented download of a multimedia file according to another embodiment of the present invention;
FIG. 5 is a schematic diagram illustrating a segmented download of a multimedia file according to another embodiment of the present invention;
fig. 6 is a flowchart illustrating a multimedia file downloading method according to an embodiment of the present invention;
fig. 7 is a schematic block diagram of an electronic device according to an embodiment of the invention.
Description of reference numerals:
100. 300, and (2) 300: a multimedia file download system;
10: a network;
12. 14, 16, 38: an electronic device;
1000: a multimedia file;
72: a storage medium;
74: a processor;
7201: a connection module;
7202: a transmission information obtaining module;
7203: a time point calculation module;
7204; a first download module;
7205: a second download module;
7206: a playing module;
7207: a multimedia file information obtaining module;
t: a length of time;
t1, T2, T3: a point in time;
s1, S2, S3, S4, S5, S6: multimedia streaming;
s601 to S604: and (5) carrying out the following steps.
Detailed Description
Fig. 1 is a schematic diagram of a multimedia file download system according to an embodiment of the present invention.
Referring to fig. 1, the multimedia file downloading system 100 includes a network 10, an electronic device 12, an electronic device 14, and an electronic device 16.
In the present embodiment, the electronic device 14 is a cloud server. The cloud server may be a server host (e.g., a personal computer) installed by a user or a network hard disk provided by a cloud service provider (e.g., google). The number of electronic devices 14 is not limited by the present invention.
In the present embodiment, the electronic devices 12 and 16 are electronic devices belonging to one or more users, respectively. For example, the electronic devices 12 and 16 may be any electronic devices with data transmission and storage functions, such as a smart phone, a tablet computer, a notebook computer, and a desktop computer.
One or more multimedia files 1000 may be backed up or stored in at least one of the electronic devices 12, 14, and 16. The multimedia file 1000 mentioned herein may refer to a video file, an audio file, or a combination of video and audio files, etc. The electronic devices 12 and 16 can download the multimedia file 1000 from the electronic device 14 or upload the multimedia file 1000 to the electronic device 14. The electronic devices 12 and 16 may also transmit the multimedia file 1000 to each other.
In the present embodiment, a registration list of the electronic device 14 records the registration information of the electronic devices 12 and 16. For example, the registration information includes at least one of an Internet Protocol (IP) address, a hardware address (MAC address), device model information, and owner information of the device (e.g., name, account number, and/or password of the owner). Alternatively, the registration list may also record any useful information, and is not limited to the above. According to the registration list, when the electronic device 12 or 16 wants to connect to the electronic device 14 or perform a file transfer, the electronic device 14 can verify the identity of the electronic device 12 or 16. In addition, the electronic devices 12 and 16 can log into the electronic device 14 using the same or respective user accounts to use the services provided by the electronic device 14. The service may include any network service, such as online storage, downloading, or sharing of multimedia files with other users. Alternatively, in another embodiment, the electronic devices 14 and 16 may belong to the same cloud server, and may provide the download service for the same multimedia file at the same time.
In another embodiment, the electronic devices 12, 14 and 16 may also be any electronic devices with data transmission and storage functions, such as a smart phone, a tablet computer, a notebook computer, a desktop computer, and the like, belonging to the same or different users. Thus, the multimedia file 1000 can be optionally backed up, stored and transmitted among the electronic devices 12, 14 and 16.
Electronic devices 12, 14 and 16 are connected through network 10. In the present embodiment, the network 10 is a wired/wireless area network. For example, the wired area network may refer to a private domain (private domain). For example, the Wireless Local Area Network (Wireless LAN) may be referred to as wifi (Wireless fidelity). The wired/wireless area network may range from a home, school, or company (department), etc., depending on the placement of the transmission line and/or the strength of the signal. However, in another embodiment, the network 10 may be any wired/wireless network. For example, the wireless network may refer to 3rd-Generation (3G) or lte (long Term evolution) standards.
In the present embodiment, if the electronic device 12 wants to download a multimedia file 1000 from the electronic device 14 and the electronic device 16 also stores the multimedia file 1000, the electronic device 12 can be regarded as a local electronic device, and the electronic devices 14 and 16 can be regarded as a source device, respectively. For example, the electronic device 14 may be considered a first source device and the electronic device 16 may be considered a second source device. The electronic device 12 may download different portions of the multimedia file 1000 from the electronic devices 14 and 16, respectively.
In the present embodiment, the electronic device 12 can obtain bandwidth information (hereinafter also referred to as first bandwidth information) of the electronic device 14. For example, this first bandwidth information indicates how much data per second the electronic device 14 can transmit over its network interface. For example, the first bandwidth information may include a wired or wireless transmission bandwidth of the electronic device 14. In another embodiment, the first bandwidth information may further include any channel information that may affect the data transmission between the electronic devices 12 and 14, such as the quality of the wired/wireless transmission channel between the electronic devices 12 and 14, the degree of noise interference or the signal strength.
In the present embodiment, the electronic device 12 may determine a time point (hereinafter also referred to as a first time point) according to the first bandwidth information. For example, if the first bandwidth information indicates that the electronic device 14 has a large transmission bandwidth, a fast transmission speed, a short transmission time, a good channel quality, and/or a weak channel noise interference for transmitting the multimedia file 1000, the first time point is set to be farther from a start time point of the multimedia file 1000; if the first bandwidth information indicates that the multimedia file is downloaded from the electronic device 14 to the electronic device 12 with a small bandwidth, a slow speed, a long time, a poor channel quality, and/or a strong noise interference, the first time point is set to be closer to the beginning time point of the multimedia file 1000.
For example, assuming that the file size of a multimedia file 1000 is 700 Megabytes (MB) and the total playing time of the multimedia file 1000 (hereinafter also referred to as the time length of the multimedia file) is 60 minutes, the starting time point of the multimedia file 1000 refers to 0 minute and 0 second of the total playing time of the multimedia file (i.e., the file starting time of the multimedia file 1000), and the ending time point of the multimedia file 1000 refers to 60 minutes and 60 seconds of the total playing time of the multimedia file 1000 (i.e., the file ending time of the multimedia file 1000).
After obtaining the first time point, the electronic device 12 sends a download request (hereinafter also referred to as a first download request) to the electronic device 14. This first download request is a request to download a multimedia stream (hereinafter also referred to as a first multimedia stream) in the multimedia file 1000 before the first point in time. In addition, the electronic device 12 may also send another download request (hereinafter also referred to as a second download request) to the electronic device 16. The second download request requests to download the multimedia stream (hereinafter also referred to as a second multimedia stream) of the multimedia file 1000 after the first time point.
Fig. 2 is a diagram illustrating a segmented download of a multimedia file according to an embodiment of the present invention.
Referring to fig. 2, assume that the total playing time of the multimedia file 1000 is t. In response to the first download request, the electronic device 14 transmits the first multimedia stream of the multimedia file 1000 before the time point T1 to the electronic device 12. For example, the electronic device 14 may transmit the multimedia stream S1 of the multimedia file 1000 between the file start time and the time point T1 to the electronic device 12. In response to the second download request, the electronic device 16 transmits the second multimedia stream of the multimedia file 1000 after the time point T1 to the electronic device 12. For example, the electronic device 16 may transmit the multimedia stream S2 of the multimedia file 1000 between the time point T1 and the time point T (i.e., the file end time) to the electronic device 12. By downloading the multimedia streams S1 and S2 from the electronic devices 14 and 16 simultaneously, the electronic device 12 can increase the downloading speed of the multimedia file 1000.
In one embodiment, in response to the first download request, the electronic device 14 may provide device information of other electronic devices (e.g., the electronic device 16) that also store the multimedia file 1000 to the electronic device 12. For example, the electronic device 14 may query a history list to obtain a download record of the multimedia file 1000 from the electronic device 16; according to the download record, the electronic device 14 can transmit the device information of the electronic device 16 from the registration list to the electronic device 12; according to the device information of the electronic device 16, the electronic device 12 can transmit the second download request to the electronic device 16. For example, the device information may include at least one of an internet protocol address, a hardware address, device model information, and owner information of the device (e.g., owner's name, account number, and/or password, etc.).
In the present embodiment, the electronic device 12 decodes (decode) and plays the received multimedia stream in real time. The multimedia stream that has not yet been played is cached in a buffer (buffer) of the electronic device 12. The buffer of the electronic device 12 may be any storage medium such as a volatile memory (volatile memory), a non-volatile memory (non-volatile memory), or a Hard Disk Drive (HDD). For example, the electronic device 12 decodes and plays the downloaded first multimedia stream in real time; in the background, the part of the downloaded first multimedia stream that has not been played and the pre-downloaded second multimedia stream are cached in the buffer of the electronic device 12. After the first multimedia stream is played, the electronic device 12 may then decode and play the second multimedia stream buffered in the electronic device 12.
In other words, assuming that the electronic device 12 is playing a multimedia file provided by an online av platform (e.g., youtube), the multimedia stream of the multimedia file before the first time point may be provided by the online av platform (e.g., the electronic device 14), and the multimedia file of the multimedia file after the first time point may be provided by another electronic device (e.g., the electronic device 16) that also stores the multimedia file. However, in another embodiment, the electronic device 12 does not play the downloaded multimedia stream in real time, but stores the downloaded multimedia stream in a storage medium such as a non-volatile memory or a hard disk. Thus, the user can read and play the multimedia file composed of the downloaded multimedia streams from the storage medium such as the nonvolatile memory or the hard disk of the electronic device 12 at any time.
In an embodiment, the electronic device 12 may also obtain bandwidth information (hereinafter also referred to as second bandwidth information) of the electronic device 16. This second bandwidth information indicates, for example, how much data per second the electronic device 16 can transfer over its network interface. Similar to the first bandwidth information, the second bandwidth information may also include any information related to the transmission of the multimedia stream from the electronic device 16 to the electronic device 12. After obtaining the second bandwidth information, the electronic device 12 may also obtain the first time point according to the second bandwidth information.
It is worth mentioning that, with respect to the first bandwidth information, if the second bandwidth information indicates that the bandwidth for downloading the multimedia file 1000 from the electronic device 16 to the electronic device 12 is larger, faster, shorter, better channel quality and/or weaker channel noise interference, the first time point may be set to be closer to the starting time point of the multimedia file 1000; if the second bandwidth information indicates that the multimedia file 1000 is downloaded from the electronic device 16 to the electronic device 12 more slowly, for a longer time, for a worse channel quality and/or for a stronger channel noise interference, the first time point may be set to be farther from the beginning time point of the multimedia file 1000.
In one embodiment, the first time point may be calculated according to the following equation (1).
Figure BDA0000862250180000071
Where T1 is a first time point, T is a time length of a multimedia file (e.g., the multimedia file 1000) to be downloaded, a is first bandwidth information, and B is second bandwidth information. For example, T1 and T are in units of time, and a and B are in units of bits/time. By adaptively determining the first time point, when the electronic device 12 plays the multimedia file 1000 to the first time point, the multimedia file after the first time point can be played continuously, thereby reducing the occurrence of delay.
It should be noted that the present invention is not limited to the same multimedia file being downloaded from several electronic devices. More electronic devices can share multimedia files simultaneously in the multimedia file downloading system.
Fig. 3 is a schematic diagram of a multimedia file download system according to another embodiment of the present invention.
Referring to fig. 3, the multimedia file downloading system 300 includes the network 10, the electronic device 12, the electronic device 14, the electronic device 16, and the electronic device 38. The electronic device 38 may be the same as or similar to one of the electronic devices 12, 14 and 16. The electronic device 12 can download the multimedia file 1000 from the electronic device 14, the electronic device 16, and the electronic device 38 at the same time.
In the present embodiment, the electronic device 12 obtains the bandwidth information of each of the electronic devices 14, 16 and 38 and requests to download the multimedia stream in a specific time segment of the multimedia file 1000 from each of the electronic devices 14, 16 and 38 according to the obtained bandwidth information.
Fig. 4 is a diagram illustrating a segmented download of a multimedia file according to another embodiment of the present invention.
Referring to fig. 4, when the electronic device 12 wants to download the multimedia file 1000, the electronic device 12 calculates time points T1 and T2 according to the bandwidth information of the electronic device 14, the electronic device 16, and the electronic device 38. For example, T1 and T2 can be calculated according to the following equations (2) and (3), respectively.
Figure BDA0000862250180000081
Figure BDA0000862250180000082
Where T1 is a first time point, T2 is a second time point, T is a time length of the multimedia file 1000, a is bandwidth information of the electronic device 14, B is bandwidth information of the electronic device 16, and C is bandwidth information of the electronic device 38 (hereinafter also referred to as third bandwidth information). However, in another embodiment, the channel information and/or the specification information of the electronic device sharing the multimedia file may also be used as a reference for calculating the first time point and/or the second time point.
In the present embodiment, the electronic device 12 sends a first download request to the electronic device 14 to download the multimedia stream before the time point T1 in the multimedia file 1000S 1. The electronic device 12 sends a second download request to the electronic device 16 requesting to download the multimedia stream S2 of the multimedia file 1000 between time T1 and time T2. The electronic device 12 sends another download request (hereinafter also referred to as a third download request) to the electronic device 38 for downloading the multimedia stream S3 of the multimedia file 1000 after the time point T2. In response to the received download request, the electronic devices 14, 16 and 38 respectively transmit the corresponding multimedia stream in the multimedia file 1000 to the electronic device 12.
In addition, according to the number of electronic devices sharing the same multimedia file in the multimedia file downloading system, more time points can be calculated, and multiple multimedia streams between the time points in the multimedia file can be downloaded synchronously.
In another embodiment, the electronic device 12 may also send an initial download request corresponding to the multimedia file 1000 to any one of the electronic devices in the multimedia file download system 100 or 300, and the electronic device 12 may preferentially select the electronic device with the largest bandwidth from the plurality of source devices storing the multimedia file 1000 to download the first multimedia stream. For example, in another embodiment of fig. 1, according to the first bandwidth information and the second bandwidth information, if the electronic device 12 determines that the bandwidth for downloading the multimedia file 1000 from the electronic device 16 is higher than the bandwidth for downloading the multimedia file 1000 from the electronic device 14, the electronic device 12 preferentially selects to download the first multimedia stream from the electronic device 16 and synchronously downloads the second multimedia stream from the electronic device 14 even if the electronic device 14 is a cloud server in the multimedia file downloading system 100.
In one embodiment, based on the obtained bandwidth information, the electronic device 12 may also choose to exclude one or more electronic devices with smaller bandwidth and download different portions of the same multimedia file from one or more other electronic devices with larger bandwidth.
In one embodiment, after the electronic device 12 is powered on, a file download function is started, the electronic device 14 is registered as a cloud server, or the electronic device 12 is connected to the network 10, the electronic device 12 automatically searches for other available electronic devices on the network 10. For example, electronic devices that are connected to the same wired/wireless local area network may be found. After finding other available electronic devices (e.g., electronic devices 14, 16, and 38) on the network 10, the electronic device 12 automatically analyzes respective bandwidth information of the available electronic devices for subsequent downloading of the multimedia file.
In another embodiment, after the electronic device 12 is powered on, the file downloading function is started, and the electronic device 14 as a cloud server is registered or connected to the network 10, the electronic device 14 as a cloud server detects the electronic device 12 and transmits a multimedia file list recording multimedia files stored by one or more other available electronic devices to the electronic device 12 for subsequent downloading of the multimedia files.
In another embodiment, after the electronic device 12 is powered on, starts the file downloading function, registers with the electronic device 14 as a cloud server, or connects to the network 10, the electronic device 12 may also request the electronic device 14 as a cloud server to download the multimedia file list at any time. Alternatively, the electronic device 12 may also ask any electronic device in the multimedia file downloading system 100 or 300 for information of the stored multimedia file for subsequent downloading of the multimedia file.
In an embodiment, the electronic device 12 can also determine the time point for dividing the download interval according to the information related to the multimedia file 1000.
For example, in another embodiment of fig. 1, the electronic device 12 can further obtain the preload time information of the multimedia file 1000 and the frame rate information of the multimedia file 1000. The information related to the multimedia file 1000 may be obtained from the electronic device 14 immediately when the multimedia file 1000 is to be downloaded or obtained in advance, which is not limited by the invention. For example, such information relating to the multimedia file 1000 is obtained in the same or similar manner as the device information described above. Here, the preload time information indicates how many multimedia streams of a certain time length in the multimedia file 1000 are downloaded to the electronic device 12 in advance when a certain portion of the multimedia file 1000 is downloaded. The multimedia streams pre-downloaded to the electronic device 12 can be played by the electronic device 12 in advance, so as to prolong the time for downloading other multimedia streams in the background. For example, if the preload time information indicates that a multimedia stream with a time duration of 5 seconds in the multimedia file 1000 has been downloaded to the electronic device 12, when the multimedia stream with the time duration of 5 seconds is played, the multimedia stream following the time duration of 5 seconds in the multimedia file 1000 may be downloaded to the electronic device 12 in the background and then played. In addition, the frame rate information of the multimedia file 1000 is used to indicate that the file format of the multimedia file 1000 has several frames per second. In one embodiment, the frame rate information of the multimedia file 1000 can be represented by the playing bandwidth of the corresponding multimedia stream. Thereafter, the electronic device 12 can determine one or more time points according to the bandwidth information of one or more source devices, the corresponding preload time information, and the frame rate information of the multimedia file 1000. Accordingly, the electronic device 12 can request the source device for the multimedia stream belonging to the multimedia file 1000 in the corresponding time segment according to the determined time point.
Fig. 5 is a diagram illustrating a segmented download of a multimedia file according to another embodiment of the present invention.
Referring to fig. 1 and 5, it is assumed that the electronic device 12 is about to download the multimedia file 1000 from the electronic devices 14 and 16. The electronic device 12 divides the time length T of the multimedia file 1000 into a plurality of time segments by using the time points T1, T2, T3, and the like, and sequentially downloads the multimedia streams S4-S6, and the like of the multimedia file 1000 in the time segments from the electronic devices 14 and 16 in an interleaving or alternating manner.
In the embodiment, assuming that the electronic device 12 intends to download the multimedia stream of the multimedia file 1000 between the starting time point of the multimedia file 1000 and the time point T1 from the electronic device 14, the electronic device 12 can obtain the bandwidth information (i.e., the first bandwidth information) of the electronic device 14, the initial preload time information (hereinafter also referred to as the first preload time information) of the multimedia file 1000, and the frame rate information of the multimedia file 1000. For example, if a multimedia stream with a duration of 5 seconds is downloaded to the electronic device 12 in advance when the multimedia stream of the multimedia file 1000 is initially downloaded, the first preload time information is 5. The electronic device 12 can determine the time point T1 according to the first bandwidth information, the first preload time information, and the frame rate information of the multimedia file 1000. For example, the electronic device 12 may calculate a pause time point (hereinafter also referred to as a first pause time point). The first pause time point is a time point at which a first pause in the playing is predicted to occur based on the first bandwidth information, the first preload time information, and the frame rate information of the multimedia file 1000. The electronic device 12 may determine the time point T1 according to the first pause time point.
In this embodiment, the electronic device 12 may obtain the first pause time point according to the following equation (4):
Figure BDA0000862250180000101
wherein D1 is the first pause time point, BT1 is the first preload time information, and VF is the frame rate information of the multimedia file 1000. For example, assuming BT1 is 5 seconds, A is 4 Megabytes (MB), and VF is 8MB, then
Figure BDA0000862250180000102
That is, based on the preloaded multimedia stream with the time length of 5 seconds, after the multimedia stream with the time length of 5 seconds (i.e., the first pause time point D1) is downloaded and played in succession (i.e., when the 10 th second of the multimedia file 1000 is played), there may be a pause in playing. Therefore, the time point T1 may be set to 10 seconds (i.e., 5+5 — 10).
After the time point T1 is determined, in order to calculate how much time length of the multimedia stream is to be downloaded from the electronic device 16S 5, the electronic device 12 can predict when a next pause in playing will occur according to the bandwidth information (i.e., the second bandwidth information) of the electronic device 16, another preload time information (hereinafter also referred to as the second preload time information) and the frame rate information of the multimedia file 1000 and determine another pause time point (hereinafter also referred to as the second pause time point). Here, the second preload time information may be set according to a time point T1. For example, in the process of downloading and playing the multimedia stream S4 downloaded from the electronic device 14, the electronic device 12 may download the multimedia stream after the time point T1 in the multimedia file 1000 in the background, and thus, the second preload time information may be set as the time point T1. For example, the second preload time information may be set to 10 seconds.
In this embodiment, the electronic device 12 may obtain the second pause time point according to the following equation (5):
Figure BDA0000862250180000111
wherein D2 is the second pause time point, and BT2 is the second preload time information. For example, assuming BT2 is 10 and B is 2MB, it can be calculated
Figure BDA0000862250180000112
That is, based on the multimedia stream S4 preloaded for 10 seconds, the playback pause may occur again within 3.333 seconds after the time point T1 (i.e., the second pause time point D2). Therefore, the time point T2 may be set to 13.333 seconds (i.e., 10+3.333 ═ 13.333).
After the time point T2 is determined, in order to calculate how much time length of the multimedia stream is to be downloaded from the electronic device 14S 6, the electronic device 12 can predict when a next pause in playing will occur according to the bandwidth information (i.e., the second bandwidth information) of the electronic device 14, another preload time information (hereinafter also referred to as third preload time information) and the frame rate information of the multimedia file 1000 and determine another pause time point (hereinafter also referred to as third pause time point). Here, the third preload time information may be set according to a length of time between time points T1 and T2. For example, in the process of downloading and playing the multimedia stream S5 downloaded from the electronic device 16, the electronic device 12 may download the multimedia stream after the time point T2 in the multimedia file 1000 in the background, and thus, the third preload time information may be set as the time length between the time points T1 and T2. For example, the third preload time information may be set to 3.333 seconds.
In this embodiment, the electronic device 12 may obtain the third pause time point according to the following equation (6):
Figure BDA0000862250180000113
where D3 is the third pause time point, and BT3 is the third preload time information. For example, assuming BT3 is 3.333 and A is 4MB, it may beCalculate out
Figure BDA0000862250180000121
That is, based on the multimedia stream S5 preloaded for 3.333 seconds, the playback pause may occur again within 3.333 seconds after the time point T2 (i.e., the third pause time point D3). Therefore, the time point T3 may be set to 16.666 seconds (i.e., 13.333+3.333 ═ 16.666). By analogy, more time points within the time length t can be further calculated.
The electronic device 12 may send a corresponding download request to the electronic devices 14 and 16 to request downloading of the corresponding multimedia stream. Taking the multimedia streams S4-S6 shown in fig. 5 as an example, the electronic device 12 may send at least one first download request to the electronic device 14 to request to download the multimedia stream S4 of the multimedia file 1000 before the time point T1 and the multimedia stream S6 of the multimedia file 1000 between the time points T2-T3; meanwhile, the electronic device 12 may send at least one second download request to the electronic device 16 to request to download the multimedia stream S5 of the multimedia file 1000 between time points T1 and T2.
Thus, by interleaving/alternatively downloading different segments of the multimedia file 1000 from the electronic devices 14 and 16, the user of the electronic device 12 can view the downloaded multimedia file 1000 without experiencing playback pause as much as possible, even if the number of source devices from which the multimedia file 1000 can be downloaded is limited.
Fig. 6 is a flowchart illustrating a multimedia file downloading method according to an embodiment of the present invention.
Referring to fig. 6, in step S601, first bandwidth information of the first source device is obtained. In step S602, a first time point is calculated according to the first bandwidth information. In step S603, a first download request is sent to the first source device to request downloading of a first multimedia stream of multimedia files before the first time point. In step S601, a second download request is sent to a second source device to request to download a second multimedia stream of the multimedia file after the first time point. Wherein, steps S603 and S604 may be executed synchronously.
It should be noted that the flowchart of fig. 6 can be executed in conjunction with the above embodiments or executed independently. Further, the steps in fig. 6 may be implemented as software modules or hardware circuits.
Fig. 7 is a schematic block diagram of an electronic device according to an embodiment of the invention. In the present embodiment, the electronic device 12 in fig. 1 is taken as an example. However, the architecture described in the present embodiment can also be applied to each of the multimedia file download systems 100 or 300 or a part of the electronic devices.
Referring to fig. 1 and fig. 7, in the present embodiment, the electronic device 12 includes a storage medium 72 and a processor 74. In addition, the electronic device 12 may further include a display, an input/output (I/O) interface, a wired/wireless transmission interface (e.g., a network interface card), a power management element (e.g., a battery), and the like, which are not described herein. For example, the processor 74 may be connected to the network 10 through a wired/wireless transmission interface to transmit and receive network packets; playing an image corresponding to a multimedia stream through a display; the operation instruction/signal of the user and the like are received through the input/output interface.
The storage medium 72 stores a plurality of software or firmware modules. For example, the storage medium 72 may include a storage medium such as a volatile memory, a non-volatile memory, or a hard disk, and is not limited thereto. In addition, the storage medium 72 can also be used for storing any files (e.g., multimedia files) and information (e.g., bandwidth information).
The processor 74 is electrically connected to the storage medium 72. The processor 74 can load and execute the modules stored in the storage medium 72 to perform the operations described in the above embodiments. For example, the processor 74 may be a Central Processing Unit (CPU), a micro-processor (micro-processor), or an embedded controller (embedded controller), and is not limited thereto.
In this embodiment, the storage medium 72 stores a connection module 7201, a transmission information obtaining module 7202, a time point calculating module 7203, a first downloading module 7204, a second downloading module 7205, and a playing module 7206.
The connection module 7201 is configured to connect to one or more source devices. The transmission information obtaining module 7202 obtains bandwidth information of the source device. The time point calculating module 7203 is configured to calculate one or more time points according to the obtained bandwidth information. The first downloading module 7204 is configured to send a downloading request to a source device to download a multimedia stream of a multimedia file before a specific time point. The second download module 7205 is configured to send another download request to another source device to request to download the multimedia stream of the same multimedia file after the time point. The playing module 7206 is configured to play the downloaded multimedia stream.
In another embodiment, the storage medium 72 may further store a multimedia file information obtaining module 7207. The multimedia file information obtaining module 7207 is configured to obtain preload time information of a multimedia file and frame rate information of the multimedia file.
For more detailed operation details of these modules, reference may be made to the description of the foregoing embodiments, which are not repeated herein.
It should be noted that, in another embodiment, each module shown in fig. 7 may also be implemented in a hardware circuit manner. For example, in another embodiment, the electronic device 12 may include a connection circuit, a transmission information obtaining circuit, a time point calculating circuit, a plurality of downloading circuits, a playing circuit, and the like; these circuits are electrically connected to each other and can be used to perform the operations described above. For example, such circuitry may be implemented within the processor 74 or separate from the processor 74 and electrically connected to the processor 74. Those skilled in the art will understand how to design the above software modules or hardware circuits according to the operation functions mentioned in the above embodiments.
In summary, the present invention can calculate at least one time point according to the transmission information of different electronic devices and simultaneously download a multimedia file from the electronic devices, wherein the multimedia file is divided into multimedia streams in different time segments by using the at least one time point. When part of multimedia streaming of a certain multimedia file is downloaded and played, the invention can directly link different parts of multimedia streaming in the same multimedia file through the at least one time point, thereby avoiding the occurrence of playing delay.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.

Claims (10)

1. A method for downloading a multimedia file, the method being adapted for use in an electronic device, the method comprising:
obtaining first bandwidth information of a first source device;
obtaining second bandwidth information of a second source device;
calculating a first time point according to the first bandwidth information and the second bandwidth information before downloading a second multimedia stream from the second source device;
sending a first download request to the first source device to request download of a first multimedia stream of a multimedia file prior to the first point in time; and
sending a second download request to the second source device to request downloading of the second multimedia stream in the multimedia file after the first point in time.
2. The method for downloading a multimedia file according to claim 1, further comprising:
playing the first multimedia streaming; and
and when the first multimedia streaming is played, continuing to play the second multimedia streaming.
3. The method of claim 1, wherein the step of calculating the first time point according to the first bandwidth information and the second bandwidth information comprises:
calculating the first time point according to the first bandwidth information, the second bandwidth information and the time length of the multimedia file.
4. The method for downloading a multimedia file according to claim 1, further comprising:
obtaining first preload time information of the multimedia file and frame rate information of the multimedia file,
wherein the step of calculating the first point in time from the first bandwidth information and the second bandwidth information comprises:
calculating the first time point according to the first bandwidth information, the first preload time information, and the frame rate information.
5. The method of claim 4, further comprising:
determining second preloading time information of the multimedia file according to the first time point; and
calculating a second time point according to the second bandwidth information, the second preload time information, and the frame rate information,
wherein the second download request is a request to download the second multimedia stream in the multimedia file between the first point in time and the second point in time.
6. An electronic device, comprising:
a connection module for connecting a first source device and a second source device;
a transmission information obtaining module, configured to obtain first bandwidth information of the first source device and second bandwidth information of the second source device;
a time point calculating module, configured to calculate a first time point according to the first bandwidth information and the second bandwidth information before downloading a second multimedia stream from the second source device;
a first downloading module for sending a first downloading request to the first source device to request downloading of a first multimedia stream of a multimedia file prior to the first time point; and
a second downloading module, configured to send a second downloading request to the second source device to request to download the second multimedia stream of the multimedia file after the first time point.
7. The electronic device of claim 6, further comprising:
and the playing module is used for playing the first multimedia streaming and continuously playing the second multimedia streaming when the playing of the first multimedia streaming is finished.
8. The electronic device of claim 6, wherein the operation of the time point calculation module calculating the first time point according to the first bandwidth information and the second bandwidth information comprises:
calculating the first time point according to the first bandwidth information, the second bandwidth information and the time length of the multimedia file.
9. The electronic device of claim 6, further comprising:
a multimedia file information obtaining module for obtaining first preload time information of the multimedia file and frame rate information of the multimedia file,
wherein the operation of the time point calculation module calculating the first time point according to the first bandwidth information and the second bandwidth information comprises:
calculating the first time point according to the first bandwidth information, the first preload time information, and the frame rate information.
10. The electronic device of claim 9, wherein the multimedia file information obtaining module is further configured to determine a second preload time information of the multimedia file according to the first time point,
wherein the time point calculation module is further configured to calculate a second time point according to the second bandwidth information, the second preload time information, and the frame rate information,
wherein the second download request is a request to download the second multimedia stream in the multimedia file between the first point in time and the second point in time.
CN201510857130.1A 2015-11-30 2015-11-30 Multimedia file downloading method and electronic device Active CN106815074B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510857130.1A CN106815074B (en) 2015-11-30 2015-11-30 Multimedia file downloading method and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510857130.1A CN106815074B (en) 2015-11-30 2015-11-30 Multimedia file downloading method and electronic device

Publications (2)

Publication Number Publication Date
CN106815074A CN106815074A (en) 2017-06-09
CN106815074B true CN106815074B (en) 2021-04-06

Family

ID=59156877

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510857130.1A Active CN106815074B (en) 2015-11-30 2015-11-30 Multimedia file downloading method and electronic device

Country Status (1)

Country Link
CN (1) CN106815074B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110324700A (en) * 2018-03-28 2019-10-11 晨星半导体股份有限公司 Circuit and relevant control method applied to display equipment
CN111031383B (en) * 2019-12-06 2022-08-05 RealMe重庆移动通信有限公司 Streaming media transmission method and device and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100306373A1 (en) * 2009-06-01 2010-12-02 Swarmcast, Inc. Data retrieval based on bandwidth cost and delay
CN102761523A (en) * 2011-04-27 2012-10-31 宏碁股份有限公司 Network streaming content playing method and system
CN103731726A (en) * 2012-10-11 2014-04-16 纬创资通股份有限公司 Streaming data downloading method and computer readable storage medium
US8850055B1 (en) * 2013-09-17 2014-09-30 Google Inc. Intelligently streaming portions of media at higher quality over a limited bandwidth connection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100306373A1 (en) * 2009-06-01 2010-12-02 Swarmcast, Inc. Data retrieval based on bandwidth cost and delay
CN102761523A (en) * 2011-04-27 2012-10-31 宏碁股份有限公司 Network streaming content playing method and system
CN103731726A (en) * 2012-10-11 2014-04-16 纬创资通股份有限公司 Streaming data downloading method and computer readable storage medium
US8850055B1 (en) * 2013-09-17 2014-09-30 Google Inc. Intelligently streaming portions of media at higher quality over a limited bandwidth connection

Also Published As

Publication number Publication date
CN106815074A (en) 2017-06-09

Similar Documents

Publication Publication Date Title
US9247276B2 (en) System and method for progressive delivery of media content
US10999340B2 (en) Cloud-based video delivery
US9973785B1 (en) Automatic failover for live video streaming
US10116572B2 (en) Method, device, and system for acquiring streaming media data
US9473812B2 (en) System and method for delivering content
CN110178377B (en) Initial bit rate selection for video delivery sessions
KR101600469B1 (en) Operating method of client and server for streaming service
WO2015165395A1 (en) Video playback method and apparatus
US20130326133A1 (en) Local caching device, system and method for providing content caching service
US9356985B2 (en) Streaming video to cellular phones
US10178431B2 (en) Hybrid stream delivery
US20170214765A1 (en) Streaming apparatus, streaming method, and streaming service system using the streaming apparatus
CN110401858B (en) Video playing method and device, electronic equipment and storage medium
WO2018233539A1 (en) Video processing method, computer storage medium, and device
WO2017101370A1 (en) Live video processing method and apparatus
CN110809167A (en) Video playing method and device, electronic equipment and storage medium
JP2017069636A (en) Information processing device, distribution method and program
KR20120021246A (en) Method of transmitting and receiving media information file for http streaming
US20170171568A1 (en) Method and device for processing live video
CN106815074B (en) Multimedia file downloading method and electronic device
JP6305738B2 (en) Media playback control device, media playback control method, and program
CN109587517B (en) Multimedia file playing method and device, server and storage medium
TWI598743B (en) Method for downloading multimedia files and electronic device
AU2020226900B2 (en) Adaptive retrieval of objects from remote storage
CN106257461B (en) Data storage method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant