Maestro Audio Framework v 1.7
NXP Semiconductors
Loading...
Searching...
No Matches
cci_metadata.h File Reference

Contains header data related to extracting metada for the codec interface subsystem. More...

#include "codec_interface_public_api.h"
#include "audio_cfg.h"
#include "errordefs.h"

Data Structures

struct  CCI_Ctx
 CCI Context Structure. More...
 
struct  file_meta_data_t
 File Metadata Structure. More...
 

Macros

#define MAX_PTP_STRING_CHARS   64
 Maximum ptp string chars.
 
#define MAX_PTP_STRING_CHARS_GENRE   34
 Maximum ptp string chars genre.
 
#define MAX_PTP_STRING_CHARS_YEAR   5
 Maximum ptp string chars year.
 
#define META_DATA_FOUND   (WORD)(0)
 Metadata was found.
 
#define META_DATA_NOT_FOUND   (WORD)(0x100)
 Metadata was not found.
 
#define META_DATA_FILE_NOT_SUPPORTED   (WORD)(0x101)
 File type is not supported.
 
#define META_DATA_FILEOPEN_ERROR   (WORD)(0x200)
 An error occurred while opening the file.
 
#define META_DATA_FILEREAD_ERROR   (WORD)(0x201)
 An error occurred while reading the file.
 
#define META_DATA_FILECLOSE_ERROR   (WORD)(0x202)
 An error occurred while closing the file.
 
#define META_DATA_FILESEEK_ERROR   (WORD)(0x203)
 An error occurred while seeking the file.
 
#define META_DATA_NOT_VBR_FORMAT   (WORD)(0x102)
 Data is not in VBR Format.
 
#define VBR_NOT_DETERMINED   0
 VBR Not determined.
 
#define VBR_TRUE   1
 VBR True Value.
 
#define XING_TOC_SIZE   100
 Xing Size.
 
#define VBR_TOC_SIZE   200
 VBR TOC Size.
 
#define VBR_TOC_SIZE_IN_BYTES   200 * 4
 VBR TOC Size in bytes.
 
#define TITLE_SIZE   CASCFG_TRACK_TITLE_LEN
 Title size.
 
#define TITLE_SIZE_BYTES   (TITLE_SIZE * 2)
 Title size in bytes.
 
#define ARTIST_SIZE   CASCFG_TRACK_ARTIST_LEN
 Artist size.
 
#define ARTIST_SIZE_BYTES   (ARTIST_SIZE * 2)
 Artist size in bytes.
 
#define ALBUM_SIZE   CASCFG_TRACK_ALBUM_LEN
 Album size.
 
#define ALBUM_SIZE_BYTES   (ALBUM_SIZE * 2)
 Album size in bytes.
 
#define GENRE_SIZE   CASCFG_TRACK_GENRE_LEN
 Genre size.
 
#define GENRE_SIZE_BYTES   (GENRE_SIZE * 2)
 Genre size in bytes.
 
#define YEAR_SIZE   CASCFG_TRACK_YEAR_LEN
 YYYY + NULL terminator.
 
#define YEAR_SIZE_BYTES   (YEAR_SIZE * 2)
 Year size in bytes.
 
#define TRACKNUM_SIZE   5
 assume track number is smaller than 0xfff (12bit or 4095)
 
#define DATE_SIZE   MAX_PTP_SHORT_STRING_CHARS
 Date size.
 
#define DATE_SIZE_BYTES   (DATE_SIZE * 2)
 Date size in bytes.
 
#define ENCODINGPROFILE_SIZE   MAX_PTP_SHORT_STRING_CHARS
 Encoding profile size.
 
#define ENCODINGPROFILE_SIZE_BYTES   (ENCODINGPROFILE_SIZE * 2)
 Encoding profile size in bytes.
 

Enumerations

enum  codec_bitrate_type_t {
  CONSTANT_BITRATE = 0 ,
  VARIABLE_BITRATE ,
  BITRATE_TYPE_UNKNOWN
}
 Enum Codec bitrate type. More...
 

Functions

int32_t cci_extract_meta_data (uint32_t file_extension, file_meta_data_t *meta_data, CCI_Ctx *ctx)
 CCI extract metadata top level function for direct file interface.
 
int32_t ccidec_extract_meta_data (audio_stream_type_t streamType, file_meta_data_t *meta_data, CCI_Ctx *ctx)
 CCI extract metadata top level function for streamer interface.
 
int32_t codec_extract_metadata_mp3 (file_meta_data_t *meta_data, CCI_Ctx *Ctx)
 Extract the meta data from the mp3 file.
 
int32_t codec_extract_metadata_wave (file_meta_data_t *meta_data, CCI_Ctx *Ctx)
 Extract the meta data from the wave file.
 
int32_t codec_extract_metadata_aac (file_meta_data_t *meta_data, CCI_Ctx *Ctx)
 Extract the meta data from the aac file.
 
int32_t codec_extract_metadata_flac (file_meta_data_t *MetaData, CCI_Ctx *Ctx)
 Extract the meta data from the flac file.
 
int32_t codec_extract_metadata_wma (file_meta_data_t *meta_data, CCI_Ctx *Ctx)
 Extract the meta data from the wma file.
 
int32_t codec_extract_metadata_ogg (file_meta_data_t *meta_data, CCI_Ctx *Ctx)
 Extract the meta data from the ogg file.
 
int32_t codec_extract_metadata_opus (file_meta_data_t *meta_data, CCI_Ctx *ctx)
 Extract the meta data from raw opus file.
 

Enumeration Type Documentation

◆ codec_bitrate_type_t

Enumerator
CONSTANT_BITRATE 

0 = Constant BitRate

VARIABLE_BITRATE 

1 = Variable BitRate

BITRATE_TYPE_UNKNOWN 

2 = Unknown BitRate Type

Function Documentation

◆ cci_extract_meta_data()

int32_t cci_extract_meta_data ( uint32_t file_extension,
file_meta_data_t * meta_data,
CCI_Ctx * ctx )
Parameters
[in]file_extensionFile Extension.
[in]meta_datameta_data extracted from the file.
[in]ctxPointer to CCI Context structure.
Return values
CODEC_SUCCESSif meta_data found successfully.
CODEC_METADATA_FILETYPE_FAILEDif meta_data not found

◆ ccidec_extract_meta_data()

int32_t ccidec_extract_meta_data ( audio_stream_type_t streamType,
file_meta_data_t * meta_data,
CCI_Ctx * ctx )
Parameters
[in]streamTypeAudio Stream Type.
[in]meta_datameta_data extracted from the file.
[in]ctxPointer to CCI Context structure.
Return values
CODEC_SUCCESSif meta_data found successfully.
CODEC_METADATA_FILETYPE_FAILEDif meta_data not found

◆ codec_extract_metadata_mp3()

int32_t codec_extract_metadata_mp3 ( file_meta_data_t * meta_data,
CCI_Ctx * Ctx )
extern
Parameters
meta_dataMetadata extracted from the file.
CtxPointer to CCI Context structure.
Returns
int32_t

◆ codec_extract_metadata_wave()

int32_t codec_extract_metadata_wave ( file_meta_data_t * meta_data,
CCI_Ctx * Ctx )
extern
Parameters
meta_dataMetadata extracted from the file.
CtxPointer to CCI Context structure.
Returns
int32_t

◆ codec_extract_metadata_aac()

int32_t codec_extract_metadata_aac ( file_meta_data_t * meta_data,
CCI_Ctx * Ctx )
extern
Parameters
meta_dataMetadata extracted from the file.
CtxPointer to CCI Context structure.
Returns
int32_t

◆ codec_extract_metadata_wma()

int32_t codec_extract_metadata_wma ( file_meta_data_t * meta_data,
CCI_Ctx * Ctx )
extern
Parameters
meta_dataMetadata extracted from the file.
CtxPointer to CCI Context structure.
Returns
int32_t

◆ codec_extract_metadata_ogg()

int32_t codec_extract_metadata_ogg ( file_meta_data_t * meta_data,
CCI_Ctx * Ctx )
extern
Parameters
meta_dataMetadata extracted from the file.
CtxPointer to CCI Context structure.
Returns
int32_t

◆ codec_extract_metadata_opus()

int32_t codec_extract_metadata_opus ( file_meta_data_t * MetaData,
CCI_Ctx * ctx )
extern

Extract the meta data from the file.

Parameters
[in]*MetaDatathis structure will be filled in by the function
[in]*ctxCCI Context Structure
Return values
SUCCESS
CODEC_METADATA_NOT_FOUND– metadata failed
ERROR_ASI_DFFI_METADATA_NOT_FOUND- metadata was not found
ERROR_OS_FILESYSTEM_FILE_OPEN– the file failed to open
CODEC_FSEEK_FAILED- fseek call failed