Aller au contenu principal

Lire l'audio

Lecture de base​

Pour lire une onde sonore importée, utilisez les mêmes fonctions que pour une onde sonore ordinaire. Par exemple, utilisez la fonction PlaySound2D ou Play d'un composant audio tel que Sound Cue.

Various examples of playing a sound wave

Contrôler la lecture​

Rembobinage du temps de lecture​

Pour rembobiner le temps de lecture de l'onde sonore, utilisez la fonction RewindPlaybackTime.

An example of rewinding playback of a sound wave for 12.5 seconds

remarque

Dans les versions d'UE jusqu'à 4.27, si vous souhaitez démarrer la lecture à partir d'un moment spécifique supérieur à 0, vous devrez peut-être utiliser la fonction RewindPlaybackTime au préalable. Sinon, le son risque de ne pas être lu correctement en raison de problèmes internes du moteur liés à la gestion des ondes procédurales. Ce problème a été résolu dans le moteur depuis la version 5.0.

Obtention des informations de lecture​

Pour obtenir le temps de lecture actuel de l'onde sonore, utilisez les fonctions GetPlaybackTime ou GetPlaybackPercentage. Vous pouvez également obtenir la durée de l'onde sonore en utilisant la fonction GetDuration.

Get Playback Time and Get Playback Percentage nodes

Vérification de l'état de lecture​

Est en cours de lecture​

Pour déterminer si l'onde sonore est en cours de lecture, vous pouvez utiliser la fonction IsPlaying.

Is Playing node

La lecture est-elle terminée​

Pour vérifier si l'onde sonore a fini de jouer, vous pouvez utiliser la fonction IsPlaybackFinished.

Is Playback Finished node

Arrêter la lecture​

Vous pouvez arrêter la lecture de l'onde sonore en utilisant la fonction StopPlayback.

Stop Playback node

info

Il est généralement recommandé d'arrêter la lecture de l'onde sonore par des moyens externes (par exemple, en appelant Stop sur le composant audio) et d'utiliser cette fonction si les moyens externes ne sont pas disponibles. Notez également que cette fonction ne fonctionne pas pour la lecture depuis MetaSounds.

Gestion des événements​

Suivi de la fin de la lecture​

Pour suivre la fin de la lecture audio, liez-vous au délégué OnAudioPlaybackFinished.

An example of binding to the OnAudioPlaybackFinished delegate

Gestion de la mémoire​

Libération de la mémoire​

Vous pouvez effacer manuellement les données audio à l'aide de la fonction ReleaseMemory.

Release Memory node

attention

La libération manuelle de la mémoire n'est pas recommandée, sauf si vous avez des exigences spécifiques en matière de gestion de la mémoire ou si vous avez désactivé le garbage collector.

Libération des données audio lues​

Pour libérer automatiquement la partie déjà lue du tampon audio pendant la lecture, configurez les paramètres de libération à l'aide de la fonction SetPlayedAudioDataReleaseSettings.

Set Played Audio Data Release Settings node

  • bReleasePlayedAudioData - indique si la libération est activée. Désactivée par défaut
  • ReleaseCallbackFrequency - nombre de requêtes de génération audio (appels à OnGeneratePCMAudio) entre les vérifications de libération
  • MinFramesToRelease - nombre minimum de frames lues requis pour déclencher une libération
attention

Activer ceci limite le retour en arrière/la recherche avant le point déjà libéré, car ces données audio sont physiquement libérées et ne peuvent plus être lues.