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
RTMP is the acronym for Real Time Messaging Protocol. This protocol is based on TCP and is a protocol family, including RTMP basic protocol and RTMPT/RTMPS/RTMPE and many other variants. RTMP is a network protocol designed for real-time data communication. It is mainly used for audio, video and data communication between the Flash/AIR platform and the streaming media/interactive server that supports the RTMP protocol. Software that supports this agreement includes Adobe Media Server/Ultrant Media Server/red5, etc. RTMP, like HTTP, belongs to the application layer of the TCP/IP four-layer model.
RTMP is the abbreviation of Routing Table Maintenance Protocol. In the AppleTalk protocol suite, the Routing Table Maintenance Protocol (RTMP) is a transport layer protocol that establishes and maintains the routing table in the AppleTalk router. RTMP is based on the Routing Information Protocol (RIP). Just like RIP, RTMP uses hop count as the routing measurement standard. A data packet is sent from the source network to the destination network, and the calculation result of the number of routers or other intermediate media nodes that must pass is the hop count.
1. Transmission protocol
RTMP (Real Time Messaging Protocol) is an open protocol developed by Adobe Systems for audio, video and data transmission between Flash players and servers.
It has many variants:
1) RTMP works on TCP and uses port 1935 by default;
2) RTMPE adds encryption function on the basis of RTMP;
3) RTMPT is encapsulated on the HTTP request, which can penetrate the firewall;
4) RTMPS is similar to RTMPT, adding the security function of TLS/SSL;
2. Detailed introduction
The RTMP protocol (Real Time Messaging Protocol) is used by Flash for the transmission of objects, video, and audio. This protocol is based on the TCP protocol or the polling HTTP protocol.
The RTMP protocol is like a container for data packets.These data can be data in AMF format or video/audio data in FLV.
A single connection can transmit multiple network streams through different channels. The packets in these channels are all transmitted in fixed-size packets.
Connection
A simple code for Actionscript to connect and play a stream:
var videoInstance:Video = your_video_instance;
var nc:NetConnection = new NetConnection();
var connected:Boolean = nc.connect("rtmp:/localhost/myapp");
var ns:NetStream = new NetStream(nc);
videoInstance.attachVideo(ns);
ns.play("flvName");
The default port is 1935
3. Handshake request and response editing
Client → Server: Send a handshake request to the server. This is not part of the protocol package. The first byte of the handshake request is (0×03), followed by 1536 bytes. Although it seems that the content of this part is for the RTMP protocol It's not critical, but it can't be treated casually.
Server → Client: The server responds to the client's handshake request. This part of the data is still not part of the RTMP protocol. The starting byte of the response is still (0x03), but it is followed by two lengths of 1536 bytes (total It is 3072 bytes) of the packet block. The first 1536 block seems to be any content, or even Null does not matter. The second 1536 code block is the handshake sent by the client to the server in the previous step The content of the request.
Client→Server: The second 1536-byte data block that the server responded to the client in the previous step.
At this point, the handshake between the client and the server ends, and the contents of the RTMP protocol package will be sent below.
Client → Server: Send a connection package to the server.
Server → Client: The server responds.
... .... and many more... ...
RTMP data type
0×01 Chunk Size changes the chunk size for packets
0×02 Unknown anyone know this one?
0×03 Bytes Read send every x bytes read by both sides
0×04 Ping ping is a stream control message, has subtypes
0×05 Server BW the servers downstream bw
0×06 Client BW the clients upstream bw
0×07 Unknown anyone know this one?
0×08 Audio Data packet containing audio
0×09 Video Data packet containing video data
0x0A-0×11 Unknown anyone know?
0×12 Notify an invoke which does not expect a reply
0×13 Shared Object has subtypes
0×14 Invoke like remoting call, used for stream actions too.
Shared Object data type
0×01 Connect
0×02 Disconnect
0×03 Set Attribute
0×04 Update Data
0×05 Update Attribute
0×06 Send Message
0×07 Status
0×08 Clear Data
0×09 Delete Data
0x0A Delete Attribute
0x0B
Initial Data
RTMP packet structure
The RTMP packet contains a fixed-length packet header and a packet body with a maximum length of 128 bytes. The packet header can be any of the following 4 lengths: 12, 8, 4, or 1 byte(s).
The first two bits of the first byte are very important, it determines the length of the header. It can be calculated with the mask 0xC0. The following table lists the possible header length: Bits Header Length
00 12 bytes
01 8 bytes
10 4 bytes
11 1 byte
In fact, the RTMP packet structure uses the AMF format.
The following is a process of sending a stream from the client to the server:
Client→Server: Send a request to create a stream.
Server→Client: Returns an index number representing the stream.
Client→Server: Start sending.
Client→Server: Send video and audio data packets (these packets are on the same channel and are uniquely identified by the stream index number).
|
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