OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
AudioDecode.h File Reference
#include <Uefi.h>
#include <Protocol/AudioIo.h>

Go to the source code of this file.

Data Structures

struct  EFI_AUDIO_DECODE_PROTOCOL_
 

Macros

#define EFI_AUDIO_DECODE_PROTOCOL_GUID
 

Typedefs

typedef struct EFI_AUDIO_DECODE_PROTOCOL_ EFI_AUDIO_DECODE_PROTOCOL
 
typedef EFI_STATUS(EFIAPI * EFI_AUDIO_DECODE_ANY) (IN EFI_AUDIO_DECODE_PROTOCOL *This, IN CONST VOID *InBuffer, IN UINT32 InBufferSize, OUT VOID **OutBuffer, OUT UINT32 *OutBufferSize, OUT EFI_AUDIO_IO_PROTOCOL_FREQ *Frequency, OUT EFI_AUDIO_IO_PROTOCOL_BITS *Bits, OUT UINT8 *Channels)
 
typedef EFI_STATUS(EFIAPI * EFI_AUDIO_DECODE_WAVE) (IN EFI_AUDIO_DECODE_PROTOCOL *This, IN CONST VOID *InBuffer, IN UINT32 InBufferSize, OUT VOID **OutBuffer, OUT UINT32 *OutBufferSize, OUT EFI_AUDIO_IO_PROTOCOL_FREQ *Frequency, OUT EFI_AUDIO_IO_PROTOCOL_BITS *Bits, OUT UINT8 *Channels, IN BOOLEAN InPlace)
 
typedef EFI_STATUS(EFIAPI * EFI_AUDIO_DECODE_MP3) (IN EFI_AUDIO_DECODE_PROTOCOL *This, IN CONST VOID *InBuffer, IN UINT32 InBufferSize, OUT VOID **OutBuffer, OUT UINT32 *OutBufferSize, OUT EFI_AUDIO_IO_PROTOCOL_FREQ *Frequency, OUT EFI_AUDIO_IO_PROTOCOL_BITS *Bits, OUT UINT8 *Channels)
 

Variables

EFI_GUID gEfiAudioDecodeProtocolGuid
 

Detailed Description

Copyright (C) 2021, vit9696. All rights reserved.

All rights reserved.

This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

Definition in file AudioDecode.h.

Macro Definition Documentation

◆ EFI_AUDIO_DECODE_PROTOCOL_GUID

#define EFI_AUDIO_DECODE_PROTOCOL_GUID
Value:
{ 0xAF3F6C23, 0x8132, 0x4880, \
{ 0xB3, 0x29, 0x04, 0x8D, 0xF7, 0x1D, 0xD8, 0x6A } }

Audio decoding protocol GUID.

Definition at line 24 of file AudioDecode.h.

Typedef Documentation

◆ EFI_AUDIO_DECODE_ANY

typedef EFI_STATUS(EFIAPI * EFI_AUDIO_DECODE_ANY) (IN EFI_AUDIO_DECODE_PROTOCOL *This, IN CONST VOID *InBuffer, IN UINT32 InBufferSize, OUT VOID **OutBuffer, OUT UINT32 *OutBufferSize, OUT EFI_AUDIO_IO_PROTOCOL_FREQ *Frequency, OUT EFI_AUDIO_IO_PROTOCOL_BITS *Bits, OUT UINT8 *Channels)

Decode any supported audio to PCM audio.

Parameters
[in]ThisAudio decode protocol instance.
[in]InBufferBuffer with audio data.
[in]InBufferSizeInBuffer size in bytes.
[out]OutBufferDecoded PCM data allocated from pool (needs to be freed).
[out]OutBufferSizeDecoded PCM data size in bytes.
[out]FrequencyDecoded PCM frequency.
[out]BitsDecoded bit count.
[out]ChannelsDecoded amount of channels.
Return values
EFI_SUCCESSon success.
EFI_INVALID_PARAMETERfor null pointers.
EFI_UNSUPPORTEDon format mismatch.
EFI_OUT_OF_RESOURCESon memory allocation failure.

Definition at line 48 of file AudioDecode.h.

◆ EFI_AUDIO_DECODE_MP3

typedef EFI_STATUS(EFIAPI * EFI_AUDIO_DECODE_MP3) (IN EFI_AUDIO_DECODE_PROTOCOL *This, IN CONST VOID *InBuffer, IN UINT32 InBufferSize, OUT VOID **OutBuffer, OUT UINT32 *OutBufferSize, OUT EFI_AUDIO_IO_PROTOCOL_FREQ *Frequency, OUT EFI_AUDIO_IO_PROTOCOL_BITS *Bits, OUT UINT8 *Channels)

Decode MP3 audio to PCM audio.

Parameters
[in]ThisAudio decode protocol instance.
[in]InBufferBuffer with audio data.
[in]InBufferSizeInBuffer size in bytes.
[out]OutBufferDecoded PCM data allocated from pool (needs to be freed).
[out]OutBufferSizeDecoded PCM data size in bytes.
[out]FrequencyDecoded PCM frequency.
[out]BitsDecoded bit count.
[out]ChannelsDecoded amount of channels.
Return values
EFI_SUCCESSon success.
EFI_INVALID_PARAMETERfor null pointers.
EFI_UNSUPPORTEDon format mismatch.
EFI_OUT_OF_RESOURCESon memory allocation failure.

Definition at line 111 of file AudioDecode.h.

◆ EFI_AUDIO_DECODE_PROTOCOL

Definition at line 28 of file AudioDecode.h.

◆ EFI_AUDIO_DECODE_WAVE

typedef EFI_STATUS(EFIAPI * EFI_AUDIO_DECODE_WAVE) (IN EFI_AUDIO_DECODE_PROTOCOL *This, IN CONST VOID *InBuffer, IN UINT32 InBufferSize, OUT VOID **OutBuffer, OUT UINT32 *OutBufferSize, OUT EFI_AUDIO_IO_PROTOCOL_FREQ *Frequency, OUT EFI_AUDIO_IO_PROTOCOL_BITS *Bits, OUT UINT8 *Channels, IN BOOLEAN InPlace)

Decode WAVE audio to PCM audio.

Parameters
[in]ThisAudio decode protocol instance.
[in]InBufferBuffer with audio data.
[in]InBufferSizeInBuffer size in bytes.
[out]OutBufferDecoded PCM data.
[out]OutBufferSizeDecoded PCM data size in bytes.
[out]FrequencyDecoded PCM frequency.
[out]BitsDecoded bit count.
[out]ChannelsDecoded amount of channels.
[in]InPlaceDo not allocate OutBuffer, but reuse InBuffer. Otherwise allocated from pool and needs to be freed.
Return values
EFI_SUCCESSon success.
EFI_INVALID_PARAMETERfor null pointers.
EFI_UNSUPPORTEDon format mismatch.
EFI_OUT_OF_RESOURCESon memory allocation failure.

Definition at line 80 of file AudioDecode.h.

Variable Documentation

◆ gEfiAudioDecodeProtocolGuid

EFI_GUID gEfiAudioDecodeProtocolGuid
extern