WO2017092435A1 - 音视频实时传输方法及装置、传输流打包方法及复用器 - Google Patents

音视频实时传输方法及装置、传输流打包方法及复用器 Download PDF

Info

Publication number
WO2017092435A1
WO2017092435A1 PCT/CN2016/096991 CN2016096991W WO2017092435A1 WO 2017092435 A1 WO2017092435 A1 WO 2017092435A1 CN 2016096991 W CN2016096991 W CN 2016096991W WO 2017092435 A1 WO2017092435 A1 WO 2017092435A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
audio
original stream
video
packet
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/CN2016/096991
Other languages
English (en)
French (fr)
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.)
Le Holdings Beijing Co Ltd
Leshi Zhixin Electronic Technology Tianjin Co Ltd
Original Assignee
Le Holdings Beijing Co Ltd
Leshi Zhixin Electronic Technology Tianjin 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 Le Holdings Beijing Co Ltd, Leshi Zhixin Electronic Technology Tianjin Co Ltd filed Critical Le Holdings Beijing Co Ltd
Publication of WO2017092435A1 publication Critical patent/WO2017092435A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23113Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving housekeeping operations for stored content, e.g. prioritizing content for deletion because of storage space restrictions
    • 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/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23608Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]

Definitions

  • the embodiments of the present invention relate to the field of audio and video technologies, and in particular, to a method and device for real-time transmission of audio and video, a method for packaging a transport stream, and a multiplexer.
  • the HLS (HTTP Live Streaming) protocol is an extended HTTP protocol developed by Apple Inc. for use in live webcast and on-demand scenarios.
  • the protocol encapsulates data using a Transport Stream (TS).
  • TS Transport Stream
  • Each transport stream carries data information such as video (Video), audio (Audio), and the like, and carries flow index information such as a Program Association Table (PAT) and a Program Map Table (PMT).
  • PAT Program Association Table
  • PMT Program Map Table
  • the slicing of the HLS is too large, which not only occupies the download time, but also causes more time delay and more server storage space in the live broadcast.
  • the embodiment of the present invention provides a method and device for real-time transmission of audio and video, a method for packaging a transport stream, and a multiplexer, which are used to solve the technical problem of excessive redundant data in real-time transmission of audio and video in the prior art.
  • the embodiment of the present application provides a real-time audio and video transmission method, including:
  • the video original stream and the audio original stream are separately packaged into a grouped video original stream and a packetized audio original stream;
  • a request is received and the program slice is transmitted in accordance with the request.
  • the step of packaging the video original stream and the audio original stream into the video original stream and the grouped audio original stream separately comprises: separately encoding the video data and the audio data to form the video original stream and the audio original stream.
  • the embodiment of the present application provides a transport stream packing method, including:
  • step of receiving the video original stream of the packet, the audio original stream of the packet, a program association table, and a program mapping table step are further included;
  • the embodiment of the present application provides an audio and video real-time transmission apparatus, including:
  • a video packetizer for packaging a video original stream into a packetized video original stream
  • An audio packetizer for packaging an audio original stream into a packetized audio original stream
  • a multiplexer configured to multiplex the program association table, the program mapping table, the video original stream of the packet, and the audio original stream of the packet into a program slice, each of the program slices including a program association Table and a program map;
  • the multiplexer is further configured to receive a request and transmit the program slice according to the request.
  • the above device further includes:
  • a video encoder for encoding video data to form the original video stream.
  • the above device further includes:
  • An audio encoder for separately encoding the audio data to form the audio original stream.
  • An embodiment of the present application provides a multiplexer, including:
  • a transceiver module configured to receive a packetized video original stream, a grouped audio original stream, a program association table, a program mapping table, and output;
  • a program slice multiplexing module configured to multiplex the one program association table, the one program map table, the video original stream of the packet, and the audio original stream of the packet into a program slice;
  • a storage module configured to store the slice of the program.
  • the transceiver module is connected to the video packetizer and the audio packetizer, and the video packetizer and the audio packetizer output the packetized video original stream and the packetized audio original stream to the transceiver module.
  • the embodiment of the present application provides a non-transitory computer readable storage medium, wherein the non-transitory computer readable storage medium can store a computer program, and the computer program can implement the above-mentioned audio and video real-time transmission method when executed. Part or all of the steps.
  • the embodiment of the present application provides a non-transitory computer readable storage medium, wherein the non-transitory computer readable storage medium can store a computer program, and when the computer program is executed, the foregoing method for packaging a transport stream can be implemented. Some or all of the steps.
  • An embodiment of the present application further provides an electronic device, including: one or more processors; and a memory; wherein the memory stores instructions executable by the one or more processors, the instructions being The one or more processors are executed to enable the one or more processors to perform the above-described audio and video real-time transmission method of the present application.
  • An embodiment of the present application further provides an electronic device, including: one or more processors; and a memory; wherein the memory stores instructions executable by the one or more processors, the instructions being The one Executing one or more processors to enable the one or more processors to perform the transport stream packing method described above.
  • the audio and video real-time transmission method and apparatus do not need to periodically insert the program association table and the program mapping table, but only need to add one at the beginning of each slice.
  • the program association table and a program map table can achieve the effect of maintaining compatibility with the transport stream in the prior art while reducing redundant data in the transport stream.
  • FIG. 1 is a schematic diagram of a format of a slice of a transport stream in the prior art
  • FIG. 2 is a schematic diagram of a format of a slice of a transport stream in an audio and video real-time transmission method according to an embodiment of the present application
  • FIG. 3 is a schematic structural diagram of a packet of a slice of a transport stream in an audio and video real-time transmission method according to an embodiment of the present application;
  • FIG. 4 is a flowchart of a method for real-time transmission of audio and video according to an embodiment of the present application
  • FIG. 5 is a flowchart of a method for packaging a transport stream according to an embodiment of the present application
  • FIG. 6 is a flowchart of analyzing a transport stream slice according to an embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of an audio and video real-time transmission apparatus according to an embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of a multiplexer according to an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of hardware of a device for real-time audio and video transmission according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of hardware of a device for packaging a transport stream according to an embodiment of the present disclosure.
  • the present application will first introduce the format of the slice of the transport stream in the prior art.
  • FIG. 1 is a schematic diagram of a format of a slice of a transport stream in the prior art.
  • the transport stream is a hierarchical encapsulation format, and the program association table needs to be first found to obtain the number of program map tables in the transport stream, thereby obtaining the number of programs in the transport stream, where each program map corresponds to one program, and then A video packet identifier (PID) and an audio packet identifier of the program are obtained according to the program map.
  • PID video packet identifier
  • audio packet identifier of the program are obtained according to the program map.
  • a long-term program is usually cut into a plurality of slices of 10 seconds. Therefore, in the prior art, the slice of the transport stream, in order to facilitate the user to receive the transport stream at any time, the program association table and the program map are periodically inserted into the slice of the transport stream, thereby causing at least the slice of the transport stream in the prior art. Includes more than two program association tables, and more than two program maps.
  • a program is cut into n slices, user A can receive from the program association table 1, and user B can receive from the program association table n to find the program map in the vicinity, thereby facilitating live broadcast. Therefore, the prior art increases redundant data in the transport stream.
  • the inventor of the present application found that after each long study, it is not necessary to periodically insert a program association table and a program map in each slice, but only need to add a program association table at the beginning of each slice and A program map can achieve the effect of maintaining compatibility with the prior art transport stream while reducing redundant data in the transport stream.
  • FIG. 2 is a schematic diagram of a format of a slice of a transport stream in an audio and video real-time transmission method according to an embodiment of the present application.
  • the transport stream in the embodiment of the present application is a packet-based stream, and each group of transport streams is divided into a plurality of slices. It should be noted that only one slice format is shown in FIG. 2, and the format of other slices is actually The slice format in Figure 2 is similar.
  • the slice in the embodiment of the present application includes a packet 1, a packet 2, a packet n-1, and a packet n, and each slice includes only one program association table and one program mapping table.
  • FIG. 3 is a schematic structural diagram of a packet of a slice of a transport stream according to an audio and video real-time transmission method according to an embodiment of the present application.
  • the sliced packet in the embodiment of the present application is composed of a packet header and data, and each packet is 188 bytes or 204 bytes, wherein the 204-byte packet is added after the 188-byte packet by 16 bytes.
  • the CRC check data is formed.
  • the header can also include an extended self-use area, with a header length of 4 bytes, and a total of 184 bytes from the usage area and packet data.
  • the packet header consists of a sync byte, a transmission error indicator, a payload unit start indicator, a transmission priority, a packet identifier, a transmission scrambling control, an adaptive zone control, and a continuous counter.
  • the packet correlation in the data stream can be detected by the automatic correlation feature of the bit string of the synchronization byte, and the packet synchronization can be established.
  • the error correction decoder can be used. Indicates a 1-bit error, but cannot correct the error; the payload unit start indicator indicates whether the packet has a determined start message; the transmission priority is used to assign a priority to the packet; the packet identifier value is determined by the user Determining, the decoder distinguishes different original stream (ES) packets according to the packet identifier to reconstruct the original stream; the transmission scrambling control can be used to indicate whether the packet content is scrambled; the adaptive area control is used to indicate that there is No adaptive zone, usually represented by 2 bits, for example, "01" means that there is useful information, but there is no adaptive zone, "10” means no useful information, and there is an adaptive zone, "11” means that there is useful information and there is Adaptive zone, "00” means no definition; The continuous counter can count the
  • the packet identifier is a unique identifier in the transport stream, and the data content in the packet is determined by the packet identifier. If the packet identifier in the header of a packet in a transport stream is 0, then the data content of the packet is the program association table. If it is not 0, it is video data, audio data, program map, or other type of data.
  • FIG. 4 is a flowchart of a method for real-time transmission of audio and video according to an embodiment of the present application.
  • the real-time transmission of audio and video includes real-time transmission of video data and real-time transmission of audio data, so the original video stream and the audio original stream need to be packaged into a grouped video original stream and a packetized audio original stream, respectively;
  • the program map table, the grouped video original stream, and the grouped audio original stream are multiplexed and stored as program slices, and each program slice includes a program association table and a program map table, as follows:
  • S101 Encoding the video data to form an elementary stream (ES);
  • the video original stream is the original base stream output by the encoder, containing only the information necessary for the decoder and close to the original image.
  • the encoded original video stream may be in the MPEG-2 or MPEG-4 format, and may also be in the H.264 format or other formats, which is not limited in this application.
  • S102 Packet the video original stream into a packetized video elementary stream (PES);
  • PES packetized video elementary stream
  • the packetized video original stream exists in the form of a divided data packet, mainly by adding a time stamp to the video original stream, such as a description of the data frame, and the packetized video original stream provides a standard header and packing method, and provides decoding. Time sign.
  • the audio coding method in this step may be MPEG-1 audio coding or MPEG-2 AAC (Advanced Audio Coding) coding, which is not limited in this application.
  • the audio packetizer 202 divides the audio original stream into segments or packs them into groups, and adds the corresponding header files to form a packet's original audio stream.
  • the packets of the original audio stream and the packets may be discontinuous.
  • S300 The grouped video original stream, the grouped audio original stream, the program association table, and the program mapping table are multiplexed and stored as a program slice, and the program slice includes a program association table and a program mapping table.
  • the HLS protocol stipulates that the complete program is divided into a plurality of slices of 10 seconds in length, the plurality of slices constitute a complete program, so the process from the establishment of the link until the link is disconnected (ie, the entire process of viewing the program) ), the link of the program is continuously linked and downloaded, and the download process takes one byte as the minimum unit, so it is necessary to periodically provide the program association table and the program map to ensure that the user can download the slice from any point.
  • the slice including the program association table and the program mapping table is used as the minimum unit of the transport stream, which ensures that the user can download the slice from any point, so that the compatibility with the existing HLS protocol can be maintained and the periodicity can be eliminated. Insert program association table and program map table.
  • S400 Receive the request and transmit the program slice according to the request.
  • FIG. 5 is a flowchart of a method for packaging a transport stream according to an embodiment of the present application.
  • S301 Receive a video original stream of the packet, an audio original stream of the packet, a program association table, and a program mapping table;
  • S302 multiplexing a program association table, a program mapping table, a grouped video original stream, and a grouped audio original stream into a program slice;
  • FIG. 6 is a flowchart of analyzing a transport stream slice according to an embodiment of the present application:
  • the program association table whose packet identifier is 0 is searched for in units of 188 bytes. Since the package identifier of the program association table is fixed to 0, and the program association table is also transmitted in the form of a packet, the search program association table is essentially a packet whose packet identifier is 0 in the search header.
  • the program association table with the packet identifier of 0 is first parsed to obtain the package identifier of the program map table.
  • the number of program maps is equal to the number of programs.
  • the packet identifier of the search video data and the packet identifier of the audio data are used to acquire video data and audio data.
  • the receiving end is usually a consumer electronic product, which can be a smart TV, a set top box, a projector, a video player, a personal computer, a smart phone, a tablet computer, and the like.
  • FIG. 7 is a schematic structural diagram of an audio and video real-time transmission apparatus according to an embodiment of the present application.
  • An audio and video real-time transmission apparatus 10 of the embodiment of the present application includes a video encoder 101, an audio encoder 201, a video packetizer 102, an audio packetizer 202, and a multiplexer 300.
  • the collected video data and audio data are analog data
  • sampling, quantization and compression coding are required to form a video original stream and an audio original stream
  • the video original stream and the audio original stream are continuous streams that are not segmented.
  • Video encoder 101 is operative to encode the video data into a video original stream.
  • the video original stream includes a plurality of access units, each of which is encoded data of an image.
  • the video coding method of the present application may be performed by using transform coding, entropy coding, motion estimation, motion compensation, or hybrid coding, which is not limited in this application.
  • the audio encoder 201 is for encoding the audio data separately to form an audio original stream.
  • the digital audio signal if the digital audio signal is directly transmitted without compression, it will occupy a large bandwidth. Therefore, it is necessary to use audio compression technology to process the audio data in order to effectively transmit the audio data.
  • the digital audio compression coding compresses the audio data signal as much as possible while ensuring that the signal does not cause distortion in the sense of hearing.
  • Digital audio compression coding is implemented by removing redundant components in the sound signal.
  • the audio coding mode of the present application may be waveform coding, parameter coding, or hybrid coding, which is not limited in this application.
  • Video packetizer 102 is used to packet the video original stream into a packetized video original stream.
  • the video packetizer 102 divides the video original stream into segments or packs them into groups, and adds corresponding header files to form a packetized video original stream.
  • the packets of the original video stream and the packets may be discontinuous. of.
  • the audio packetizer 202 is used to pack the audio original stream into a packetized audio original stream.
  • the audio packetizer 202 divides the audio original stream into segments or packs them into groups, and adds corresponding header files to form a grouped audio original stream.
  • the packets of the audio original stream and the packets may be discontinuous. of.
  • the multiplexer 300 is configured to multiplex the program association table, the program mapping table, the grouped video original stream, and the grouped audio original stream into program slices, and each of the program slices includes a program association table and a Program map.
  • the multiplexer 300 packs the program association table, the program map table, the packetized video original stream, and the packetized audio original stream into slices of a fixed length of 188 bytes at the time of transmission.
  • the multiplexer 300 is further configured to receive the request and transmit the program slice according to the request.
  • the above-mentioned audio and video real-time transmission device 100 provided by the embodiment of the present invention can be specifically applied to an electronic device in an actual application, and the related function module can be implemented by a hardware processor, which is usually a video server of various types.
  • FIG. 8 is a schematic structural diagram of a multiplexer according to an embodiment of the present application.
  • a multiplexer 300 includes a transceiver module 302, a program slice multiplexing module 303, and a storage module 301.
  • the transceiver module 302 is configured to receive the video original stream of the packet, the audio original stream of the packet, a program association table, a program mapping table, and output to the program slice multiplexing module 303;
  • the program slice multiplexing module 303 is configured to multiplex a program association table, a program map table, a grouped video original stream, and a grouped audio original stream into a program slice;
  • the storage module 301 is configured to store a slice of a program.
  • the present application does not need to periodically insert a program association table and a program mapping table, but only needs to add a program association table and a program mapping table at the beginning of each slice. It is possible to achieve the effect of maintaining compatibility with the transport stream in the prior art while reducing redundant data in the transport stream.
  • the embodiment of the present application further provides a non-transitory computer readable storage medium, where the non-transitory computer readable storage medium can store a program, and when executed, the program can implement an audio and video provided by any one of the foregoing embodiments.
  • the embodiment of the present application further provides a non-transitory computer readable storage medium, where the non-transitory computer readable storage medium can store a program, and when executed, the program can implement a transport stream provided by any one of the foregoing embodiments. Some or all of the steps in each implementation of the packaging method.
  • FIG. 9 is a schematic diagram showing the hardware structure of an electronic device for real-time transmission of audio and video according to an embodiment of the present application. As shown in FIG. 9, the device includes:
  • processors 910 and memory 920 one processor 910 is taken as an example in FIG.
  • the apparatus for performing the audio-video real-time transmission method may further include: an input device 930 and an output device 940.
  • the processor 910, the memory 920, the input device 930, and the output device 940 may be connected by a bus or other means, as exemplified by a bus connection in FIG.
  • the memory 920 is used as a non-transitory computer readable storage medium, and can be used for storing a non-volatile software program, a non-volatile computer executable program, and a module, such as a program corresponding to the audio and video real-time transmission method in the embodiment of the present application. Instruction/module.
  • the processor 910 executes various functional applications and data processing of the electronic device by executing non-volatile software programs, instructions, and modules stored in the memory 920, that is, realizing the audio and video real-time transmission method of the above method embodiments.
  • the memory 920 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function; the storage data area may store data created according to use of the audio-visual real-time transmission device, and the like.
  • memory 920 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device.
  • memory 920 can optionally include memory remotely located relative to processor 910, which can be connected to the audio and video real-time transmission device over a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
  • Input device 930 can receive input numeric or character information and generate key signal inputs related to user settings and function control of the audio and video real time transmission device.
  • Output device 940 can include a display device such as a display screen.
  • the one or more modules are stored in the memory 920, and when executed by the one or more processors 910, perform an audio and video real-time transmission method in any of the above method embodiments.
  • FIG. 10 is a schematic diagram of a hardware structure of an electronic device of a transport stream packing method according to an embodiment of the present disclosure. As shown in FIG. 10, the device includes:
  • processors 1010 and a memory 1020 are illustrated by one processor 1010 in FIG.
  • the apparatus that performs the transport stream packing method may further include: an input device 1030 and an output device 1040.
  • the processor 1010, the memory 1020, the input device 1030, and the output device 1040 may be connected by a bus or other means, as exemplified by a bus connection in FIG.
  • the memory 1020 is used as a non-transitory computer readable storage medium, and can be used for storing a non-volatile software program, a non-volatile computer executable program, and a module, such as a program instruction corresponding to the transport stream packing method in the embodiment of the present application. / module.
  • the processor 1010 executes various functional applications and data processing of the electronic device by executing non-volatile software programs, instructions, and modules stored in the memory 1020, that is, implementing the transport stream packing method of the above method embodiments.
  • the memory 1020 may include a storage program area and an storage data area, wherein the storage program area may store an operating system, an application required for at least one function; the storage data area may store data created according to use of the transport stream packaging device, and the like.
  • memory 1020 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device.
  • memory 1020 can optionally include memory remotely located relative to processor 1010, which can be connected to the transport stream packing device over a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
  • Input device 1030 can receive input numeric or character information and generate key signal inputs related to user settings and function control of the transport stream packaging device.
  • the output device 1040 can include a display device such as a display screen.
  • the one or more modules are stored in the memory 1020, and when executed by the one or more processors 1010, perform a transport stream packing method in any of the above method embodiments.
  • the electronic device of the embodiment of the invention exists in various forms, including but not limited to:
  • Mobile communication devices These devices are characterized by mobile communication functions and are mainly aimed at providing voice and data communication.
  • Such terminals include: smart phones (such as iPhone), multimedia phones, functional phones, and low-end phones.
  • Ultra-mobile personal computer equipment This type of equipment belongs to the category of personal computers, has computing and processing functions, and generally has mobile Internet access.
  • Such terminals include: PDAs, MIDs, and UMPC devices, such as the iPad.
  • Portable entertainment devices These devices can display and play multimedia content. Such devices include: audio, preview players (such as iPod), handheld game consoles, e-books, and smart toys and portable car navigation devices.
  • the server consists of a processor, a hard disk, a memory, a system bus, etc.
  • the server is similar to a general-purpose computer architecture, but because of the need to provide highly reliable services, processing power and stability High reliability in terms of reliability, security, scalability, and manageability.
  • the device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, ie may be located A place, or it can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment. Those of ordinary skill in the art can understand and implement without deliberate labor.
  • the various embodiments can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware. Based on such understanding, the above technical solution may contribute in essence or in the form of a software product.
  • the computer software product can be stored in a computer readable storage medium, such as a ROM/RAM, a magnetic disk, an optical disk, etc., and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) The method described in various embodiments or portions of the embodiments is performed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请实施例提供一种音视频实时传输方法,包括:将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流;将节目关联表、节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用后存储为节目切片,每一个所述节目切片包括一张节目关联表和一张节目映射表;接收请求,并根据所述请求传输所述节目切片。本申请实施例还提供一种传输流打包方法及复用器。本申请实施例可以减少音视频实时传输时的冗余数据。

Description

音视频实时传输方法及装置、传输流打包方法及复用器
本申请要求于2015年12月1日提交中国专利局、申请号为201510869931X、发明名称为“音视频实时传输方法及装置、传输流打包方法及复用器”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及音视频技术领域,尤其涉及一种音视频实时传输方法及装置、传输流打包方法及复用器。
背景技术
HLS(HTTP Live Streaming)协议是苹果公司研发出的,用在网络直播和点播场景中的扩展HTTP协议,该协议使用传输流(Transport Stream,TS)的方式封装数据。每个传输流都携带视频(Video)、音频(Audio)等数据信息,以及携带节目关联表(Program Association Table,PAT)、节目映射表(Program Map Table,PMT)等流索引信息。
在直播中,为了让用户可以随时通过节目关联表和节目映射表搜寻正确的视频和音频数据,需要周期性的将节目关联表和节目映射表插入到传输流中。
由于周期性的插入节目关联表和节目映射表,会使得在HLS的切片过大,不但占用了下载时间,而且在直播中会造成更多的时间延误和占用更多的服务器存储空间。
发明内容
本申请实施例提供一种音视频实时传输方法及装置、传输流打包方法及复用器,用以解决现有技术中音视频实时传输时冗余数据过多的技术问题。
本申请实施例提供一种音视频实时传输方法,包括:
将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流;
将节目关联表、节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用后存储为节目切片,每一个所述节目切片包括一张节目关联表和一张节目映射表;
接收请求,并根据所述请求传输所述节目切片。
进一步的,上述将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流步骤之前包括:将视频数据及音频数据分别编码形成所述视频原始流及所述音频原始流。
本申请实施例提供一种传输流打包方法,包括:
接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表;
将所述一张节目关联表、所述一张节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用为一段节目切片;
存储所述一段节目切片。
进一步的,上述接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表步骤之前还包括;
将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流,并输出的步骤。
本申请实施例提供一种音视频实时传输装置,包括:
视频分组器,用于将视频原始流打包为分组的视频原始流;
音频分组器,用于将音频原始流打包为分组的音频原始流;
复用器,用于将节目关联表、节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用后存储为节目切片,每一个所述节目切片包括一张节目关联表和一张节目映射表;
所述复用器,还用于接收请求,并根据所述请求传输所述节目切片。
进一步的,上述的装置,还包括:
视频编码器,用于将视频数据编码形成所述视频原始流。
进一步的,上述的装置,还包括:
音频编码器,用于将音频数据分别编码形成所述音频原始流。
本申请实施例提供一种复用器,包括:
收发模块,用于接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表,并输出;
节目切片复用模块,用于将所述一张节目关联表、所述一张节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用为一段节目切片;
存储模块,用于存储所述一段节目切片。
进一步的,上述的收发模块与视频分组器及音频分组器连接,所述视频分组器及音频分组器向所述收发模块输出分组的视频原始流和分组的音频原始流。
本申请实施例提供了一种非暂态计算机可读存储介质,其中,该非暂态计算机可读存储介质可存储有计算机程序,该计算机程序执行时可实现上述的一种音视频实时传输方法的部分或全部步骤。
本申请实施例提供了一种非暂态计算机可读存储介质,其中,该非暂态计算机可读存储介质可存储有计算机程序,该计算机程序执行时可实现上述的一种传输流打包方法的部分或全部步骤。
本申请实施例还提供了一种电子设备,包括:一个或多个处理器;以及,存储器;其中,所述存储器存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行,以使所述一个或多个处理器能够执行本申请上述音视频实时传输方法。
本申请实施例还提供了一种电子设备,包括:一个或多个处理器;以及,存储器;其中,所述存储器存储有可被所述一个或多个处理器执行的指令,所述指令被所述一 个或多个处理器执行,以使所述一个或多个处理器能够执行本申请上述传输流打包方法。
本申请实施例提供的音视频实时传输方法及装置,传输流打包方法及复用器,不需要周期性的插入节目关联表和节目映射表,而仅需要在每个切片的开始处加入一张节目关联表和一张节目映射表,就可以达到既可保持与现有技术中的传输流兼容,又同时减少传输流中的冗余数据的效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中传输流的切片的格式示意图;
图2为本申请实施例一种音视频实时传输方法的传输流的切片的格式示意图;
图3为本申请实施例一种音视频实时传输方法的传输流的切片的包的构成示意图;
图4为本申请实施例一种音视频实时传输方法的流程图;
图5为本申请实施例一种传输流打包方法的流程图;
图6为本申请实施例一种传输流切片的解析流程图;
图7为本申请实施例一种音视频实时传输装置的结构示意图;
图8为本申请实施例一种复用器的结构示意图;
图9为本申请实施例提供的音视频实时传输方法的设备的硬件结构示意图;
图10为本申请实施例提供的传输流打包方法的设备的硬件结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例 中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为更好的说明本申请实施例的技术方案及其所产生的有益效果,本申请将首先介绍现有技术中传输流的切片的格式。
图1为现有技术中传输流的切片的格式示意图。
传输流为层次型的封装格式,需要先找到节目关联表,以获取传输流中节目映射表的数量,以此获得传输流中节目的数量,其中每一张节目映射表对应一个节目,然后再根据节目映射表获取节目的视频包标示符(Packet Identification,PID)和音频包标示符。
根据HLS协议的规定,一个长时间的节目通常被切割分成多个时长为10秒的切片。因此,现有技术中传输流的切片,为了方便用户随时接收传输流,节目关联表和节目映射表是周期性的插入到传输流的切片中,从而导致现有技术中的传输流的切片至少包括两张以上的节目关联表,和两张以上的节目映射表。
例如,图1中,一个节目被切割为n个切片,用户A可以从节目关联表1处接收,用户B可以从节目关联表n处接收,以就近找到节目映射表,从而方便直播。因此,现有技术就增加了传输流中的冗余数据。
本申请的发明人在经过长时间研究后发现在每一个切片中,并不需要周期性的插入节目关联表和节目映射表,而仅需要在每个切片的开始处加入一张节目关联表和一张节目映射表,就可以达到既可保持与现有技术中的传输流兼容,又同时减少传输流中的冗余数据的效果。
以下将对本申请传输流的切片的格式进行说明。
图2为本申请实施例一种音视频实时传输方法的传输流的切片的格式示意图。
本申请实施例中的传输流是一种基于包的流,每一组传输流被分割为若干个切片,需要说明的是图2中仅示出了一个切片的格式,其它切片的格式其实与图2中的切片格式类似。
本申请实施例中的切片包括包1、包2……包n-1、包n,而且每个切片均只包括一张节目关联表和一张节目映射表。
图3为本申请实施例一种音视频实时传输方法的传输流的切片的包的构成示意图。
本申请实施例中切片的包由包头和数据组成,每个包是188个字节或204个字节,其中204个字节的包是在188个字节的包之后加上了16字节的CRC校验数据形成。
包头还可以包括扩展的自使用区,包头长度占4个字节,自使用区和包数据共占184个字节。包头包括同步字节、传输误码指示符、有效载荷单元起始指示符、传输优先、包识别符、传输加扰控制、自适应区控制和连续计数器8个部分组成。
其中,可以通过同步字节的位串的自动相关特性,检测数据流中的包限制,建立包同步;传输误码指示符,是指有不能消除的误码时,采用误码校正解码器可表示1位的误码,但无法校正该误码;有效载荷单元起始指示符,表示该包是否存在确定的起始信息;传输优先用于是给包分配优先权;包标示符值是由用户确定的,由解码器根据包标示符区别不同原始流(Elementary Stream,ES)的包,以重建原始流;传输加扰控制可用于指示包内容是否加扰;自适应区控制是用于表示有否自适应区,通常用2位来表示,比如“01”表示有有用信息,但是无自适应区,“10”表示无有用信息,且有自适应区,“11”表示有有用信息且有自适应区,“00”表示无定义;连 续计数器可对包标示符传送顺序计数,根据连续计数器的读数,接收端可以判断是否有包丢失及包传送顺序错误。总而言之,包头对传输流具有同步、识别、检错及加密功能。
此外,包标示符是传输流中的唯一识别标志,包中的数据内容是由包标示符决定。如果一个传输流中的一个包的包头中的包标示符是0,那么该包的数据内容就是节目关联表,如果不是0,就是视频数据,音频数据,节目映射表,或者是其他类型数据。
图4为本申请实施例一种音视频实时传输方法的流程图。
音视频的实时传输包括对视频数据的实时传输和对音频数据的实时传输,因此需要将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流;然后将节目关联表、节目映射表、分组的视频原始流,以及分组的音频原始流复用后存储为节目切片,每一个节目切片包括一张节目关联表和一张节目映射表,具体如下:
分组的视频原始流的打包的具体步骤如下:
S101:将视频数据编码形成视频原始流(Elementary Stream,ES);
视频原始流是由编码器输出的原始基础码流,只含有解码器所必需的,并与原始图像相接近的信息。编码后的视频原始流可以是MPEG-2或MPEG-4格式,还可以是H.264格式或者其他格式,本申请对此不作限定。
S102:将视频原始流打包为分组的视频原始流(Packet Elemental Stream,PES);
分组的视频原始流,是以分割的数据包形式存在,主要是在视频原始流上加了时间戳等对数据帧的说明信息,分组的视频原始流提供标准的包头和打包方法,并提供解码的时间标志。
分组的音频原始流的打包的具体步骤如下:
S201:将音频数据编码形成音频原始流;
数字音频信号如果不加压缩地直接进行传送,将会占用极大的带宽,因此需要采用音频压缩技术对音频数据进行处理,才能有效地传输音频数据。本步骤中的音频编码方式可以是MPEG-1音频编码,也可以是MPEG-2AAC(Advanced Audio Coding,高级音频编码)编码,本申请对此不作限定。
S202:将视频原始流打包为分组的音频原始流。
音频分组器202把音频原始流分割成段或者是打包成组,并加上相应的头文件打包形成分组的音频原始流,音频原始流的包和包之间可以是不连续的。
在打包完成分组的视频原始流、分组的音频原始流之后,进入步骤S300;
S300:将分组的视频原始流、分组的音频原始流、节目关联表和节目映射表复用后存储为节目切片,所述节目切片包含一张节目关联表和一张节目映射表。
由于HLS协议规定将完整的节目分割成为时长为10秒的多个切片,该多个切片构成一个完整的节目,因此从链接建立好后直到断开该链接的过程(即观看该节目的整个过程),一直持续的链接并下载该节目的多个切片,该下载过程以一个字节作为最小单位,因此需要周期性的提供节目关联表及节目映射表,以保证用户可从任意点下载切片。
而本实施例则将包含节目关联表和节目映射表的切片作为传输流的最小单位,可保证用户可从任意点下载切片,因此既可以保持与现有HLS协议的兼容性又可以不用周期性的插入节目关联表及节目映射表。
S400:接收请求,并根据请求传输节目切片。
图5为本申请实施例一种传输流打包方法的流程图。
S301:接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表;
S302:将一张节目关联表、一张节目映射表、分组的视频原始流,以及分组的音频原始流复用为一段节目切片;
S303:存储一段节目切片。
图6为本申请实施例一种传输流切片的解析流程图:
501:搜索节目关联表;
在本实施例中是以188字节为单位,搜索包标示符为0的节目关联表。由于节目关联表的包标示符是固定为0,且节目关联表也是以包的形式传输,所以搜索节目关联表实质上就是搜索包头中包标示符为0的包。
502:解析节目关联表,以获取节目映射表的包标示符;
在本实施例中首先解析包标示符为0的节目关联表,以获取节目映射表的包标示符。
503:根据映射表的包标示符搜索节目映射表;
在本实施例中,节目映射表的数量等于节目的数量。
504:根据节目映射表搜索视频数据的包标示符及音频数据的包标示符;
在本实施例中,搜索视频数据的包标示符及音频数据的包标示符就是为了获取视频数据及音频数据。
505:根据视频数据的包标示符及音频数据的包标示符,解析视频数据及音频数据。
上述解析过程是由接收端完成,接收端通常为消费性电子产品,可以为智能电视、机顶盒、投影仪、视频播放器、个人计算机,智能手机,平板电脑等。
图7为本申请实施例一种音视频实时传输装置的结构示意图。
本申请实施例一种音视频实时传输装置10包括:视频编码器101、音频编码器201、视频分组器102、音频分组器202,以及复用器300。
由于采集到的视频数据及音频数据均为模拟数据,因此需要进行抽样、量化及压缩编码形成视频原始流及音频原始流,视频原始流及音频原始流是不分段的连续码流。
视频编码器101用于将视频数据编码形成视频原始流。在本实施例中,视频原始流包括多个访问单元,每一个访问单元是一幅图像的编码数据。本申请的视频编码方式可以采用变换编码、熵编码、运动估计和运动补偿,或者是混合编码方式进行编码,本申请对此不作限定。
音频编码器201用于将音频数据分别编码形成音频原始流。在本实施例中,数字音频信号如果不加压缩地直接进行传送,将会占用极大的带宽,因此需要采用音频压缩技术对音频数据进行处理,才能有效地传输音频数据。数字音频压缩编码在保证信号在听觉方面不产生失真的前提下,对音频数据信号进行尽可能大的压缩。数字音频压缩编码采取去除声音信号中冗余成分的方法来实现。本申请的音频编码方式可以是波形编码、参数编码,或者混合编码,本申请对此不作限定。
视频分组器102用于将视频原始流打包为分组的视频原始流。详而言之,视频分组器102把视频原始流分割成段或者是打包成组,并加上相应的头文件打包形成分组的视频原始流,视频原始流的包和包之间可以是不连续的。
音频分组器202用于将音频原始流打包为分组的音频原始流。详而言之,音频分组器202把音频原始流分割成段或者是打包成组,并加上相应的头文件打包形成分组的音频原始流,音频原始流的包和包之间可以是不连续的。
复用器300用于将节目关联表、节目映射表、分组的视频原始流,以及分组的音频原始流复用后存储为节目切片,每一个所述节目切片包括一张节目关联表和一张节目映射表。在本实施例中,复用器300在传输时将节目关联表、节目映射表、分组的视频原始流,以及分组的音频原始流打包成固定长度为188字节的切片。
复用器300,还用于接收请求,并根据请求传输节目切片。
本申请实施例提供的上述音视频实时传输装置100在实际应用中可以具体应用于电子设备中,可以通过硬件处理器(hardware processor)来实现相关功能模块,该电子设备通常为各类视频服务器。
图8为本申请实施例一种复用器的结构示意图。
本申请实施例一种复用器300包括收发模块302、节目切片复用模块303,以及存储模块301。
收发模块302用于接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表,并输出至节目切片复用模块303;
节目切片复用模块303用于将一张节目关联表、一张节目映射表、分组的视频原始流,以及分组的音频原始流复用为一段节目切片;
存储模块301用于存储一段节目切片。
通过本申请实施例的上述技术方案,本申请不需要周期性的插入节目关联表和节目映射表,而仅需要在每个切片的开始处加入一张节目关联表和一张节目映射表,就可以达到既可保持与现有技术中的传输流兼容,又同时减少传输流中的冗余数据的效果。
本申请实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质可存储有程序,该程序执行时可实现执行前述任意一个实施例提供的一种音视频实时传输方法的各实现方式中的部分或全部步骤。
本申请实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质可存储有程序,该程序执行时可实现执行前述任意一个实施例提供的一种传输流打包方法的各实现方式中的部分或全部步骤。
图9是本申请实施例提供的音视频实时传输方法的电子设备的硬件结构示意图,如图9所示,该设备包括:
一个或多个处理器910以及存储器920,图9中以一个处理器910为例。
执行音视频实时传输方法的设备还可以包括:输入装置930和输出装置940。
处理器910、存储器920、输入装置930和输出装置940可以通过总线或者其他方式连接,图9中以通过总线连接为例。
存储器920作为一种非暂态计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的音视频实时传输方法对应的程序指令/模块。处理器910通过运行存储在存储器920中的非易失性软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例的音视频实时传输方法。
存储器920可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据音视频实时传输装置的使用所创建的数据等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器920可选包括相对于处理器910远程设置的存储器,这些远程存储器可以通过网络连接至音视频实时传输装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置930可接收输入的数字或字符信息,以及产生与音视频实时传输装置的用户设置以及功能控制有关的键信号输入。输出装置940可包括显示屏等显示设备。
所述一个或者多个模块存储在所述存储器920中,当被所述一个或者多个处理器910执行时,执行上述任意方法实施例中的音视频实时传输方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
图10是本申请实施例提供的传输流打包方法的电子设备的硬件结构示意图,如图10所示,该设备包括:
一个或多个处理器1010以及存储器1020,图10中以一个处理器1010为例。
执行传输流打包方法的设备还可以包括:输入装置1030和输出装置1040。
处理器1010、存储器1020、输入装置1030和输出装置1040可以通过总线或者其他方式连接,图10中以通过总线连接为例。
存储器1020作为一种非暂态计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的传输流打包方法对应的程序指令/模块。处理器1010通过运行存储在存储器1020中的非易失性软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例的传输流打包方法。
存储器1020可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据传输流打包装置的使用所创建的数据等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器1020可选包括相对于处理器1010远程设置的存储器,这些远程存储器可以通过网络连接至传输流打包装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置1030可接收输入的数字或字符信息,以及产生与传输流打包装置的用户设置以及功能控制有关的键信号输入。输出装置1040可包括显示屏等显示设备。
所述一个或者多个模块存储在所述存储器1020中,当被所述一个或者多个处理器1010执行时,执行上述任意方法实施例中的传输流打包方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本发明实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、预览播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (13)

  1. 一种音视频实时传输方法,其特征在于,包括:
    将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流;
    将节目关联表、节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用后存储为节目切片,每一个所述节目切片包括一张节目关联表和一张节目映射表;
    接收请求,并根据所述请求传输所述节目切片。
  2. 根据权利要求1所述的方法,其特征在于,所述将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流步骤之前包括:将视频数据及音频数据分别编码形成所述视频原始流及所述音频原始流。
  3. 一种传输流打包方法,其特征在于,包括:
    接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表;
    将所述一张节目关联表、所述一张节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用为一段节目切片;
    存储所述一段节目切片。
  4. 如权利要求3所述的方法,其特征在于,在所述接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表步骤之前还包括;
    将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流,并输出的步骤。
  5. 一种音视频实时传输装置,其特征在于,包括:
    视频分组器,用于将视频原始流打包为分组的视频原始流;
    音频分组器,用于将音频原始流打包为分组的音频原始流;
    复用器,用于将节目关联表、节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用后存储为节目切片,每一个所述节目切片包括一张节目关联表和一张节目映射表;
    所述复用器,还用于接收请求,并根据所述请求传输所述节目切片。
  6. 根据权利要求5所述的装置,其特征在于,还包括:
    视频编码器,用于将视频数据编码形成所述视频原始流。
  7. 根据权利要求5所述的装置,其特征在于,还包括:
    音频编码器,用于将音频数据分别编码形成所述音频原始流。
  8. 一种复用器,其特征在于,包括:
    收发模块,用于接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表,并输出;
    节目切片复用模块,用于将所述一张节目关联表、所述一张节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用为一段节目切片;
    存储模块,用于存储所述一段节目切片。
  9. 如权利要求8所述的复用器,其特征在于,所述收发模块与视频分组器及音频分组器连接,所述视频分组器及音频分组器向所述收发模块输出分组的视频原始流和分组的音频原始流。
  10. 一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序用于使所述计算机执行权利要求1-4任一所述方法。
  11. 一种电子设备,包括:
    一个或多个处理器;以及,
    存储器;其特征在于,
    所述存储器存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行,以使所述一个或多个处理器:
    将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流;
    将节目关联表、节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用后存储为节目切片,每一个所述节目切片包括一张节目关联表和一张节目映射表;
    接收请求,并根据所述请求传输所述节目切片。
  12. 一种电子设备,包括:
    一个或多个处理器;以及,
    存储器;其特征在于,
    所述存储器存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行,以使所述一个或多个处理器:
    接收分组的视频原始流、分组的音频原始流、一张节目关联表、一张节目映射表;
    将所述一张节目关联表、所述一张节目映射表、所述分组的视频原始流,以及所述分组的音频原始流复用为一段节目切片;
    存储所述一段节目切片。
  13. 一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行权利要求1-4所述的方法。
PCT/CN2016/096991 2015-12-01 2016-08-26 音视频实时传输方法及装置、传输流打包方法及复用器 Ceased WO2017092435A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510869931.X 2015-12-01
CN201510869931.XA CN105898353A (zh) 2015-12-01 2015-12-01 音视频实时传输方法及装置、传输流打包方法及复用器

Publications (1)

Publication Number Publication Date
WO2017092435A1 true WO2017092435A1 (zh) 2017-06-08

Family

ID=57002114

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/096991 Ceased WO2017092435A1 (zh) 2015-12-01 2016-08-26 音视频实时传输方法及装置、传输流打包方法及复用器

Country Status (2)

Country Link
CN (1) CN105898353A (zh)
WO (1) WO2017092435A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105898353A (zh) * 2015-12-01 2016-08-24 乐视致新电子科技(天津)有限公司 音视频实时传输方法及装置、传输流打包方法及复用器

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1601937A (zh) * 2003-09-25 2005-03-30 三星电子株式会社 提供广域广播和局域广播的设备和方法及接收广播的终端
CN1980375A (zh) * 2005-12-07 2007-06-13 中国科学院研究生院 一种在数字电视传输流中实时插入签名和验证签名的方法
CN101406063A (zh) * 2006-04-06 2009-04-08 三星电子株式会社 在数据场切片的固定位置上设置不具有适配域的传输包的先进vsb(a-vsb)系统中用于发送数字广播信号的方法和设备
US20110202674A1 (en) * 2006-11-03 2011-08-18 Apple Computer, Inc. Dynamic Adjustments of Video Streams
CN103067745A (zh) * 2011-10-24 2013-04-24 北大方正集团有限公司 一种视频数据的切分方法及装置、在线编辑方法及系统
CN105898353A (zh) * 2015-12-01 2016-08-24 乐视致新电子科技(天津)有限公司 音视频实时传输方法及装置、传输流打包方法及复用器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1601937A (zh) * 2003-09-25 2005-03-30 三星电子株式会社 提供广域广播和局域广播的设备和方法及接收广播的终端
CN1980375A (zh) * 2005-12-07 2007-06-13 中国科学院研究生院 一种在数字电视传输流中实时插入签名和验证签名的方法
CN101406063A (zh) * 2006-04-06 2009-04-08 三星电子株式会社 在数据场切片的固定位置上设置不具有适配域的传输包的先进vsb(a-vsb)系统中用于发送数字广播信号的方法和设备
US20110202674A1 (en) * 2006-11-03 2011-08-18 Apple Computer, Inc. Dynamic Adjustments of Video Streams
CN103067745A (zh) * 2011-10-24 2013-04-24 北大方正集团有限公司 一种视频数据的切分方法及装置、在线编辑方法及系统
CN105898353A (zh) * 2015-12-01 2016-08-24 乐视致新电子科技(天津)有限公司 音视频实时传输方法及装置、传输流打包方法及复用器

Also Published As

Publication number Publication date
CN105898353A (zh) 2016-08-24

Similar Documents

Publication Publication Date Title
US10869106B2 (en) Data transmission method and apparatus, and electronic device
JP7260687B2 (ja) 送信方法および送信装置
JP7307239B2 (ja) 送信方法及び送信装置
WO2017092434A1 (zh) 音视频实时传输方法及装置、音视频实时播放方法及装置
WO2016150317A1 (zh) 直播视频的合成方法、装置及系统
WO2014139423A1 (en) Live system, method based on mobile terminal and mobile terminal
KR20160139020A (ko) Mmt 및 dash를 이용한 브로드캐스트 및 브로드밴드 하이브리드 서비스
CN115396647B (zh) 一种沉浸媒体的数据处理方法、装置、设备及存储介质
CN110996160A (zh) 视频处理方法、装置、电子设备及计算机可读取存储介质
WO2018014691A1 (zh) 一种媒体数据的获取方法和装置
WO2017092433A1 (zh) 视频实时播放方法及装置
KR20160033027A (ko) 멀티미디어의 전송 또는 수신 방법 및 그 장치
JP2018524904A (ja) マルチメディアシステムにおける信号送受信方法及び装置
CN108882010A (zh) 一种多屏播放的方法及系统
CN110753259B (zh) 视频数据的处理方法、装置、电子设备及计算机可读介质
US20110276662A1 (en) Method of constructing multimedia streaming file format, and method and apparatus for servicing multimedia streaming using the multimedia streaming file format
WO2017092435A1 (zh) 音视频实时传输方法及装置、传输流打包方法及复用器
CN110798731A (zh) 视频数据的处理方法、装置、电子设备及计算机可读介质
CN103501457B (zh) 一种节目播放的方法及设备
CN103139528B (zh) 一种音视频数据的处理方法及装置
CN117981328A (zh) 音视频的多路同步播放方法、装置、电子设备及存储介质
KR101671311B1 (ko) 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법
JP2010239433A (ja) 映像符号化装置、方法及びプログラム
US20170289585A1 (en) Information processing apparatus and information processing method
CN118471236A (zh) 一种音频编解码方法、装置、设备及介质

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16869746

Country of ref document: EP

Kind code of ref document: A1