Partager via


AudioTrack.SetBufferSizeInFrames(Int32) Méthode

Définition

Limite la taille effective de la AudioTrack mémoire tampon dans laquelle l’application écrit.

[Android.Runtime.Register("setBufferSizeInFrames", "(I)I", "GetSetBufferSizeInFrames_IHandler", ApiSince=24)]
public virtual int SetBufferSizeInFrames (int bufferSizeInFrames);
[<Android.Runtime.Register("setBufferSizeInFrames", "(I)I", "GetSetBufferSizeInFrames_IHandler", ApiSince=24)>]
abstract member SetBufferSizeInFrames : int -> int
override this.SetBufferSizeInFrames : int -> int

Paramètres

bufferSizeInFrames
Int32

taille de mémoire tampon demandée dans les images

Retours

la taille réelle de la mémoire tampon dans les images ou un code d’erreur, , #ERROR_BAD_VALUE#ERROR_INVALID_OPERATION

Attributs

Remarques

Limite la taille effective de la AudioTrack mémoire tampon dans laquelle l’application écrit.

Une écriture dans cet AudioTrack ne remplira pas la mémoire tampon au-delà de cette limite. Si une écriture bloquante est utilisée, l’écriture se bloque jusqu’à ce que les données puissent s’adapter à cette limite.

La modification de cette limite modifie la latence associée à la mémoire tampon pour cette piste. Une taille plus petite donne une latence plus faible, mais il peut y avoir plus de problèmes en raison des sous-exécutions de mémoire tampon.

La taille réelle utilisée peut ne pas être égale à cette taille demandée. Elle sera limitée à une plage valide avec un maximum de #getBufferCapacityInFrames(). Il peut également être ajusté légèrement pour des raisons internes. Si bufferSizeInFrames est inférieur à zéro, il #ERROR_BAD_VALUE est retourné.

Cette méthode est prise en charge pour l’audio PCM à tous les niveaux d’API. L’audio compressé est pris en charge dans les niveaux d’API 33 et versions ultérieures. Pour les flux compressés, la taille d’un frame est considérée comme étant exactement un octet.

Documentation Java pour android.media.AudioTrack.setBufferSizeInFrames(int).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à