Introduction to Microsoft Advanced stream format ASF

Source: Internet
Author: User

Microsoft's Windows Media core is ASF (Advanced Stream Format ). Microsoft defines ASF as a unified container file format for Synchronous media. ASF is a data format in which multimedia information, such as audio, video, image, and Control Command Script, is transmitted in the form of network packets to publish streaming multimedia content. The biggest advantage of ASF is its small size, so it is suitable for network transmission. You can directly play files in this format using Microsoft's latest Media Player (Microsoft Windows Media Player. Users can combine graphics, sound, and animation data into an asfformat file. Of course, they can also convert videos and audio in other formats to asfformat, in addition, you can use sound cards and video capture cards to save peripheral data such as microphones and video recorders into asfformat. In addition, a video in asfformat can contain command code. You specify to trigger an event or operation after a certain time of the video or audio. ASF features extensible media types-ASF files allow producers to easily define new media types. The asfformat provides efficient and flexible definitions of new media stream types that comply with the definition of the ASF file format. Any stored media stream is logically independent from other media streams, unless the file header clearly defines its relationship with another media stream. Download parts-specific information about the playback parts (such as the Extract Algorithm and player) can be stored in the ASF file header, this information can be used by the client to find the desired version of the playing part if they are not installed on the client. Scalable media type-ASF is the dependency between "bandwidths" designed to represent scalable media types. ASF stores various bandwidths like a separate media stream. The dependencies between media streams are stored in the file header, it provides clients with a scalable option to explain in a compression-independent manner to prioritize rich information streams-modern multimedia transmission systems can dynamically adjust to adapt to the shortage of network resources (for example, insufficient bandwidth ). Producers of multimedia content must be able to express their reference information based on the priority of the stream, for example, to ensure the transmission of audio streams at a minimum. With the emergence of scalable media types, the priority of the stream becomes more complex, because it is difficult to determine the sequence of each media stream during production. ASF allows content producers to effectively express their opinions (concerning media priorities), even in the case of scalable media types. Multi-language-ASF is designed to support multiple languages. A media stream can indicate the language of a media set. This function is often used in audio gluttony scenarios where audio files contain a series of media streams that contain the same content in different languages, it allows the client to select the most suitable version during playback. Directory information-ASF provides the directory information feature that can be expanded continuously. This feature provides excellent scalability and flexibility. All directory information is stored in the file header without format encoding and supports multiple languages. If necessary, the directory information can be pre-defined (for example, author and title ), it can also be customized by the producer. The directory information function can be used for both the entire file and a single media stream. ASF file format ASF Object definition the basic organizational unit of the ASF file is called ASF Object, which is a globally unique Object ID (Object ID) with a 128-bit identifier ), A 64-bit integer Object Size is composed of a variable-length Object Data. The value of the object size field is the sum of the size of the object data plus 24 bits. Figure 11.8 ASF object the File organizational unit is a bit similar to the RIFF (Resource Interchange File Format) byte. Basic Units of AVI and WAV files during RIFF. The ASF object improves the RIFF design in two aspects. First, you do not need an authority to manage the object identifier system, because the computer Nic can generate a valid and unique GUID. Second, the object size field has been defined enough to process large files with high bandwidth multimedia content. The high-level file structure ASF file is logically composed of three high-level objects: Header Object, Data Object, and Index Object ).. The header object is required and must be placed at the beginning of each ASF file. The data object is also required and is generally followed by the header object. Index objects are optional, but are generally recommended. Figure 11.9 The structure Of the high-level ASF file may contain Out-Of-Order objects in the specific implementation process. ASF also supports, but in specific circumstances, this will make ASF files unavailable, for example, reading such ASF files from a specific file source such as an HTTP server. Similarly, additional high-level objects may be used and added to the ASF file. It is generally recommended that these additional objects follow the index object. A prerequisite for ASF data objects to be interpreted is that the header object has been received by the client. ASF does not declare how the header object information arrives at the client. The "Arrival mechanism" is a "local implementation problem", which is clearly beyond the scope defined by ASF. There are three ways for a header object to arrive before the data object: including the information of the header object as part of the "Session Declaration. Use a "channel" sending header object different from the data object. Sends the header object before sending the ASF data object. The ASF header object is among the three high-level objects in ASF. the header object is a unique object that contains other ASF objects. The header Object may contain the following objects: File Properties Object-Global File Properties. Stream Properties Object: defines a media Stream and its attributes. Content Description Object contains information about all directories. Component Download Object (Component Download Object)-provides the playback part information. Stream Groups Object: logically, multiple media streams are organized together. Scalable Object: defines the Scalable relationship between media streams. Prioritization Object: defines the priority of a stream. Mutual Exclusion Object (Mutual Exclusion Object)-defines the Exclusion relationship, such as language selection. Media Dependency Object (Inter-Media Dependency Object)-defines the Dependency between hybrid Media streams. Level Object (Rating Object) ---- defines the level of the file according to W3C PICS. Index Parameters Object: provides necessary information to recreate the Index of the ASF file. Figure 11.10 The Role Of The ASF header object is to provide a well-known bit sequence at the beginning of the ASF file and contain information about all other header objects. The header object provides global information about multimedia data stored in the data object. The ASF data object contains all the multimedia data of an ASF file. Multimedia data is stored as ASF data units. Each ASF data unit is variable-length and must contain the same media stream. Data Units are automatically sorted in the data objects when they start to be transmitted. This sort comes from the cross-store file format. ASF index object contains a time-based index of multimedia data embedded in the ASF file. The time interval for each index entry is set during creation and stored in the index object. Since there is no need to create an index for each media stream of a file, a list of media streams are usually indexed using a time interval.

From: http://blog.video.com.cn/liumeiti/archives/2005/1974.shtml #

Contact Us

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.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.