Idioma

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
[<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 "enviando" os dados por push para o objeto AudioTrack usando um dos métodos e #write(byte[], int, int) um #write(short[], int, int)deles#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 retornados quando os dados são 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 devido à duração do som a ser reproduzido,</li><li>muito grande para caber na memória devido às características dos dados de áudio (alta taxa de amostragem, bits por exemplo ...)</li li><>recebeu ou gerou enquanto o áudio enfileirado anteriormente 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. Portanto, o modo estático será preferido para interface do usuário e sons de jogo 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 dele.<br> Para o modo de streaming, os dados serão gravados no coletor de áudio em partes de tamanhos menores ou iguais ao tamanho total do buffer.

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

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

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

Construtores

Nome Description
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 runtime.

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

Construtor de classe com sessão de áudio.

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

Construtor de classe.

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

Construtor de classe com sessão de áudio.

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

Construtor de classe.

Campos

Nome Description
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 à esquerda e à direita combinados e entregues a ambos os canais.

DualMonoModeOff
Obsoleto.

Esse modo desabilita 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 do DVB AD.

EncapsulationMetadataTypeFrameworkTuner
Obsoleto.

Tipo de metadados de encapsulamento para informações de ajuste de estrutura.

EncapsulationMetadataTypeSupplementaryAudioPlacement
Obsoleto.

Tipo de metadados de encapsulamento para posicionamento de áudio suplementar.

EncapsulationModeElementaryStream
Obsoleto.

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

EncapsulationModeNone
Obsoleto.

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

Error
Obsoleto.

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

ErrorBadValue
Obsoleto.

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

ErrorDeadObject
Obsoleto.

Um código de erro que indica que o relatório do objeto não é mais válido e precisa ser recriado.

ErrorInvalidOperation
Obsoleto.

Indica uma falha devido ao uso inadequado de um método.

FlushFromAccuracyBestEffort
Obsoleto.

O modo de precisão para #flushWrittenFramesFromPosition(long, int) indicar a estrutura liberará os dados o mais próximo possível, mas não abaixo, da posição solicitada.

FlushFromAccuracyExact
Obsoleto.

O modo de precisão para #flushWrittenFramesFromPosition(long, int) indicar que o AudioTrack deve ser liberado da posição solicitada.

FlushWrittenFramesSupported
Obsoleto.

Há suporte para o valor do sinalizador constante para indicar #flushWrittenFramesFromPosition(long, int) .

Success
Obsoleto.

Indica uma operação bem-sucedida.

SupplementaryAudioPlacementLeft
Obsoleto.

Posicionamento de áudio suplementar à esquerda.

SupplementaryAudioPlacementNormal
Obsoleto.

Posicionamento de áudio suplementar normal.

SupplementaryAudioPlacementRight
Obsoleto.

Posicionamento de áudio suplementar à direita.

Propriedades

Nome Description
AudioAttributes

Retorna o AudioAttributes usado na configuração.

AudioDescriptionMixLeveldB

Retorna o nível de combinação de Descrição de Áudio no banco de dados.

AudioFormat

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

AudioSessionId

Retorna a 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 runtime deste Object.

(Herdado de Object)
CodecProvenance

Retorna a procedência codec do AudioTrack especificado no momento da configuração.

DualMonoMode

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

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 criada com Builder#setOffloadedPlayback(boolean) set to true.

JniIdentityHashCode

Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade.

(Herdado de Object)
JniManagedPeerState

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

(Herdado de JavaObject)
JniPeerMembers

Obtém os metadados JNI usados para acessar membros dessa associação Java.

LogSessionId

Retorna o LogSessionId. -ou- Define uma LogSessionId instância para esta coleção audiotrack para métricas.

MaxVolume

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

Metrics

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

MinVolume

Retorna o valor mínimo de ganho, 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 faixa descarregada, expressa em quadros, definida anteriormente com #setOffloadDelayPadding(int, int), ou 0, se nunca tiver sido modificada.

OffloadPadding

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

PeerReference

Obtém a referência de objeto JNI para este par 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 amostra de reprodução atual no Hz.

PlayState

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

PositionNotificationPeriod

Retorna o período de atualização de 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.

RoutedDevices

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

SampleRate

Retorna a taxa de exemplo de origem de áudio configurada no Hz.

StartThresholdInFrames

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

State

Retorna o estado da instância do AudioTrack.

StreamType

Retorna o tipo de fluxo de volume deste AudioTrack.

ThresholdClass

Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Essa API dá suporte à infraestrutura do 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 subexecução no buffer de gravação no nível do aplicativo desde que o AudioTrack foi criado.

WrittenFramesCount

Retorna o número de quadros de áudio gravados em um #MODE_STREAMAudioTrack.

Métodos

Nome Description
AddOnCodecFormatChangedListener(IExecutor, AudioTrack+IOnCodecFormatChangedListener)

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

AddOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener, Handler)
Obsoleto.

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)
Construct(JniObjectReference, JniObjectReferenceOptions)

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

(Herdado de JavaObject)
CreateVolumeShaper(VolumeShaper+Configuration)

Retorna um objeto VolumeShaper que pode ser usado para modificar o envelope de volume do player ou da faixa.

Dispose()

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Dispose(Boolean)

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
DisposeUnlessReferenced()

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

(Herdado de JavaObject)
Equals(Object)

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

(Herdado de JavaObject)
Equals(Object)

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

(Herdado de Object)
Flush()

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

FlushWrittenFramesFromPosition(Int64, Int32)

Libere todos os dados da posição fornecida.

GetFlushWrittenFramesFromPositionSupport(AudioFormat, AudioAttributes)

Retorna uma máscara de bits que representa o suporte do recurso atual para #flushWrittenFramesFromPosition(long, int) o AudioTrack no modo de descarregamento que é criado com o determinado AudioFormat e AudioAttributes.

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 exemplo 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 tem suporte no sistema no momento.

JavaFinalize()
Obsoleto.

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 de cabeçalho 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 codec.

RemoveOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener)
Obsoleto.

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 combinação de Descrição de Áudio no banco de dados.

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 Mono Duplo 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 loops.

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 sendo reproduzido no modo de descarregamento.

SetOffloadEndOfStream()

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

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

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

(Herdado de JavaObject)
SetPlaybackHeadPosition(Int32)

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

SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener, Handler)

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

SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener)

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

SetPlaybackRate(Int32)

Define a taxa de exemplo de reprodução para essa faixa.

SetPositionNotificationPeriod(Int32)

Define o período do 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 AudioTrack.

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()

Para de reproduzir os dados de áudio.

ToArray<T>()

Cria uma matriz gerenciada com base nesse wrapper de matriz Java.

(Herdado de Object)
ToString()

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

(Herdado de Object)
UnregisterFromRuntime()

Cancela o registro desse par Java do runtime de interoperabilidade.

(Herdado de Object)
UnregisterStreamEventCallback(AudioTrack+StreamEventCallback)

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

Wait()

Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<>

(Herdado de Object)
Wait(Int64, Int32)

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

(Herdado de Object)
Wait(Int64)

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

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

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

Write(Byte[], Int32, Int32)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia 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 de HW_AV_SYNC.

Write(ByteBuffer, Int32, WriteMode)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia 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 dados de áudio para reprodução posterior (modo de buffer estático).

Write(Int16[], Int32, Int32)

Grava os dados de áudio no coletor de áudio para reprodução (modo de streaming) ou copia 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 dados de áudio para reprodução posterior (modo de buffer estático).

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

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

WriteAsync(Byte[], Int32, Int32)

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(ByteBuffer, Int32, WriteMode)

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(Int16[], Int32, Int32)

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

Nome Description
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

Nome Description
IJavaPeerable.Disposed()

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

(Herdado de JavaObject)
IJavaPeerable.Finalized()

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

(Herdado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

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

(Herdado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

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

(Herdado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

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

(Herdado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

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

(Herdado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Remove essa instância da pesquisa de objeto Java do runtime.

Métodos de Extensão

Nome Description
GetJniTypeName(IJavaPeerable)

Obtém o nome JNI do tipo da instância self.

JavaAs<TResult>(IJavaPeerable)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo marcada por runtime do Android.

JavaCast<TResult>(IJavaObject)

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

TryJavaCast<TResult>(IJavaPeerable, TResult)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

Aplica-se a