Compartir a través de


AudioTrack Clase

Definición

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones 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
Herencia
AudioTrack
Atributos
Implementaciones

Comentarios

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java. Permite el streaming de búferes de audio PCM al receptor de audio para su reproducción. Esto se logra mediante la "inserción" de los datos en el objeto AudioTrack mediante uno de los #write(byte[], int, int)métodos , #write(short[], int, int)y #write(float[], int, int, int) .

Una instancia de AudioTrack puede funcionar con dos modos: estático o streaming.<br> En modo streaming, la aplicación escribe una secuencia continua de datos en AudioTrack, mediante uno de los write() métodos . Se bloquean y devuelven cuando los datos se han transferido de la capa de Java a la capa nativa y se ponen en cola para la reproducción. El modo de streaming es más útil al reproducir bloques de datos de audio que, por ejemplo, son:

<ul><li>demasiado grande para caber en la memoria debido a la duración del sonido para reproducir,</li><>demasiado grande para caber en la memoria debido a las características de los datos de audio (alta frecuencia de muestreo, bits por muestra ...)</li><li>recibió o generó mientras se reproduce el audio en cola previamente.</li></ul>

Se debe elegir el modo estático al tratar con sonidos cortos que caben en la memoria y que deben reproducirse con la latencia más pequeña posible. Por lo tanto, se prefiere el modo estático para la interfaz de usuario y los sonidos de juego que se juegan a menudo, y con la menor sobrecarga posible.

Tras la creación, un objeto AudioTrack inicializa su búfer de audio asociado. El tamaño de este búfer, especificado durante la construcción, determina cuánto tiempo puede reproducir un AudioTrack antes de quedarse sin datos.<br> For an AudioTrack using the static mode, this size is the maximum size of the sound that can be played from it.<br> Para el modo de streaming, los datos se escribirán en el receptor de audio en fragmentos de tamaños menores o iguales que el tamaño total del búfer.

AudioTrack no es final y, por tanto, permite subclases, pero no se recomienda este uso.

Documentación de Java para android.media.AudioTrack.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Constructores

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

Constructor de clase con AudioAttributes y AudioFormat.

AudioTrack(IntPtr, JniHandleOwnership)

Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución.

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

Constructor de clase.

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

Constructor de clase con sesión de audio.

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

Constructor de clase.

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

Constructor de clase con sesión de audio.

Campos

DualMonoModeLl
Obsoletos.

Este modo indica que se debe presentar una secuencia estéreo con el canal de audio izquierdo replicado en el canal de audio derecho.

DualMonoModeLr
Obsoletos.

Este modo indica que se debe presentar una secuencia estéreo con los canales de audio izquierdo y derecho mezclados y entregados a ambos canales.

DualMonoModeOff
Obsoletos.

Este modo deshabilita cualquier efecto de presentación dual mono.

DualMonoModeRr
Obsoletos.

Este modo indica que se debe presentar una secuencia estéreo con el canal de audio derecho replicado en el canal de audio izquierdo.

EncapsulationMetadataTypeDvbAdDescriptor
Obsoletos.

Tipo de metadatos de encapsulación para el descriptor de DVB AD.

EncapsulationMetadataTypeFrameworkTuner
Obsoletos.

Tipo de metadatos de encapsulación para la información del tuner del marco.

EncapsulationMetadataTypeSupplementaryAudioPlacement
Obsoletos.

Tipo de metadatos de encapsulación para colocar el audio complementario.

EncapsulationModeElementaryStream
Obsoletos.

Este modo indica la encapsulación de metadatos con una carga de flujo elemental.

EncapsulationModeNone
Obsoletos.

Este modo indica que no hay ninguna encapsulación de metadatos, que es el modo predeterminado para enviar datos de audio a través AudioTrackde .

Error
Obsoletos.

Indica un error de operación genérica.

ErrorBadValue
Obsoletos.

Indica un error debido al uso de un valor no válido.

ErrorDeadObject
Obsoletos.

Código de error que indica que el objeto que informa de que ya no es válido y debe volver a crearse.

ErrorInvalidOperation
Obsoletos.

Indica un error debido al uso incorrecto de un método.

Success
Obsoletos.

Indica una operación correcta.

SupplementaryAudioPlacementLeft
Obsoletos.

Se deja la colocación de audio complementaria.

SupplementaryAudioPlacementNormal
Obsoletos.

Colocación de audio adicional normal.

SupplementaryAudioPlacementRight
Obsoletos.

Colocación de audio complementaria derecha.

Propiedades

AudioAttributes

Devuelve el AudioAttributes objeto usado en la configuración.

AudioDescriptionMixLeveldB

Devuelve el nivel de combinación de descripción de audio en dB.

AudioFormat

Devuelve la codificación de datos de audio configurada.

AudioSessionId

Devuelve el identificador de sesión de audio.

BufferCapacityInFrames

Devuelve el tamaño máximo del AudioTrack búfer en fotogramas.

BufferSizeInFrames

Devuelve el tamaño efectivo del AudioTrack búfer en el que escribe la aplicación.

ChannelConfiguration

Devuelve la máscara de posición del canal configurada.

ChannelCount

Devuelve el número configurado de canales.

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
DualMonoMode

Devuelve la configuración de presentación del modo Mono dual.

Format

Devuelve el formato configurado AudioTrack .

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
IsOffloadedPlayback

Devuelve si la pista se creó con establecido en Builder#setOffloadedPlayback(boolean)true.

JniIdentityHashCode

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
JniPeerMembers

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

LogSessionId

Devuelve LogSessionId. -o bien- Establece una LogSessionId instancia en este AudioTrack para la recopilación de métricas.

MaxVolume

Devuelve el valor de ganancia máximo, que es mayor o igual que 1.

Metrics

Devuelve datos de métricas sobre la instancia actual de AudioTrack.

MinVolume

Devuelve el valor de ganancia mínimo, que es la constante 0.

NativeFrameCount
Obsoletos.

Devuelve el recuento de fotogramas del búfer nativo AudioTrack .

NotificationMarkerPosition

Devuelve la posición del marcador expresada en marcos.

OffloadDelay

Devuelve el retraso del descodificador de una pista descargada, expresada en fotogramas, establecido previamente con #setOffloadDelayPadding(int, int)o 0 si nunca se modificó.

OffloadPadding

Devuelve el relleno de descodificador de una pista descargada, expresada en fotogramas, establecido previamente con #setOffloadDelayPadding(int, int)o 0 si nunca se modificó.

PeerReference

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
PerformanceMode

Devuelve el modo de rendimiento actual de AudioTrack.

PlaybackHeadPosition

Devuelve la posición de la cabeza de reproducción expresada en fotogramas.

PlaybackParams

Devuelve los parámetros de reproducción actuales. -o bien- Establece los parámetros de reproducción.

PlaybackRate

Devuelve la velocidad de muestreo de reproducción actual en Hz.

PlayState

Devuelve el estado de reproducción de la instancia de AudioTrack.

PositionNotificationPeriod

Devuelve el período de actualización de notificación expresado en fotogramas.

PreferredDevice

Devuelve la salida seleccionada especificada por #setPreferredDevice.

RoutedDevice

Devuelve un objeto AudioDeviceInfo que identifica el enrutamiento actual de este AudioTrack.

SampleRate

Devuelve la frecuencia de muestreo de origen de audio configurada en Hz.

StartThresholdInFrames

Devuelve el umbral de inicio de streaming de AudioTrack.

State

Devuelve el estado de la instancia de AudioTrack.

StreamType

Devuelve el tipo de flujo de volumen de este AudioTrack.

ThresholdClass

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

UnderrunCount

Devuelve el número de repeticiones en ejecución en el búfer de escritura de nivel de aplicación desde que se creó AudioTrack.

Métodos

AddOnCodecFormatChangedListener(IExecutor, AudioTrack+IOnCodecFormatChangedListener)

Agrega un OnCodecFormatChangedListener objeto para recibir notificaciones de eventos de cambio de formato de códec en este AudioTrack.

AddOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener, Handler)

Agrega un AudioRouting.OnRoutingChangedListener para recibir notificaciones de los cambios de enrutamiento en este AudioTrack.

AddOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener, Handler)

Agrega un AudioRouting.OnRoutingChangedListener para recibir notificaciones de los cambios de enrutamiento en este AudioTrack.

AttachAuxEffect(Int32)

Adjunta un efecto auxiliar a la pista de audio.

Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
CreateVolumeShaper(VolumeShaper+Configuration)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

Dispose()

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
Dispose(Boolean)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
Flush()

Vacía los datos de audio actualmente en cola para su reproducción.

GetHashCode()

Devuelve un valor de código hash del objeto.

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

Devuelve el tamaño mínimo estimado del búfer necesario para crear un objeto AudioTrack en el #MODE_STREAM modo .

GetNativeOutputSampleRate(Stream)

Devuelve la frecuencia de muestreo de salida en Hz para el tipo de flujo especificado.

GetTimestamp(AudioTimestamp)

Sondee una marca de tiempo a petición.

IsDirectPlaybackSupported(AudioFormat, AudioAttributes)

Devuelve si la reproducción directa de un formato de audio con los atributos proporcionados se admite actualmente en el sistema.

JavaFinalize()

Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto .

(Heredado de Object)
Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
Pause()

Pausa la reproducción de los datos de audio.

Play()

Comienza a reproducir un AudioTrack.

RegisterStreamEventCallback(IExecutor, AudioTrack+StreamEventCallback)

Registra una devolución de llamada para la notificación de eventos de secuencia.

Release()

Libera los recursos nativos de AudioTrack.

ReloadStaticData()

Establece la posición principal de reproducción dentro del búfer estático en cero, es decir, se rebobina para iniciar el búfer estático.

RemoveOnCodecFormatChangedListener(AudioTrack+IOnCodecFormatChangedListener)

Quita un OnCodecFormatChangedListener objeto que se ha agregado anteriormente para recibir eventos de cambio de formato de códec.

RemoveOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener)

Quita un objeto AudioRouting.OnRoutingChangedListener que se ha agregado anteriormente para recibir notificaciones de reenrutamiento.

RemoveOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener)

Quita un objeto AudioRouting.OnRoutingChangedListener que se ha agregado anteriormente para recibir notificaciones de reenrutamiento.

SetAudioDescriptionMixLeveldB(Single)

Establece el nivel de combinación de descripción de audio en dB.

SetAuxEffectSendLevel(Single)

Establece el nivel de envío de la pista de audio en el efecto #attachAuxEffect(int)auxiliar adjunto.

SetBufferSizeInFrames(Int32)

Limita el tamaño efectivo del AudioTrack búfer en el que escribe la aplicación.

SetDualMonoMode(Int32)

Establece la presentación en modo Mono dual en el dispositivo de salida.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetLoopPoints(Int32, Int32, Int32)

Establece los puntos de bucle y el recuento de bucles.

SetNotificationMarkerPosition(Int32)

Establece la posición del marcador de notificación.

SetOffloadDelayPadding(Int32, Int32)

Configura los valores de retardo y relleno para la secuencia comprimida actual que se reproduce en modo de descarga.

SetOffloadEndOfStream()

Declara que la última operación de escritura() en esta pista proporcionó el último búfer de esta secuencia.

SetPlaybackHeadPosition(Int32)

Establece la posición principal de reproducción dentro del búfer estático.

SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener)

Establece el agente de escucha que AudioTrack notifica cuando se alcanza un marcador establecido previamente o para cada actualización periódica de la posición principal de reproducción.

SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener, Handler)

Establece el agente de escucha que AudioTrack notifica cuando se alcanza un marcador establecido previamente o para cada actualización periódica de la posición principal de reproducción.

SetPlaybackRate(Int32)

Establece la frecuencia de muestreo de reproducción para esta pista.

SetPositionNotificationPeriod(Int32)

Establece el período para el evento de notificación periódica.

SetPreferredDevice(AudioDeviceInfo)

Especifica un dispositivo de audio (a través de un AudioDeviceInfo objeto) para enrutar la salida de este AudioTrack.

SetPresentation(AudioPresentation)

Establece la presentación de audio.

SetStartThresholdInFrames(Int32)

Establece el umbral de inicio de streaming para .AudioTrack

SetState(Int32)
Obsoletos.

Establece el estado de inicialización de la instancia.

SetStereoVolume(Single, Single)
Obsoletos.

Establece los valores de ganancia de salida izquierdo y derecho especificados en AudioTrack.

SetVolume(Single)

Establece el valor de ganancia de salida especificado en todos los canales de esta pista.

Stop()

Deja de reproducir los datos de audio.

ToArray<T>()

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
UnregisterStreamEventCallback(AudioTrack+StreamEventCallback)

Anula el registro de la devolución de llamada para la notificación de eventos de secuencia, registrados anteriormente con #registerStreamEventCallback(Executor, StreamEventCallback).

Wait()

Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em> o <em>interrumpido</em>.<><

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

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

Escribe los datos de audio en el receptor de audio para la reproducción (modo de streaming) o copia los datos de audio para la reproducción posterior (modo de búfer estático).

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

Escribe los datos de audio en el receptor de audio para la reproducción (modo de streaming) o copia los datos de audio para la reproducción posterior (modo de búfer estático).

Write(ByteBuffer, Int32, WriteMode)

Escribe los datos de audio en el receptor de audio para la reproducción (modo de streaming) o copia los datos de audio para la reproducción posterior (modo de búfer estático).

Write(ByteBuffer, Int32, WriteMode, Int64)

Escribe los datos de audio en el receptor de audio para su reproducción en modo de streaming en una pista de HW_AV_SYNC.

Write(Int16[], Int32, Int32)

Escribe los datos de audio en el receptor de audio para la reproducción (modo de streaming) o copia los datos de audio para la reproducción posterior (modo de búfer estático).

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

Escribe los datos de audio en el receptor de audio para la reproducción (modo de streaming) o copia los datos de audio para la reproducción posterior (modo de búfer estático).

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

Escribe los datos de audio en el receptor de audio para la reproducción (modo de streaming) o copia los datos de audio para la reproducción posterior (modo de búfer estático).

WriteAsync(Byte[], Int32, Int32)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

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

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

WriteAsync(ByteBuffer, Int32, WriteMode)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

WriteAsync(ByteBuffer, Int32, WriteMode, Int64)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

WriteAsync(Int16[], Int32, Int32)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

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

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

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

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

Eventos

MarkerReached

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

PeriodicNotification

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

RoutingChanged

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
IJavaPeerable.Finalized()

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

(Heredado de Object)

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

GetJniTypeName(IJavaPeerable)

La clase AudioTrack administra y reproduce un único recurso de audio para aplicaciones Java.

Se aplica a