FMUSER Transmitir vídeo e áudio sem fio mais 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 -> armênio
az.fmuser.org -> Azerbaijão
eu.fmuser.org -> Basco
be.fmuser.org -> bielorrusso
bg.fmuser.org -> búlgaro
ca.fmuser.org -> catalão
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 -> dinamarquês
nl.fmuser.org -> holandês
et.fmuser.org -> estoniano
tl.fmuser.org -> filipino
fi.fmuser.org -> finlandês
fr.fmuser.org -> francês
gl.fmuser.org -> galego
ka.fmuser.org -> georgiano
de.fmuser.org -> alemão
el.fmuser.org -> grego
ht.fmuser.org -> crioulo haitiano
iw.fmuser.org -> hebraico
hi.fmuser.org -> Hindi
hu.fmuser.org -> húngaro
is.fmuser.org -> islandês
id.fmuser.org -> indonésio
ga.fmuser.org -> irlandês
it.fmuser.org -> italiano
ja.fmuser.org -> Japonês
ko.fmuser.org -> coreano
lv.fmuser.org -> letão
lt.fmuser.org -> Lituano
mk.fmuser.org -> macedônio
ms.fmuser.org -> malaio
mt.fmuser.org -> maltês
no.fmuser.org - norueguês
fa.fmuser.org -> persa
pl.fmuser.org -> polonês
pt.fmuser.org -> português
ro.fmuser.org -> romeno
ru.fmuser.org -> russo
sr.fmuser.org -> Sérvio
sk.fmuser.org -> Eslovaco
sl.fmuser.org -> esloveno
es.fmuser.org -> espanhol
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 -> iídiche
Recentemente comecei a entrar em contato com o projeto de vídeo ao vivo, também resumi alguns conceitos, tecnologias e soluções relacionadas ao vídeo ao vivo.
Em primeiro lugar, compreenda o conceito de vídeo ao vivo. Vários protocolos de vídeo comuns são: RTMP, http-flv, HLS, RTP / RTCP.
Em seguida, explicaremos todo o processo de transmissão ao vivo e tecnologias relacionadas.
1 、 Protocolo de vídeo ao vivo
No campo da transmissão ao vivo, existem dois tipos de transmissão ao vivo: transmissão ao vivo interativa e transmissão ao vivo não interativa.
A transmissão ao vivo não interativa (como desfile ao vivo, NBA Live Broadcasting, transmissão ao vivo da Liga dos Campeões, etc.) não é altamente interativa, permitindo um atraso de 10 segundos ou mais. É caracterizado por relativamente poucas fontes e adequado para transcodificação multicanal (os usuários podem assisti-lo de acordo com as condições da rede).
As cenas típicas de transmissão ao vivo interativa incluem transmissão ao vivo de show, transmissão ao vivo de jogos, etc. Por causa dos altos requisitos para a interação entre o âncora e o público, essas transmissões ao vivo precisam ser atrasadas em 5S. As características da transmissão ao vivo interativa são: mais fontes, não adequadas para transcodificação multicanal, servidor intermediário apenas como uma função de trânsito.
A mídia de transmissão de conteúdo ao vivo é a rede, e os protocolos correspondentes são necessários para transmitir vídeo ou áudio na rede. No momento, os protocolos comuns adequados para cenas ao vivo são os seguintes.
1. Protocolo RTMP (não compatível com HTML 5, compatível com flash)
RTMP é um protocolo de mídia de streaming, que é o protocolo de patente da Adobe. Baseado em TCP, é muito popular na China.
Motivo popular: o suporte de software de código aberto e biblioteca de código aberto é estável e completo, e as soluções de streaming e streaming mais comumente usadas podem funcionar de maneira estável. Por exemplo: biblioteca de fluxo de push librtmp de código aberto, lado do serviço tem plug-in RTMP nginx, fluxo de pull tem biblioteca de reprodução ijkplayer.
2. Protocolo Http-flv (não compatível com HTML 5, compatível com flash)
Isso é para usar o protocolo HTTP para transmitir conteúdo de mídia. HTTP é mais simples e mais conhecido do que RTMP. O atraso do conteúdo também pode ser de 2 a 5 segundos e a velocidade de abertura é mais rápida, porque o próprio HTTP não tem interação de estado complexa. Portanto, do ponto de vista da latência, http-flv é melhor do que RTMP.
3. Protocolo HLS (suporte HTML, suporte Flash)
O streaming ao vivo de HTTP é um protocolo de transporte de mídia de streaming baseado em HTTP proposto pela apple. O HLS tem uma grande vantagem: o HTML5 pode ser aberto e reproduzido diretamente; isso significa que um link ao vivo pode ser compartilhado através do wechat e outros encaminhamentos, sem a necessidade de instalação de nenhum aplicativo independente, com um navegador, por isso é muito popular. Aplicativo social ao vivo, HLS é apenas necessário. O URL da transmissão ao vivo com base em HLS é um arquivo m3u8, que contém vários pequenos arquivos TS de vídeo recentes. O atraso desse modo de reprodução é relativamente alto (relacionado ao tamanho do arquivo TS) e pode atingir um atraso de 5 a 7 segundos na mesma rede da cidade.
4. Protocolo RTP / RTCP
O protocolo de transporte em tempo real é um protocolo da camada de transporte para fluxo de dados multimídia na Internet. O RTCP transmite a sinalização do controle interativo e o RTP transmite os dados reais da mídia.
RTP é amplamente utilizado em videovigilância, videoconferência e telefone IP, porque uma das experiências importantes de videoconferência e telefone IP é um forte conteúdo em tempo real.
Comparado com os três protocolos acima, uma diferença importante entre o RTP e eles é que o protocolo UDP é usado para transmitir dados por padrão, enquanto o RTMP e o HTTP são baseados no protocolo TCP.
Use a análise de cenário: a cena do fluxo de áudio e vídeo em tempo real não precisa de garantia confiável, portanto, não há necessidade de um mecanismo de retransmissão. Não é importante ver a imagem e o som em tempo real, perder algum conteúdo quando a rede tremer, desfocar a imagem e a tela inicial. Para retransmitir, o TCP causará atraso e assincronia. Se uma determinada seção do conteúdo chegar após um segundo devido à retransmissão, toda a conversa será atrasada em um segundo. Com o jitter da rede, o atraso aumentará para dois ou três segundos. Se o cliente não controlar a reprodução, a experiência de transmissão direta será seriamente afetada. Como otimizar, será explicado no artigo a seguir.
Conclusão: na seleção do protocolo de transmissão ao vivo, se RTMP ou http-flv for selecionado, significa que há um atraso de conteúdo de 2 a 5 segundos, mas no que diz respeito ao atraso de abertura, http-flv é melhor que RTMP . O HLS tem um atraso de conteúdo de 5 a 7 segundos. A escolha de RTP para transmissão ao vivo pode atrasar a transmissão ao vivo em 1 segundo. No entanto, até onde sabemos, os principais fabricantes de CDN não suportam transmissão ao vivo baseada em RTP, então o mainstream doméstico atual é RTMP ou http-flv.
2 、 Processo de transmissão ao vivo de vídeo
O processo técnico relacionado ao vídeo ao vivo é: aquisição de stream de vídeo em tempo real --- codificação de stream de vídeo --- transmissão de stream de vídeo --- decodificação de stream de vídeo --- reprodução de vídeo.
1. A ideia de captura de vídeo em tempo real
a) Ao definir setpreviewcallback na visualização de captura da câmera do Android, a interface onpreviewframe é realizada para capturar os dados de cada stream de vídeo em tempo real.
b) Por meio do Android mediarecorder, vincule localsocket na função setoutputfile.
c) Modo de servidor de streaming de mídia, usando ffmpeg ou getstreamer para obter o vídeo da câmera.
2. A realização da codificação de compressão de vídeo
a) Sem codificação, o quadro de vídeo yuv420sp original é transmitido diretamente pelo soquete.
b) O JEPG compacta o quadro de vídeo yuv420sp original em H.264 e o transmite.
c) H.264 / avc. O quadro de vídeo original do yuv420sp é compactado em H.264 e, em seguida, transmitido. Codificadores de código aberto comuns baseados em H264 incluem JM, x264, t264, hdot264, etc.
d). MPEG4. Comprima o quadro de vídeo original yuv420sp em MPEG4 e, em seguida, transmita
3. A ideia de transmissão de vídeo
uma) . transmissão de soquete
b). Transporte HTTP
c). Transmissão RTP / RTSP
d). modo de servidor de streaming de mídia, como live555, etc
4. A realização da decodificação de vídeo
uma) . decodificador correspondente à codificação
5. A ideia de reproduzir um vídeo
uma) . através da visualização de vídeo do Android
b). via mediaplay Android
c). colar a imagem do quadro diretamente na tela
|
Digite o e-mail para obter uma surpresa
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 -> armênio
az.fmuser.org -> Azerbaijão
eu.fmuser.org -> Basco
be.fmuser.org -> bielorrusso
bg.fmuser.org -> búlgaro
ca.fmuser.org -> catalão
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 -> dinamarquês
nl.fmuser.org -> holandês
et.fmuser.org -> estoniano
tl.fmuser.org -> filipino
fi.fmuser.org -> finlandês
fr.fmuser.org -> francês
gl.fmuser.org -> galego
ka.fmuser.org -> georgiano
de.fmuser.org -> alemão
el.fmuser.org -> grego
ht.fmuser.org -> crioulo haitiano
iw.fmuser.org -> hebraico
hi.fmuser.org -> Hindi
hu.fmuser.org -> húngaro
is.fmuser.org -> islandês
id.fmuser.org -> indonésio
ga.fmuser.org -> irlandês
it.fmuser.org -> italiano
ja.fmuser.org -> Japonês
ko.fmuser.org -> coreano
lv.fmuser.org -> letão
lt.fmuser.org -> Lituano
mk.fmuser.org -> macedônio
ms.fmuser.org -> malaio
mt.fmuser.org -> maltês
no.fmuser.org - norueguês
fa.fmuser.org -> persa
pl.fmuser.org -> polonês
pt.fmuser.org -> português
ro.fmuser.org -> romeno
ru.fmuser.org -> russo
sr.fmuser.org -> Sérvio
sk.fmuser.org -> Eslovaco
sl.fmuser.org -> esloveno
es.fmuser.org -> espanhol
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 -> iídiche
FMUSER Transmitir vídeo e áudio sem fio mais fácil!
Contato
Endereço:
No.305 Sala HuiLan Edifício No.273 Huanpu Road Guangzhou China 510620
Categorias
Newsletter