Files
2026-08-24 10:03:24 +08:00

64 lines
2.2 KiB
C

/*
* Copyright (C) 2025 Amlogic Corporation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef _AUDIO_MPEGH_H_
#define _AUDIO_MPEGH_H_
#ifdef __cplusplus
extern "C" {
#endif
struct audio_stream_out;
struct aml_audio_device;
struct aml_audio_buffer;
#define AML_MPEGH_AUDIO_LANG 0
#define AML_MPEGH_LABEL_LANG 1
#define AML_MPEGH_DRC_ATT 2
#define AML_MPEGH_ACCESSIBILITY 3
#define AML_MPEGH_DRC_EFFECT 4
#define AML_MPEGH_DRC_ALBUM 5
#define AML_MPEGH_DRC_BOOST 6
#define AML_MPEGH_TL 7
#define AML_MPEGH_PERSISTENCE_BUFSIZE 2048
#define AML_MPEGH_UIMANAGER_INPUT_FILE_DUMP_DIR "/data/vendor/audiohal/ui_manager_input.raw"
#define AML_MPEGH_UIMANAGER_OUTPUT_FILE_DUMP_DIR "/data/vendor/audiohal/ui_manager_output.raw"
#define AML_MPEGH_UI_MANAGER_SYSTEM_SETTING_NUM 8
typedef enum {
MPEGH_UI_OK = 0,
MPEGH_UI_OUT_OF_MEMORY,
MPEGH_UI_BUFFER_TOO_SMALL, /* This error is not recoverable until a new RAP frame is processed. */
MPEGH_UI_INVALID_PARAM,
MPEGH_UI_NOT_ALLOWED,
MPEGH_UI_INVALID_STATE,
MPEGH_UI_PARSE_ERROR,
MPEGH_UI_OK_BUT_NO_VALID_DATA
} MPEGH_UI_ERROR;
int aml_mpegh_process(void **mpegh_uimanager_handle, struct audio_buffer *abuffer, int *asiupdate);
int aml_mpegh_applyxmlaction (struct aml_audio_device *adev, char *xmlstr, int xmlsize);
char *aml_mpegh_getxmlsceneinfo (struct aml_audio_device *adev);
int set_mpegh_parameters(struct aml_audio_device *adev, struct str_parms *parms);
int aml_mpegh_base64_encode(const unsigned char* input, int input_length, struct aml_audio_device *adev);
int aml_mpegh_close(struct aml_audio_device *adev, void *handle);
#ifdef __cplusplus
}
#endif
#endif