# MEDIA\_UTILS\_LITE
- [MEDIA\_UTILS\_LITE](#media_utils_lite)
- [Introduction](#introduction)
- [Directory Structure](#directory-structure)
- [Usage](#usage)
- [Constraints](#constraints)
- [Repositories Involved](#repositories-involved)
## Introduction
This repository defines common information such as media error codes and data types required for audio and video recording and playback.
Data types
- **SourceType**: type of the media source to play
- **BufferFlags**: flags of the data carried in the buffer
- **AudioSourceType**: enumeration of audio input source types
- **AudioCodecFormat**: enumeration of audio data formats
- **AudioStreamType**: enumeration of audio stream types
- **AudioBitWidth**: enumeration of sampling bit width
The following table lists the error codes.
Code
|
Macro
|
Description
|
0xffffffff
|
ERR_INVALID_READ
|
Data reading failed.
|
0x0
|
SUCCESS
|
Operation succeeded.
|
0x3c10000
|
ERROR
|
Operation failed.
|
0x3c10001
|
ERR_ILLEGAL_STATE
|
Invalid status.
|
0x2A05
|
ERR_INVALID_PARAM
|
Invalid parameter.
|
0x3c10003
|
ERR_EARLY_PREPARE
|
Early start.
|
0x3c10004
|
ERR_SOURCE_NOT_SET
|
Media source not set.
|
0x3c10005
|
ERR_INVALID_OPERATION
|
Invalid operation.
|
0x2A09
|
ERR_NOFREE_CHANNEL
|
No free channel.
|
0x3c10007
|
ERR_READ_BUFFER
|
Error occurred during buffer reading.
|
0x3c10008
|
ERR_NOT_STARTED
|
Device not started.
|
0x3c100c8
|
ERR_UNKNOWN
|
Unknown error.
|
**Figure 1** Position of this repository \(in the dotted blue box\) in the multimedia subsystem
-in-the-multimedia-subsystem.png "position-of-this-repository-(in-the-dotted-blue-box)-in-the-multimedia-subsystem")
## Directory Structure
```
foundation/multimedia/media_utils_lite
├── interfaces # Header file of the data types and media formats
└── hals # HAL adaptation APIs
└── src # Implementation of the data types and media formats
```
## Usage
Build a single repository in the root directory.
```
# Select the development board.
hb set
# Build this repository.
hb build media_service
```
## Constraints
C++ 11 or later
## Repositories Involved
[Multimedia subsystem](https://gitee.com/openharmony/docs/blob/master/en/readme/multimedia.md)
[camera\_lite](https://gitee.com/openharmony/multimedia_camera_lite)
[camera\_sample\_lite](https://gitee.com/openharmony/applications_sample_camera)
[audio\_lite](https://gitee.com/openharmony/multimedia_audio_lite)
[media\_lite](https://gitee.com/openharmony/multimedia_media_lite)
[media\_utils\_lite](https://gitee.com/openharmony/multimedia_utils_lite)