The so-called streaming media refers to the media format played on the Internet in the form of streaming transmission. Streaming media, also known as streaming media, means that merchants use video transmission servers to send programs in the form of data packets and transmit them to the network. After the user decompresses these data through the decompression device, the program will be displayed as before transmission.
Directory [hidden]
Definition of streaming media
Streaming media technology
Streaming media playback mode
Application of streaming media technology
[Edit this paragraph] Definition of streaming media
A series of related packages of this process are called "streams". Streaming media actually refers to a new way of media communication, not new media. After the full application of streaming media technology, people can directly input voice when chatting online; If you want to see each other's looks and expressions, as long as each side has a camera; See the goods you are interested in online, and after clicking, the images of the commentator and the goods will pop up; More realistic video news will also appear.
Streaming media technology originated in America. At present, the application of streaming media is very common in the United States. For example, HP's product release and sales staff training are conducted through online video.
Streaming transmission mode is to divide the whole A/V, 3D and other multimedia files into compressed packets by special compression method, and transmit them to the user's computer continuously and in real time by the video server. In the streaming media transmission system, users don't have to wait until the whole file is downloaded like downloading, but after a few seconds or tens of seconds of startup delay, they can play and watch compressed multimedia files such as A/V and 3D on their computers with decompression devices (hardware or software). At this point, the remaining multimedia files will continue to be downloaded to the server in the background.
[Edit this paragraph] Streaming media technology
First, the basis of streaming transmission
At present, there are two main schemes for transmitting multimedia information such as audio/video on the network: downloading and streaming. A/V files are generally large, so the required storage capacity is also large; At the same time, due to the limitation of network bandwidth, downloading often takes several minutes or even hours, so this processing method has great delay. In the process of streaming, time-based media such as sound, video or animation are continuously transmitted from the audio-video server to the user's computer in real time, so that the user can watch it only after a few seconds or more startup delay. When time-based media (such as sound) is played on the client, the rest of the file will continue to be downloaded from the server in the background. Streaming not only shortens the startup delay by 10 times and 100 times, but also does not need much cache capacity. Streaming media avoids the disadvantage that users have to wait for the whole file to be downloaded from the Internet before they can watch it.
Streaming media refers to continuous time-base media using streaming technology in Internet/Intranet, such as audio, video or multimedia files. Streaming media does not download the whole file before playing, but only stores the initial content in memory. The data stream of streaming media is transmitted and played at any time, but there will be some delay at first. The key technology of streaming media implementation is streaming transmission.
The definition of streaming transmission is very broad, and now it mainly refers to the technology of transmitting media (such as video and audio) through the network. Its specific meaning is to transmit video programs to PC through the Internet. There are two ways to realize streaming: real-time streaming and progressive streaming. Generally speaking, if the video is played in real time, or a streaming media server is used, or a real-time protocol such as RTSP is applied, it is a real-time stream. If an HTTP server is used, the files will be streamed in sequence. The transmission mode depends on your needs. Of course, streaming media files also support complete downloading to hard disk and then playing.
Sequential streaming transmission
Sequential streaming is a sequential download. Users can watch online media while downloading files. At a given moment, users can only watch the downloaded part and cannot jump to the previous part that has not been downloaded. Different from real-time streaming, sequential streaming will be adjusted according to the speed of user connection during transmission. Because the standard HTTP server can send this form of file and does not need other special protocols, it is usually called HTTP stream. Sequential stream is more suitable for high-quality short film segments, such as opening credits, closing credits and advertisements. Because the files watched before playing are lossless downloads, this method ensures the final quality of movie playing. This means that users must experience a delay before watching, especially for slow connections. Sequential streaming is very useful for distributing short films through modems, which allows video short films to be created at a higher data rate than modems. Despite the delay, it allows you to publish high-quality video clips. The sequential stream file is placed on the standard HTTP or FTP server, which is easy to manage and basically has nothing to do with the firewall. Sequential streaming is not suitable for long-segment videos with random access requirements, such as lectures, speeches, demonstrations, etc. Nor does it support live broadcast. Strictly speaking, it is an on-demand technology.
Real time streaming
Real-time streaming refers to ensuring that the bandwidth of the media signal matches the network connection so as to watch the media in real time. Real-time streaming is different from HTTP streaming, which requires a dedicated streaming server and transport protocol. Real-time streaming is always transmitted in real time, which is especially suitable for live activities and supports random access. Users can fast-forward or rewind to watch the content in front or behind. Theoretically, the real-time stream can be played without pause, but in practice, there may be periodic pause. The real-time stream must match the connection bandwidth, which means that the image quality is poor when connected at modem speed. Moreover, when the lost information is ignored due to errors, the video quality is poor when the network is crowded or there is a problem. If you want to ensure video quality, sequential streaming may be better. Real-time streaming requires specific servers, such as QuickTime Streaming Server, RealServer and Windows Media Server. These servers allow you to control media delivery at more levels, so system setup and management are more complicated than standard HTTP servers. Real-time streaming also requires special network protocols, such as RTSP (Real-time Streaming Protocol) or MMS (Microsoft Media Server). These protocols sometimes have problems when there is a firewall, which makes users unable to see the real-time content in some places.
Second, the software and hardware products involved in streaming media
1. encoder: It consists of a common computer, a micro-vision high-definition video capture card and streaming media coding software. The micro-vision streaming media acquisition card is responsible for inputting audio and video information sources into the computer for processing through coding software; The coding software is responsible for compressing the digital audio and video signals transmitted by the streaming media acquisition card into streaming media format. In the case of live broadcast, it is also responsible for uploading the compressed streaming media signal to the streaming media server in real time.
2. Server: It consists of the server part of the streaming media software system and a hardware server. This part is responsible for managing, storing and distributing the streaming media programs transmitted by the encoder.
3. Terminal player, also called decoder: This part consists of the playback software of the streaming media system and an ordinary PC, which is used to play the video programs that users want to watch on the streaming media server.
Third, the principle of streaming media technology
The implementation of the stream requires caching. Because the Internet is transmitted intermittently and asynchronously on the basis of packet transmission, a real-time A/V source or a stored A/V file will be decomposed into many packets during transmission. Because the network is dynamic, the route chosen by each packet may be different, so the delay to reach the client is unequal, and even the first packet may arrive later. Therefore, the buffer system is used to make up for the delay and jitter, to ensure the correct sequence of data packets, so that media data can be continuously output and will not stop playing because of temporary network congestion. Usually, the capacity required for cache is not large, because the cache uses a ring linked list structure to store data: by discarding the played content, the stream can reuse the freed cache space to cache the subsequent unplayed content. -The realization of streaming requires an appropriate transport protocol. TCP is not suitable for transmitting real-time data because it needs more overhead. In the implementation scheme of streaming transmission, HTTP/TCP is generally used to transmit control information, while RTP/UDP is used to transmit real-time sound data. The process of streaming transmission is generally as follows: after the user selects the first-class media service, he uses HTTP/TCP to exchange control information between the Web browser and the Web server, so as to retrieve the real-time data to be transmitted from the original information; Then the client's Web browser starts the A/VHelper program, and uses HTTP to retrieve relevant parameters from the Web server to initialize the Helper program. These parameters can include directory information, encoding type of A/V data or server address related to A/V retrieval.
A/VHelper program and A/V server run real-time stream control protocol (RTSP) to exchange control information needed for A/V transmission. Similar to the functions provided by CD players or VCRs, RTSP provides methods for operating commands, such as playing, fast-forwarding, rewinding, pausing and recording. A/V server uses RTP/UDP protocol to transmit A/V data to A/V client program (generally, the client program can be regarded as a helper program). Once the A/V data reaches the client, the A/V client program can play the output.
It should be noted that in streaming transmission, two different communication protocols, RTP/UDP and RTSP/TCP, are used to establish contact with the A/V server in order to redirect the output of the server to a destination address different from that of the client running the A/VHelper program. The realization of streaming media transmission generally requires a dedicated server and player, and its basic principle is shown in the figure.
Four, intelligent stream technology (SureStream)
Today, the 28.8Kbps modem is the basic rate of Internet connection. With the rapid development of cable modem, ADSL, DSS, ISDN, etc. Content providers have to limit the quality of published media or the number of people connected to the network. According to the statistics of RealNetwork website, the actual traffic of 28.8Kbps modem is 10bps to 26Kbps, which is bell-shaped with a peak value of 20Kbps. This means that if the content provider chooses a fixed rate of 20Kbps, a large number of users will not get good quality signals, and may stop media streaming, causing clients to buffer again until they receive enough data. One solution is that the server reduces the data sent to the client and prevents re-buffering. In RealSystem 5.0, this method is called "video stream thinning". The limitation of this method is that the RealVideo file is designed at the data rate, and the result can be extended to a lower rate by extracting internal frames, resulting in lower quality. The farther away from the original data rate, the worse the quality. Another solution is to create multiple files according to different connection rates, and the server sends the corresponding files according to the user connection. This method brings difficulties to production and management. The user connection is dynamic, and the server can't coordinate in real time. Intelligent traffic technology overcomes bandwidth coordination and traffic refinement from two aspects. Firstly, an encoding framework is established to allow multiple streams with different rates to be encoded and merged into the same file at the same time; Secondly, a complex client/server mechanism is used to detect bandwidth changes.
In view of the difference of software, equipment and data transmission speed, the bandwidth of users browsing audio and video content is also different. In order to meet the requirements of customers, Progressive networks Company encodes and records media data at different rates and saves it in a single file, which is called an intelligent streaming file, that is, an extensible streaming file is created. When the client sends a request, it transmits its bandwidth capability to the server, and the media server transmits the corresponding part of the intelligent streaming file to the user according to the bandwidth of the client. In this way, users can see the most possible high-quality transmission, producers only need to compress it once, administrators only need to maintain a single file, and the media server automatically switches according to the obtained bandwidth. By describing the ever-changing bandwidth characteristics of the real-world Internet, intelligent flow can send high-quality media and ensure reliability, and provide a solution for content authorization in mixed connection environment. The realization of streaming media is as follows: * Create a file for all connection rate environments * Transmit media at different rates in mixed environments * Switch to other rates seamlessly according to network changes * Key frames take precedence, and audio is more important than some frame data * Backward compatibility with the old version of RealPlayer.
Intelligent flow is the implementation of the so-called adaptive flow management (ASM)API in RealSystem G2. ASM describes the types of streaming data, helps intelligent decision-making and determines which type of packets to send. The file format and broadcast plug-in define ASM rules. Assign predefined attributes and average bandwidth to packet groups in the simplest form. For the advanced form, ASM rules allow plug-ins to change the transmission of packets according to the changes of network conditions. Each ASM rule can have a demonstration of defining conditions. For example, the demo defines that the customer bandwidth is 5000 to 15000 kbps, and the packet loss is less than 2.5%. If this condition describes the customer's current network connection, the customer agrees to this rule. The attributes defined in the rules help RealServer to transmit data packets effectively. If network conditions change, customers will subscribe to different rules.
Five, commonly used streaming media formats
Sound stream, video stream, text stream, image stream, animation stream.
RA: real-time sound
RM: Real-time media of real-time video or audio.
RT: real-time text
RP: real-time image
SMIL: synchronous multi-data type integration design file
SWF:micromedia's real flash and shockwave flash animation files.
Rpm: plug-in for html files
RAM: a metafile of streaming media, which is a text file containing RA, RM and SMIL file addresses (URL addresses).
CSF: A file format similar to a media container, which can contain multiple media formats, not just audio and video.
You can combine ppt with the video of the teacher's lecture perfectly. Many universities and large enterprises use this software for teaching videos and distance education.
1, realnetwork company: three kinds.
2. Apple: quicktime\mov
3. Microsoft Corporation
( 1)asf\wmv\wma
(2)avi
mpeg \ mpg \ dat
4. Micro Media Company
Swf format of (1)flash
(2) 2) Meta-stream in MTS format
(3)aam multimedia teaching courseware format, which can compress the files generated by authorware into aam and aas stream files to play.
Six, streaming media transmission protocol
resource reservation protocol
2.RTP: Real-time transport protocol.
3.RTCP: Real-time transmission control protocol.
4. Microsoft Streaming Media Service Protocol.
5.RTSP: Real-time streaming protocol
6.MIME: Universal Internet Mail Extension Protocol
[Edit this paragraph] Streaming media playback mode
1. Unicast
A separate data channel needs to be established between the client and the media server, and each data packet sent by the server can only be transmitted to one client. This transmission mode is called unicast. Each user must send a separate query to the media server, and the media server must send a copy of the requested data packet to each user. This huge redundancy first causes a heavy burden on the server, which takes a long time to respond or even stop playing; Managers are also forced to buy hardware and bandwidth to ensure a certain quality of service.
2. Multicast
IP multicast technology builds a network with multicast capability, which allows routers to copy packets to multiple channels at a time. Using multicast, a single server can simultaneously send continuous data streams to thousands of clients without delay. The media server only needs to send one packet instead of multiple packets; All requesting clients * * * share the same packet. Information can be sent to clients at any address, reducing the total number of data packets transmitted on the network. The network utilization efficiency is greatly improved and the cost is greatly reduced.
3. On-demand and broadcasting
On-demand connection is an active connection between client and server. In on-demand connection, the user initiates a client connection by selecting a content item. Users can start, stop, rewind, fast-forward or pause video streams. On-demand connection provides the maximum control of traffic, but in this way, because each client connects to the server separately, it will quickly run out of network bandwidth.
Broadcast refers to the passive reception of streams by users. During the broadcast process, the client receives the stream, but cannot control the stream. For example, the user cannot pause, fast forward or rewind the stream. In broadcast mode, a single copy of the packet will be sent to all users on the network. When unicast transmission is used, multiple copies of the data packet need to be copied and sent to those users who need it in multiple point-to-point ways, while when broadcast transmission is used, a single copy of the data packet will be sent to all users on the network, regardless of whether the users need it or not. The above two transmission methods will waste network bandwidth very much. Multicast absorbs the advantages of the above two sending methods, overcomes the weaknesses of the above two sending methods, and sends a single copy of the data packet to those customers who need it. Multicast does not copy multiple copies of a data packet and transmit it to the network, nor does it send the data packet to customers who don't need it, thus ensuring that multimedia applications on the network occupy the minimum bandwidth of the network.
[Edit this paragraph] Application of streaming media technology
The rapid development and popularization of the Internet provides a strong market power for the development of the increasingly popular streaming media business. Streaming media technology is widely used in all aspects of Internet information services such as multimedia news release, online live broadcast, online advertising, e-commerce, video on demand, distance education, telemedicine, network broadcasting, real-time video conference, etc. The application of streaming media technology will bring revolutionary changes to network information exchange and have a far-reaching impact on people's work and life.
A complete streaming media solution should be a perfect combination of related software and hardware, which generally includes the following aspects: content acquisition, video and audio acquisition and compression coding, content editing, content storage and playback, content management and publishing of application servers, and user management.