The Media Kit
Developer Release Notes
BeOS Release 4.5
|
There have been a number of changes in the Media Kit since Release 4.0.
This document lists some of the changes—but the final authority is the
Media Kit documentation
itself, which has been kept scrupulously up-to-date.
In particular, all Media Kit developers should read through the
Media Kit Introduction.
And look for the section
Changes In Release 4.5 near the bottom of the introduction for further
information about changes since Release 4.0.
Bug Fixes
- Optimized memory allocation scheme uses memory more efficiently.
- BSoundPlayer no longer hangs upon delete if there's no sound card in the machine.
- Cloned node leaks have been decreased, if not eliminated.
- strerror() returns valid descriptions of Media Kit errors.
Audio mixer:
- Master gain and mute work correctly.
- int16 output is supported.
- Non-native endian data is playable.
- Off-line mode is supported.
- Idle overhead time has been vastly reduced.
- The mixer no longer crashes during shutdown.
Drivers:
- Fixed MIDI output overrun problems on AWE64 cards.
- Fixed "crunchy" sound problems on the Crystal chip.
-
SOUND_GET_CAPTURE_PREFERRED_BUF_SIZE and
SOUND_GET_PLAYBACK_PREFERRED_BUF_SIZE requests are
handled correctly; they determine the optimum buffer sizes for capture and playback.
- DMA ring buffers can be as large as 8k.
New and Old Classes
- Look for the new BMediaFile and
BMediaTrack classes.
They provide a simple data-reading and -writing interface.
- The BSoundFile class has been retired.
The Media Server
- New global functions
launch_media_server() and
shutdown_media_server() let you
start and stop the Media Server.
Structures
- media_encoded_video_format now
includes
forward_history and
backward_history fields so nodes
can indicate how many frames of look-ahead and look-back are required to decode a frame.
For example, MPEG uses a forward_history of 3, and Cinepak uses
a backward_history of 1.
BBufferGroup
- RequestBuffer() returns NULL if you pass it a negative timeout value
and there are no buffers available.
BMediaRoster
- GetConnectedInputs() and
GetConnectedOutputs() functions have been fixed—they no longer crash, and they return
accurate values.
- The roster returns a complete list of file formats that it can write.
Previously, it only listed formats that already existed on the disk.
BSoundPlayer
- New InitCheck() function returns
the error code set by constructor.
- New SetSoundVolume() function lets you set
the volume level (0.0 – 1.0) of a particular sound, identified by play_id tag.
New Drivers and Nodes
- New drivers for: Ensoniq AudioPCI, Ensoniq 137x, SoundBlaster PCI.
- New nodes for: QuickTime, Cinepak, IMA4, MPEG1, AIFF, MP3, Apple Animation, MJPEG, PJPEG,
BT848 (878/879), VideoConsumer ("video in a window"),
Copyright ©
1999 Be, Inc. 
All rights reserved.