35 lines
1.2 KiB
C
35 lines
1.2 KiB
C
/*
|
|
* Copyright (c) 2023 Quaming Intelligent Technology Co., Ltd.
|
|
*
|
|
* All Rights Reserved.
|
|
* Confidential and Proprietary - Quaming Intelligent Technology Co., Ltd.
|
|
*/
|
|
|
|
#ifndef __QUA_MEDIAEXTRACTOR_API_H__
|
|
#define __QUA_MEDIAEXTRACTOR_API_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_mediaextractor_new(const QUA_CHAR* source);
|
|
extern QUA_SIZE_T qua_mediaextractor_trackCount(QUA_VOID* ex);
|
|
extern QUA_S32 qua_mediaextractor_getAudioTrackIndex(QUA_VOID* ex);
|
|
extern QUA_S32 qua_mediaextractor_getVideoTrackIndex(QUA_VOID* ex);
|
|
extern QUA_S32 qua_mediaextractor_metaData(QUA_VOID* ex, qua_metaformat_t** meta);
|
|
extern QUA_S32 qua_mediaextractor_trackMetaData(QUA_VOID* ex, QUA_SIZE_T trackIndex, qua_metaformat_t** trackMeta);
|
|
extern QUA_SSIZE_T qua_mediaextractor_readSampleData(QUA_VOID* ex, QUA_SIZE_T trackIndex, qua_packet_t* quaPacket);
|
|
extern QUA_S32 qua_mediaextractor_seekTo(QUA_VOID* ex, QUA_U64 timeUs, seek_mode_t mode);
|
|
extern QUA_BOOL qua_mediaextractor_advance(QUA_VOID* ex);
|
|
extern QUA_S32 qua_mediaextractor_delete(QUA_VOID* ex);
|
|
|
|
#ifdef __cplusplus
|
|
} // extern "C"
|
|
#endif
|
|
|
|
#endif // __QUA_MEDIAEXTRACTOR_API_H__
|