[GO] Streaming Media protocol introduction (RTP/RTCP/RTSP/RTMP/MMS/HLS)http://blog.csdn.net/tttyd/article/details/12032357RTP reference Documentationrfc3550/rfc3551Real-time Transport Protocol) is a Transport layer protocol for multimedia traffic on the Internet. The RTP protocol details the standard packet format for transmitting audio and video over the Internet. RTP protocols are commonly used in streaming media systems (with the RTCP protocol), vi
Preface
Recent projects require streaming media playback, the backend provides three kinds of streaming data (Rtsp,rtmp,hls), in different scenarios may be used in different ways to play, you need to adapt to support all streaming data playback. Spent a period of time studying, here and share with you, there are some lingering problems to see if we have a good way. RTSP Brief Introduction
This protocol stream data in front of the play, there is no pa
Use librtmp for H264 and AAC live(ext: http://www.codeman.net/2014/01/439.html)1. Frame Division 1.1 H. FramesFor H. 00 00 00 01 or 00 00 01 for each frame.For example, the following H264 file fragment this packet three frame dataE0 9F 96 10 00 (C0)In the F1 2A 00 00 00 013C (CE) 5D DC E9 BDE6 D9 B7 2C D8 D9 EE EF ...The first frame is the xx-C0-DA-E0-9F, which was F1 2A.The second frame is xx 3C 80The third frame is the FF FF 5D DC E9 BD E6 D9 B7 2C D8 D9 EE EF.The frame types are:Nal_slice = 1
HLS, then have the SRS to replace Nginx idea.
In the construction of Nginx rtmp service is referred to the predecessors left behind the Nginx build support for the HTTP and rtmp protocol, one of the streaming media server, two or three, because it is the first time in the Nginx to add Nginx-rtmp-module module, the feeling and SRS compared with the relative annoy
Configuration referenceHttps://github.com/simple-rtmp-server/srs/wiki/v2_CN_LowLatencyLatency Impact factorsEncoders: Different encoders (free or open source), the delay is also different.Streaming Media server: SRS2Streaming protocol: For example: RTMP is real-time high, http_flv is also high-real-time, HLS is not, the official said 60s can tolerate ...Player: VLC is slower than Ffplayer and player.Network
: (indicates an optional field for the callout * symbol):v = (Protocol version)o = (owner/creator and session identifier)s = (session name)i = * (Session information)u = * (URI description)E = * (email address)p = * (phone number)c = * (connection information-if included in all media, this field is not required)b = * (Bandwidth information)One or more time descriptions (see below):z = * (Time zone Adjustment)k = * (encryption key)A = * (0 or more session property rows)0 or more media description
* symbol):v = (Protocol version)o = (owner/creator and session identifier)s = (session name)i = * (Session information)u = * (URI description)E = * (email address)p = * (phone number)c = * (connection information-if included in all media, this field is not required)b = * (Bandwidth information)One or more time descriptions (see below):z = * (Time zone Adjustment)k = * (encryption key)A = * (0 or more session property rows)0 or more media descriptions (as shown below)Time descriptionT = (Session
: This article describes how to build an rtmp VOD system for nginx development (3). For more information about PHP tutorials, see. 1:/create multimedia/rtmp in the/usr/local/nginx/html/Directory
2: copy the file 1. flv to the Directory
3: open usr/local/nginx/conf/nginx. conf and modify it as follows:
Rtmp {# Rtmp
Overview: TCP Establish a connection. rtmp shook hands. • The client and server agree on setting up an rtmp connection. • Create RTMP streams • The client and server agree on play or publish. • The client begins transmitting data to the server. • Message structure Brief tcp establish a connection TCP three times handshake rtm
Tags: rtmpMac is currently only available by manually installing1. Download Nginx Here is recommended to go to the official website. At the same time do not under the latest. I did not find the file in the Nginx conf on git because it was not finished downloading or the file on Git is incomplete.2. Download Nginx-rtmp-module This git is downloaded just fine3. Installation actually nginx-rtmp-module the auth
Tags: blank import max col Change RTM restart success typesOriginal address: 80063031Recently built a local nginx server based on rtmp, did not expect the first step cloning error: Homebrew/nginx was deprecated. This tap was now the empty as all its formulae were migrated. Specific as follows:The first step is to use:Add Nginx clone to local $ brew tap Homebrew/nginxThe error is as follows:The reason for this is that Homebrew/nginx's git path has chan
: This article mainly introduces the nginx Reverse proxy TCP to fetch the RTMP stream. if you are interested in the PHP Tutorial, refer to it. Nginx Reverse proxy TCP, get RTMP stream
I. descriptionNginx only supports HTTP reverse proxy by default. to support TCP reverse proxy, you must add the tcp proxy module nginx_tcp_proxy_module.
II. raw materials1. nginx_tcp_proxy_module:Wget https://github.com/yaowe
The F value contains an rtmp video stream address. Pay attention to the format, rtmp: // ip/live (stream address)/livestream (instance name)[Note] for multi-level directories, for example, the address is rtmp: // localhost/vod/AB/c. Two modifications are required for playing in ckplayer:1. Modify ckplayer. js and ckplayer. ck. pm_spac = '|'; change to ck.
I have written an article "converting FLV stream to standard h264 and ACC in rtmp", link address
Http://www.cnblogs.com/chef/archive/2012/07/18/2597279.html
. The extraction of h264 from rtmp is analyzed.
In flash projects with audio/video interaction, the audio encoding can only be in speex format.
This articleArticleIt is divided into three parts. These are the audio interfaces provided in flex, T
RTMP is a TCP protocol that Flash player receives video from a video server. Adobe has released most of the RTMP protocol, although some details have not been disclosed, but for our own development of a rtmp server is enough, even if not open, many open-source projects have already made a lot of details of the agreement to clarify.
At present, many video surveill
In flash projects with audio/video interaction, the audio encoding can only be in speex format.
This article is divided into three parts. These are the audio interfaces provided in flex, The speex data in rtmp, and how to convert them to RTP streams.
I. audio interfaces provided in flex
The client is written using Flex. The interface provided by Flex is encapsulated. The call to the client is equivalent to a black box. The difference between the two
/local/src/nginx-rtmp-module-master Note that the third-party module uses the absolute path specified by the Add-moduleYamdiTar xzvf yamdi-1.4.tar.gzCD yamdi-1.4Make make installHow to use: Yamdi-i input.flv-o out.flv/usr/local/src all the files are in this directoryTar xzvf nginx_mod_h264_streaming-2.2.7Tar xzvf nginx-rtmp-module-masterYou can specify the path when compiling--with-http_flv
One, what is Red5Red5 's main function is similar to Macromedia's FMS, which provides a Java based Open-source streaming media server for streaming media services based on Flash. It is written by the Java language and uses rtmp as a streaming media transport protocol, which is fully compatible with FMS. It has streaming flv, MP3 files, real-time recording client streams for FLV files, shared objects, real-time video playback, remoting and other functi
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.