76 Argus Encoder Family Version 2.6 API Developer’s GuideThe IBM Video Registry TableIf the Argus Registry locations listed above are not established prior to the first en-code, a call to the Filter Manager method Load() will create the Registry, providingdefault settings for each of the keys. These settings can be modified programmati-cally (refer to MSDN help) or manually using the regedt32 or regedit command.The Filter Manager component provides two special functions that load and saveall of the Filter Manager settings as well as those of the tables listed above:long Load() – Loads all of the Registry settings for the locations listed above. Ifthe Registry location does not exist, the Load() call creates it, creates all of theRegistry keys, and assigns them their default values. This method should becalled prior to each encode. Returns 0 if successful, or, on failure, returns anerror code listed in Appendix C.long Save() – In the appropriate Registry tables, saves all of the settings for thecurrent encode. Returns 0 if successful, or, on failure, returns an error codelisted in Appendix C.Refer to “RegCtrlPnl,” page 57, for an explanation and examples of manipulatingencoder Registry settings programmatically with a sample application includedwith this application.Detailed Explanation of Registry TablesDescriptions of the keys found in each of these Registry locations are listed in thefollowing tables. RegCtrlPnl screen shots can be found in Chapter 4.The IBM Video Registry TableMany of the video encoder properties are interrelated. The first of the followingtables identifies and describes the properties themselves. The second table showsthe relationship between format, chroma, mode, and resolution. Finally, the thirdtable defines the relationship between I-frame distance (N value), ReferenceFrame Distance (M Value), Closed/Open GOP, and GOP structure.