Information about tools to create AVI files with all possible indexes

Source: Microsoft Support

RAPID PUBLISHING

RAPID PUBLISHING ARTICLES PROVIDE INFORMATION DIRECTLY FROM WITHIN THE MICROSOFT SUPPORT ORGANIZATION. THE INFORMATION CONTAINED HEREIN IS CREATED IN RESPONSE TO EMERGING OR UNIQUE TOPICS, OR IS INTENDED SUPPLEMENT OTHER KNOWLEDGE BASE INFORMATION.

Symptom



While working with project which requires the creation of AVI files with a variety of indexes (for example, one file will have the Old Index with absolute ChunkOffset, another file with the Old Index with Relative ChunkOffset, another file will have the Super Index pointing to Standard Index), Customer wanted to create files with all the possible indexes (Old Index Absolute, Old Index Relative, Super to Standard, Super to Field, Standard and Field), as well as a file without an index.


And we had the following questions:
  • Does Microsoft have any tool which will create AVI files with all of the various indexes?
  • Does Microsoft have any tool which can parse the header of the file and return which index the AVI file has?

Resolution



This can be done programmatically with usage of “AVI Mux Filter” supported in Microsoft DirectShow 9.0.


Additionally, the third party tools that can be used to create indexes are AVI Mux GUI and VirtualDub. AVI Mux GUI will create Old Index Relative, and Super Index to Standard Index. The Hex Editor in VirtualDub can be used to create files with no indexes by replacing 'idx1' with 'JUNK'.

More Information

  • AVI 2.0 specification is used by Microsoft
  • Two types of indexing supported
    • Standard Indexing
    • Hierarchical Indexing
  • MMIO API's are used for Riff file parsing. It also helps in identify Header Chunk, Index Chunk etc.
  • AVI API can be used for AVI file creation.


 
  • DirectShow 9.0 consists of AVI Mux Filter. AVI Mux filter accepts input streams (Multiple) and interleaves them into AVI file. The filter uses separate input pins for each input stream, and one output pin for the AVI stream.


 


 
  • DirectShow currently supports the following AVI 2.0 file format extensions:
    • Increased AVI file size (greater than 1 GB)
    • Hierarchical indexing.
    • IConfigAviMux Interface
      • The IConfigAviMux interface configures the AVI Mux <http://msdn.microsoft.com/en-us/library/ms779633(VS.85).aspx> filter. Applications can use this interface to set the master stream and to create an AVI 1.0 index.


 
  • IConfigAviMux provides backward compatibility with older Video for Windows Audio-Video Interleaved (AVI) index formats (idx1) as well as extended AVI 2.0 index formats (indx) to allow for file sizes greater than 1 gigabyte (GB).


 


 
  • IConfigAviMux::GetOutputCompatibilityIndex(BOOL fOldIndex)


 
  • - IConfigAviMux::SetOutputCompatibilityIndex(BOOL fOldIndex)
    • The SetOutputCompatibilityIndex method sets the AVI index format.
      Value Description
      • TRUE - Create an AVI 1.0 index, as well as an AVI 2.0 index.
      • FALSE - Create an AVI 2.0 index, but not an AVI 1.0 index.


 
  • The AVI Mux filter always creates an AVI 2.0 index ('indx' format). If the value given in fOldIndex is TRUE, the AVI Mux also creates an AVI 1.0 index ('idx1' format), for backward compatibility with Video for Windows.


 


References

 


 

DISCLAIMER

MICROSOFT AND/OR ITS SUPPLIERS MAKE NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY, RELIABILITY OR ACCURACY OF THE INFORMATION CONTAINED IN THE DOCUMENTS AND RELATED GRAPHICS PUBLISHED ON THIS WEBSITE (THE “MATERIALS”) FOR ANY PURPOSE. THE MATERIALS MAY INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS AND MAY BE REVISED AT ANY TIME WITHOUT NOTICE.


TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND/OR ITS SUPPLIERS DISCLAIM AND EXCLUDE ALL REPRESENTATIONS, WARRANTIES, AND CONDITIONS WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT LIMITED TO REPRESENTATIONS, WARRANTIES, OR CONDITIONS OF TITLE, NON INFRINGEMENT, SATISFACTORY CONDITION OR QUALITY, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE MATERIALS.
Eigenschappen

Artikel-id: 969206 - Laatst bijgewerkt: 18 mrt. 2009 - Revisie: 1

Feedback