AudioGraph Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa um grafo de áudio de nós de entrada, saída e submixe conectados que manipulam e roteiam áudio.
public ref class AudioGraph sealed : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AudioGraph final : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class AudioGraph : System.IDisposable
Public NotInheritable Class AudioGraph
Implements IDisposable
- Herança
- Atributos
- Implementações
Requisitos do Windows
Família de dispositivos |
Windows 10 (introduzida na 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v1.0)
|
Funcionalidades do aplicativo |
backgroundMediaRecording
|
Comentários
O grafo de áudio é composto por nós de entrada, nós de saída e nós de submix. Os nós de entrada incluem arquivos de áudio, dispositivos de áudio e código que gera dados de áudio. Os nós de saída também incluem arquivos de áudio, dispositivos de áudio e código que processa dados de áudio. Quando o grafo é iniciado, os dados de áudio fluem pelo grafo dos nós de entrada, por meio de quaisquer nós de submix, para os nós de saída. Cada nó pode ter zero ou mais efeitos de áudio que são aplicados aos dados de áudio antes de serem passados para o próximo nó. Essa classe e as APIs relacionadas permitem que você desenvolva aplicativos de áudio com mais rapidez e facilidade do que as APIs COM XAudio2 de baixo nível. Para obter diretrizes sobre como usar grafos de áudio, consulte Gráficos de áudio.
Obtenha uma instância dessa classe chamando AudioGraph.CreateAsync.
Todo o grafo de áudio deve operar na mesma taxa de amostragem. As fontes podem ter taxas de amostragem diferentes, mas são resampládas imediatamente.
Observação
Se nenhum dispositivo de áudio estiver disponível, o grafo de áudio não poderá ser instanciado.
O AudioGraph não pode ser instanciado nas edições N e KN do Windows 8 e Windows 10, a menos que o Feature Pack de Mídia opcional tenha sido instalado. Para obter mais informações, consulte Media Feature Pack para edições do Windows N.
Histórico de versão
Versão do Windows | Versão do SDK | Valor adicionado |
---|---|---|
1607 | 14393 | CreateBatchUpdater |
1607 | 14393 | CreateDeviceInputNodeAsync(MediaCategory,AudioEncodingProperties,DeviceInformation,AudioNodeEmitter) |
1607 | 14393 | CreateFileInputNodeAsync(IStorageFile,AudioNodeEmitter) |
1607 | 14393 | CreateFrameInputNode(AudioEncodingProperties,AudioNodeEmitter) |
1607 | 14393 | CreateSubmixNode(AudioEncodingProperties,AudioNodeEmitter) |
1803 | 17134 | CreateMediaSourceAudioInputNodeAsync(MediaSource) |
1803 | 17134 | CreateMediaSourceAudioInputNodeAsync(MediaSource,AudioNodeEmitter) |
Propriedades
CompletedQuantumCount |
Obtém a contagem quântica concluída para o grafo de áudio. |
EncodingProperties |
Obtém as propriedades de codificação para o grafo de áudio. |
LatencyInSamples |
Obtém a latência em exemplos compatíveis com o grafo de áudio. |
PrimaryRenderDevice |
Obtém o dispositivo de renderização primário para o grafo de áudio. |
RenderDeviceAudioProcessing |
Obtém um valor que indica o modo de processamento de áudio para o grafo de áudio. |
SamplesPerQuantum |
Obtém o número de exemplos por quantum no qual o grafo de áudio está operando no momento. |
Métodos
Close() |
Fecha o grafo de áudio e descarta os recursos associados. |
CreateAsync(AudioGraphSettings) |
Cria um grafo de áudio com configurações específicas. |
CreateBatchUpdater() |
Cria um novo AudioGraphBatchUpdater para o AudioGraph , o que faz com que todas as modificações subsequentes em todos os nós no grafo de áudio sejam acumuladas e confirmadas depois que o aplicativo fecha ou descarta o objeto do atualizador de lote. |
CreateDeviceInputNodeAsync(MediaCategory) |
Cria um AudioDeviceInputNode que insere dados de áudio no grafo de áudio do dispositivo de entrada de áudio padrão, como um microfone ou cartão de áudio. |
CreateDeviceInputNodeAsync(MediaCategory, AudioEncodingProperties) |
Cria um AudioDeviceInputNode que insere dados de áudio no grafo de áudio do dispositivo de entrada de áudio padrão, como um microfone ou áudio cartão. |
CreateDeviceInputNodeAsync(MediaCategory, AudioEncodingProperties, DeviceInformation) |
Cria um AudioDeviceInputNode que insere dados de áudio no grafo de áudio do dispositivo de entrada de áudio especificado, como um microfone ou cartão de áudio. |
CreateDeviceInputNodeAsync(MediaCategory, AudioEncodingProperties, DeviceInformation, AudioNodeEmitter) |
Cria um AudioDeviceInputNode habilitado para áudio espacial que insere dados de áudio no grafo de áudio do dispositivo de entrada de áudio especificado, como um microfone ou cartão de áudio. |
CreateDeviceOutputNodeAsync() |
Cria um novo AudioDeviceOutputNode que gera dados de áudio do grafo de áudio para o dispositivo de saída padrão do sistema, como alto-falantes ou fones de ouvido. |
CreateFileInputNodeAsync(IStorageFile) |
Cria um AudioFileInputNode que insere dados de áudio no grafo de áudio de um arquivo de armazenamento. |
CreateFileInputNodeAsync(IStorageFile, AudioNodeEmitter) |
Cria um AudioFileInputNode habilitado para áudio espacial que insira dados de áudio no grafo de áudio de um arquivo de armazenamento. |
CreateFileOutputNodeAsync(IStorageFile) |
Cria um novo AudioFileOutputNode que gera dados de áudio do grafo de áudio para o arquivo de armazenamento especificado. |
CreateFileOutputNodeAsync(IStorageFile, MediaEncodingProfile) |
Cria um novo AudioFileOutuputNode que gera dados de áudio do grafo de áudio para o arquivo de armazenamento especificado. |
CreateFrameInputNode() |
Cria um AudioFrameInputNode que insere dados de áudio gerados pelo código implementado pelo aplicativo no grafo de áudio. |
CreateFrameInputNode(AudioEncodingProperties) |
Cria um AudioFrameInputNode, com as propriedades de codificação especificadas, que insere dados de áudio gerados pelo código implementado pelo aplicativo no grafo de áudio. |
CreateFrameInputNode(AudioEncodingProperties, AudioNodeEmitter) |
Cria um AudioFrameInputNode habilitado para áudio espacial, com as propriedades de codificação especificadas, que insere dados de áudio gerados pelo código implementado pelo aplicativo no grafo de áudio. |
CreateFrameOutputNode() |
Cria um novo AudioFrameOutputNode que gera dados de áudio do grafo de áudio para o código implementado pelo aplicativo. |
CreateFrameOutputNode(AudioEncodingProperties) |
Cria um novo AudioFrameOutputNode, com as propriedades de codificação especificadas, que gera dados de áudio do grafo de áudio para o código implementado pelo aplicativo. |
CreateMediaSourceAudioInputNodeAsync(MediaSource) |
Cria um MediaSourceAudioInputNode que insira dados de áudio no grafo de áudio do objeto MediaSource fornecido. |
CreateMediaSourceAudioInputNodeAsync(MediaSource, AudioNodeEmitter) |
Cria um MediaSourceAudioInputNode habilitado para áudio espacial que insira dados de áudio no grafo de áudio do objeto MediaSource fornecido. |
CreateSubmixNode() |
Cria um AudioSubmixNode que combina a saída de um ou mais nós de grafo de áudio em uma única saída que pode ser conectada a nós de saída ou a outros nós de submixagem. |
CreateSubmixNode(AudioEncodingProperties) |
Cria um AudioSubmixNode que combina a saída de um ou mais nós de grafo de áudio em uma única saída que pode ser conectada a nós de saída ou a outros nós de submixagem. |
CreateSubmixNode(AudioEncodingProperties, AudioNodeEmitter) |
Cria um AudioSubmixNode habilitado para áudio espacial que combina a saída de um ou mais nós de grafo de áudio em uma única saída que pode ser conectada a nós de saída ou a outros nós de submixagem. |
Dispose() |
Realiza tarefas definidas pelo aplicativo associadas à liberação ou à redefinição de recursos não gerenciados. |
ResetAllNodes() |
Redefine todos os nós no grafo de áudio. |
Start() |
Inicia o grafo de áudio. |
Stop() |
Interrompe o grafo de áudio. |
Eventos
QuantumProcessed |
Notifica que o grafo de áudio processou o quantum especificado. |
QuantumStarted |
Notifica que o grafo de áudio começou a processar um novo quantum. |
UnrecoverableErrorOccurred |
Notifica sobre um erro de áudio irrecuperável na operação de grafo de áudio. |