CN107342848A - A kind of adaptive code stream transmission method, device and equipment - Google Patents

A kind of adaptive code stream transmission method, device and equipment Download PDF

Info

Publication number
CN107342848A
CN107342848A CN201710734327.5A CN201710734327A CN107342848A CN 107342848 A CN107342848 A CN 107342848A CN 201710734327 A CN201710734327 A CN 201710734327A CN 107342848 A CN107342848 A CN 107342848A
Authority
CN
China
Prior art keywords
network state
current network
current
code stream
adaptive code
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.)
Granted
Application number
CN201710734327.5A
Other languages
Chinese (zh)
Other versions
CN107342848B (en
Inventor
马骁勇
田�健
袁冬雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou United Ji Technology Co Ltd
Original Assignee
Hangzhou United Ji Technology 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 Hangzhou United Ji Technology Co Ltd filed Critical Hangzhou United Ji Technology Co Ltd
Priority to CN201710734327.5A priority Critical patent/CN107342848B/en
Publication of CN107342848A publication Critical patent/CN107342848A/en
Application granted granted Critical
Publication of CN107342848B publication Critical patent/CN107342848B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1621Group acknowledgement, i.e. the acknowledgement message defining a range of identifiers, e.g. of sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A kind of adaptive code stream transmission method includes:According to transmitted by transmitting terminal in each timeslice in the range of first scheduled time before current time, and receiving terminal received data bag quantity or byte quantity, determine current network state;According to the current network state, bit stream strategy corresponding with the current network state is called.Accurately and effectively current network state can be identified, further according to the current network state identified, bit stream strategy corresponding to lookup carries out bit stream, so that code stream adapts to the requirement of heterogeneous networks state, advantageously reduces picture interim card and Hua Ping.

Description

A kind of adaptive code stream transmission method, device and equipment
Technical field
The invention belongs to the communications field, more particularly to a kind of adaptive code stream transmission method, device and equipment.
Background technology
Streaming Media (Streaming Media) refers to the media lattice played by the way of stream transmission in Internet Formula.The appearance of Streaming Media (Streaming Media) is very easy to the work and life of people.Sound, image or animation Deng time-base media from the equipment such as audio/video server or IPC to user terminal is continuous, transmission in real time, user need not wait until whole text Part is all downloaded and finishes and can be watched.Period of reservation of number is greatly reducing, and reduces buffer memory capacity.
In transmission of flow media data, data transfer may be influenceed due to abnormal conditions such as network congestion or packet losses Quality.In order to improve data transmission quality, the re-transmission policy and congestion control policy similar with Transmission Control Protocol are used at present, including: Client, which sends to receive, confirms bag to server;Server confirms bag according to the data sent and the receipts received, detects whether There is packet loss, and retransmit the data of institute's packet loss.
The control strategy ensures that each packet sent out is required for being identified, otherwise should just be retransmitted.Service Device can estimate the two-way time of bag first, also not need then to be retransmitted by the bag of response more than the two-way time.Several bags Confirmation can be passed back to sender by a bag.The ability of giving out a contract for a project of server is controlled by the size of congestion window, congestion window Mouth refers to the number of the maximum unidentified bag that can be sent of server.When a bag has been sent, the window is reduced by;When one Individual coating confirms that window just increases.
The control strategy retransmitted by packet loss, can effectively improve transmission picture quality, still, when network environment becomes Change, such as bandwidth change or when there is network jitter, easily there is picture interim card, Hua Ping.
The content of the invention
In view of this, it is existing to solve the embodiments of the invention provide a kind of adaptive code stream transmission method, device and equipment When having the bit stream in technology, due to change of network environment, easily there is the problem of picture interim card and Hua Ping.
The first aspect of the embodiment of the present invention provides a kind of adaptive code stream transmission method, the adaptive code streaming Method includes:
According to transmitted by transmitting terminal in each timeslice in the range of first scheduled time before current time, and Receiving terminal received data bag quantity or byte quantity, determine current network state;
According to the current network state, bit stream strategy corresponding with the current network state is called.
With reference in a first aspect, in the first possible implementation of first aspect, it is described according to current time before In each timeslice in the range of first scheduled time transmitted by transmitting terminal, and receiving terminal received data bag quantity or Byte quantity, the step of determining current network state, include:
In each timeslice in the range of first scheduled time before acquisition current time transmitted by transmitting terminal, and Receiving terminal received data bag quantity or byte quantity;
According to timeslice and the time interval of current time, when time interval is smaller, distributed for the timeslice higher Weights, pass through the current current desired bandwidth of weighted average calculation and actually active bandwidth;
By current current desired bandwidth compared with actually active bandwidth, current network shape is determined according to comparative result State.
With reference to the possible implementation of the first of first aspect or first aspect, second in first aspect may realization It is described according to the current network state in mode, call bit stream strategy corresponding with the current network state to include:
When the current network state is network jitter state, if confirming that bag ACK is not received corresponding to packet, And the confirmation bag ACK of the packet of timeslice transmission has been received by where being later than the packet, or in the second scheduled time scope Bag is confirmed corresponding to being inside not received by, then the packet is bag to be retransmitted;
If the interval of the initial transmission time of current time and packet is more than the first scheduled duration, or described to be retransmitted Bag had been retransmitted, then was no longer retransmitted.
With reference to second of possible implementation of first aspect, in the third possible implementation of first aspect, institute Stating method also includes:
When the jitter value of the network jitter state exceedes predetermined dithering threshold, then when retransmitting the bag to be retransmitted, To be retransmitted addition error correcting code is wrapped described.
It is described according to the current network shape with reference in a first aspect, in the 4th kind of possible implementation of first aspect State, bit stream strategy corresponding with the current network state is called to include:
When the current network state is bandwidth deficiency or packet loss continues, the bandwidth currently allowed is calculated;
According to the corresponding relation of default bandwidth and transmission quality, the transmission matter corresponding to the bandwidth currently allowed is searched Amount, bit stream is carried out according to the transmission quality of lookup.
It is described according to the current network shape with reference in a first aspect, in the 5th kind of possible implementation of first aspect State, bit stream strategy corresponding with the current network state is called to include:
When the current network state is bandwidth abundance, according to the corresponding relation of default bandwidth and transmission quality, look into The transmission quality corresponding to the bandwidth of current network state is looked for carry out bit stream.
With reference to the 5th kind of possible implementation of the 4th kind of possible implementation or first aspect of first aspect, first In 6th kind of possible implementation of aspect, the transmission quality includes:Audio of the transmission less than normal quality, the normal matter of transmission Measure audio, the audio for transmitting normal quality and video less than normal quality, the audio for transmitting normal quality and normal quality Video.
The second aspect of the embodiment of the present invention provides a kind of adaptive code stream transmitting device, the adaptive code streaming Device includes:
Network state determining unit, for according to each timeslice in the range of first scheduled time before current time Transmitted by interior transmitting terminal, and receiving terminal received data bag quantity or byte quantity, determine current network state;
Tactful call unit, for according to the current network state, calling code corresponding with the current network state Streaming strategy.
The third aspect of the embodiment of the present invention provides a kind of adaptive code stream transmission equipment, including memory, processor And the computer program that can be run in the memory and on the processor is stored in, meter described in the computing device The step of any one of first aspect adaptive code stream transmission method is realized during calculation machine program.
The fourth aspect of the embodiment of the present invention provides a kind of computer-readable recording medium, the computer-readable storage Media storage has computer program, is realized when the computer program is executed by processor adaptive as described in any one of first aspect The step of answering code stream transmission method.
Existing beneficial effect is the embodiment of the present invention compared with prior art:It is predetermined according to first before current time In each timeslice in time range transmitted by transmitting terminal, and receiving terminal received data bag quantity or byte number Amount, determines current network state, accurately and effectively current network state can be identified, further according to the current net identified Network state, bit stream strategy corresponding to lookup carry out bit stream, so that code stream adapts to the requirement of heterogeneous networks state, Advantageously reduce picture interim card and Hua Ping.
Brief description of the drawings
Technical scheme in order to illustrate the embodiments of the present invention more clearly, below will be to embodiment or description of the prior art In the required accompanying drawing used be briefly described, it should be apparent that, drawings in the following description be only the present invention some Embodiment, for those of ordinary skill in the art, without having to pay creative labor, can also be according to these Accompanying drawing obtains other accompanying drawings.
Fig. 1 is the implementation process schematic diagram of adaptive code stream transmission method provided in an embodiment of the present invention;
Fig. 2 is the implementation process schematic diagram of determination current network state provided in an embodiment of the present invention;
The implementation process of adaptive code stream transmission method when Fig. 3 is network jitter state provided in an embodiment of the present invention is shown It is intended to;
The implementation process signal of adaptive code stream transmission method when Fig. 4 is bandwidth deficiency provided in an embodiment of the present invention Figure;
Fig. 5 is the schematic diagram of adaptive code stream transmitting device provided in an embodiment of the present invention;
Fig. 6 is the schematic diagram of adaptive code stream transmission equipment provided in an embodiment of the present invention.
Embodiment
In describing below, in order to illustrate rather than in order to limit, it is proposed that such as tool of particular system structure, technology etc Body details, thoroughly to understand the embodiment of the present invention.However, it will be clear to one skilled in the art that there is no these specific The present invention can also be realized in the other embodiments of details.In other situations, omit to well-known system, device, electricity Road and the detailed description of method, in case unnecessary details hinders description of the invention.
In order to illustrate technical solutions according to the invention, illustrated below by specific embodiment.
It is a kind of implementation process of adaptive code stream transmission method provided in an embodiment of the present invention as shown in Figure 1, is described in detail such as Under:
In step S101, according to transmitting terminal in each timeslice in the range of first scheduled time before current time Transmitted, and receiving terminal received data bag quantity or byte quantity, determine current network state.
Specifically, during bit stream, in order to ensure that bit stream data bag is effectively transferred to receiving terminal, in client After receiving code stream, one can be returned and confirm bag ACK.The confirmation for confirming bag ACK and can including multiple packets.Its In, it is acknowledge abbreviation to confirm bag ACK.ACK can be returned in bit stream, in each timeslice and confirms bag.One It is individual to confirm that bag be to the information of all packets received of client in the timeslice.
First scheduled time scope, it can be set as the time span sum of several timeslices.For example it can set It is set to N number of timeslice, N is more than or equal to 2.The timeslice can flexibly be set according to the time that network jitter occurs.It is logical The interior reception of each timeslice obtained in the range of first scheduled time and the data packet number sent, byte quantity are crossed, it is determined that working as Preceding network state, as shown in Fig. 2 can specifically include:
In step s 201, transmitting terminal in each timeslice in the range of first scheduled time before acquisition current time Transmitted, and receiving terminal received data bag quantity or byte quantity.
The length of each timeslice is identical, when obtaining multiple continuous timeslices before current time, and counting each Between sent by transmitting terminal (generally server or IP Camera IPC) in piece, and receiving terminal received data bag number Amount or byte quantity.Wherein, the receiving terminal received data bag quantity or byte quantity, can feed back to according to receiving terminal The confirmation bag ACK of transmitting terminal obtains the information of receiving terminal received data bag quantity or byte quantity.
In step S202, according to timeslice and the time interval of current time, when time interval is smaller, for it is described when Between piece distribute higher weights, pass through the current current desired bandwidth of weighted average calculation and actually active bandwidth.
Obtaining the data packet number or byte quantity transmitted by each timeslice, and receiving terminal received data After bag quantity or byte quantity, according to the data packet number of each timeslice transmission, byte quantity, current desired bandwidth is calculated, According to each timeslice receiving terminal received data bag quantity, byte quantity, currently practical effective bandwidth is calculated.
In a kind of preferable embodiment, different weights can be distributed different timeslices, are got over apart from current time Near timeslice, the weights of distribution are higher.When multiple timeslices are weighted, more efficiently current institute can be obtained Need bandwidth and actually active bandwidth.
Wherein, the calculating of the current desired bandwidth, can be according to the packet transmitted by each timeslice of weighted calculation Quantity or byte quantity, obtained with reference to corresponding weight computing.
The currently practical effective bandwidth, can be according to each timeslice of weighted calculation by receiving terminal received data bag Quantity or byte quantity, obtained with reference to corresponding weight computing.
Due to the timeslice nearer apart from current time, corresponding weights are higher, therefore, the weighted average calculated The data mode of current time more can be effectively reacted, and the abnormal influence to bandwidth calculation of single timeslice can be avoided.
In step S203, by current current desired bandwidth compared with actually active bandwidth, according to comparative result Determine current network state.
According to the comparative result of current actually active bandwidth and current desired bandwidth, and duration is combined, can be with Determine current network state.If the difference of current actually active bandwidth and current desired bandwidth is less than predetermined difference value, and examines Measuring the duration is less than predetermined duration, then current network state is network jitter state.
If current actually active bandwidth is less than current desired bandwidth, and difference is more than predetermined difference value, and duration More than predetermined duration, then current network state is network bandwidth deficiency.
If after using corresponding Developing Tactics under network bandwidth deficiency or network jitter state, current is actually active Bandwidth is still less than current desired bandwidth, it is determined that current network state is to include the network state of ambient noise.
In step s 102, according to the current network state, code stream corresponding with the current network state is called to pass Defeated strategy.
According to the comparative result of current current desired bandwidth and actually active bandwidth, it may be determined that current network whether be Network jitter state, or whether be network bandwidth deficiency.
When the current network state is network jitter state, it can reduce and spend by the strategy of data re-transmitting The problem of screen and interim card.
When the current network state is network bandwidth deficiency, transmission can be adjusted according to the bandwidth currently allowed The quality of audio and/or video, reduce and the problem of flower screen and interim card occur.
After application above-mentioned strategy, current desired bandwidth is with difference existing for actually active bandwidth still above predetermined difference Value, then judge network state of the current network state for ambient noise.Can be by starting audio and I frame forward error correction FEC (English Literary full name is Forward Error Correction);Then according to permission bandwidth adjustment encoder code under FEC entry conditions Rate.
According to transmitted by transmitting terminal in each timeslice in the range of first scheduled time before current time, and Receiving terminal received data bag quantity or byte quantity, determine current network state, can be accurately and effectively to current network State is identified, and further according to the current network state identified, bit stream strategy corresponding to lookup carries out bit stream, from And make it that code stream adapts to the requirement of heterogeneous networks state, advantageously reduces picture interim card and Hua Ping.
Fig. 3 is the realization stream of the adaptive code stream transmission method provided in an embodiment of the present invention in network jitter state Journey, details are as follows:
In step S301, according to transmitting terminal in each timeslice in the range of first scheduled time before current time Transmitted, and receiving terminal received data bag quantity or byte quantity, determine current network state.
In step s 302, when the current network state is network jitter state, if confirmed corresponding to packet Bag ACK is not received, and the confirmation bag ACK for being later than the packet that timeslice where the packet is sent has been received by, or the Bag is confirmed corresponding to being not received by the range of two scheduled times, then the packet is bag to be retransmitted.
Specifically, the current network state determination methods according to Fig. 2, judge current network state for network jitter shape During state, it can be specifically as follows according to confirming that the time of return for wrapping ACK is tactful to determine to transmit accordingly:
If confirming that bag ACK is not received corresponding to packet, and it is later than the data that packet place timeslice is sent The confirmation bag ACK of bag has been received by, then the bag is bag to be retransmitted.
By the arrival of next feedback information, it just can determine that in the feedback information of last time there is no confirmation message ACK's Reason is to postpone to occur because of out of order, is also due to lose.
Or in the range of second scheduled time after initially sending the time, corresponding confirmation bag is not received ACK, then the bag is bag to be retransmitted.
In step S303, if the interval of the initial transmission time of current time and packet is more than the first pre- timing Length, or the bag to be retransmitted had been retransmitted, then were no longer retransmitted.
After being determined that packet is bag to be retransmitted, then the bag to be retransmitted is subjected to repeating transmission operation, to ensure packet It is still effective to reach receiving terminal.When reaching receiving terminal in order to avoid retransmitted packet, data are invalid, for example data are broadcast Put, when setting the interval of the initial transmission time of current time and packet to be more than the first scheduled duration in this step, then no longer Retransmit, if the interval of the initial transmission time of current time and packet is less than the first scheduled duration, weight is treated described in repeating transmission Give out a contract for a project.Because the cushion space of receiving terminal is limited, when retransmitted packet interval time is too long, receiving terminal is that have received weight the beginning Give out a contract for a project, also have little time framing, storage or preview, therefore be invalid more than the retransmitted packet of the first scheduled duration.If packet It has been retransmitted that, then also can no longer retransmit.
In addition, if when the jitter value in network jitter state is more than certain threshold value and during network bandwidth abundance, Ke Yi On the basis of above-mentioned repeating transmission, further increase forward error correction mechanism,
Adaptive code stream transmission method described in Fig. 3, it is corresponding using the transmission plan retransmitted for network jitter state Slightly, it can effectively reduce receiving terminal and interim card, the probability of flower screen failure occur.
Fig. 4 be it is provided in an embodiment of the present invention for bandwidth deficiency current network state used by adaptive code spread The implementation process of transmission method, details are as follows:
In step S401, according to transmitting terminal in each timeslice in the range of first scheduled time before current time Transmitted, and receiving terminal received data bag quantity or byte quantity, determine current network state.
Step S401 and step S101 are essentially identical.
In step S402, when the current network state is bandwidth deficiency or packet loss continues, current allow is calculated Bandwidth.
If current actually active bandwidth is less than current desired bandwidth, and when difference is more than predetermined difference value, duration During more than scheduled duration, server can be according to the confirmation bag ACK of reception, it is determined that the data being successfully transmitted and being successfully transmitted The size of packet and transmission time, so as to calculate the bandwidth currently allowed.
Because network bandwidth deficiency is, it is necessary to by adjusting encoder, current desired bandwidth is reduced, so as to avoid the occurrence of interim card Or Huaping phenomenon.
In step S403, according to the corresponding relation of default bandwidth and transmission quality, the bandwidth institute currently allowed is searched Corresponding transmission quality, bit stream is carried out according to the transmission quality of lookup.
The transmission quality, it can include:
Audio of the transmission less than normal quality:It can be the audio coding set in advance compared with low bit- rate.
Transmit normal quality audio:Audio is encoded according to normal code check.
Transmit the audio of normal quality and the video less than normal quality:On the basis of normal code check is to audio coding, Start forward error correction FEC, video can be encoded only from I frames;
Transmit the audio of normal quality and the video of normal quality:Normal audio coding, and can enable or not Forward error correction FEC is enabled, video can be encoded only from I frames, and select forward error correction FEC, or be alternatively normal code check Video coding.
In addition, in this application, can be according to current network state if network condition is improved, corresponding lifting Code check, so as to improve audio-visual quality.In addition, when lifting code check, the limit bit rate lifted should be less than the defeated of encoder Go out limit bit rate.
In addition, during lifting code check, it is also contemplated that in a period of time before current time, whether bandwidth occurs significantly to become Change, or be also conceivable to the time of last time code rate adjustment and the interval of current time.
Such as when there is no bandwidth change, and the time interval of last time code rate adjustment in a period of time before current time From regulation threshold time of the current time more than a setting, then code rate adjustment is carried out, otherwise without code rate adjustment.When code check is adjusted Section has reached quality requirement, can also stop code rate adjustment.
After corresponding transmission strategy is employed for network jitter state and network bandwidth deficiency, current is current desired The difference of bandwidth and actually active bandwidth is still greater than predetermined difference value, then it is assumed that current network has ambient noise, it is necessary to open Forward error correction FEC.
It should be understood that the size of the sequence number of each step is not meant to the priority of execution sequence, each process in above-described embodiment Execution sequence should determine that the implementation process without tackling the embodiment of the present invention forms any limit with its function and internal logic It is fixed.
Fig. 5 is a kind of structural representation of adaptive code stream transmitting device provided in an embodiment of the present invention, and details are as follows:
The adaptive code stream transmitting device includes:
Network state determining unit 501, during for according to each in the range of first scheduled time before current time Between in piece transmitted by transmitting terminal, and receiving terminal received data bag quantity or byte quantity determine current network state;
Tactful call unit 502, for according to the current network state, calling corresponding with the current network state Bit stream strategy.
Adaptive code stream transmitting device described in Fig. 5, it is corresponding with the adaptive code stream transmission method described in Fig. 1-4.
Fig. 6 is the schematic diagram for the adaptive code stream transmission equipment that one embodiment of the invention provides.As shown in fig. 6, the implementation The adaptive code stream transmission equipment 6 of example includes:Processor 60, memory 61 and it is stored in the memory 61 and can be in institute State the computer program 62 run on processor 60, such as adaptive code streaming program.The processor 60 performs the meter The step in above-mentioned each adaptive code stream transmission method embodiment, such as the step 101 shown in Fig. 1 are realized during calculation machine program 62 To 102.Or the processor 60 realizes each module in above-mentioned each device embodiment/mono- when performing the computer program 62 The function of member, such as the function of module 501 to 502 shown in Fig. 5.
Exemplary, the computer program 62 can be divided into one or more module/units, it is one or Multiple module/units are stored in the memory 61, and are performed by the processor 60, to complete the present invention.Described one Individual or multiple module/units can be the series of computation machine programmed instruction section that can complete specific function, and the instruction segment is used for Implementation procedure of the computer program 62 in the adaptive code stream transmission equipment 6 is described.For example, the computer program 62 can be divided into network state determining unit and tactful call unit, and each unit concrete function is as follows:
Network state determining unit, for according to each timeslice in the range of first scheduled time before current time Transmitted by interior transmitting terminal, and receiving terminal received data bag quantity or byte quantity, determine current network state;
Tactful call unit, for according to the current network state, calling code corresponding with the current network state Streaming strategy.
The adaptive code stream transmission equipment 6 can be desktop PC, notebook, palm PC and cloud server Deng computing device.The adaptive code stream transmission equipment may include, but be not limited only to, processor 60, memory 61.This area skill Art personnel are appreciated that Fig. 6 is only the example of adaptive code stream transmission equipment 6, do not form and adaptive code streaming is set It standby 6 restriction, can include than illustrating more or less parts, either combine some parts or different parts, such as The adaptive code stream transmission equipment can also include input-output equipment, network access equipment, bus etc..
Alleged processor 60 can be CPU (Central Processing Unit, CPU), can also be Other general processors, digital signal processor (Digital Signal Processor, DSP), application specific integrated circuit (Application Specific Integrated Circuit, ASIC), ready-made programmable gate array (Field- Programmable Gate Array, FPGA) either other PLDs, discrete gate or transistor logic, Discrete hardware components etc..General processor can be microprocessor or the processor can also be any conventional processor Deng.
The memory 61 can be the internal storage unit of the adaptive code stream transmission equipment 6, such as adaptive code Spread the hard disk or internal memory of transfer device 6.The memory 61 can also be the external storage of the adaptive code stream transmission equipment 6 The plug-in type hard disk being equipped with equipment, such as the adaptive code stream transmission equipment 6, intelligent memory card (Smart Media Card, SMC), secure digital (Secure Digital, SD) card, flash card (Flash Card) etc..Further, it is described to deposit Reservoir 61 can also both include the internal storage unit of the adaptive code stream transmission equipment 6 or including External memory equipment.Institute Memory 61 is stated to be used to store the computer program and other program sums needed for the adaptive code stream transmission equipment According to.The memory 61 can be also used for temporarily storing the data that has exported or will export.
It is apparent to those skilled in the art that for convenience of description and succinctly, only with above-mentioned each work( Can unit, module division progress for example, in practical application, can be as needed and by above-mentioned function distribution by different Functional unit, module are completed, i.e., the internal structure of described device are divided into different functional units or module, more than completion The all or part of function of description.Each functional unit, module in embodiment can be integrated in a processing unit, also may be used To be that unit is individually physically present, can also two or more units it is integrated in a unit, it is above-mentioned integrated Unit can both be realized in the form of hardware, can also be realized in the form of SFU software functional unit.In addition, each function list Member, the specific name of module are not limited to the protection domain of the application also only to facilitate mutually distinguish.Said system The specific work process of middle unit, module, the corresponding process in preceding method embodiment is may be referred to, will not be repeated here.
In the above-described embodiments, the description to each embodiment all emphasizes particularly on different fields, and is not described in detail or remembers in some embodiment The part of load, it may refer to the associated description of other embodiments.
Those of ordinary skill in the art are it is to be appreciated that the list of each example described with reference to the embodiments described herein Member and algorithm steps, it can be realized with the combination of electronic hardware or computer software and electronic hardware.These functions are actually Performed with hardware or software mode, application-specific and design constraint depending on technical scheme.Professional and technical personnel Described function can be realized using distinct methods to each specific application, but this realization is it is not considered that exceed The scope of the present invention.
In embodiment provided by the present invention, it should be understood that disclosed device/terminal device and method, can be with Realize by another way.For example, device described above/terminal device embodiment is only schematical, for example, institute The division of module or unit is stated, only a kind of division of logic function, there can be other dividing mode when actually realizing, such as Multiple units or component can combine or be desirably integrated into another system, or some features can be ignored, or not perform.Separately A bit, shown or discussed mutual coupling or direct-coupling or communication connection can be by some interfaces, device Or INDIRECT COUPLING or the communication connection of unit, can be electrical, mechanical or other forms.
The unit illustrated as separating component can be or may not be physically separate, show as unit The part shown can be or may not be physical location, you can with positioned at a place, or can also be distributed to multiple On NE.Some or all of unit therein can be selected to realize the mesh of this embodiment scheme according to the actual needs 's.
In addition, each functional unit in each embodiment of the present invention can be integrated in a processing unit, can also That unit is individually physically present, can also two or more units it is integrated in a unit.Above-mentioned integrated list Member can both be realized in the form of hardware, can also be realized in the form of SFU software functional unit.
If the integrated module/unit realized in the form of SFU software functional unit and as independent production marketing or In use, it can be stored in a computer read/write memory medium.Based on such understanding, the present invention realizes above-mentioned implementation All or part of flow in example method, by computer program the hardware of correlation can also be instructed to complete, described meter Calculation machine program can be stored in a computer-readable recording medium, and the computer program can be achieved when being executed by processor The step of stating each embodiment of the method..Wherein, the computer program includes computer program code, the computer program Code can be source code form, object identification code form, executable file or some intermediate forms etc..Computer-readable Jie Matter can include:Can carry any entity or device of the computer program code, recording medium, USB flash disk, mobile hard disk, Magnetic disc, CD, computer storage, read-only storage (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electric carrier signal, telecommunication signal and software distribution medium etc..It is it should be noted that described The content that computer-readable medium includes can carry out appropriate increasing according to legislation in jurisdiction and the requirement of patent practice Subtract, such as in some jurisdictions, according to legislation and patent practice, computer-readable medium do not include be electric carrier signal and Telecommunication signal.
Embodiment described above is merely illustrative of the technical solution of the present invention, rather than its limitations;Although with reference to foregoing reality Example is applied the present invention is described in detail, it will be understood by those within the art that:It still can be to foregoing each Technical scheme described in embodiment is modified, or carries out equivalent substitution to which part technical characteristic;And these are changed Or replace, the essence of appropriate technical solution is departed from the spirit and scope of various embodiments of the present invention technical scheme, all should Within protection scope of the present invention.

Claims (10)

1. a kind of adaptive code stream transmission method, it is characterised in that the adaptive code stream transmission method includes:
According to transmitted by transmitting terminal in each timeslice in the range of first scheduled time before current time, and receive Received data bag quantity or byte quantity are held, determines current network state;
According to the current network state, bit stream strategy corresponding with the current network state is called.
2. adaptive code stream transmission method according to claim 1, it is characterised in that it is described according to current time before In each timeslice in the range of first scheduled time transmitted by transmitting terminal, and receiving terminal received data bag quantity or Byte quantity, the step of determining current network state, include:
In each timeslice in the range of first scheduled time before acquisition current time transmitted by transmitting terminal, and receive Hold received data bag quantity or byte quantity;
According to timeslice and the time interval of current time, when time interval is smaller, higher power is distributed for the timeslice Value, pass through the current current desired bandwidth of weighted average calculation and actually active bandwidth;
By current current desired bandwidth compared with actually active bandwidth, current network state is determined according to comparative result.
3. adaptive code stream transmission method according to claim 1 or claim 2, it is characterised in that described according to the current network State, bit stream strategy corresponding with the current network state is called to include:
When the current network state is network jitter state, if confirm that bag ACK is not received corresponding to packet, and evening The confirmation bag ACK for the packet that the timeslice where the packet is sent has been received by, or does not have in the range of second scheduled time Bag is confirmed corresponding to receiving, then the packet is bag to be retransmitted;
If the interval of the initial transmission time of current time and packet is more than the first scheduled duration, or the bag to be retransmitted is Retransmitted, then no longer retransmitted.
4. adaptive code stream transmission method according to claim 3, it is characterised in that methods described also includes:
When the jitter value of the network jitter state exceedes predetermined dithering threshold, then when retransmitting the bag to be retransmitted, in institute State and to be retransmitted wrap addition error correcting code.
5. adaptive code stream transmission method according to claim 1, it is characterised in that described according to the current network shape State, bit stream strategy corresponding with the current network state is called to include:
When the current network state is bandwidth deficiency or packet loss continues, the bandwidth currently allowed is calculated;
According to the corresponding relation of default bandwidth and transmission quality, the transmission quality corresponding to the bandwidth currently allowed, root are searched It is investigated that the transmission quality looked for carries out bit stream.
6. adaptive code stream transmission method according to claim 1, it is characterised in that described according to the current network shape State, bit stream strategy corresponding with the current network state is called to include:
When the current network state is bandwidth abundance, according to the corresponding relation of default bandwidth and transmission quality, searches and work as Transmission quality corresponding to the bandwidth of preceding network state carries out bit stream.
7. according to the adaptive code stream transmission method of claim 5 or 6, it is characterised in that the transmission quality includes:Transmission Audio, transmission normal quality audio, the audio of transmission normal quality less than normal quality and the video less than normal quality, pass The audio of defeated normal quality and the video of normal quality.
8. a kind of adaptive code stream transmitting device, it is characterised in that the adaptive code stream transmitting device includes:
Network state determining unit, for according to being sent out in each timeslice in the range of first scheduled time before current time Transmitted by sending end, and receiving terminal received data bag quantity or byte quantity, determine current network state;
Tactful call unit, for according to the current network state, calling code stream corresponding with the current network state to pass Defeated strategy.
9. a kind of adaptive code stream transmission equipment, including memory, processor and it is stored in the memory and can be in institute State the computer program run on processor, it is characterised in that realized described in the computing device during computer program as weighed Profit requires the step of any one of 1 to 5 adaptive code stream transmission method.
10. a kind of computer-readable recording medium, the computer-readable recording medium storage has computer program, and its feature exists In realization adaptive code stream transmission method as described in any one of claim 1 to 5 when the computer program is executed by processor The step of.
CN201710734327.5A 2017-08-24 2017-08-24 Self-adaptive code stream transmission method, device and equipment Active CN107342848B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710734327.5A CN107342848B (en) 2017-08-24 2017-08-24 Self-adaptive code stream transmission method, device and equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710734327.5A CN107342848B (en) 2017-08-24 2017-08-24 Self-adaptive code stream transmission method, device and equipment

Publications (2)

Publication Number Publication Date
CN107342848A true CN107342848A (en) 2017-11-10
CN107342848B CN107342848B (en) 2020-05-01

Family

ID=60214388

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710734327.5A Active CN107342848B (en) 2017-08-24 2017-08-24 Self-adaptive code stream transmission method, device and equipment

Country Status (1)

Country Link
CN (1) CN107342848B (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108833930A (en) * 2018-06-20 2018-11-16 广州华多网络科技有限公司 Live data transfer control method, device, live streaming equipment and storage medium
CN109343902A (en) * 2018-09-26 2019-02-15 Oppo广东移动通信有限公司 Operation method, device, terminal and the storage medium of audio processing components
CN109413442A (en) * 2018-10-12 2019-03-01 南京机器岛智能科技有限公司 A kind of speaker self-adaption code rate adjusting method
CN109600610A (en) * 2018-11-12 2019-04-09 深圳市景阳科技股份有限公司 A kind of data-encoding scheme and terminal
CN109862400A (en) * 2019-02-18 2019-06-07 苏州长风航空电子有限公司 A kind of flow-medium transmission method, device and its system
CN111010389A (en) * 2019-12-11 2020-04-14 浙江大华技术股份有限公司 Code stream adjusting method and device, storage medium and electronic device
CN111193673A (en) * 2020-04-10 2020-05-22 亮风台(上海)信息科技有限公司 Data transmission rate control method, system and user equipment
CN111245769A (en) * 2018-11-28 2020-06-05 深圳技威时代科技有限公司 Audio and video transmission method and device and storage medium
CN111314439A (en) * 2020-01-20 2020-06-19 北京无限光场科技有限公司 Data sending method and device and electronic equipment
CN111628847A (en) * 2020-05-06 2020-09-04 上海幻电信息科技有限公司 Data transmission method and device
CN111654761A (en) * 2020-04-20 2020-09-11 威比网络科技(上海)有限公司 Video processing method, system, device and medium based on online education
CN111741248A (en) * 2020-05-26 2020-10-02 视联动力信息技术股份有限公司 Data transmission method, device, terminal equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7315515B2 (en) * 2003-09-30 2008-01-01 Conexant Systems, Inc. TCP acceleration system
CN105531968A (en) * 2013-09-11 2016-04-27 思科技术公司 Network-based adaptive rate limiting
CN105634865A (en) * 2015-12-29 2016-06-01 广州华多网络科技有限公司 Method and system for obtaining bandwidth
CN106850579A (en) * 2017-01-03 2017-06-13 北京飞讯数码科技有限公司 Streaming media self-adapting flow rate adjusting method and device
CN106982371A (en) * 2016-12-09 2017-07-25 上海谐桐信息技术有限公司 Code stream control method and system, code stream management method and system, and terminal device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7315515B2 (en) * 2003-09-30 2008-01-01 Conexant Systems, Inc. TCP acceleration system
CN105531968A (en) * 2013-09-11 2016-04-27 思科技术公司 Network-based adaptive rate limiting
CN105634865A (en) * 2015-12-29 2016-06-01 广州华多网络科技有限公司 Method and system for obtaining bandwidth
CN106982371A (en) * 2016-12-09 2017-07-25 上海谐桐信息技术有限公司 Code stream control method and system, code stream management method and system, and terminal device
CN106850579A (en) * 2017-01-03 2017-06-13 北京飞讯数码科技有限公司 Streaming media self-adapting flow rate adjusting method and device

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108833930B (en) * 2018-06-20 2020-10-02 广州华多网络科技有限公司 Live broadcast data transmission control method and device, live broadcast equipment and storage medium
CN108833930A (en) * 2018-06-20 2018-11-16 广州华多网络科技有限公司 Live data transfer control method, device, live streaming equipment and storage medium
CN109343902A (en) * 2018-09-26 2019-02-15 Oppo广东移动通信有限公司 Operation method, device, terminal and the storage medium of audio processing components
CN109343902B (en) * 2018-09-26 2021-08-03 Oppo广东移动通信有限公司 Audio processing assembly operation method and device, terminal and storage medium
CN109413442A (en) * 2018-10-12 2019-03-01 南京机器岛智能科技有限公司 A kind of speaker self-adaption code rate adjusting method
CN109413442B (en) * 2018-10-12 2020-10-09 南京机器岛智能科技有限公司 Sound box self-adaptive code rate adjusting method
CN109600610A (en) * 2018-11-12 2019-04-09 深圳市景阳科技股份有限公司 A kind of data-encoding scheme and terminal
CN109600610B (en) * 2018-11-12 2020-10-23 深圳市景阳科技股份有限公司 Data encoding method, terminal and computer readable storage medium
CN111245769B (en) * 2018-11-28 2022-09-30 深圳技威时代科技有限公司 Audio and video transmission method and device and storage medium
CN111245769A (en) * 2018-11-28 2020-06-05 深圳技威时代科技有限公司 Audio and video transmission method and device and storage medium
CN109862400A (en) * 2019-02-18 2019-06-07 苏州长风航空电子有限公司 A kind of flow-medium transmission method, device and its system
CN109862400B (en) * 2019-02-18 2021-08-31 苏州长风航空电子有限公司 Streaming media transmission method, device and system
CN111010389A (en) * 2019-12-11 2020-04-14 浙江大华技术股份有限公司 Code stream adjusting method and device, storage medium and electronic device
CN111010389B (en) * 2019-12-11 2022-10-18 浙江大华技术股份有限公司 Code stream adjusting method and device, storage medium and electronic device
CN111314439A (en) * 2020-01-20 2020-06-19 北京无限光场科技有限公司 Data sending method and device and electronic equipment
WO2021203829A1 (en) * 2020-04-10 2021-10-14 亮风台(上海)信息科技有限公司 Data transmission rate control method and system, and user equipment
CN111193673A (en) * 2020-04-10 2020-05-22 亮风台(上海)信息科技有限公司 Data transmission rate control method, system and user equipment
CN111654761A (en) * 2020-04-20 2020-09-11 威比网络科技(上海)有限公司 Video processing method, system, device and medium based on online education
CN111628847A (en) * 2020-05-06 2020-09-04 上海幻电信息科技有限公司 Data transmission method and device
US11778006B2 (en) 2020-05-06 2023-10-03 Shanghai Hode Information Technology Co., Ltd. Data transmission method and apparatus
CN111741248A (en) * 2020-05-26 2020-10-02 视联动力信息技术股份有限公司 Data transmission method, device, terminal equipment and storage medium
CN111741248B (en) * 2020-05-26 2024-03-15 视联动力信息技术股份有限公司 Data transmission method, device, terminal equipment and storage medium

Also Published As

Publication number Publication date
CN107342848B (en) 2020-05-01

Similar Documents

Publication Publication Date Title
CN107342848A (en) A kind of adaptive code stream transmission method, device and equipment
CN104782133B (en) Method and apparatus for media data delivering control
CN107276910A (en) The real-time adjusting apparatus of video code rate and system, video server
EP2119171B1 (en) Improved data transfer method, system and protocol
EP3780542B1 (en) Data transmission method and device
US10660112B2 (en) Transmission rate regulation method
CN103647722B (en) A kind of Link Congestion Control Method based on prestige
CN106416179A (en) Transport accelerator implementing extended transmission control functionality
CN103329609A (en) Method and system for minimizing latencies for content protection in audio/video networks
CN104753980A (en) Data transmission method and relevant device and communication system
WO2017097201A1 (en) Data transmission method, transmission device and receiving device
CN110247736B (en) Data transmission method and device
CN105376173A (en) Sending window flow control method and terminal
CN109120974A (en) A kind of method and device that audio-visual synchronization plays
CN102694631B (en) Method and device for controlling data transmission
CN107634908A (en) A kind of method and apparatus of data transfer
CN107707338A (en) Code block component group determination/indicating means, user equipment, base station and storage medium
CN107634817B (en) Method and device for data transmission
CN114039703A (en) Data transmission method, device, equipment and medium
EP3531601B1 (en) System, method and apparatus for qos retransmission for mg.fast
KR102450226B1 (en) Method and apparatus for controlling send buffer of transport control protocol in communication system
CN108989138A (en) Data transmission method, device, system and gateway
CN102263618A (en) Method, device and system for controlling wireless network congestion
JP2017092692A (en) Data transmission control system and method, and data transmission control program
CN104580171B (en) The transmission method of Transmission Control Protocol, device and system

Legal Events

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