10.1_demo/extern/qlibquammapi/include/avext/qua_simple_extractor.h

34 lines
1.2 KiB
C

/*
* Copyright (c) 2025 Quaming Intelligent Technology Co., Ltd.
*
* All Rights Reserved.
* Confidential and Proprietary - Quaming Intelligent Technology Co., Ltd.
*/
#ifndef __QUA_SIMPLE_EXTRACTOR_H_
#define __QUA_SIMPLE_EXTRACTOR_H_
#include "common/qua_type.h"
#include "avext/common/qua_mm_metaformat.h"
#include "avext/common/qua_mm_avcommon.h"
#ifdef __cplusplus
extern "C" {
#endif
extern QUA_VOID* qua_simple_extractor_new(QUA_S32 fd);
extern QUA_SIZE_T qua_simple_extractor_trackCount(QUA_VOID* ex);
extern QUA_S32 qua_simple_extractor_getAudioTrackIndex(QUA_VOID* ex);
extern QUA_S32 qua_simple_extractor_getVideoTrackIndex(QUA_VOID* ex);
extern QUA_S32 qua_simple_extractor_metaData(QUA_VOID* ex, qua_metaformat_t** meta);
extern QUA_S32 qua_simple_extractor_trackMetaData(QUA_VOID* ex, QUA_SIZE_T trackIndex, qua_metaformat_t** trackMeta);
extern QUA_SSIZE_T qua_simple_extractor_readSampleData(QUA_VOID* ex, QUA_SIZE_T trackIndex, qua_packet_t* quaPacket);
extern QUA_S32 qua_simple_extractor_seekTo(QUA_VOID* ex, QUA_U64 timeUs, seek_mode_t mode);
extern QUA_BOOL qua_simple_extractor_advance(QUA_VOID* ex);
extern QUA_S32 qua_simple_extractor_delete(QUA_VOID* ex);
#ifdef __cplusplus
} // extern "C"
#endif
#endif // __QUA_SIMPLE_EXTRACTOR_H_