FMUSER Wirless Transmit Video and Audio Máis fácil!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikaans
sq.fmuser.org -> Albanés
ar.fmuser.org -> árabe
hy.fmuser.org -> Armenian
az.fmuser.org -> azerí
eu.fmuser.org -> éuscaro
be.fmuser.org -> bielorruso
bg.fmuser.org -> Búlgaro
ca.fmuser.org -> catalán
zh-CN.fmuser.org -> chinés (simplificado)
zh-TW.fmuser.org -> Chinés (tradicional)
hr.fmuser.org -> croata
cs.fmuser.org -> Checo
da.fmuser.org -> danés
nl.fmuser.org -> Holandés
et.fmuser.org -> estoniano
tl.fmuser.org -> filipino
fi.fmuser.org -> finés
fr.fmuser.org -> Francés
gl.fmuser.org -> galego
ka.fmuser.org -> xeorxiano
de.fmuser.org -> alemán
el.fmuser.org -> Grego
ht.fmuser.org -> crioulo 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 -> xaponés
ko.fmuser.org -> coreano
lv.fmuser.org -> letón
lt.fmuser.org -> Lituano
mk.fmuser.org -> macedonio
ms.fmuser.org -> malaio
mt.fmuser.org -> maltés
no.fmuser.org -> Norwegian
fa.fmuser.org -> persa
pl.fmuser.org -> polaco
pt.fmuser.org -> Portugués
ro.fmuser.org -> Romanés
ru.fmuser.org -> ruso
sr.fmuser.org -> serbio
sk.fmuser.org -> Eslovaco
sl.fmuser.org -> Esloveno
es.fmuser.org -> castelán
sw.fmuser.org -> Suahili
sv.fmuser.org -> Sueco
th.fmuser.org -> Thai
tr.fmuser.org -> turco
uk.fmuser.org -> ucraíno
ur.fmuser.org -> urdú
vi.fmuser.org -> Vietnamita
cy.fmuser.org -> galés
yi.fmuser.org -> Yiddish
1 、 Desenvolvemento de transmisión en directo de vídeo móbil
Pódese ver que, desde o PC ata o móbil, hai máis e máis aplicacións de transmisión en directo en liña e a transmisión móbil entrou nunha etapa de explosión sen precedentes. Non obstante, para a maioría das transmisións en directo por móbiles, aínda son implementadas principalmente por clientes nativos, pero HTML5 tamén xoga un papel insubstituíble no extremo da transmisión en directo para móbiles, como HTML5. Coas vantaxes de transmisión rápida e fácil de liberar, HTML5 tamén pode reproducirse en directo. vídeo cando é o máis importante.
A transmisión en directo completa pódese dividir nas seguintes:
(1) Terminal de gravación de vídeo: en xeral, é un dispositivo de entrada de audio e vídeo da computadora ou unha cámara ou micrófono no terminal móbil. Actualmente, o vídeo do teléfono móbil é a parte principal.
(2) Reprodutor de vídeo: pode ser un reprodutor na computadora, un reprodutor nativo no lado do teléfono móbil e unha etiqueta de vídeo de HTML5. Na actualidade, segue sendo o principal xogador nativo do teléfono móbil.
(3) Servidor de vídeo: xeralmente, é un servidor nginx, que se usa para aceptar a fonte de vídeo proporcionada polo lado da gravación de vídeo e proporcionar o servizo de transmisión ao final da reprodución de vídeo.
2, vídeo de gravación HTML5:
Para a gravación de vídeo HTML5, a potente webrtc (comunicación en tempo real WEB) é unha tecnoloxía que admite conversas de voz ou vídeo en tempo real no navegador web. A desvantaxe é que só admite mellor en PC cromo e o lado móbil non é o ideal.
O proceso básico de gravación de vídeo con webrtc é:
Chama a window.navigator.webkitGetUserMedia (obtén os datos de vídeo da cámara do PC do usuario).
Converte os datos adquiridos en fluxo de vídeo a window.webkitRTCPeerConnection (un formato de datos de fluxo de vídeo).
Usando o socket web para transferir datos de transmisión de vídeo ao servidor
Debido a que hai que poñer moitos métodos co navegador, moitos navegadores móbiles non admiten webrtc, polo que a gravación de vídeo real aínda o implementa o cliente (IOS, Android) e o efecto será mellor.
3 、 HTML5 emitiu vídeo en directo:
Para a reprodución de vídeo, pode usar o protocolo HLS (transmisión en directo HTTP) para reproducir transmisión en directo. IOS e Android soportan este protocolo de forma natural. É sinxelo configurar e usar etiquetas de vídeo directamente.
Aquí tes un código sinxelo para reproducir vídeo en directo usando o vídeo:
(1) que é o protocolo HLS:
En resumo, todo o fluxo divídese en pequenos ficheiros, que se descargan en base a HTTP. Só se descargan algúns á vez. O ficheiro mencionado anteriormente de M3u8 introducido en vídeo en directo en HTML5 está baseado no protocolo HLS, que almacena os metadatos do fluxo de vídeo.
Cada ficheiro M3u8 corresponde a varios ficheiros TS, que son os datos para o almacenamento de vídeo real. O ficheiro m3u8 só almacena a información de configuración e as rutas relacionadas dalgúns ficheiros TS. Cando se reproduce o vídeo, o ficheiro.M3u8 cambia de forma dinámica. A etiqueta de vídeo analizará o ficheiro e atopará o ficheiro TS correspondente para reproducilo. Así, para acelerar a velocidade, utilizarase o ficheiro M3u8 para analizar o ficheiro e atopar o ficheiro TS correspondente para a súa reprodución. Polo tanto, para acelerar a velocidade, utilizarase o ficheiro.M3u8 para analizar o ficheiro e atopar o ficheiro TS correspondente para a súa reprodución. Polo tanto, para acelerar, colócao no servidor web e no ficheiro TS da CDN.
O ficheiro.M3u8 é realmente un ficheiro M3U codificado con UTF-8. Este ficheiro non se pode reproducir por si só, senón só o ficheiro de texto que contén a información de reprodución.
(2) Proceso de solicitude HLS:
O URL da solicitude HTTP m3u8.
O servidor devolve unha lista de reprodución de m3u8, que se actualiza en tempo real. Xeralmente, a URL de 5 segmentos de datos aparece á vez.
O cliente analiza a lista de reprodución de m3u8 e, a continuación, solicita a URL de cada segmento para obter o fluxo de datos TS.
(3) Atraso de transmisión en directo de HLS:
Sabemos que o protocolo HLS divide a transmisión en directo nun pequeno segmento de vídeo para descargar e reproducir. Supoña que a lista contén 5 ficheiros TS, cada ficheiro TS contén 5 segundos de contido de vídeo, entón o atraso global é de 25 segundos. Porque cando ves estes vídeos, o anfitrión gravou o vídeo e o cargou, polo que a demora é causada por isto. Por suposto, a lonxitude da lista e o tamaño dun único ficheiro TS pódense acurtar para reducir o atraso. No extremo, a lonxitude da lista pódese reducir a 1 e a duración do TS é 1s. Non obstante, isto aumentará o número de solicitudes e aumentará a presión do servidor. Cando a velocidade da rede sexa lenta, xerarase máis buffer. Polo tanto, o tempo de TS recomendado por Apple dura oficialmente durante 10 s, polo que cambiará moito o atraso de 30 s. Así, o servidor recibe o fluxo, transcodifica, garda, corta o bloque e despois distribúe ao cliente. Aquí está a causa fundamental do atraso.
Para máis preguntas sobre atrasos, consulte o enderezo oficial de Apple:
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/FrequentlyAskedQuestions/FrequentlyAskedQuestions.html
Non obstante, o vídeo en directo HTML5 ten algunhas vantaxes insubstituíbles:
① Boa comunicación, fácil de compartir e outras operacións.
② Pódese liberar dinámicamente, o que favorece a iteración en tempo real dos requirimentos do produto e o lanzamento rápido.
③ Sen instalar a aplicación, abra o navegador directamente.
4 OS Sistema operativo de recollida (gravación) de datos de audio e vídeo IOS
Para a adquisición e gravación de audio e vídeo, primeiro acláranse os seguintes conceptos:
(1) Codificación de vídeo: a codificación de vídeo refírese á forma en que un ficheiro nun formato de vídeo convértese noutro ficheiro en formato de vídeo a través dunha tecnoloxía de compresión específica. O vídeo gravado polo iPhone que usamos debe codificarse, cargarse e descodificarse antes de poder reproducilo no reprodutor do lado do usuario.
(2) Estándar de códec: os estándares de códec máis importantes na transmisión de fluxo de vídeo inclúen H.261, H.263 e H.264 da ITU, no que o protocolo HLS admite a codificación en formato H.264.
(3) Codificación de audio: similar á codificación de vídeo, o fluxo de audio orixinal está codificado, cargado, descodificado segundo certos estándares e reproducido no reprodutor. Por suposto, o audio tamén ten moitos estándares de codificación, como código PCM, código wma, código AAC, etc. o método de codificación de audio admitido polo noso protocolo HLS é o código AAC.
A adquisición de datos de vídeo e audio divídese principalmente nos seguintes pasos:
(1) a adquisición de datos de vídeo e audio usando a cámara en IOS
(2) En iOS, o fluxo de datos de audio e vídeo orixinal pódese recoller mediante avcapturesession e avcapturedevice.
(3) O vídeo está codificado con h264 e o audio está codificado AAC. En iOS, xa hai bibliotecas de codificación empaquetadas para realizar a codificación de audio e vídeo.
(4) Os datos de audio e vídeo despois da codificación son ensamblados e selados;
(5) Establece a conexión RTMP e empúxaa cara ao servidor.
O seguinte é o proceso específico de recompilación de datos de audio e vídeo:
(1) sobre RTMP:
O protocolo de mensaxería en tempo real (RTMP) é un conxunto de protocolo de vídeo en directo desenvolvido por Macromedia e agora pertence a Adobe. Como ocorre con HLS, pode usarse para a transmisión de vídeo. A diferenza é que RTMP non pode reproducirse no navegador iOS baseado en flash, pero é mellor en tempo real que HLS. Polo tanto, este protocolo úsase xeralmente para subir fluxo de vídeo, é dicir, o fluxo de vídeo é enviado ao servidor.
(2) fluxo de empuxe
O chamado streaming refírese ao envío de datos de audio e vídeo que codificamos ao servidor de fluxo de vídeo. No código IOS, a transmisión RTMP úsase normalmente. Librtmp IOS, unha biblioteca de terceiros, pode usarse para transmitir. Librtmp encapsula algunhas API principais para que os usuarios poidan chamar. Por exemplo, empuxe a API e así por diante, configure o enderezo do servidor e logo empurra o fluxo de vídeo de transcodificación ao servidor.
Entón, como construír un servidor de transmisión?
Construír un servidor de transmisión simple. Dado que o fluxo de vídeo que cargamos está baseado no protocolo RTMP, o servidor debe admitir RTMP. Pode tomar os seguintes pasos:
(1) Instale un servidor nginx.
(2) Está instalada a extensión RTMP de nginx. Configure o ficheiro conf para nginx
(3) Reinicie nginx e escriba o enderezo de transmisión de RTMP como rtmp: // ip: 1935 / hls / mystream, onde HLS_ Path representa a dirección dos ficheiros xerados.M3u8 e TS, HLS_ Fragment representa a lonxitude da porción e mystream representa unha instancia. O nome do ficheiro a xerar pódese establecer por si só.
5 interaction Interacción do usuario na transmisión en directo:
Para a interacción do usuario na transmisión en directo, pódese dividir en:
dando agasallos.
Para comentar ou xogar
Para a entrega de agasallos, DOM e CSS3 pódense usar para realizar a lóxica do envío de agasallos e algunha animación especial de agasallo en HTML5. As dificultades técnicas non son moi grandes.
Para un bombardeo, para ser un pouco máis complexo, pode que teña que prestar atención ao seguinte:
O rendemento do proxectil en tempo real pode ser enviado e recibido en tempo real por webscock e renderizado.
Para os navegadores que non admiten o portátil web, só poden degradarse a un longo tempo de sondeo ou ao envío de solicitudes por temporizador frontal para obter ventás emerxentes en tempo real.
Detección de animacións e colisións (é dicir, sen superposición), etc. na representación
|
Introduce o correo electrónico para obter unha sorpresa
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikaans
sq.fmuser.org -> Albanés
ar.fmuser.org -> árabe
hy.fmuser.org -> Armenian
az.fmuser.org -> azerí
eu.fmuser.org -> éuscaro
be.fmuser.org -> bielorruso
bg.fmuser.org -> Búlgaro
ca.fmuser.org -> catalán
zh-CN.fmuser.org -> chinés (simplificado)
zh-TW.fmuser.org -> Chinés (tradicional)
hr.fmuser.org -> croata
cs.fmuser.org -> Checo
da.fmuser.org -> danés
nl.fmuser.org -> Holandés
et.fmuser.org -> estoniano
tl.fmuser.org -> filipino
fi.fmuser.org -> finés
fr.fmuser.org -> Francés
gl.fmuser.org -> galego
ka.fmuser.org -> xeorxiano
de.fmuser.org -> alemán
el.fmuser.org -> Grego
ht.fmuser.org -> crioulo 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 -> xaponés
ko.fmuser.org -> coreano
lv.fmuser.org -> letón
lt.fmuser.org -> Lituano
mk.fmuser.org -> macedonio
ms.fmuser.org -> malaio
mt.fmuser.org -> maltés
no.fmuser.org -> Norwegian
fa.fmuser.org -> persa
pl.fmuser.org -> polaco
pt.fmuser.org -> Portugués
ro.fmuser.org -> Romanés
ru.fmuser.org -> ruso
sr.fmuser.org -> serbio
sk.fmuser.org -> Eslovaco
sl.fmuser.org -> Esloveno
es.fmuser.org -> castelán
sw.fmuser.org -> Suahili
sv.fmuser.org -> Sueco
th.fmuser.org -> Thai
tr.fmuser.org -> turco
uk.fmuser.org -> ucraíno
ur.fmuser.org -> urdú
vi.fmuser.org -> Vietnamita
cy.fmuser.org -> galés
yi.fmuser.org -> Yiddish
FMUSER Wirless Transmit Video and Audio Máis fácil!
contacto
dirección:
No.305 Sala HuiLan Building No.273 Huanpu Road Guangzhou China 510620
categorías
boletín informativo