FMUSER ¡Transmite video y audio sin cables más fácilmente!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikáans
sq.fmuser.org -> albanés
ar.fmuser.org -> árabe
hy.fmuser.org -> Armenio
az.fmuser.org -> azerbaiyano
eu.fmuser.org -> Vasco
be.fmuser.org -> bielorruso
bg.fmuser.org -> Bulgaria
ca.fmuser.org -> catalán
zh-CN.fmuser.org -> chino (simplificado)
zh-TW.fmuser.org -> Chino (tradicional)
hr.fmuser.org -> croata
cs.fmuser.org -> checo
da.fmuser.org -> danés
nl.fmuser.org -> Holandés
et.fmuser.org -> estonio
tl.fmuser.org -> filipino
fi.fmuser.org -> finlandés
fr.fmuser.org -> Francés
gl.fmuser.org -> gallego
ka.fmuser.org -> georgiano
de.fmuser.org -> alemán
el.fmuser.org -> Griego
ht.fmuser.org -> criollo haitiano
iw.fmuser.org -> hebreo
hi.fmuser.org -> Hindi
hu.fmuser.org -> Hungarian
is.fmuser.org -> islandés
id.fmuser.org -> indonesio
ga.fmuser.org -> irlandés
it.fmuser.org -> Italiano
ja.fmuser.org -> japonés
ko.fmuser.org -> coreano
lv.fmuser.org -> letón
lt.fmuser.org -> Lituania
mk.fmuser.org -> macedonio
ms.fmuser.org -> malayo
mt.fmuser.org -> maltés
no.fmuser.org -> Noruega
fa.fmuser.org -> persa
pl.fmuser.org -> polaco
pt.fmuser.org -> portugués
ro.fmuser.org -> Rumano
ru.fmuser.org -> ruso
sr.fmuser.org -> serbio
sk.fmuser.org -> eslovaco
sl.fmuser.org -> Eslovenia
es.fmuser.org -> español
sw.fmuser.org -> Swahili
sv.fmuser.org -> sueco
th.fmuser.org -> Tailandés
tr.fmuser.org -> turco
uk.fmuser.org -> ucraniano
ur.fmuser.org -> Urdu
vi.fmuser.org -> Vietnamita
cy.fmuser.org -> galés
yi.fmuser.org -> Yiddish
Compartimos cómo optimizar la experiencia de transmisión en vivo en muchas ocasiones en línea y fuera de línea, y explicamos en detalle las razones de la baja latencia y el tartamudeo de cada parte y los principios de optimización correspondientes. De hecho, el sistema de transmisión en vivo de audio y video es un sistema de ingeniería complejo. Para lograr una transmisión en vivo de muy baja latencia, se requiere una optimización de ingeniería de sistema compleja y un conocimiento muy familiar de varios componentes. Aquí compartimos algunas técnicas de ajuste simples y de uso común.
Optimización de codificación
1. Asegúrese de que Codec esté habilitado con la configuración de latencia más baja. El códec generalmente tiene conmutadores optimizados de baja latencia, especialmente para H.264. Es posible que muchas personas no sepan que el decodificador H.264 normalmente almacena en caché un determinado cuadro de video antes de mostrarlo. Para video con resolución QCIF (176 × 144), generalmente almacena en caché 16 fotogramas, y para video 720P, almacena en caché 5 fotogramas. . Para la lectura del primer fotograma, este es un gran retraso. Si su video no está codificado y comprimido usando H.264, asegúrese de que no se use el marco B. También tendrá un mayor impacto en el retraso, porque la decodificación del cuadro B en el video depende de los cuadros de video anteriores y siguientes, lo que aumentará el retraso.
2. Los codificadores generalmente tienen un retraso causado por el control del código, que generalmente se denomina retraso de inicialización o tamaño del búfer del comprobador de búfer de video VBV, que se considera el búfer entre el codificador y el flujo de bits del decodificador, sin afectar la calidad del video. . Puede configurarlo lo más pequeño posible para reducir el retraso.
3. Si solo optimiza el primer retardo de apertura, puede insertar más fotogramas clave entre fotogramas de video, para que el cliente pueda decodificarlo lo antes posible después de recibir el flujo de video. Sin embargo, si necesita optimizar el retardo acumulativo durante el proceso de transmisión, utilice la menor cantidad posible de fotogramas clave, es decir, I fotogramas (el GOP aumenta). Con la condición de garantizar la misma calidad de video, cuantos más fotogramas I, mayor será la tasa de bits y la transmisión requerida. Cuanto mayor sea el ancho de banda de la red, significa que el retardo acumulativo puede ser mayor. Este efecto de optimización puede no ser obvio en un sistema con un retardo de segundo nivel, pero será muy obvio en un sistema con un retardo de 100 ms o menos. Al mismo tiempo, intente utilizar el códec AAC-LC para codificar audio. Aunque HE-AAC o HE-AAC V2 tienen una alta eficiencia de codificación, la codificación lleva más tiempo y el retraso de transmisión causado por la producción de un volumen de audio más grande afectará la transmisión de secuencias de video. Dijo que el impacto es menor.
4. No use el formato de compresión de video de video MJPEG, al menos use el formato de compresión de video MPEG4 sin marco B (perfil simple), o incluso mejor use el perfil de línea base H.264 (X264 también tiene un interruptor de optimización de "-tune zerolatency" ). Una optimización tan simple puede reducir la demora porque puede codificar video de velocidad de cuadros completa a una velocidad de bits más baja.
5. Si se utiliza FFmpeg, reduzca los valores de los parámetros "-probesize" y "-analyze duration". Estos dos valores se utilizan para el seguimiento de la información del cuadro de vídeo y la duración del seguimiento. Cuanto mayores sean los dos valores, el impacto en el retardo de codificación. Cuanto mayor sea el valor, el parámetro de duración analizado ni siquiera necesita ser configurado para el flujo de video en la escena de transmisión en vivo.
6. La codificación de velocidad fija CBR puede eliminar la influencia de la fluctuación de la red hasta cierto punto. Si puede utilizar VBR de codificación de velocidad variable, puede ahorrar algo de ancho de banda de red innecesario y reducir ciertos retrasos. Por lo tanto, se recomienda utilizar VBR para codificar tanto como sea posible.
Optimización del protocolo de transmisión
1. Intente utilizar RTMP en lugar del protocolo HLS basado en HTTP para la transmisión entre nodos de servidor y nodos, a fin de reducir la demora general de transmisión. Esto es principalmente para el caso en el que los usuarios finales utilizan HLS para la reproducción.
2. Si el usuario final usa RTMP para reproducir, intente transcodificar en el nodo receptor cerca del extremo de inserción, de modo que el flujo de video transmitido sea más pequeño que el flujo de video original.
3. Si es necesario, puede utilizar un protocolo UDP personalizado para reemplazar el protocolo TCP, eliminando la necesidad de retransmisiones bajo enlaces de red débiles para reducir la demora. Su principal desventaja es que la transmisión y distribución del flujo de video del protocolo personalizado basado en el protocolo UDP no es lo suficientemente universal, y el fabricante de CDN admite el protocolo de transmisión estándar. Otra deficiencia es que puede haber borrosidad o borrosidad causada por la pérdida de paquetes (falta de referencia de decodificación de fotogramas clave), lo que requiere que la parte de personalización del protocolo realice el control de pérdida de paquetes sobre la base de UDP.
Optimización de la red de transmisión
1. Hemos introducido la red de transmisión en tiempo real. Es un nuevo tipo de red de transmisión en malla autoorganizada por nodos, que es adecuada para la optimización de la transmisión en condiciones de red de múltiples operadores nacionales, y también es adecuada para muchas necesidades de transmisión en vivo en el extranjero.
2. Guarde en caché el GOP actual en el nodo del servidor y coopere con el jugador para optimizar el tiempo de apertura del video.
3. El servidor registra la velocidad de cuadros de segundo nivel y la velocidad de bits de cada flujo de video que fluye a cada enlace en tiempo real, y monitorea la fluctuación de la velocidad de bits y la velocidad de cuadros en tiempo real.
4. El cliente (transmisión y reproducción) obtiene el nodo óptimo actual en tiempo cuasi real consultando al servidor (cada 5 segundos) y desconectando el nodo y la línea defectuosos actuales en tiempo cuasi real.
Streaming, optimización de reproducción
1. Verifique el tamaño del búfer de red que viene con el sistema de envío. El sistema puede almacenar los datos en búfer antes de enviarlos. La sintonización de este parámetro también necesita encontrar un equilibrio.
2. El control de la caché en el lado de la reproducción también tiene un mayor impacto en el primer retraso de apertura del video. Si solo se optimiza el primer retardo de apertura, se puede decodificar inmediatamente cuando llegan los datos en el caso de la caché 0. Sin embargo, en un entorno de red débil, para eliminar el impacto de la fluctuación de la red, también es necesario configurar una determinada caché. Por lo tanto, es necesario encontrar un equilibrio entre la estabilidad de la transmisión en vivo y la optimización del primer retardo de apertura, y ajustar el valor del tamaño de búfer optimizado.
3. La estrategia de búfer dinámico del reproductor, que es una versión mejorada del control de caché del reproductor anterior. Si simplemente elige entre 0 caché y caché de tamaño fijo para encontrar un equilibrio, eventualmente elegirá un caché de tamaño fijo. Esto es injusto para cientos de millones de usuarios de terminales de Internet móvil. Sus diferentes condiciones de red determinan esto. Un caché de tamaño fijo no es del todo adecuado. Por lo tanto, podemos considerar una "estrategia de búfer dinámico" que utiliza una estrategia de caché muy pequeña o incluso cero cuando el reproductor está encendido, y determina el tamaño de la caché del siguiente segmento de tiempo para el tiempo que lleva descargar el primer video, mientras que reproducción Durante el proceso, la red actual se monitorea en tiempo real y el tamaño del búfer durante la reproducción se ajusta en tiempo real. De esta manera, se puede lograr un tiempo de primera apertura extremadamente bajo y se puede eliminar en la medida de lo posible la influencia causada por la fluctuación de la red.
4. Estrategia de reproducción de velocidad de bits dinámica. Además de la estrategia de ajustar dinámicamente el tamaño del búfer, la supervisión en tiempo real de la información de la red también se puede utilizar para ajustar dinámicamente la tasa de bits durante el proceso de reproducción, reduciendo la tasa de bits para la reproducción cuando el ancho de banda de la red es insuficiente y reduciendo demora.
Las anteriores son algunas de nuestras habilidades en optimización de baja latencia. De hecho, cuando optimizamos la latencia baja, no solo nos centramos en la "latencia baja", sino que intentamos lograr una latencia baja al tiempo que nos aseguramos de que otras condiciones no afecten la experiencia del usuario. Por tanto, su contenido involucra cada vez más temas. La optimización del video en vivo también incluye todos los aspectos, y aquí solo se comparten las partes que hemos practicado. Con la acumulación de práctica, compartiremos más técnicas de optimización para video en vivo e incluso bajo demanda en línea y fuera de línea.
|
Ingrese el correo electrónico para recibir una sorpresa
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikáans
sq.fmuser.org -> albanés
ar.fmuser.org -> árabe
hy.fmuser.org -> Armenio
az.fmuser.org -> azerbaiyano
eu.fmuser.org -> Vasco
be.fmuser.org -> bielorruso
bg.fmuser.org -> Bulgaria
ca.fmuser.org -> catalán
zh-CN.fmuser.org -> chino (simplificado)
zh-TW.fmuser.org -> Chino (tradicional)
hr.fmuser.org -> croata
cs.fmuser.org -> checo
da.fmuser.org -> danés
nl.fmuser.org -> Holandés
et.fmuser.org -> estonio
tl.fmuser.org -> filipino
fi.fmuser.org -> finlandés
fr.fmuser.org -> Francés
gl.fmuser.org -> gallego
ka.fmuser.org -> georgiano
de.fmuser.org -> alemán
el.fmuser.org -> Griego
ht.fmuser.org -> criollo haitiano
iw.fmuser.org -> hebreo
hi.fmuser.org -> Hindi
hu.fmuser.org -> Hungarian
is.fmuser.org -> islandés
id.fmuser.org -> indonesio
ga.fmuser.org -> irlandés
it.fmuser.org -> Italiano
ja.fmuser.org -> japonés
ko.fmuser.org -> coreano
lv.fmuser.org -> letón
lt.fmuser.org -> Lituania
mk.fmuser.org -> macedonio
ms.fmuser.org -> malayo
mt.fmuser.org -> maltés
no.fmuser.org -> Noruega
fa.fmuser.org -> persa
pl.fmuser.org -> polaco
pt.fmuser.org -> portugués
ro.fmuser.org -> Rumano
ru.fmuser.org -> ruso
sr.fmuser.org -> serbio
sk.fmuser.org -> eslovaco
sl.fmuser.org -> Eslovenia
es.fmuser.org -> español
sw.fmuser.org -> Swahili
sv.fmuser.org -> sueco
th.fmuser.org -> Tailandés
tr.fmuser.org -> turco
uk.fmuser.org -> ucraniano
ur.fmuser.org -> Urdu
vi.fmuser.org -> Vietnamita
cy.fmuser.org -> galés
yi.fmuser.org -> Yiddish
FMUSER ¡Transmite video y audio sin cables más fácilmente!
Contacto
Dirección:
Habitación No.305 Edificio HuiLan No.273 Huanpu Road Guangzhou China 510620
Categorías
Newsletter