Compartilhar via


AudioTrack Classe

Definição

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

[Android.Runtime.Register("android/media/AudioTrack", DoNotGenerateAcw=true)]
public class AudioTrack : Java.Lang.Object, Android.Media.IAudioRouting, Android.Media.IVolumeAutomation, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/media/AudioTrack", DoNotGenerateAcw=true)>]
type AudioTrack = class
    inherit Object
    interface IAudioRouting
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IVolumeAutomation
Herança
AudioTrack
Atributos
Implementações

Comentários

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java. Ele permite o streaming de buffers de áudio PCM para o coletor de áudio para reprodução. Isso é obtido "empurrando" os dados para o objeto AudioTrack usando um dos #write(byte[], int, int)métodos , #write(short[], int, int)e #write(float[], int, int, int) .

Uma instância do AudioTrack pode operar em dois modos: estático ou streaming.<br> No modo Streaming, o aplicativo grava um fluxo contínuo de dados no AudioTrack, usando um dos write() métodos. Eles são bloqueados e retornam quando os dados foram transferidos da camada Java para a camada nativa e enfileirados para reprodução. O modo de streaming é mais útil ao reproduzir blocos de dados de áudio que, por exemplo, são:

<><ul li>muito grande para caber na memória por causa da duração do som para reproduzir,< / li><li>muito grande para caber na memória por causa das características dos dados de áudio (alta taxa de amostragem, bits por amostra ...)</li><li>recebido ou gerado enquanto o áudio anteriormente enfileirado está sendo reproduzido.</li></ul>

O modo estático deve ser escolhido ao lidar com sons curtos que se encaixam na memória e que precisam ser reproduzidos com a menor latência possível. O modo estático será, portanto, preferido para sons de interface do usuário e jogos que são reproduzidos com frequência e com a menor sobrecarga possível.

Após a criação, um objeto AudioTrack inicializa seu buffer de áudio associado. O tamanho desse buffer, especificado durante a construção, determina por quanto tempo um AudioTrack pode ser reproduzido antes de ficar sem dados.<br> Para um AudioTrack usando o modo estático, esse tamanho é o tamanho máximo do som que pode ser reproduzido a partir dele.<br> Para o modo de streaming, os dados serão gravados no coletor de áudio em blocos de tamanhos menores ou iguais ao tamanho total do buffer.

AudioTrack não é final e, portanto, permite subclasses, mas tal uso não é recomendado.

Documentação Java para android.media.AudioTrack.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Construtores

AudioTrack(AudioAttributes, AudioFormat, Int32, AudioTrackMode, Int32)

Construtor de classe com AudioAttributes e AudioFormat.

AudioTrack(IntPtr, JniHandleOwnership)

Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução.

AudioTrack(Stream, Int32, ChannelConfiguration, Encoding, Int32, AudioTrackMode)
Obsoleto.

Construtor de classe.

AudioTrack(Stream, Int32, ChannelConfiguration, Encoding, Int32, AudioTrackMode, Int32)
Obsoleto.

Construtor de classe com sessão de áudio.

AudioTrack(Stream, Int32, ChannelOut, Encoding, Int32, AudioTrackMode)

Construtor de classe.

AudioTrack(Stream, Int32, ChannelOut, Encoding, Int32, AudioTrackMode, Int32)

Construtor de classe com sessão de áudio.

Campos

DualMonoModeLl
Obsoleto.

Esse modo indica que um fluxo estéreo deve ser apresentado com o canal de áudio esquerdo replicado no canal de áudio direito.

DualMonoModeLr
Obsoleto.

Esse modo indica que um fluxo estéreo deve ser apresentado com os canais de áudio esquerdo e direito misturados e entregues a ambos os canais.

DualMonoModeOff
Obsoleto.

Este modo desativa qualquer efeito de apresentação Dual Mono.

DualMonoModeRr
Obsoleto.

Esse modo indica que um fluxo estéreo deve ser apresentado com o canal de áudio direito replicado no canal de áudio esquerdo.

EncapsulationMetadataTypeDvbAdDescriptor
Obsoleto.

Tipo de metadados de encapsulamento para o descritor DVB AD.

EncapsulationMetadataTypeFrameworkTuner
Obsoleto.

Tipo de metadados de encapsulamento para informações do sintonizador de estrutura.

EncapsulationMetadataTypeSupplementaryAudioPlacement
Obsoleto.

Tipo de metadados de encapsulamento para colocação de áudio suplementar.

EncapsulationModeElementaryStream
Obsoleto.

Esse modo indica o encapsulamento de metadados com uma carga útil de fluxo elementar.

EncapsulationModeNone
Obsoleto.

Esse modo indica que não há encapsulamento de metadados, que é o modo padrão para enviar dados de áudio por meio do AudioTrack.

Error
Obsoleto.

Denota uma falha de operação genérica.

ErrorBadValue
Obsoleto.

Denota uma falha devido ao uso de um valor inválido.

ErrorDeadObject
Obsoleto.

Um código de erro indicando que o objeto que o relata não é mais válido e precisa ser recriado.

ErrorInvalidOperation
Obsoleto.

Denota uma falha devido ao uso indevido de um método.

Success
Obsoleto.

Denota uma operação bem-sucedida.

SupplementaryAudioPlacementLeft
Obsoleto.

Posicionamento de áudio suplementar à esquerda.

SupplementaryAudioPlacementNormal
Obsoleto.

Colocação de áudio suplementar normal.

SupplementaryAudioPlacementRight
Obsoleto.

Direito de colocação de áudio suplementar.

Propriedades

AudioAttributes

Retorna o AudioAttributes usado na configuração.

AudioDescriptionMixLeveldB

Retorna o nível de mixagem de Descrição de Áudio em dB.

AudioFormat

Retorna a codificação de dados de áudio configurada.

AudioSessionId

Retorna o ID da sessão de áudio.

BufferCapacityInFrames

Retorna o tamanho máximo do AudioTrack buffer em quadros.

BufferSizeInFrames

Retorna o tamanho efetivo do AudioTrack buffer no qual o aplicativo grava.

ChannelConfiguration

Retorna a máscara de posição do canal configurada.

ChannelCount

Retorna o número configurado de canais.

Class

Retorna a classe de tempo de execução deste Object.

(Herdado de Object)
DualMonoMode

Retorna a configuração de apresentação do modo Dual Mono.

Format

Retorna o formato configurado AudioTrack .

Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
IsOffloadedPlayback

Retorna se a faixa foi construída com Builder#setOffloadedPlayback(boolean) definido como true.

JniIdentityHashCode

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
JniPeerMembers

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

LogSessionId

Retorna o LogSessionId. -ou- Define uma LogSessionId instância para este AudioTrack para coleta de métricas.

MaxVolume

Retorna o valor máximo de ganho, que é maior ou igual a 1.

Metrics

Retorne dados de métricas sobre a instância atual do AudioTrack.

MinVolume

Retorna o valor de ganho mínimo, que é a constante 0.

NativeFrameCount
Obsoleto.

Retorna a contagem de quadros do buffer nativo AudioTrack .

NotificationMarkerPosition

Retorna a posição do marcador expressa em quadros.

OffloadDelay

Retorne o atraso do decodificador de uma trilha descarregada, expresso em quadros, previamente definido com #setOffloadDelayPadding(int, int), ou 0 se ele nunca tiver sido modificado.

OffloadPadding

Retorne o preenchimento do decodificador de uma faixa descarregada, expressa em quadros, definida anteriormente com #setOffloadDelayPadding(int, int), ou 0 se ela nunca tiver sido modificada.

PeerReference

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
PerformanceMode

Retorna o modo de desempenho atual do AudioTrack.

PlaybackHeadPosition

Retorna a posição da cabeça de reprodução expressa em quadros.

PlaybackParams

Retorna os parâmetros de reprodução atuais. -ou- Define os parâmetros de reprodução.

PlaybackRate

Retorna a taxa de amostragem de reprodução atual em Hz.

PlayState

Retorna o estado de reprodução da instância AudioTrack.

PositionNotificationPeriod

Retorna o período de atualização da notificação expresso em quadros.

PreferredDevice

Retorna a saída selecionada especificada por #setPreferredDevice.

RoutedDevice

Retorna uma AudioDeviceInfo identificação do roteamento atual deste AudioTrack.

SampleRate

Retorna a taxa de amostragem da fonte de áudio configurada em Hz.

StartThresholdInFrames

Retorna o limite de início de streaming do AudioTrack.

State

Retorna o estado da instância AudioTrack.

StreamType

Retorna o tipo de fluxo de volume deste AudioTrack.

ThresholdClass

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

UnderrunCount

Retorna o número de ocorrências de underrun no buffer de gravação no nível do aplicativo desde que o AudioTrack foi criado.

Métodos

AddOnCodecFormatChangedListener(IExecutor, AudioTrack+IOnCodecFormatChangedListener)

Adiciona um OnCodecFormatChangedListener para receber notificações de eventos de alteração de formato de codec neste AudioTrack.

AddOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener, Handler)

Adiciona um AudioRouting.OnRoutingChangedListener para receber notificações de alterações de roteamento neste AudioTrack.

AddOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener, Handler)

Adiciona um AudioRouting.OnRoutingChangedListener para receber notificações de alterações de roteamento neste AudioTrack.

AttachAuxEffect(Int32)

Anexa um efeito auxiliar à faixa de áudio.

Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
CreateVolumeShaper(VolumeShaper+Configuration)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

Dispose()

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
Dispose(Boolean)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
Equals(Object)

Indica se algum outro objeto é "igual" a este.

(Herdado de Object)
Flush()

Libera os dados de áudio atualmente enfileirados para reprodução.

GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
GetMinBufferSize(Int32, ChannelOut, Encoding)

Retorna o tamanho mínimo estimado do buffer necessário para que um objeto AudioTrack seja criado no #MODE_STREAM modo.

GetNativeOutputSampleRate(Stream)

Retorna a taxa de amostragem de saída em Hz para o tipo de fluxo especificado.

GetTimestamp(AudioTimestamp)

Sondagem para um carimbo de data/hora sob demanda.

IsDirectPlaybackSupported(AudioFormat, AudioAttributes)

Retorna se a reprodução direta de um formato de áudio com os atributos fornecidos é atualmente suportada no sistema.

JavaFinalize()

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
Notify()

Ativa um único thread que está aguardando no monitor deste objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
Pause()

Pausa a reprodução dos dados de áudio.

Play()

Começa a reproduzir um AudioTrack.

RegisterStreamEventCallback(IExecutor, AudioTrack+StreamEventCallback)

Registra um retorno de chamada para a notificação de eventos de fluxo.

Release()

Libera os recursos nativos do AudioTrack.

ReloadStaticData()

Define a posição da cabeça de reprodução dentro do buffer estático como zero, ou seja, ele retrocede para o início do buffer estático.

RemoveOnCodecFormatChangedListener(AudioTrack+IOnCodecFormatChangedListener)

Remove um OnCodecFormatChangedListener que foi adicionado anteriormente para receber eventos de alteração de formato de codec.

RemoveOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener)

Remove um AudioRouting.OnRoutingChangedListener que foi adicionado anteriormente para receber notificações de redirecionamento.

RemoveOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener)

Remove um AudioRouting.OnRoutingChangedListener que foi adicionado anteriormente para receber notificações de redirecionamento.

SetAudioDescriptionMixLeveldB(Single)

Define o nível de mixagem de audiodescrição em dB.

SetAuxEffectSendLevel(Single)

Define o nível de envio da faixa de áudio para o efeito #attachAuxEffect(int)auxiliar anexado.

SetBufferSizeInFrames(Int32)

Limita o tamanho efetivo do AudioTrack buffer no qual o aplicativo grava.

SetDualMonoMode(Int32)

Define a apresentação do modo Dual Mono no dispositivo de saída.

SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle.

(Herdado de Object)
SetLoopPoints(Int32, Int32, Int32)

Define os pontos de loop e a contagem de loop.

SetNotificationMarkerPosition(Int32)

Define a posição do marcador de notificação.

SetOffloadDelayPadding(Int32, Int32)

Configura os valores de atraso e preenchimento para o fluxo compactado atual em execução no modo de descarregamento.

SetOffloadEndOfStream()

Declara que a última operação write() nessa trilha forneceu o último buffer desse fluxo.

SetPlaybackHeadPosition(Int32)

Define a posição da cabeça de reprodução dentro do buffer estático.

SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener)

Define o ouvinte que o AudioTrack notifica quando um marcador definido anteriormente é atingido ou para cada atualização periódica da posição da cabeça de reprodução.

SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener, Handler)

Define o ouvinte que o AudioTrack notifica quando um marcador definido anteriormente é atingido ou para cada atualização periódica da posição da cabeça de reprodução.

SetPlaybackRate(Int32)

Define a taxa de amostragem de reprodução para esta faixa.

SetPositionNotificationPeriod(Int32)

Define o período para o evento de notificação periódica.

SetPreferredDevice(AudioDeviceInfo)

Especifica um dispositivo de áudio (por meio de um AudioDeviceInfo objeto) para rotear a saída deste AudioTrack.

SetPresentation(AudioPresentation)

Define a apresentação de áudio.

SetStartThresholdInFrames(Int32)

Define o limite de início de streaming para um AudioTrackarquivo .

SetState(Int32)
Obsoleto.

Define o estado de inicialização da instância.

SetStereoVolume(Single, Single)
Obsoleto.

Define os valores de ganho de saída à esquerda e à direita especificados no AudioTrack.

SetVolume(Single)

Define o valor de ganho de saída especificado em todos os canais dessa faixa.

Stop()

Pára de reproduzir os dados de áudio.

ToArray<T>()

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
UnregisterFromRuntime()

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
UnregisterStreamEventCallback(AudioTrack+StreamEventCallback)

Cancela o registro do retorno de chamada para notificação de eventos de fluxo, previamente registrados no #registerStreamEventCallback(Executor, StreamEventCallback).

Wait()

Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido.

(Herdado de Object)
Write(Byte[], Int32, Int32)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia os dados de áudio para reprodução posterior (modo de buffer estático).

Write(Byte[], Int32, Int32, WriteMode)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia os dados de áudio para reprodução posterior (modo de buffer estático).

Write(ByteBuffer, Int32, WriteMode)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia os dados de áudio para reprodução posterior (modo de buffer estático).

Write(ByteBuffer, Int32, WriteMode, Int64)

Grava os dados de áudio no coletor de áudio para reprodução no modo de streaming em uma faixa HW_AV_SYNC.

Write(Int16[], Int32, Int32)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia os dados de áudio para reprodução posterior (modo de buffer estático).

Write(Int16[], Int32, Int32, WriteMode)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia os dados de áudio para reprodução posterior (modo de buffer estático).

Write(Single[], Int32, Int32, WriteMode)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia os dados de áudio para reprodução posterior (modo de buffer estático).

WriteAsync(Byte[], Int32, Int32)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

WriteAsync(Byte[], Int32, Int32, WriteMode)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

WriteAsync(ByteBuffer, Int32, WriteMode)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

WriteAsync(ByteBuffer, Int32, WriteMode, Int64)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

WriteAsync(Int16[], Int32, Int32)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

WriteAsync(Int16[], Int32, Int32, WriteMode)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

WriteAsync(Single[], Int32, Int32, WriteMode)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

Eventos

MarkerReached

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

PeriodicNotification

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

RoutingChanged

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

Implantações explícitas de interface

IJavaPeerable.Disposed()

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
IJavaPeerable.DisposeUnlessReferenced()

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
IJavaPeerable.Finalized()

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
IJavaPeerable.JniManagedPeerState

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

(Herdado de Object)

Métodos de Extensão

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo verificada em tempo de execução do Android.

JavaCast<TResult>(IJavaObject)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

GetJniTypeName(IJavaPeerable)

A classe AudioTrack gerencia e reproduz um único recurso de áudio para aplicativos Java.

Aplica-se a