WO2014201883A1 - Method and device for playing streaming media, and non-transitory storage medium - Google Patents

Method and device for playing streaming media, and non-transitory storage medium Download PDF

Info

Publication number
WO2014201883A1
WO2014201883A1 PCT/CN2014/073604 CN2014073604W WO2014201883A1 WO 2014201883 A1 WO2014201883 A1 WO 2014201883A1 CN 2014073604 W CN2014073604 W CN 2014073604W WO 2014201883 A1 WO2014201883 A1 WO 2014201883A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
media
slice
local
index file
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.)
Ceased
Application number
PCT/CN2014/073604
Other languages
French (fr)
Inventor
Hongquan ZHOU
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Publication of WO2014201883A1 publication Critical patent/WO2014201883A1/en
Priority to US14/691,961 priority Critical patent/US9882951B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • 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/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Definitions

  • the present invention relates to the field of information technologies, particularly to the field of streaming media technologies, and more particularly to a method and a device for playing streaming media, and a non-transitory storage medium.
  • RTMP Routing Table Maintenance Protocol
  • RTSP Real Time Streaming Protocol
  • MMS Multimedia Message Service
  • NAT Network Address Translation
  • HLS HTTP Live Streaming
  • a continuous media stream is sliced into multiple Transport Stream (TS) slice files, and an M3U8 index file (i.e. a playlist file) is generated correspondingly, and the TS slice files and the M3U8 index file are stored in an HTTP server.
  • the TS slice files and the M3U8 index file constitute an HLS media stream.
  • a terminal such as iPhone, iPad, iTouch and Mac computers obtains the M3U8 index file from the HTTP server via the HTTP protocol, and further obtains the TS slice files according to the Uniform Resource Locator (URL) provided in the M3U8 index file, thereby playing the streaming media.
  • URL Uniform Resource Locator
  • the firewall or proxy would not cause any trouble to the transmission; moreover, the time length of a TS slice file is very short, so that the terminal may rapidly select and switch to a code rate so as to adapt to the playing under different bandwidth conditions.
  • many widely used terminals other than those from Apple Inc. are incapable of playing a media stream based on HLS protocol; moreover, the media stream based on HLS protocol cannot be played off line by even a terminal capable of playing a media stream based on HLS protocol. As a result, the video watching experience of a user will be severely degraded.
  • the embodiments of the invention provide a method and a device for playing streaming media, and a non-transitory storage medium, to allow a user terminal to efficiently obtain streaming media.
  • an embodiment of the present invention provides a method for playing streaming media, and the method includes:
  • the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file;
  • the local media file is of a format supported by the local media player.
  • an embodiment of the preset invention further provides a device for playing streaming media, and the device includes:
  • an index file obtaining module configured to obtain an index file of a media stream, wherein the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file;
  • a slice file obtaining module configured to obtain all slice files of the media stream according to the index file
  • a converting module configured to combine and convert all the slice files obtained into a local media file
  • a playing module configured to play the local media file by a local media player
  • the local media file is of a format supported by the local media player.
  • an embodiment of the preset invention further provides a non-transitory storage medium containing computer-executable instructions, which, when executed by a computer processor, are configured to perform a method for playing streaming media, wherein, the method comprises:
  • the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file;
  • the local media file is of a format supported by the local media player.
  • the embodiments of the preset invention are advantageous in that: all the obtained slice files are combined and converted into a local media file, which may be played by a local media player, so that a media stream of a format not supported by the local media player can be played on the terminal, thus the streaming media watching experience of a user may be improved.
  • Fig.1 is a schematic flow chart of a method for playing streaming media according to a first embodiment of the preset invention
  • Fig.2 is a structural representation of a streaming media transmission system based on HLS protocol according to the first embodiment of the preset invention
  • Fig.3 is a schematic flow chart of a method for playing streaming media according to a second embodiment of the preset invention
  • Fig.4 is a schematic flow chart showing the process of obtaining TS slice files of the media stream from an HTTP server according to the M3U8 index file, according to the second embodiment of the preset invention
  • Fig.5 is a structural representation of a device for playing streaming media according to a third embodiment of the preset invention.
  • Fig.6 is a structural representation of a device for playing streaming media according to a fourth embodiment of the preset invention.
  • the method for playing streaming media and the device for playing streaming media according to the embodiments of the preset invention may be applicable to a terminal with an operating system such as Android (i.e. an operating system platform developed by Google Inc. for portable mobile intelligent equipments), iOS (i.e. an operating system platform developed by Apple Inc. for portable mobile intelligent equipments) and Windows Phone (i.e. an operating system platform developed by Microsoft Inc. for portable mobile intelligent equipments), and the terminal, which may be any one of an intelligent mobile phone, a tablet PC, a personal digital assistant, a laptop computer and a desk-top computer, typically includes a combination of a part of all of a central processing unit, a storage device, a switching device, a power supply, a clock signal generator, an image processor and a sound processor.
  • an operating system such as Android (i.e. an operating system platform developed by Google Inc. for portable mobile intelligent equipments), iOS (i.e. an operating system platform developed by Apple Inc. for portable mobile intelligent equipments) and Windows Phone (i.e. an operating system platform developed
  • the relevant media stream includes an index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file.
  • the embodiments below are illustrated based on an illustrative media stream based on HLS protocol, but it may be understood by one skilled in the art that the technical solutions of the embodiments of the preset invention are also applicable to media streams based on other protocols not supported by the terminal.
  • the index file is an M3U8 index file
  • the slice file is a TS file.
  • Figs.1-2 show the first embodiment of the preset invention.
  • Fig.1 is a schematic flow chart of a method for playing streaming media according to the first embodiment of the preset invention. Referring to Fig.1 , the method includes the following Steps S101-S 104.
  • Step SI 01 obtaining an M3U8 index file of a media stream based on HLS protocol.
  • Fig.2 is a structural representation of a streaming media transmission system based on HLS protocol according to the first embodiment of the preset invention.
  • a satellite 201 that transmits streaming media or a camera 202 that captures streaming media transfers the streaming media to an encoding and slicing means 203, which encodes and encapsulates the received streaming media to generate a TS file, slices the TS file into a plurality of successive TS segment files each with a fixed length via a slicing tool so as to obtain TS slice files, and generates an M3U8 index file corresponding to the TS slice files;
  • an HTTP server 204 receives and stores the media stream based on HLS protocol that is sent by the encoding and slicing means 203 and includes the TS slice files and the M3U8 index file;
  • a desk-top computer 205 or an intelligent mobile phone 206 successively downloads the TS slice files from the HTTP server 204 and plays the TS slice files.
  • a media play request which may be an HTTP request
  • At least two pieces of time information, as well as time information (i.e. playing time length) and address information (i.e. an URL for locating the TS slice file) of a TS slice file corresponding to each of the at least two pieces of time information are recorded in the M3U8 index file.
  • Step SI 02 obtaining all TS slice files of the media stream from the HTTP server according to the M3U8 index file.
  • Step SI 02 the M3U8 index file is parsed according to an M3U format and a UTF-8 character coding format, to determine the address information of each TS slice file of the media stream; then, a TS slice file obtaining request, which includes the address information of all the TS slice files, is sent to the HTTP server; and subsequently each TS slice file sent by the HTTP server according to the request is received.
  • an M3U8 index file of a media stream based on HLS protocol may be described as:
  • the M3U8 index file involves 3 TS slice files, the name information of which are respectively l.ts, 2.ts and 3.ts, the time information (i.e. playing time lengths) of which are respectively 10 second, 10 second and 10 second, and the address information (i.e. URLs) of which are respectively http://live.example.eom/l .ts, http://live.example.eom/2.ts and http://live.example.eom/3.ts.
  • Step SI 03 combining and converting all the obtained TS slice files into a local media file.
  • Step SI 03 may include: after all the TS slice files are obtained from the HTTP server, combining all the TS slice files into a complete TS file according to the time information in the M3U8 index file, then converting the complete TS file into a local media file of a format supported by the local media player.
  • such conversion may be realized according to the TS encapsulating format standard and a media format standard supported by the local media player.
  • the complete TS file may be converted into a local media file of a Flash Video (FLV) format supported by the local Flash player.
  • the local media file may be of another format such as Moving Pictures Experts Group (MPEG), MPG, DAT, Audio Video Interleaved (AVI), MOV and 3GP supported by the local media player.
  • MPEG Moving Pictures Experts Group
  • MPG MPG
  • DAT Digital Video Interleaved
  • AVI Audio Video Interleaved
  • MOV 3GP supported by the local media player.
  • Step SI 04 playing the local media file by the local media player.
  • the local media player is a streaming media player installed on the terminal, and the local media file is of the format supported by the local media player.
  • all the obtained TS slice files are combined and converted into a local media file which may be played by the local media player, so that widely used terminals in addition to those from Apple Inc. can also play a media stream based on HLS protocol.
  • Figs.3-4 show the second embodiment of the preset invention.
  • Fig.3 is a schematic flow chart of a method for playing streaming media according to the second embodiment of the preset invention. Referring to Fig.3, the method includes the following Steps S301-S305.
  • Step S301 obtaining an M3U8 index file of a media stream based on HLS protocol.
  • Step S301 is the same as Step S101 of the first embodiment, and will not be described again here.
  • Step S302 obtaining all TS slice files of the media stream from an HTTP server and a local storage device according to the M3U8 index file.
  • Fig.4 is a schematic flow chart showing the obtaining of all TS slice files of the media stream from an HTTP server and a local storage device according to the M3U8 index file, according to the second embodiment of the preset invention.
  • Step S302 further includes:
  • Substep S3021 parsing the M3U8 index file to determine address information of each TS slice file of the media stream and name information contained in the address information;
  • Substep S3022 scanning the local storage device, and obtaining TS slice files already downloaded to the local storage device, where the TS slice files already downloaded have names the same as those of the TS slice files of the media stream;
  • Substep S3023 obtaining, from the HTTP server, other TS slice files except for the TS slice files already downloaded according to the address information.
  • a TS slice file obtaining request which includes the address information of other TS slice files except for the TS slice files already downloaded, is sent to the HTTP server; then, the TS slice files sent by the HTTP server according to the request are received.
  • Step S303 storing each TS slice file obtained from the HTTP server in the local storage device.
  • each TS slice file obtained from the HTTP server is stored in the local storage device, which may be an external storage device (for example, a local disk) or an internal memory. Because the internal memory is generally used for storing the codes needed for CPU operations, each TS slice file is preferably stored in a local disk, in order to relieve the burden of the internal memory without any negative influence on the operation speed of the CPU.
  • Step S304 combining and converting all the obtained TS slice files into a local media file.
  • Step S304 is the same as Step SI 03 of the first embodiment, and will not be described again here.
  • Step S305 playing the local media file by a local media player.
  • Step S305 is the same as Step SI 04 of the first embodiment, and will not be described again here.
  • Step S303 and Steps S304-S305 are not limited. That is, Steps S304-S305 may be performed first before Step S303; or, Step S304 is performed before Step S303, and then Step S305 is performed finally.
  • all the obtained TS slice files are combined and converted into a local media file which may be played by a local media player, so that other widely used terminals in addition to terminals from Apple Inc. can also support the playing of a media stream based on HLS protocol; further, all the TS slice files are stored in the local storage device, it is unnecessary to obtain the TS slice files from the HTTP server again to play the HLS media again subsequently, instead, the TS slice files stored in the local storage device may be searched out directly.
  • the inventive method is not limited by the network environment, the network traffic may be saved, and the video watching experience of a user may be greatly improved.
  • Fig.5 shows the third embodiment of the preset invention.
  • Fig.5 is a structural representation of a device for playing streaming media according to the third embodiment of the preset invention.
  • the device includes: an index file obtaining module 501, a slice file obtaining module 502, a converting module 503 and a playing module 504.
  • the index file obtaining module 501 is configured to obtain an index file of a media stream.
  • the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file.
  • the slice file obtaining module 502 is configured to obtain each slice file of the media stream according to the index file.
  • the converting module 503 is configured to combine and convert all the obtained slice files into a local media file.
  • the playing module 504 is configured to play the local media file by a local media player.
  • the local media file is of a format supported by the local media player.
  • the index file is an M3U8 index file
  • the slice files are TS slice files.
  • the TS slice file may be obtained from an HTTP server.
  • the index file obtaining module 501 may send wirelessly a media play request, which is an HTTP request, to an HTTP server storing the TS slice files and the M3U8 index file; then, the index file obtaining module 501 receives a reply provided by the HTTP server in response to the above media play request, where the reply contains an M3U8 index file of a media stream based on HLS protocol corresponding to the media play request. At least two pieces of time information, as well as the time information (i.e. playing time length) and the address information (e.g. an URL for locating the TS slice file) of a TS slice file corresponding to each of the at least two pieces of time information are recorded in the M3U8 index file.
  • the slice file obtaining module 502 may specifically include:
  • a third parsing submodule 5021 configured to parse the index file to determine the address information of each slice file of the media stream; preferably, the M3U8 index file is preferably parsed according to an M3U format and a UTF-8 character coding format, to determine the address information of each TS slice file of the media stream; and
  • a third obtaining submodule 5022 configured to obtain all the slice files from the server, preferably the HTTP server, according to the address information of the slice files of the media stream.
  • the third obtaining submodule 5022 sends a TS slice file obtaining request, which includes the address information of all the TS slice files, to the HTTP server, and then receives all the TS slice files sent by the HTTP server according to the request.
  • the converting module 503 specifically combines all the obtained slice files into a complete file according to the time information, and converts the complete file into a local media file of a format supported by the local media player.
  • the converting module 503 combines all the TS slice files into a complete TS file according to the time information recorded in the M3U8 index file, and then converts the complete TS file into a local media file of a format supported by the local media player.
  • the conversion may be realized according to the TS encapsulating format standard and a media format standard supported by the local media player.
  • the converting module 503 converts the complete TS file into a local media file of an FLV format supported by the local Flash player.
  • the local media file may be another format supported by the local media player, such as MPEG, MPG, DAT, AVI, MOV and 3GP.
  • all the obtained TS slice files are combined and converted into a local media file, which may be played by the local media player, so that other widely used terminals in addition to terminals from Apple Inc. can also support the playing of a media stream based on HLS protocol.
  • Fig.6 shows the fourth embodiment of the preset invention.
  • Fig.6 is a structural representation of a device for playing streaming media according to the fourth embodiment of the preset invention.
  • the device includes: an index file obtaining module 601, a slice file obtaining module 602, a storing module 603, a converting module 604 and a playing module 605.
  • the index file obtaining module 601 is configured to obtain an M3U8 index file of a media stream based on HLS protocol.
  • the slice file obtaining module 602 is configured to obtain all TS slice files of the media stream from an HTTP server and a local storage device according to the M3U8 index file.
  • the storing module 603 is configured to store TS slice files of the media stream obtained by the slice file obtaining module 602 from the HTTP server in the local storage device.
  • the converting module 604 is configured to combine and convert all the obtained TS slice files into a local media file.
  • the playing module 605 is configured to play the local media file by a local media player.
  • the local media file is of a format supported by the local media player.
  • the function of the index file obtaining module 601 is the same as that of the index file obtaining module 501 in the third embodiment
  • the function of the converting module 604 is the same as that of the converting module 503 in the third embodiment
  • the function of the playing module 605 is the same as that of the playing module 504 in the third embodiment, thus will not be described in detail again here.
  • the slice file obtaining module 602 specifically includes:
  • a first parsing submodule 6021 configured to parse the index file to determine the address information of each slice file of the media stream and the name information contained in the address information, and preferably configured to parse the M3U8 index file to determine the address information of each TS slice file of the media stream and the name information contained in the address information;
  • a first obtaining submodule 6022 configured to scan a local storage device to obtain the slice files already downloaded to the local storage device, where the slice files already downloaded have names the same as those of the slice files of the media stream, and these slice files already downloaded are specifically TS slice files;
  • a second obtaining submodule 6023 configured to obtain, from the server, other slice files of the media stream except for the slice files already downloaded according to the address information; preferably, said other slice files are downloaded from the HTTP server.
  • the second obtaining submodule 6023 sends a TS slice file obtaining request, which includes the address information of other TS slice files except for the TS slice files already downloaded, to the HTTP server, and then receives the TS slice files sent by the HTTP server according to the request.
  • the storing module 603 is configured to store each slice file obtained by the slice file obtaining module into the local storage device.
  • the storing module 603 is configured to store each TS slice file obtained from the HTTP server into the local storage device, which may be an external storage device (for example, a local disk) or an internal memory. Because the internal memory is generally used for storing the codes needed for CPU operations, the storing module 603 preferably stores all the TS slice files to the local disk, in order to relieve the burden of the internal memory without any negative influence on the operation speed of the CPU.
  • all the obtained TS slice files are combined and converted into a local media file which may be played by a local media player, so that other widely used terminals in addition to terminals from Apple Inc. can also support the playing of a media stream based on HLS protocol; further, all the TS slice files are stored in the local storage device, it is unnecessary to obtain the TS slice files from the HTTP server again to play the HLS media again subsequently, instead, the TS slice files stored in the local storage device may be searched out directly.
  • the inventive method is not limited by the network environment, the network traffic may be saved, and the video watching experience of a user may be greatly improved.
  • An embodiment of the preset invention further provides a non-transitory storage medium containing computer-executable instructions, which, when executed by a computer processor, are configured to perform a method for playing streaming media, where the method includes: obtaining an index file of a media stream, where the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file;
  • the local media file is of a format supported by the local media player.
  • the executable instructions stored in the storage medium may be instructions that are configured to perform a method for playing streaming media according to any embodiment of the preset invention.
  • the preset invention may be implemented by the aid of software and necessary universal hardware; of course, the preset invention may be implemented by hardware merely. However, in many cases, the former is preferred.
  • the essential part of the technical solutions of the preset invention or in other words, the part that contributes to the prior art, may be embodied in the form of a software product that is stored in a computer-readable storage medium, for example, floppy disk, Read-Only Memory (ROM), Random Access Memory (RAM), FLASH, hard disk or compact disc of a computer, and includes instructions for instructing a computer device (which may be a personal computer, a server or a network device) to implement the methods according to the above embodiments of the preset invention.
  • a computer device which may be a personal computer, a server or a network device

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The present invention discloses a method and a device for playing streaming media, and a non-transitory storage medium, and the method comprises: obtaining an index file of a media stream, wherein the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file; obtaining all slice files of the media stream according to the index file; combining and converting all the slice files obtained into a local media file; and playing the local media file by a local media player, wherein, the local media file is of a format supported by the local media player. By the present invention, a media stream of a format not supported by the local media player can be played by the local media player.

Description

METHOD AND DEVICE FOR PLAYING STREAMING MEDIA, AND NON-TRANSITORY STORAGE MEDIUM
CROSS-REFERENCE TO RELATED APPLICATION
This application claims the benefit of Chinese Application No. 201310246666.0, filed on June 20, 2013 by Tencent Technology (Shenzhen) Co., Ltd., titled "METHOD AND DEVICE FOR PLAYING STREAMING MEDIA", which is incorporated herein by reference in its entirety.
FIELD OF THE INVENTION
The present invention relates to the field of information technologies, particularly to the field of streaming media technologies, and more particularly to a method and a device for playing streaming media, and a non-transitory storage medium.
BACKGROUND OF THE INVENTION
At present, one of the most important functions of user equipment such as an intelligent mobile phone, a desk-top computer and a laptop computer is to obtain and play streaming media from the Internet. The traditional streaming media transmission is realized based on a special streaming media transmission protocol, for example, Routing Table Maintenance Protocol (RTMP), Real Time Streaming Protocol (RTSP), Multimedia Message Service (MMS) Protocol, etc. However, when the transmission of streaming media is based on these special streaming media transmission protocols in the actual network environment, an efficient network path for data transmission typically cannot be established due to the existence of a firewall and a Network Address Translation (NAT) router. In view of this, Apple Inc. has put forward the HTTP Live Streaming (HLS) protocol, according to which, a continuous media stream is sliced into multiple Transport Stream (TS) slice files, and an M3U8 index file (i.e. a playlist file) is generated correspondingly, and the TS slice files and the M3U8 index file are stored in an HTTP server. The TS slice files and the M3U8 index file constitute an HLS media stream. In this case, a terminal such as iPhone, iPad, iTouch and Mac computers obtains the M3U8 index file from the HTTP server via the HTTP protocol, and further obtains the TS slice files according to the Uniform Resource Locator (URL) provided in the M3U8 index file, thereby playing the streaming media. Because the streaming media data are transmitted as per the HTTP protocol, the firewall or proxy would not cause any trouble to the transmission; moreover, the time length of a TS slice file is very short, so that the terminal may rapidly select and switch to a code rate so as to adapt to the playing under different bandwidth conditions. At present, however, many widely used terminals other than those from Apple Inc. are incapable of playing a media stream based on HLS protocol; moreover, the media stream based on HLS protocol cannot be played off line by even a terminal capable of playing a media stream based on HLS protocol. As a result, the video watching experience of a user will be severely degraded.
SUMMARY OF THE INVENTION
Therefore, the embodiments of the invention provide a method and a device for playing streaming media, and a non-transitory storage medium, to allow a user terminal to efficiently obtain streaming media.
On a first aspect, an embodiment of the present invention provides a method for playing streaming media, and the method includes:
obtaining an index file of a media stream, wherein the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file;
obtaining all slice files of the media stream according to the index file;
combining and converting all the slice files obtained into a local media file; and playing the local media file by a local media player;
where, the local media file is of a format supported by the local media player.
On a second aspect, an embodiment of the preset invention further provides a device for playing streaming media, and the device includes:
an index file obtaining module, configured to obtain an index file of a media stream, wherein the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file;
a slice file obtaining module, configured to obtain all slice files of the media stream according to the index file;
a converting module, configured to combine and convert all the slice files obtained into a local media file; and
a playing module, configured to play the local media file by a local media player;
where, the local media file is of a format supported by the local media player.
On a third aspect, an embodiment of the preset invention further provides a non-transitory storage medium containing computer-executable instructions, which, when executed by a computer processor, are configured to perform a method for playing streaming media, wherein, the method comprises:
obtaining an index file of a media stream, wherein the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file;
obtaining all slice files of the media stream according to the index file; combining and converting all the slice files obtained into a local media file; and playing the local media file by a local media player;
where, the local media file is of a format supported by the local media player.
In comparison with the prior art, the embodiments of the preset invention are advantageous in that: all the obtained slice files are combined and converted into a local media file, which may be played by a local media player, so that a media stream of a format not supported by the local media player can be played on the terminal, thus the streaming media watching experience of a user may be improved.
BRIEF DESCRIPTION OF THE DRAWINGS
In order to more clearly illustrate the technical solutions of the embodiments of the preset invention, the drawings used for the description of the embodiments will be briefly introduced below. However, the drawings accompanying to the description below illustrate only some embodiments of the preset invention, and modifications and substitutions may be further made to these drawings by one of ordinary skills in the art without creative work.
Fig.1 is a schematic flow chart of a method for playing streaming media according to a first embodiment of the preset invention;
Fig.2 is a structural representation of a streaming media transmission system based on HLS protocol according to the first embodiment of the preset invention;
Fig.3 is a schematic flow chart of a method for playing streaming media according to a second embodiment of the preset invention;
Fig.4 is a schematic flow chart showing the process of obtaining TS slice files of the media stream from an HTTP server according to the M3U8 index file, according to the second embodiment of the preset invention;
Fig.5 is a structural representation of a device for playing streaming media according to a third embodiment of the preset invention; and
Fig.6 is a structural representation of a device for playing streaming media according to a fourth embodiment of the preset invention.
DETAILED DESCRIPTION OF THE EMBODIMENTS
The preset invention will be illustrated in detail below in conjunction with the drawings and embodiments. It may be understood that the specific embodiments described here are only used to explain the preset invention, rather than limiting the preset invention. In addition, it should be noted that only the parts related to the preset invention, rather than the whole contents, are shown in the drawings, for the sake of brief description.
The method for playing streaming media and the device for playing streaming media according to the embodiments of the preset invention may be applicable to a terminal with an operating system such as Android (i.e. an operating system platform developed by Google Inc. for portable mobile intelligent equipments), iOS (i.e. an operating system platform developed by Apple Inc. for portable mobile intelligent equipments) and Windows Phone (i.e. an operating system platform developed by Microsoft Inc. for portable mobile intelligent equipments), and the terminal, which may be any one of an intelligent mobile phone, a tablet PC, a personal digital assistant, a laptop computer and a desk-top computer, typically includes a combination of a part of all of a central processing unit, a storage device, a switching device, a power supply, a clock signal generator, an image processor and a sound processor. The above combination of a part of all of a central processing unit, a storage device, a switching device, a power supply, a clock signal generator, an image processor and a sound processor is used for embodying the method for playing streaming media and the functions of the device for playing streaming media according to the embodiments of the preset invention.
In the method for playing streaming media and the device for playing streaming media according to the embodiments of the preset invention, the relevant media stream includes an index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file. The embodiments below are illustrated based on an illustrative media stream based on HLS protocol, but it may be understood by one skilled in the art that the technical solutions of the embodiments of the preset invention are also applicable to media streams based on other protocols not supported by the terminal. In the case of the media stream based on HLS protocol, the index file is an M3U8 index file, and the slice file is a TS file.
Figs.1-2 show the first embodiment of the preset invention.
Fig.1 is a schematic flow chart of a method for playing streaming media according to the first embodiment of the preset invention. Referring to Fig.1 , the method includes the following Steps S101-S 104.
Step SI 01 : obtaining an M3U8 index file of a media stream based on HLS protocol.
Fig.2 is a structural representation of a streaming media transmission system based on HLS protocol according to the first embodiment of the preset invention. Referring to Fig.2, a satellite 201 that transmits streaming media or a camera 202 that captures streaming media transfers the streaming media to an encoding and slicing means 203, which encodes and encapsulates the received streaming media to generate a TS file, slices the TS file into a plurality of successive TS segment files each with a fixed length via a slicing tool so as to obtain TS slice files, and generates an M3U8 index file corresponding to the TS slice files; an HTTP server 204 receives and stores the media stream based on HLS protocol that is sent by the encoding and slicing means 203 and includes the TS slice files and the M3U8 index file; and a desk-top computer 205 or an intelligent mobile phone 206 successively downloads the TS slice files from the HTTP server 204 and plays the TS slice files.
In this embodiment, a media play request, which may be an HTTP request, may be sent wirelessly to the HTTP server storing the TS slice files and the M3U8 index file; then, a reply in response to the media play request is received from the HTTP server, where the reply contains the M3U8 index file of a media stream based on HLS protocol corresponding to the media play request. At least two pieces of time information, as well as time information (i.e. playing time length) and address information (i.e. an URL for locating the TS slice file) of a TS slice file corresponding to each of the at least two pieces of time information are recorded in the M3U8 index file.
Step SI 02: obtaining all TS slice files of the media stream from the HTTP server according to the M3U8 index file.
In Step SI 02, the M3U8 index file is parsed according to an M3U format and a UTF-8 character coding format, to determine the address information of each TS slice file of the media stream; then, a TS slice file obtaining request, which includes the address information of all the TS slice files, is sent to the HTTP server; and subsequently each TS slice file sent by the HTTP server according to the request is received.
For example, an M3U8 index file of a media stream based on HLS protocol may be described as:
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:6 #EXT-X-TAPvGETDURATION: 10 #EXTINF: 10, http://live.example.eom/l .ts #EXTINF: 10, http://live.example.eom/2.ts #EXTINF: 10, http://live.example.eom/3.ts
By parsing the above M3U8 index file, it may be determined that the M3U8 index file involves 3 TS slice files, the name information of which are respectively l.ts, 2.ts and 3.ts, the time information (i.e. playing time lengths) of which are respectively 10 second, 10 second and 10 second, and the address information (i.e. URLs) of which are respectively http://live.example.eom/l .ts, http://live.example.eom/2.ts and http://live.example.eom/3.ts.
Step SI 03: combining and converting all the obtained TS slice files into a local media file.
Specifically, Step SI 03 may include: after all the TS slice files are obtained from the HTTP server, combining all the TS slice files into a complete TS file according to the time information in the M3U8 index file, then converting the complete TS file into a local media file of a format supported by the local media player. Herein, such conversion may be realized according to the TS encapsulating format standard and a media format standard supported by the local media player. For example, the complete TS file may be converted into a local media file of a Flash Video (FLV) format supported by the local Flash player. Of course, the local media file may be of another format such as Moving Pictures Experts Group (MPEG), MPG, DAT, Audio Video Interleaved (AVI), MOV and 3GP supported by the local media player.
Step SI 04: playing the local media file by the local media player.
In this embodiment, the local media player is a streaming media player installed on the terminal, and the local media file is of the format supported by the local media player.
In the first embodiment of the preset invention, all the obtained TS slice files are combined and converted into a local media file which may be played by the local media player, so that widely used terminals in addition to those from Apple Inc. can also play a media stream based on HLS protocol.
Figs.3-4 show the second embodiment of the preset invention.
Fig.3 is a schematic flow chart of a method for playing streaming media according to the second embodiment of the preset invention. Referring to Fig.3, the method includes the following Steps S301-S305.
Step S301 : obtaining an M3U8 index file of a media stream based on HLS protocol.
This Step S301 is the same as Step S101 of the first embodiment, and will not be described again here.
Step S302: obtaining all TS slice files of the media stream from an HTTP server and a local storage device according to the M3U8 index file.
Fig.4 is a schematic flow chart showing the obtaining of all TS slice files of the media stream from an HTTP server and a local storage device according to the M3U8 index file, according to the second embodiment of the preset invention. Referring to Fig.4, Step S302 further includes:
Substep S3021 : parsing the M3U8 index file to determine address information of each TS slice file of the media stream and name information contained in the address information;
Substep S3022: scanning the local storage device, and obtaining TS slice files already downloaded to the local storage device, where the TS slice files already downloaded have names the same as those of the TS slice files of the media stream; and
Substep S3023: obtaining, from the HTTP server, other TS slice files except for the TS slice files already downloaded according to the address information.
In Substep S3023, a TS slice file obtaining request, which includes the address information of other TS slice files except for the TS slice files already downloaded, is sent to the HTTP server; then, the TS slice files sent by the HTTP server according to the request are received. Step S303: storing each TS slice file obtained from the HTTP server in the local storage device.
After all the TS slice files of the media stream are obtained according to the M3U8 index file, each TS slice file obtained from the HTTP server is stored in the local storage device, which may be an external storage device (for example, a local disk) or an internal memory. Because the internal memory is generally used for storing the codes needed for CPU operations, each TS slice file is preferably stored in a local disk, in order to relieve the burden of the internal memory without any negative influence on the operation speed of the CPU.
Step S304: combining and converting all the obtained TS slice files into a local media file.
This Step S304 is the same as Step SI 03 of the first embodiment, and will not be described again here.
Step S305: playing the local media file by a local media player.
This Step S305 is the same as Step SI 04 of the first embodiment, and will not be described again here.
In this embodiment, the precedence order of Step S303 and Steps S304-S305 is not limited. That is, Steps S304-S305 may be performed first before Step S303; or, Step S304 is performed before Step S303, and then Step S305 is performed finally.
In the second embodiment of the preset invention, all the obtained TS slice files are combined and converted into a local media file which may be played by a local media player, so that other widely used terminals in addition to terminals from Apple Inc. can also support the playing of a media stream based on HLS protocol; further, all the TS slice files are stored in the local storage device, it is unnecessary to obtain the TS slice files from the HTTP server again to play the HLS media again subsequently, instead, the TS slice files stored in the local storage device may be searched out directly. Thus, the inventive method is not limited by the network environment, the network traffic may be saved, and the video watching experience of a user may be greatly improved.
Fig.5 shows the third embodiment of the preset invention.
Fig.5 is a structural representation of a device for playing streaming media according to the third embodiment of the preset invention. Referring to Fig.5, the device includes: an index file obtaining module 501, a slice file obtaining module 502, a converting module 503 and a playing module 504.
The index file obtaining module 501 is configured to obtain an index file of a media stream. Here, the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file. The slice file obtaining module 502 is configured to obtain each slice file of the media stream according to the index file. The converting module 503 is configured to combine and convert all the obtained slice files into a local media file. The playing module 504 is configured to play the local media file by a local media player. Herein, the local media file is of a format supported by the local media player.
The above embodiment is preferably applicable to a media stream based on HLS protocol, in this case, the index file is an M3U8 index file, and the slice files are TS slice files. The TS slice file may be obtained from an HTTP server.
In this embodiment, the index file obtaining module 501 may send wirelessly a media play request, which is an HTTP request, to an HTTP server storing the TS slice files and the M3U8 index file; then, the index file obtaining module 501 receives a reply provided by the HTTP server in response to the above media play request, where the reply contains an M3U8 index file of a media stream based on HLS protocol corresponding to the media play request. At least two pieces of time information, as well as the time information (i.e. playing time length) and the address information (e.g. an URL for locating the TS slice file) of a TS slice file corresponding to each of the at least two pieces of time information are recorded in the M3U8 index file.
In this embodiment, the slice file obtaining module 502 may specifically include:
a third parsing submodule 5021, configured to parse the index file to determine the address information of each slice file of the media stream; preferably, the M3U8 index file is preferably parsed according to an M3U format and a UTF-8 character coding format, to determine the address information of each TS slice file of the media stream; and
a third obtaining submodule 5022, configured to obtain all the slice files from the server, preferably the HTTP server, according to the address information of the slice files of the media stream.
Specifically, the third obtaining submodule 5022 sends a TS slice file obtaining request, which includes the address information of all the TS slice files, to the HTTP server, and then receives all the TS slice files sent by the HTTP server according to the request.
In this embodiment, after the slice file obtaining module 502 obtains all the slice files, the converting module 503 specifically combines all the obtained slice files into a complete file according to the time information, and converts the complete file into a local media file of a format supported by the local media player. Preferably, the converting module 503 combines all the TS slice files into a complete TS file according to the time information recorded in the M3U8 index file, and then converts the complete TS file into a local media file of a format supported by the local media player. Herein, the conversion may be realized according to the TS encapsulating format standard and a media format standard supported by the local media player. For example, the converting module 503 converts the complete TS file into a local media file of an FLV format supported by the local Flash player. Of course, the local media file may be another format supported by the local media player, such as MPEG, MPG, DAT, AVI, MOV and 3GP. In the third embodiment of the preset invention, all the obtained TS slice files are combined and converted into a local media file, which may be played by the local media player, so that other widely used terminals in addition to terminals from Apple Inc. can also support the playing of a media stream based on HLS protocol.
Fig.6 shows the fourth embodiment of the preset invention.
Fig.6 is a structural representation of a device for playing streaming media according to the fourth embodiment of the preset invention. Referring to Fig.6, the device includes: an index file obtaining module 601, a slice file obtaining module 602, a storing module 603, a converting module 604 and a playing module 605.
The index file obtaining module 601 is configured to obtain an M3U8 index file of a media stream based on HLS protocol. The slice file obtaining module 602 is configured to obtain all TS slice files of the media stream from an HTTP server and a local storage device according to the M3U8 index file. The storing module 603 is configured to store TS slice files of the media stream obtained by the slice file obtaining module 602 from the HTTP server in the local storage device. The converting module 604 is configured to combine and convert all the obtained TS slice files into a local media file. The playing module 605 is configured to play the local media file by a local media player. Herein, the local media file is of a format supported by the local media player.
In this embodiment, the function of the index file obtaining module 601 is the same as that of the index file obtaining module 501 in the third embodiment, the function of the converting module 604 is the same as that of the converting module 503 in the third embodiment, and the function of the playing module 605 is the same as that of the playing module 504 in the third embodiment, thus will not be described in detail again here.
In this embodiment, the slice file obtaining module 602 specifically includes:
a first parsing submodule 6021, configured to parse the index file to determine the address information of each slice file of the media stream and the name information contained in the address information, and preferably configured to parse the M3U8 index file to determine the address information of each TS slice file of the media stream and the name information contained in the address information;
a first obtaining submodule 6022, configured to scan a local storage device to obtain the slice files already downloaded to the local storage device, where the slice files already downloaded have names the same as those of the slice files of the media stream, and these slice files already downloaded are specifically TS slice files; and
a second obtaining submodule 6023, configured to obtain, from the server, other slice files of the media stream except for the slice files already downloaded according to the address information; preferably, said other slice files are downloaded from the HTTP server.
Specifically, the second obtaining submodule 6023 sends a TS slice file obtaining request, which includes the address information of other TS slice files except for the TS slice files already downloaded, to the HTTP server, and then receives the TS slice files sent by the HTTP server according to the request.
The storing module 603 is configured to store each slice file obtained by the slice file obtaining module into the local storage device. In this embodiment, the storing module 603 is configured to store each TS slice file obtained from the HTTP server into the local storage device, which may be an external storage device (for example, a local disk) or an internal memory. Because the internal memory is generally used for storing the codes needed for CPU operations, the storing module 603 preferably stores all the TS slice files to the local disk, in order to relieve the burden of the internal memory without any negative influence on the operation speed of the CPU.
In the fourth embodiment of the preset invention, all the obtained TS slice files are combined and converted into a local media file which may be played by a local media player, so that other widely used terminals in addition to terminals from Apple Inc. can also support the playing of a media stream based on HLS protocol; further, all the TS slice files are stored in the local storage device, it is unnecessary to obtain the TS slice files from the HTTP server again to play the HLS media again subsequently, instead, the TS slice files stored in the local storage device may be searched out directly. Thus, the inventive method is not limited by the network environment, the network traffic may be saved, and the video watching experience of a user may be greatly improved.
An embodiment of the preset invention further provides a non-transitory storage medium containing computer-executable instructions, which, when executed by a computer processor, are configured to perform a method for playing streaming media, where the method includes: obtaining an index file of a media stream, where the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file;
obtaining all slice files of the media stream according to the index file;
combining and converting all the obtained slice files into a local media file; and playing the local media file by a local media player.
Herein, the local media file is of a format supported by the local media player.
The executable instructions stored in the storage medium may be instructions that are configured to perform a method for playing streaming media according to any embodiment of the preset invention.
With the description of the above embodiments, one skilled in the art may clearly understand that the preset invention may be implemented by the aid of software and necessary universal hardware; of course, the preset invention may be implemented by hardware merely. However, in many cases, the former is preferred. Based on such an understanding, the essential part of the technical solutions of the preset invention, or in other words, the part that contributes to the prior art, may be embodied in the form of a software product that is stored in a computer-readable storage medium, for example, floppy disk, Read-Only Memory (ROM), Random Access Memory (RAM), FLASH, hard disk or compact disc of a computer, and includes instructions for instructing a computer device (which may be a personal computer, a server or a network device) to implement the methods according to the above embodiments of the preset invention.
The above description only shows some preferred embodiments of the preset invention, rather than limiting the scope of the preset invention. All modifications, equivalent substitutions and improvements made without departing from the concept and principles of the preset invention should fall within the scope of the preset invention.

Claims

WHAT IS CLAIMED IS:
1. A method for playing streaming media, comprising: obtaining an index file of a media stream, wherein the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file; obtaining all slice files of the media stream according to the index file; combining and converting all the slice files obtained into a local media file; and playing the local media file by a local media player; wherein, the local media file is of a format supported by the local media player.
2. The method for playing streaming media according to claim 1, wherein, combining and converting all the slice files obtained into a local media file comprises: combining all the slice files obtained into a complete file according to the time information; and converting the complete file into a local media file of a format supported by the local media player.
3. The method for playing streaming media according to claim 1, wherein, obtaining an index file of a media stream comprises: sending a media play request to a server; and obtaining an index file of a media stream from the server.
4. The method for playing streaming media according to claim 3, wherein, obtaining all slice files of the media stream according to the index file comprises: parsing the index file to determine the address information of each slice file of the media stream; and obtaining each slice file from the server according to the address information of the slice file of the media stream.
5. The method for playing streaming media according to claim 3, wherein, obtaining all slice files of the media stream according to the index file comprises: parsing the index file to determine the address information of each slice file of the media stream and name information contained in the address information; scanning a local storage device, and obtaining slice files already downloaded to the local storage device, wherein the slice files already downloaded have names the same as those of slice files of the media stream; and obtaining, from the server, other slice files of the media stream except for the slice files already downloaded according to the address information.
6. The method for playing streaming media according to claim 5, wherein, after obtaining all slice files of the media stream according to the index file, the method further comprises: storing all the slice files obtained from the server into the local storage device.
7. The method for playing streaming media according to any one of claims 1-6, wherein, the media stream is based on Hypertext Transfer Protocol Live Streaming protocol, the index file is an M3U8 index file, and the slice file is a Transport Stream slice file.
8. The method for playing streaming media according to any one of claims 1-6, wherein, the local media file is of an FLV format, and the local media player is a Flash player.
9. A device for playing streaming media, comprising: an index file obtaining module, configured to obtain an index file of a media stream, wherein the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file; a slice file obtaining module, configured to obtain all slice files of the media stream according to the index file; a converting module, configured to combine and convert all the slice files obtained into a local media file; and a playing module, configured to play the local media file by a local media player; wherein, the local media file is of a format supported by the local media player.
10. The device for playing streaming media according to claim 9, wherein, the converting module is configured to: combine all the slice files obtained into a complete file according to the time information; and convert the complete file into a local media file of a format supported by the local media player.
11. The device for playing streaming media according to claim 9, wherein, the index file obtaining module is configured to: sending a media play request to a server; and obtaining an index file of a media stream from the server.
12. The device for playing streaming media according to claim 11, wherein, the slice file obtaining module comprises: a third parsing submodule, configured to parse the index file to determine the address information of each slice file of the media stream; and a third obtaining submodule, configured to obtain each slice file from the server according to the address information of the slice file of the media stream.
13. The device for playing streaming media according to claim 11, wherein, the slice file obtaining module comprises: a first parsing submodule, configured to parse the index file to determine the address information of each slice file of the media stream and name information contained in the address information; a first obtaining submodule, configured to scan a local storage device and obtain slice files already downloaded to the local storage device, wherein the slice files already downloaded have names the same as those of slice files of the media stream; and a second obtaining submodule, configured to obtain, from the server, other slice files of the media stream except for the slice files already downloaded, according to the address information.
14. The device for playing streaming media according to claim 13, further comprising a storing module, configured to store each slice file obtained by the slice file obtaining module into the local storage device.
15. The device for playing streaming media according to any one of claims 9-14, wherein, the media stream is based on Hypertext Transfer Protocol Live Streaming protocol, the index file is an M3U8 index file, and the slice file is a Transport Stream slice file.
16. The device for playing streaming media according to any one of claims 9-14, wherein, the local media file is of an FLV format, and the local media player is a Flash player.
17. A non-transitory storage medium containing computer-executable instructions, which, when executed by a computer processor, are configured to perform a method for playing streaming media, wherein, the method comprises: obtaining an index file of a media stream, wherein the media stream includes the index file and at least two slice files, and time information and address information of each of the at least two slice files are recorded in the index file; obtaining all slice files of the media stream according to the index file; combining and converting all the slice files obtained into a local media file; and playing the local media file by a local media player; wherein, the local media file is of a format supported by the local media player.
PCT/CN2014/073604 2013-06-20 2014-03-18 Method and device for playing streaming media, and non-transitory storage medium Ceased WO2014201883A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/691,961 US9882951B2 (en) 2013-06-20 2015-04-21 Method and device for playing streaming media, and non-transitory storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310246666.0A CN104243430A (en) 2013-06-20 2013-06-20 Streaming media playing method and device
CN201310246666.0 2013-06-20

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/691,961 Continuation US9882951B2 (en) 2013-06-20 2015-04-21 Method and device for playing streaming media, and non-transitory storage medium

Publications (1)

Publication Number Publication Date
WO2014201883A1 true WO2014201883A1 (en) 2014-12-24

Family

ID=52103903

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/073604 Ceased WO2014201883A1 (en) 2013-06-20 2014-03-18 Method and device for playing streaming media, and non-transitory storage medium

Country Status (3)

Country Link
US (1) US9882951B2 (en)
CN (1) CN104243430A (en)
WO (1) WO2014201883A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105611395A (en) * 2015-09-22 2016-05-25 北京暴风科技股份有限公司 MP4 format video online play method and system thereof
CN107005721A (en) * 2016-11-22 2017-08-01 广州市百果园信息技术有限公司 Direct broadcasting room pushing video streaming control method and corresponding server and mobile terminal
CN111416990A (en) * 2020-03-21 2020-07-14 杭州视在数科信息技术有限公司 TS (transport stream) storage and access method based on streaming data processing platform and application
CN113038170A (en) * 2021-03-01 2021-06-25 北京四达时代软件技术股份有限公司 Live broadcast HLS data generation method and device, processing method and device and control system
CN117336311A (en) * 2023-11-30 2024-01-02 深圳市小溪流科技有限公司 A method and device for maintaining consistency in slices of multiple HLS servers

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104602032A (en) * 2015-01-13 2015-05-06 乐视致新电子科技(天津)有限公司 Video playing processing method, playing application proxy device and playing server
CN105992016A (en) * 2015-02-05 2016-10-05 天脉聚源(北京)科技有限公司 HLS on-line transcoding method and system
CN105992044A (en) * 2015-02-05 2016-10-05 天脉聚源(北京)科技有限公司 Method and system of transcoding HLS to RTMP live streaming
CN104796796B (en) * 2015-04-21 2018-03-16 范文鲜 Improve the fault-tolerant method of the HLS streaming players of Android platform
CN104902343B (en) * 2015-05-26 2018-11-23 北京微吼时代科技有限公司 A kind of method, server and the terminal of transmission and playing audio-video and message
CN105142020A (en) * 2015-08-10 2015-12-09 合一网络技术(北京)有限公司 Method and system for converting video in unsupported format in mobile terminal
CN105049931B (en) * 2015-08-10 2019-03-12 优酷网络技术(北京)有限公司 The method and system that the video of format non-supporting in mobile terminal is converted
CN106686410B (en) * 2015-11-09 2019-05-07 中国电信股份有限公司 HLS flow-medium transmission method and device
CN106686443A (en) * 2015-11-10 2017-05-17 中兴通讯股份有限公司 Media playback method, media playback terminal and media playback system
CN105898380A (en) * 2015-12-14 2016-08-24 乐视云计算有限公司 Rapid network video play starting method and device
CN105578263A (en) * 2015-12-28 2016-05-11 山东泰信电子股份有限公司 Method for playing and transmitting live programme, intelligent playing equipment and live telecasting equipment
US20170272498A1 (en) * 2016-03-21 2017-09-21 Le Holdings (Beijing) Co., Ltd. Streaming media file distribution method and system
CN106657218A (en) * 2016-09-20 2017-05-10 山东浪潮商用系统有限公司 Streaming media file processing system and streaming media file processing method
CN107426629B (en) * 2017-06-19 2020-06-23 网宿科技股份有限公司 A kind of streaming media file processing method and live broadcast system
CN110213615B (en) * 2018-04-04 2021-11-02 腾讯科技(深圳)有限公司 Video transcoding method, device, server and storage medium
CN108494792A (en) * 2018-04-09 2018-09-04 四川百视通科技有限公司 A kind of flash player plays the converting system and its working method of hls video flowings
CN108683945B (en) * 2018-05-22 2021-03-26 上海聚力传媒技术有限公司 Video playing method and device based on HLS protocol
CN110166831B (en) * 2018-07-23 2021-10-15 腾讯科技(深圳)有限公司 Method, device, storage medium and computer equipment for playing back streaming media file
CN109495505B (en) * 2018-12-21 2021-10-08 北京金山云网络技术有限公司 Streaming media protocol conversion method, device, system and computer readable medium
CN109787983A (en) * 2019-01-24 2019-05-21 北京百度网讯科技有限公司 Live stream dicing method, device and system
CN109756757B (en) * 2019-03-21 2021-07-13 北京数码视讯软件技术发展有限公司 Live broadcast data processing method and device, live broadcast method and device and live broadcast server
CN112243158B (en) * 2019-07-18 2023-07-14 腾讯科技(深圳)有限公司 Media file processing method and device, computer readable medium and electronic equipment
CN112714335A (en) * 2019-10-24 2021-04-27 中兴通讯股份有限公司 Live media stream recording method, system and computer readable storage medium
CN110944012B (en) * 2019-12-16 2021-09-10 西安电子科技大学 Anti-protocol analysis data secure transmission method, system and information data processing terminal
CN111405380B (en) * 2020-04-14 2022-08-05 聚好看科技股份有限公司 Method and device for playing streaming media data
CN112203155B (en) * 2020-09-09 2022-08-26 杭州海康威视系统技术有限公司 Stream taking method, system and equipment
CN112601131B (en) * 2020-12-10 2023-03-21 杭州当虹科技股份有限公司 HLS video slice file storage optimization method
CN114630143B (en) * 2020-12-10 2024-03-22 浙江宇视科技有限公司 Video stream storage method, device, electronic equipment and storage medium
CN115412777A (en) * 2021-05-28 2022-11-29 北京金山云网络技术有限公司 Streaming media data transmission method, device and system
CN116264627B (en) * 2021-12-15 2025-11-28 北京金山云网络技术有限公司 Media stream slicing method and device, storage medium and electronic equipment
CN114339366A (en) * 2021-12-22 2022-04-12 武汉市烽视威科技有限公司 Method, device and equipment for replacing advertisements in review programs
CN114579771A (en) * 2022-02-24 2022-06-03 珠海海奇半导体有限公司 Media file playing method and system, control device and storage medium
CN115174679A (en) * 2022-07-27 2022-10-11 天翼云科技有限公司 Network file caching method and device, electronic equipment and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101917388A (en) * 2009-12-17 2010-12-15 新奥特(北京)视频技术有限公司 Streaming media data storage method and device
CN102378043A (en) * 2011-09-29 2012-03-14 深圳市矽伟智科技有限公司 Content delivery method and Internet television (TV) playing method as well as corresponding device and systems
CN102624752A (en) * 2011-01-26 2012-08-01 天脉聚源(北京)传媒科技有限公司 A method and system for preventing hotlinking of M3U8 live streaming
CN102957672A (en) * 2011-08-25 2013-03-06 中国电信股份有限公司 Method, client side and system for self-adaptive playing of FLV (flash video) media streams
CN103024528A (en) * 2013-01-07 2013-04-03 杭州浦禾通信技术有限公司 Mobile terminal and method for transmitting streaming media data on mobile terminal
CN103078847A (en) * 2012-12-24 2013-05-01 深圳市龙视传媒有限公司 Method for storing and reading multi-code-rate stream file and relevant device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090282076A1 (en) * 2008-05-07 2009-11-12 Library Video Company Playlist processing
CN102301679A (en) * 2009-01-20 2011-12-28 Rgb网络有限公司 System and method for splicing media files
CN102118428B (en) * 2010-12-29 2012-12-26 天脉聚源(北京)传媒科技有限公司 Method and system for playing streaming media
CN102547478B (en) * 2012-02-20 2015-03-11 北京蓝汛通信技术有限责任公司 Triggered slice on-demand system and method of streaming media based on CDN (Content Distribution Network)
CN102740125B (en) * 2012-06-13 2014-11-26 天脉聚源(北京)传媒科技有限公司 System and method for playing streaming media

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101917388A (en) * 2009-12-17 2010-12-15 新奥特(北京)视频技术有限公司 Streaming media data storage method and device
CN102624752A (en) * 2011-01-26 2012-08-01 天脉聚源(北京)传媒科技有限公司 A method and system for preventing hotlinking of M3U8 live streaming
CN102957672A (en) * 2011-08-25 2013-03-06 中国电信股份有限公司 Method, client side and system for self-adaptive playing of FLV (flash video) media streams
CN102378043A (en) * 2011-09-29 2012-03-14 深圳市矽伟智科技有限公司 Content delivery method and Internet television (TV) playing method as well as corresponding device and systems
CN103078847A (en) * 2012-12-24 2013-05-01 深圳市龙视传媒有限公司 Method for storing and reading multi-code-rate stream file and relevant device
CN103024528A (en) * 2013-01-07 2013-04-03 杭州浦禾通信技术有限公司 Mobile terminal and method for transmitting streaming media data on mobile terminal

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105611395A (en) * 2015-09-22 2016-05-25 北京暴风科技股份有限公司 MP4 format video online play method and system thereof
CN105611395B (en) * 2015-09-22 2019-05-10 暴风集团股份有限公司 A kind of method and system that MP4 format video plays online
CN107005721A (en) * 2016-11-22 2017-08-01 广州市百果园信息技术有限公司 Direct broadcasting room pushing video streaming control method and corresponding server and mobile terminal
CN111416990A (en) * 2020-03-21 2020-07-14 杭州视在数科信息技术有限公司 TS (transport stream) storage and access method based on streaming data processing platform and application
CN113038170A (en) * 2021-03-01 2021-06-25 北京四达时代软件技术股份有限公司 Live broadcast HLS data generation method and device, processing method and device and control system
CN113038170B (en) * 2021-03-01 2022-05-13 北京四达时代软件技术股份有限公司 Live broadcast HLS data generation method and device, processing method and device and control system
CN117336311A (en) * 2023-11-30 2024-01-02 深圳市小溪流科技有限公司 A method and device for maintaining consistency in slices of multiple HLS servers
CN117336311B (en) * 2023-11-30 2024-03-12 深圳市小溪流科技有限公司 Method and device for keeping consistency of multiple HLS server slices

Also Published As

Publication number Publication date
US9882951B2 (en) 2018-01-30
CN104243430A (en) 2014-12-24
US20150229688A1 (en) 2015-08-13

Similar Documents

Publication Publication Date Title
US9882951B2 (en) Method and device for playing streaming media, and non-transitory storage medium
Kesavan et al. An investigation on adaptive HTTP media streaming Quality-of-Experience (QoE) and agility using cloud media services
Sodagar The mpeg-dash standard for multimedia streaming over the internet
JP6425720B2 (en) Method and apparatus for content delivery
US9247317B2 (en) Content streaming with client device trick play index
CN102118428B (en) Method and system for playing streaming media
US20150256600A1 (en) Systems and methods for media format substitution
US11277456B2 (en) System and method for delivering an audio-visual con tent to a client device
US20140297804A1 (en) Control of multimedia content streaming through client-server interactions
US20110138018A1 (en) Mobile media server
EP3295674A1 (en) Transferring media data using a websocket subprotocol
CN104244028B (en) A kind of content distribution method based on code stream adaptive technique, apparatus and system
KR102499231B1 (en) Receiving device, sending device and data processing method
US12593078B2 (en) Live video playback
KR20120114016A (en) Method and apparatus for network adaptive streaming user data in a outer terminal
CN113438513B (en) Video resolution switching method, device, equipment and storage medium
US20160373498A1 (en) Media-timed web interactions
KR102085192B1 (en) Rendering time control
CN105577645A (en) Proxy-based HLS client device and its implementation method
TWI531219B (en) A method and system for transferring real-time audio/video stream
KR20160138044A (en) Targeted advertisement insertion for streaming media data
KR102137858B1 (en) Transmission device, transmission method, reception device, reception method, and program
CN108737355B (en) Streaming media playback based on user bandwidth
WO2019193991A1 (en) Distribution device, distribution method and program
KR20160036924A (en) System for device independent live streaming

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: 14814240

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 10/05/2016)

122 Ep: pct application non-entry in european phase

Ref document number: 14814240

Country of ref document: EP

Kind code of ref document: A1