55 line
1.2 KiB
C
55 line
1.2 KiB
C
#ifndef cmAudLabelFile_h
|
|
#define cmAudLabelFile_h
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
//( { file_desc:"Read and write Audacity label files." kw:[audio file] }
|
|
|
|
enum
|
|
{
|
|
kOkAlfRC = cmOkRC,
|
|
kLHeapFailAlfRC,
|
|
kFileFailAlfRC,
|
|
kSyntaxErrAlfRC,
|
|
kAlfFileFailPuRC
|
|
};
|
|
|
|
typedef cmRC_t cmAlfRC_t;
|
|
typedef cmHandle_t cmAlfH_t;
|
|
|
|
extern cmAlfH_t cmAlfNullHandle;
|
|
|
|
typedef struct
|
|
{
|
|
cmReal_t begSecs;
|
|
cmReal_t endSecs;
|
|
const cmChar_t* label;
|
|
} cmAlfLabel_t;
|
|
|
|
cmAlfRC_t cmAudLabelFileAlloc( cmCtx_t* ctx, cmAlfH_t* hp );
|
|
cmAlfRC_t cmAudLabelFileAllocOpen( cmCtx_t* ctx, cmAlfH_t* hp, const cmChar_t* fn );
|
|
cmAlfRC_t cmAudLabelFileFree( cmAlfH_t* hp );
|
|
|
|
bool cmAudLabelFileIsValid( cmAlfH_t h );
|
|
|
|
cmAlfRC_t cmAudLabelFileOpen( cmAlfH_t h, const cmChar_t* fn );
|
|
|
|
cmAlfRC_t cmAudLabelFileInsert( cmAlfH_t h, cmReal_t begSecs, cmReal_t endSecs, const cmChar_t* label );
|
|
|
|
unsigned cmAudLabelFileCount( cmAlfH_t h );
|
|
const cmAlfLabel_t* cmAudLabelFileLabel( cmAlfH_t h, unsigned idx );
|
|
|
|
cmAlfRC_t cmAudLabelFileWrite( cmAlfH_t h, const cmChar_t* fn );
|
|
|
|
void cmAudLabelFileTest( cmCtx_t* ctx );
|
|
|
|
//)
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|