You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
1.3 KiB

/*
* Copyright (c) Hisilicon Technologies Co., Ltd. 2019-2019. All rights reserved.
* Description: adec common
* Author: audio
* Create: 2019-05-30
*/
#ifndef __ADEC_COMMON_H__
#define __ADEC_COMMON_H__
#include <pthread.h>
#include "uapi_acodec.h"
td_void adec_sleep(td_ulong ms);
td_u32 adec_get_time_stamp(td_void);
td_u64 adec_get_time64(td_void);
td_void adec_mutex_init(pthread_mutex_t *mutex);
td_void adec_mutex_deinit(pthread_mutex_t *mutex);
td_void adec_mutex_lock(pthread_mutex_t *mutex);
td_void adec_mutex_unlock(pthread_mutex_t *mutex);
td_void adec_free(td_void *buf);
td_void *adec_malloc(td_u32 size);
td_u32 adec_get_max_pcm_out_size(const uapi_acodec_decode *codec, td_void *decoder);
td_u32 adec_get_max_bits_out_size(const uapi_acodec_decode *codec, td_void *decoder);
td_s32 adec_set_config(const uapi_acodec_decode *codec, td_void *decoder, td_void *codec_cfg);
td_s32 adec_decode_frame(const uapi_acodec_decode *codec, td_void *decoder,
uapi_acodec_dec_in_packet *in_pkt, uapi_acodec_dec_out_packet *out_pkt);
td_s32 adec_register_decoder(const td_char *codec_name);
td_s32 adec_get_codec_id(uapi_acodec_format format, td_u32 *codec_id);
td_s32 adec_set_config_decoder(const td_u32 codec_id, td_void *cfg);
uapi_acodec_decode *adec_get_decoder_list(td_void);
#endif /* __ADEC_COMMON_H__ */