This chapter provides an overview of the uses and features of these libraries:
Digital Media Library, a base library that provides global type definitions and utility routines for digital media applications; it currently supports parameter setting and ring buffering
Digital Audio and MIDI Libraries, a collection of libraries that provides an API for working with digital audio, audio files, digital compact disc, digital audio tape, and MIDI
Video Library, a device-independent API for programming Silicon Graphics on-board video and video options
Indigo Video Library, an API for programming the IndigoVideo option for IRIS Indigo workstations equipped with Entry graphics
Compression Library, an extensible, algorithm-independent API for compressing and decompressing audio, video, and images
Movie Library, a file-format-independent API for reading, writing, playing, and editing movies
You can use these libraries in conjunction with other Silicon Graphics libraries, such as the ImageVision™ Library; see the individual library descriptions to learn which libraries are compatible.
The Digital Media (DM) Library, libdmedia.so, is a library that currently supports parameter setting and ring buffering for applications that use the IRIS Digital Media software. Currently, you can use the DM routines with the Movie Library and the Video Library.
The DM Library features:
type definitions for digital media
routines for creating and configuring digital media parameters
routines for creating and configuring digital media ring buffers
a debugging version of the library that lets you check for proper usage
Audio Library (libaudio.a)
Audio File Library (libaudiofile.so)
Audio Utility Library (libaudioutil.so)
CD Audio Library (libcdaudio.a)
DAT Audio Library (libdataudio.a)
MIDI Library (libmd.so)
The digital audio libraries can be used separately or in combination. Each library is tailored to a particular set of tasks, as follows:
Provides an API for configuring the audio system, managing audio I/O between the application program and the audio hardware, specifying attributes of digital audio data, and facilitating real- time programming. See Chapter 6, “Programming with the Audio Library.”
Provides an API for reading and writing two standard digital audio file formats, AIFF and AIFF–C. See Chapter 7, “Programming with the Audio File Library.”
Provides convenience routines for creating and configuring Audio File Library data structures.
Provides an API for optional Silicon Graphics SCSI CD-ROM drives. The drive features a special mode that allows it to read audio CD format as well as CD–ROM format. See Chapter 8, “Programming with the CD Audio Library.”
Provides an API for optional Silicon Graphics SCSI DAT drives. See Chapter 9, “Programming with the DAT Audio Library.”
The Video Library (VL) is a collection of device-independent C language calls for Silicon Graphics workstations equipped with video options, such as Sirius Video™, Indigo2 Video™, Indy Video™, or Galileo Video ™, or workstations equipped with on-board video, such as Indy™.
The VL provides generic video tools, including simple tools for importing and exporting digital data to and from current and future Silicon Graphics video hardware, as well as to and from third-party video devices that adhere to the Silicon Graphics architectural model for video devices. Video tools are described in the Media Control Panels User's Guide, which you can view using the IRIS InSight viewer; similar applications are supplied in source-code form as examples in the 4Dgifts directory (/usr/people/4Dgifts/examples/dmedia/video/vl).
|Note: The range of VL capabilities you can use depends on the capabilities of your workstation and the video options installed in it.|
The IndigoVideo board provides video input and output for IRIS Indigo workstations equipped with Entry graphics. The IndigoVideo Library provides a software interface to the IndigoVideo board, enabling applications to:
display live video in a window
capture live video to system memory
encode graphics to video in real time
produce high-quality single-frame video output
The Compression Library features:
support of industry standard algorithms
support of Silicon Graphics proprietary algorithms
binary compatibility across Silicon Graphics platforms
The Compression Library provides facilities for working with audio, still images, sequential frames of data (movies), and a buffering mechanism for nonsequential compression and decompression.
You can query the Compression Library for the available algorithms, and you can add your own algorithms and parameters. A pass-through capability allows you to pass data through the routines without using an algorithm.
The Compression Library can be used with the Audio File Library, and with data used by the IRIS Movie Player and Movie Maker tools.
The Movie Library, libmovie, is a collection of routines that provides a C language API for reading, writing, editing, and playing movies on Silicon Graphics workstations. The API provides a uniform interface to movies of various formats and lets you convert movies from one format to another.
The Movie Library features:
the ability to read, write, and play movie files
a file-format-independent API
file format conversion capabilities
support for Silicon Graphics Movie format, versions 2.0 and 3.0
support for Apple® Computer QuickTime™ movie format
data compression and decompression
asynchronous playback support
flexible playback control
support for movies embedded in applications software