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
Audio and video live broadcast system is a complex engineering system. To achieve very low delay live broadcast, it needs complex system engineering optimization and familiar with the various components. Here are some common tuning tips:
Coding optimization
1. Make sure codec turns on the setting of minimum delay. Codec generally has low latency optimization switch, especially for H.264. Many people may not know that H.264 decoder will cache a certain number of video frames before displaying. For video with QCIF resolution (176 × 144), it will cache 16 frames, and for 720p video, it will cache 5 frames. For the first frame read, this is a big delay. If you don't use H.264 to encode and compress your video, make sure that you don't use B frames, it will also have a greater impact on the delay, because the decoding of B frames in the video depends on the video frames before and after, which will increase the delay.
2. The encoder usually has the delay caused by code control, which is also called initialization delay or the buffer size of VBV. It is regarded as the buffer between the encoder and decoder bitstream, which can be set as small as possible or reduce the delay without affecting the video quality.
3. If the first delay is only optimized, more key frames can be inserted between the video frames, so that the client can decode the video stream as soon as possible after receiving it. However, if we need to optimize the cumulative delay in the transmission process, we should use as few key frames as possible, that is, I-frames (GOP becomes larger). In the case of ensuring the same video quality, the more I-frames, the greater the bit rate, and the more network bandwidth required for transmission, which means that the cumulative delay may be greater. This optimization effect may not be obvious in the system with second delay, but it will be obvious in the system with 100 ms or even lower delay. At the same time, try to use acc-lc codec to encode audio. Although he-acc or he-acc 2 has high coding efficiency, it takes longer to encode, and the transmission delay caused by larger volume of audio has less impact on the transmission of video stream.
4. Do not use MJPEG video compression format, at least use MPEG4 video compression format without B frame (simple profile), and even better use H.264 baseline profile (x264 also has an "tune zerolatency" optimization switch). 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, reduce the values of "- probesize" and "- analyze duration", which are used for video frame information monitoring and monitoring time. The larger the two values are, the greater the impact on the encoding delay is. In the live scene, it is not even necessary to set the analyze duration parameter for the video stream.
6. Fixed rate coding CBR can eliminate the influence of network jitter to a certain extent. If variable rate coding VBR can be used, it can save some unnecessary network bandwidth and reduce certain delay. Therefore, it is suggested that VBR be used for coding as much as possible.
Transport protocol optimization
1. Try to use RTMP instead of HLS protocol based on HTTP for transmission between server nodes, which can reduce the overall transmission delay. This is mainly aimed at the end users using HLS to play.
2. If the end user uses RTMP to play, transcoding should be carried out at the receiving node close to the streaming end, so that the transmitted video stream is smaller than the original video stream.
3. If necessary, the customized UDP protocol can be used to replace the TCP protocol, and the packet loss retransmission under the weak network link can be eliminated, which can reduce the delay. Its main disadvantage is that the transmission and distribution of customized video stream based on UDP protocol is not universal enough, and CDN manufacturers support standard transmission protocol. Another disadvantage is that there may be splash or blur caused by packet loss (lack of key frame decoding reference), which requires the protocol customization party to do a good job in packet loss control on the basis of UDP.
Transmission network optimization
1. We have introduced the real-time streaming network, which is a new type of network transmission network with self-organized nodes. It is not only suitable for the transmission optimization of domestic multi operator network, but also suitable for the needs of many overseas live broadcast.
2. Cache the current GOP in the server node, and cooperate with the player to optimize the video opening time.
3. The server records the second level frame rate and code rate when each video stream flows to each link in real time, and monitors the fluctuation of the code rate and frame rate in real time.
4. The client (push stream and play) obtains the current optimal node in quasi real time by querying the server (once every 5 seconds), and the current fault node and line are offline in quasi real time.
Streaming and playback optimization
1. The system may cache data before sending data. The tuning of this parameter also needs to find a balance.
2. The buffer control of the player also has a great influence on the first delay of the video. If only the first delay is optimized, the data can be decoded immediately when it arrives in the case of 0 buffer. But in weak network environment, in order to eliminate the impact of network jitter, it is necessary to set a certain cache, so we need to find a balance between the stability of live broadcast and the optimization of the first open delay, and adjust the optimized buffer size.
3. Player dynamic buffer strategy, which is an improved version of the above player cache control. If we just choose between 0 cache and fixed size cache to find a balance, we will eventually choose a fixed size cache, which is not fair to 100 million mobile internet terminal users. Their different network conditions determine that the fixed size cache is not completely suitable. Therefore, we can consider a "dynamic buffer strategy". When the player is turned on, we use a very small or even zero buffer strategy. The buffer size of the next time slice is determined by the time consumed to download the first video. At the same time, the current network is monitored in real time during the playback process, and the buffer size is adjusted in real time during the playback process. In this way, the first opening time can be very low, and the influence of network jitter can be eliminated as far as possible.
4. Dynamic rate playing strategy. In addition to the strategy of dynamically adjusting the buffer size, we can also use the real-time monitoring network information to dynamically adjust the bit rate in the process of playing. In the case of insufficient network bandwidth, we can reduce the bit rate for playing and reduce the delay.
The above is part of the low latency optimization techniques. In fact, when we optimize low latency, we do not only focus on "low latency", but try to achieve low latency under the condition that other conditions do not affect the user experience. Therefore, its content involves a wide range of 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