FMUSER Wirless Transmit Video And Audio More Easier !
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org ->Afrikaans
sq.fmuser.org ->Albanian
ar.fmuser.org ->Arabic
hy.fmuser.org ->Armenian
az.fmuser.org ->Azerbaijani
eu.fmuser.org ->Basque
be.fmuser.org ->Belarusian
bg.fmuser.org ->Bulgarian
ca.fmuser.org ->Catalan
zh-CN.fmuser.org ->Chinese (Simplified)
zh-TW.fmuser.org ->Chinese (Traditional)
hr.fmuser.org ->Croatian
cs.fmuser.org ->Czech
da.fmuser.org ->Danish
nl.fmuser.org ->Dutch
et.fmuser.org ->Estonian
tl.fmuser.org ->Filipino
fi.fmuser.org ->Finnish
fr.fmuser.org ->French
gl.fmuser.org ->Galician
ka.fmuser.org ->Georgian
de.fmuser.org ->German
el.fmuser.org ->Greek
ht.fmuser.org ->Haitian Creole
iw.fmuser.org ->Hebrew
hi.fmuser.org ->Hindi
hu.fmuser.org ->Hungarian
is.fmuser.org ->Icelandic
id.fmuser.org ->Indonesian
ga.fmuser.org ->Irish
it.fmuser.org ->Italian
ja.fmuser.org ->Japanese
ko.fmuser.org ->Korean
lv.fmuser.org ->Latvian
lt.fmuser.org ->Lithuanian
mk.fmuser.org ->Macedonian
ms.fmuser.org ->Malay
mt.fmuser.org ->Maltese
no.fmuser.org ->Norwegian
fa.fmuser.org ->Persian
pl.fmuser.org ->Polish
pt.fmuser.org ->Portuguese
ro.fmuser.org ->Romanian
ru.fmuser.org ->Russian
sr.fmuser.org ->Serbian
sk.fmuser.org ->Slovak
sl.fmuser.org ->Slovenian
es.fmuser.org ->Spanish
sw.fmuser.org ->Swahili
sv.fmuser.org ->Swedish
th.fmuser.org ->Thai
tr.fmuser.org ->Turkish
uk.fmuser.org ->Ukrainian
ur.fmuser.org ->Urdu
vi.fmuser.org ->Vietnamese
cy.fmuser.org ->Welsh
yi.fmuser.org ->Yiddish
The live broadcast system of audio and video is a complex engineering system. To achieve very low delay live broadcast, it needs complex system engineering optimization and familiar with each component. Here are several simple and common tuning techniques:
Coding optimization
1. make sure codec has the minimum delay setting on. Codec generally has low delay optimization switch, especially for H.264. Many people may not know that the decoder of H.264 will cache certain video frames before display normally, 16 frames will be cached for QCIF resolution size video (176 × 144), and 5 frames for 720p video. This is a big delay for the first frame to read. If your video is not encoded and compressed using H.264, make sure that B frame is not used, it will also have a greater impact on latency, because the decoding of B frame in video depends on the front and rear video frames, which will increase the delay.
2. encoder generally has delay caused by code control, which is also called initialization delay or the cache size of VBV, which is regarded as the cache between encoder and decoder bit stream. It can be set as small as possible and reduce delay without affecting video quality.
3. if only the first delay is optimized, more keyframes can be inserted between video frames, so that the client can decode the video stream as soon as possible after receiving the video stream. However, if the cumulative delay in transmission needs to be optimized, the key frame (I frame becomes larger) is used as little as possible. In the case of ensuring the same video quality, the more I frames, the greater the code rate and the more network bandwidth required for transmission, it means that the greater the cumulative delay is. This optimization effect may not be obvious in second delay systems, but it will be very obvious in systems with 100 ms or less delay. Meanwhile, ACC LC codec is used as much as possible to encode audio. Although he acc or he-acc 2 has high coding efficiency, it takes longer to code, and the transmission delay caused by larger volume of audio has less impact on the transmission of video stream.
4. do not use video compression format of video MJPEG, at least use MPEG 4 video compression format without B frame (simple profile), or even use H.264 baseline profile (x264 also has an optimization switch of -tune zeroability). Such a simple optimization can reduce latency because it can encode full frame rate video at a lower bit rate.
5. if ffmpeg is used, the value of parameters "-probesize" and "analyze duration" is reduced. The two values are used for video frame information monitoring and the duration of monitoring. The greater the influence of these two values on coding delay, the more necessary to set the analysis duration parameter for video stream in live video scene.
6. fixed rate coding CBR can eliminate the network jitter to some extent. If VBR can be used, some unnecessary network bandwidth can be saved and certain delay can be reduced. Therefore, it is suggested to use VBR as much as possible for coding.
Transmission protocol optimization
1. try to use RTMP instead of HTTP based HLS protocol to transfer between the nodes and nodes of the server, which can reduce the overall transmission delay. This is mainly for the end-user using HLS for playback.
2. if the end user uses RTMP to play, transcoding is carried out at the receiving node near the streaming end as far as possible, so that the video stream transmitted is smaller than the original video stream.
3. if necessary, you can replace TCP with customized UDP protocol, and reduce delay by eliminating packet loss retransmission in weak network. The main disadvantage of this protocol is that the transmission and distribution of video stream based on UDP protocol is not universal enough, and CDN manufacturers support standard transmission protocol. Another disadvantage is that the screen or blur caused by packet loss (lack of key frame decoding reference), which requires the protocol customization party to control packet loss based on UDP.
Transmission network optimization
1. we have introduced real-time streaming transmission network, which is a new network transmission network with self-organization nodes, which is suitable for transmission optimization under the network conditions of domestic multi operators and the demand of many overseas live broadcast.
2. cache the current GOP in the server node, and optimize the video opening time with the player.
3. the server records the second frame rate and code rate of each video stream flowing to each link in real time, and monitors the fluctuation of the code rate and frame rate in real time.
4. the client (push and play) obtains the current optimal node (once in 5 seconds) by querying the server in quasi real time, and the quasi real-time offline current fault nodes and lines.
Push flow and play optimization
1. investigate the network buffer size of the sender system, and the system may cache the data before sending the data. The tuning of this parameter also needs to find a balance point.
2. the buffer control at the playback side also has a great influence on the video opening delay. If only the first delay is optimized, it can be decoded immediately when the data arrives in the case of 0 cache. But if in order to eliminate the impact of network jitter in the weak network environment, it is necessary to set up a certain cache. Therefore, it is necessary to find a balance between the stability of live broadcast and the optimization of the first delay, and adjust the value of optimizing buffer size.
3. the dynamic buffer policy of the playback side is an improved version of the cache control of the playback end above. If only the 0 cache and fixed size cache are selected to find a balance, a fixed size cache will be selected finally. This is unfair to the billion level mobile Internet end users. Their different network conditions decide that the fixed size buffer is not completely appropriate. Therefore, we can consider a dynamic buffer policy, which uses very small or even 0 cache policy when the player is on. The cache size of the next time slice is determined by the time consuming to download the first video, and at the same time, the current network is monitored in real time during the playback process, and the cache size during the playback process is adjusted in real time. This can achieve very low opening time, and can eliminate the impact of network jitter as much as possible.
4. dynamic rate playback strategy. In addition to the dynamic adjustment of buffer size strategy, we can also use the real-time monitoring network information to dynamically adjust the code rate in the playback process, reduce the rate of playing and reduce delay in the case of insufficient network bandwidth.
Above, it is a part of the techniques of low delay optimization. In fact, we do not focus on "low latency" when we optimize low latency, but try to achieve low latency when other conditions do not affect user experience. Therefore, its content involves more and more topics.
|
Enter email to get a surprise
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org ->Afrikaans
sq.fmuser.org ->Albanian
ar.fmuser.org ->Arabic
hy.fmuser.org ->Armenian
az.fmuser.org ->Azerbaijani
eu.fmuser.org ->Basque
be.fmuser.org ->Belarusian
bg.fmuser.org ->Bulgarian
ca.fmuser.org ->Catalan
zh-CN.fmuser.org ->Chinese (Simplified)
zh-TW.fmuser.org ->Chinese (Traditional)
hr.fmuser.org ->Croatian
cs.fmuser.org ->Czech
da.fmuser.org ->Danish
nl.fmuser.org ->Dutch
et.fmuser.org ->Estonian
tl.fmuser.org ->Filipino
fi.fmuser.org ->Finnish
fr.fmuser.org ->French
gl.fmuser.org ->Galician
ka.fmuser.org ->Georgian
de.fmuser.org ->German
el.fmuser.org ->Greek
ht.fmuser.org ->Haitian Creole
iw.fmuser.org ->Hebrew
hi.fmuser.org ->Hindi
hu.fmuser.org ->Hungarian
is.fmuser.org ->Icelandic
id.fmuser.org ->Indonesian
ga.fmuser.org ->Irish
it.fmuser.org ->Italian
ja.fmuser.org ->Japanese
ko.fmuser.org ->Korean
lv.fmuser.org ->Latvian
lt.fmuser.org ->Lithuanian
mk.fmuser.org ->Macedonian
ms.fmuser.org ->Malay
mt.fmuser.org ->Maltese
no.fmuser.org ->Norwegian
fa.fmuser.org ->Persian
pl.fmuser.org ->Polish
pt.fmuser.org ->Portuguese
ro.fmuser.org ->Romanian
ru.fmuser.org ->Russian
sr.fmuser.org ->Serbian
sk.fmuser.org ->Slovak
sl.fmuser.org ->Slovenian
es.fmuser.org ->Spanish
sw.fmuser.org ->Swahili
sv.fmuser.org ->Swedish
th.fmuser.org ->Thai
tr.fmuser.org ->Turkish
uk.fmuser.org ->Ukrainian
ur.fmuser.org ->Urdu
vi.fmuser.org ->Vietnamese
cy.fmuser.org ->Welsh
yi.fmuser.org ->Yiddish
FMUSER Wirless Transmit Video And Audio More Easier !
Contact
Address:
No.305 Room HuiLan Building No.273 Huanpu Road Guangzhou China 510620
Categories
Newsletter