OpenMLŽ Media Library Software Development Kit Programmer's Guide

Document Number: 007-4504-002

Front Matter

| List of Figures | List of Examples | List of Tables |

Table of Contents

New Features in this Guide

About This Guide
Scope of this Guide
Related Publications
Obtaining Publications
Reader Comments

1. Introduction
ML Terminology
Getting Started with ML
Simple Audio Output Program
Realistic Audio Output Program
Audio/Video Jacks

2. Parameters
param/value Pairs in an MLpv Message
Scalar Values
Array Values
Pointer Values

3. Capabilities
Capabilities Tree
Utility Functions for Capabilities
Manual Access to Capabilities
Identification Numbers
Summary of Capabilities

4. Audio/Visual Paths
Opening a Logical Path
Constructing a Message
Processing Out-of-Band Messages
Sending In-Band Messages
Processing In-Band Messages
Processing Exception Events
Processing In-Band Reply Messages
Beginning and Ending Transfers
Closing a Logical Path

5. Transcoders
Finding a Suitable Transcoder
Opening a Logical Transcoder
Controlling the Transcoder
Sending Buffers
Starting a Transfer
Changing Controls During a Transfer
Receiving a Reply Message
Ending Transfers
Closing a Transcoder
Work Functions

6. Video Parameters
Temporal Video Sampling
Video Parameter Descriptions
Video Example

7. Image Buffer Parameters
Image Buffer Layouts
Image Buffer Parameters Summary

8. Audio Parameters
Audio Buffer Layout
Audio Parameters Summary
Uncompressed Audio Buffer Size Computation

9. ML Processing
ML Program Structure
MLstatus Return Value
Device States
Opening a Jack, Path, or Transcoder
Set Controls
Get Controls
Send Controls
Send Buffers
Query Controls
Get Wait Handle
Begin Transfer
Transcoder Work
Get Message Count
Receive Messsage
End Transfer
Close Processing
Utility Functions
Example: Printing the Interpretation of a Video Timing Parameter

10. Synchronization
Time Representation
Get Unadjusted System Time (UST)
UST/MSC/ASC Parameters

A. Pixels in Memory
Greyscale Examples
RGB Examples
CbYCr Examples
422x CbYCr Examples

B. Common Video Standards