FMUSER Wirless transmet la vidéo et l'audio plus facilement!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albanais
ar.fmuser.org -> arabe
hy.fmuser.org -> Armenian
az.fmuser.org -> azerbaïdjanais
eu.fmuser.org -> basque
be.fmuser.org -> biélorusse
bg.fmuser.org -> Bulgare
ca.fmuser.org -> catalan
zh-CN.fmuser.org -> chinois (simplifié)
zh-TW.fmuser.org -> Chinois (traditionnel)
hr.fmuser.org -> croate
cs.fmuser.org -> tchèque
da.fmuser.org -> danois
nl.fmuser.org -> Néerlandais
et.fmuser.org -> estonien
tl.fmuser.org -> Philippin
fi.fmuser.org -> finnois
fr.fmuser.org -> Français
gl.fmuser.org -> Galicien
ka.fmuser.org -> géorgien
de.fmuser.org -> allemand
el.fmuser.org -> Grec
ht.fmuser.org -> Créole haïtien
iw.fmuser.org -> hébreu
hi.fmuser.org -> Hindi
hu.fmuser.org -> Hongrois
is.fmuser.org -> islandais
id.fmuser.org -> indonésien
ga.fmuser.org -> irlandais
it.fmuser.org -> Italien
ja.fmuser.org -> japonais
ko.fmuser.org -> coréen
lv.fmuser.org -> letton
lt.fmuser.org -> Lituanien
mk.fmuser.org -> macédonien
ms.fmuser.org -> malais
mt.fmuser.org -> maltais
no.fmuser.org -> Norwegian
fa.fmuser.org -> persan
pl.fmuser.org -> polonais
pt.fmuser.org -> portugais
ro.fmuser.org -> Roumain
ru.fmuser.org -> russe
sr.fmuser.org -> serbe
sk.fmuser.org -> slovaque
sl.fmuser.org -> Slovène
es.fmuser.org -> espagnol
sw.fmuser.org -> Swahili
sv.fmuser.org -> suédois
th.fmuser.org -> Thai
tr.fmuser.org -> turc
uk.fmuser.org -> ukrainien
ur.fmuser.org -> ourdou
vi.fmuser.org -> Vietnamienne
cy.fmuser.org -> Gallois
yi.fmuser.org -> Yiddish
J'ai récemment commencé à contacter le projet vidéo en direct, j'ai également résumé quelques concepts, technologies et solutions liés à la vidéo en direct.
Tout d'abord, comprenez le concept de vidéo en direct. Plusieurs protocoles vidéo courants sont: RTMP, http-flv, HLS, RTP / RTCP.
Ensuite, nous expliquerons tout le processus de diffusion en direct et les technologies associées.
1, protocole vidéo en direct
Dans le domaine de la diffusion en direct, il existe deux types de diffusion en direct: la diffusion en direct interactive et la diffusion en direct non interactive.
La diffusion en direct non interactive (telle que: défilé en direct, diffusion en direct de la NBA, diffusion en direct de la Ligue des champions, etc.) n'est pas très interactive, permettant un délai de 10 secondes ou plus. Il est caractérisé par relativement peu de sources et convient au transcodage multicanal (les utilisateurs peuvent le regarder en fonction des conditions du réseau).
Les scènes typiques de la diffusion interactive en direct comprennent la diffusion de programmes en direct, la diffusion de jeux en direct, etc. En raison des exigences élevées d'interaction entre l'ancre et le public, ces émissions en direct doivent être retardées dans les 5S. Les caractéristiques de la diffusion interactive en direct sont: plus de sources, ne convient pas au transcodage multicanal, serveur intermédiaire uniquement en tant que rôle de transit.
Le support de transmission de contenu en direct est le réseau et les protocoles correspondants sont nécessaires pour transmettre de la vidéo ou de l'audio sur le réseau. À l'heure actuelle, les protocoles courants adaptés aux scènes en direct sont les suivants.
1. Protocole RTMP (non pris en charge par HTML 5, pris en charge par flash)
RTMP est un protocole multimédia en continu, qui est le protocole de brevet d'Adobe. Basé sur TCP, il est très populaire en Chine.
Raison populaire: la prise en charge des logiciels open source et des bibliothèques open source est stable et complète, et les solutions de streaming et de streaming les plus couramment utilisées peuvent fondamentalement fonctionner de manière stable. Par exemple: bibliothèque de flux push librtmp open source, le côté service a le plug-in nginx RTMP, le flux pull a la bibliothèque de lecture ijkplayer.
2. Protocole Http-flv (non pris en charge par HTML 5, pris en charge par Flash)
Cela consiste à utiliser le protocole HTTP pour diffuser du contenu multimédia. HTTP est plus simple et mieux connu que RTMP. Le délai de contenu peut également être de 2 à 5 secondes et la vitesse d'ouverture est plus rapide, car HTTP lui-même n'a pas d'interaction d'état complexe. Donc, du point de vue de la latence, http-flv est meilleur que RTMP.
3. Protocole HLS (prise en charge HTML, prise en charge Flash)
La diffusion en direct HTTP est un protocole de transport multimédia en continu basé sur HTTP proposé par Apple. HLS a un très gros avantage: HTML5 peut être directement ouvert et lu; cela signifie qu'un lien en direct peut être partagé via wechat et autre transfert, sans avoir besoin d'installer une application indépendante, avec un navigateur, il est donc très populaire. Application sociale en direct, HLS est juste nécessaire. L'URL de diffusion en direct basée sur HLS est un fichier m3u8, qui contient plusieurs petits fichiers vidéo TS récents. Le délai de ce mode de lecture est relativement élevé (ce qui est lié à la taille du fichier TS), et il peut atteindre un délai de 5 à 7 secondes dans le même réseau urbain.
4. Protocole RTP / RTCP
Le protocole de transport en temps réel est un protocole de couche de transport pour le flux de données multimédia sur Internet. RTCP transmet la signalisation du contrôle interactif et RTP transmet les données multimédias réelles.
Le RTP est largement utilisé dans la vidéosurveillance, la vidéoconférence et le téléphone IP, car l'une des expériences importantes de la vidéoconférence et du téléphone IP est un contenu en temps réel puissant.
Par rapport aux trois protocoles ci-dessus, une différence importante entre RTP et eux est que le protocole UDP est utilisé pour transmettre des données par défaut, tandis que RTMP et HTTP sont basés sur le protocole TCP.
Utilisez l'analyse de scénario: la scène du flux audio et vidéo en temps réel n'a pas besoin de garantie fiable, il n'est donc pas nécessaire de disposer d'un mécanisme de retransmission. Il n'est pas important de voir l'image et le son en temps réel, de perdre du contenu lorsque le réseau vacille, de brouiller l'image et l'écran de démarrage. Afin de retransmettre, TCP provoquera un retard et une asynchronie. Si une certaine section de contenu arrive après une seconde en raison de la retransmission, alors toute la conversation sera retardée d'une seconde. Avec la gigue du réseau, le délai augmentera à deux ou trois secondes. Si le client ne gère pas la lecture, l'expérience de diffusion directe sera sérieusement affectée. Comment optimiser, sera expliqué dans l'article suivant.
Conclusion: dans la sélection du protocole de diffusion en direct, si RTMP ou http-flv est sélectionné, cela signifie qu'il y a un retard de contenu de 2-5 secondes, mais en ce qui concerne le délai d'ouverture, http-flv est meilleur que RTMP . HLS a un délai de contenu de 5 à 7 secondes. Le choix de RTP pour la diffusion en direct peut retarder la diffusion en direct d'une seconde. Cependant, pour autant que nous le sachions, les principaux fabricants de CDN ne prennent pas en charge la diffusion en direct basée sur RTP, de sorte que le courant dominant national actuel est RTMP ou http-flv.
2, processus de diffusion vidéo en direct
Le processus technique lié à la vidéo en direct est le suivant: acquisition de flux vidéo en temps réel --- codage de flux vidéo --- transmission de flux vidéo --- décodage de flux vidéo --- lecture vidéo.
1. L'idée de la capture vidéo en temps réel
a) En définissant setpreviewcallback dans l'aperçu de prise de vue de la caméra Android, l'interface onpreviewframe est réalisée pour capturer les données de chaque flux vidéo en temps réel.
b) Par le biais d'Android mediarecorder, liez localsocket dans la fonction setoutputfile.
c) Mode serveur multimédia en continu, en utilisant ffmpeg ou getstreamer pour obtenir la vidéo de la caméra.
2. La réalisation du codage de compression vidéo
a) Sans encodage, la trame vidéo originale du yuv420sp est transmise directement via la prise.
b) JEPG compresse l'image vidéo originale yuv420sp en H.264 puis la transmet.
c) H.264 / avc. La trame vidéo originale du yuv420sp est compressée en H.264 puis transmise. Les encodeurs open source courants basés sur H264 incluent JM, x264, t264, hdot264, etc.
ré) . mpeg4. Compressez l'image vidéo originale du yuv420sp en MPEG4, puis transmettez
3. L'idée de la transmission vidéo
une) . transmission par socket
b). Transport HTTP
c). Transmission RTP / RTSP
ré) . mode de serveur multimédia en continu, tel que live555, etc.
4. La réalisation du décodage vidéo
une) . décodeur correspondant à l'encodage
5. L'idée de la lecture vidéo
une) . par vidéo Android
b). via Android Mediaplay
c). coller l'image du cadre directement à travers le canevas
|
Entrez l'email pour avoir une surprise
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albanais
ar.fmuser.org -> arabe
hy.fmuser.org -> Armenian
az.fmuser.org -> azerbaïdjanais
eu.fmuser.org -> basque
be.fmuser.org -> biélorusse
bg.fmuser.org -> Bulgare
ca.fmuser.org -> catalan
zh-CN.fmuser.org -> chinois (simplifié)
zh-TW.fmuser.org -> Chinois (traditionnel)
hr.fmuser.org -> croate
cs.fmuser.org -> tchèque
da.fmuser.org -> danois
nl.fmuser.org -> Néerlandais
et.fmuser.org -> estonien
tl.fmuser.org -> Philippin
fi.fmuser.org -> finnois
fr.fmuser.org -> Français
gl.fmuser.org -> Galicien
ka.fmuser.org -> géorgien
de.fmuser.org -> allemand
el.fmuser.org -> Grec
ht.fmuser.org -> Créole haïtien
iw.fmuser.org -> hébreu
hi.fmuser.org -> Hindi
hu.fmuser.org -> Hongrois
is.fmuser.org -> islandais
id.fmuser.org -> indonésien
ga.fmuser.org -> irlandais
it.fmuser.org -> Italien
ja.fmuser.org -> japonais
ko.fmuser.org -> coréen
lv.fmuser.org -> letton
lt.fmuser.org -> Lituanien
mk.fmuser.org -> macédonien
ms.fmuser.org -> malais
mt.fmuser.org -> maltais
no.fmuser.org -> Norwegian
fa.fmuser.org -> persan
pl.fmuser.org -> polonais
pt.fmuser.org -> portugais
ro.fmuser.org -> Roumain
ru.fmuser.org -> russe
sr.fmuser.org -> serbe
sk.fmuser.org -> slovaque
sl.fmuser.org -> Slovène
es.fmuser.org -> espagnol
sw.fmuser.org -> Swahili
sv.fmuser.org -> suédois
th.fmuser.org -> Thai
tr.fmuser.org -> turc
uk.fmuser.org -> ukrainien
ur.fmuser.org -> ourdou
vi.fmuser.org -> Vietnamienne
cy.fmuser.org -> Gallois
yi.fmuser.org -> Yiddish
FMUSER Wirless transmet la vidéo et l'audio plus facilement!
Contactez-nous
Adresse :
No.305 Chambre HuiLan Building No.273 Huanpu Road Guangzhou Chine 510620
Catégories
Newsletter