Files
godot-docs-l10n/classes/fr/class_audiostreamplayer.rst
2025-09-30 13:31:55 +02:00

445 lines
20 KiB
ReStructuredText
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. meta::
:keywords: sound, music, song
.. _class_AudioStreamPlayer:
AudioStreamPlayer
=================
**Hérite de:** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
Un nœud pour la lecture d'audio.
.. rst-class:: classref-introduction-group
Description
-----------
Le nœud **AudioStreamPlayer** joue un flux audio de manière non-positionnelle. Il est idéal pour les interfaces utilisateur, les menus ou la musique de fond.
Pour utiliser ce nœud, :ref:`stream<class_AudioStreamPlayer_property_stream>` doit être défini à une ressource :ref:`AudioStream<class_AudioStream>` valide. Jouer plus d'un son en même temps est également supporté, voir :ref:`max_polyphony<class_AudioStreamPlayer_property_max_polyphony>`.
Si vous devez jouer de l'audio à une position spécifique, utilisez :ref:`AudioStreamPlayer2D<class_AudioStreamPlayer2D>` ou :ref:`AudioStreamPlayer3D<class_AudioStreamPlayer3D>` à la place.
.. rst-class:: classref-introduction-group
Tutoriels
------------------
- :doc:`Flux audio <../tutorials/audio/audio_streams>`
- `Démo 2D « Dodge The Creeps » <https://godotengine.org/asset-library/asset/2712>`__
- `Démo de changement de périphérique audio <https://godotengine.org/asset-library/asset/2758>`__
- `Démo du générateur audio <https://godotengine.org/asset-library/asset/2759>`__
- `Démo d'enregistrement de l'audio du microphone <https://godotengine.org/asset-library/asset/2760>`__
- `Démo de visualiseur de spectre audio <https://godotengine.org/asset-library/asset/2762>`__
.. rst-class:: classref-reftable-group
Propriétés
--------------------
.. table::
:widths: auto
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`bool<class_bool>` | :ref:`autoplay<class_AudioStreamPlayer_property_autoplay>` | ``false`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`StringName<class_StringName>` | :ref:`bus<class_AudioStreamPlayer_property_bus>` | ``&"Master"`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`int<class_int>` | :ref:`max_polyphony<class_AudioStreamPlayer_property_max_polyphony>` | ``1`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`MixTarget<enum_AudioStreamPlayer_MixTarget>` | :ref:`mix_target<class_AudioStreamPlayer_property_mix_target>` | ``0`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`float<class_float>` | :ref:`pitch_scale<class_AudioStreamPlayer_property_pitch_scale>` | ``1.0`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`PlaybackType<enum_AudioServer_PlaybackType>` | :ref:`playback_type<class_AudioStreamPlayer_property_playback_type>` | ``0`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`bool<class_bool>` | :ref:`playing<class_AudioStreamPlayer_property_playing>` | ``false`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`AudioStream<class_AudioStream>` | :ref:`stream<class_AudioStreamPlayer_property_stream>` | |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`bool<class_bool>` | :ref:`stream_paused<class_AudioStreamPlayer_property_stream_paused>` | ``false`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`float<class_float>` | :ref:`volume_db<class_AudioStreamPlayer_property_volume_db>` | ``0.0`` |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
| :ref:`float<class_float>` | :ref:`volume_linear<class_AudioStreamPlayer_property_volume_linear>` | |
+----------------------------------------------------+----------------------------------------------------------------------+---------------+
.. rst-class:: classref-reftable-group
Méthodes
----------------
.. table::
:widths: auto
+-------------------------------------------------------+---------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_playback_position<class_AudioStreamPlayer_method_get_playback_position>`\ (\ ) |
+-------------------------------------------------------+---------------------------------------------------------------------------------------------------------+
| :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` | :ref:`get_stream_playback<class_AudioStreamPlayer_method_get_stream_playback>`\ (\ ) |
+-------------------------------------------------------+---------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`has_stream_playback<class_AudioStreamPlayer_method_has_stream_playback>`\ (\ ) |
+-------------------------------------------------------+---------------------------------------------------------------------------------------------------------+
| |void| | :ref:`play<class_AudioStreamPlayer_method_play>`\ (\ from_position\: :ref:`float<class_float>` = 0.0\ ) |
+-------------------------------------------------------+---------------------------------------------------------------------------------------------------------+
| |void| | :ref:`seek<class_AudioStreamPlayer_method_seek>`\ (\ to_position\: :ref:`float<class_float>`\ ) |
+-------------------------------------------------------+---------------------------------------------------------------------------------------------------------+
| |void| | :ref:`stop<class_AudioStreamPlayer_method_stop>`\ (\ ) |
+-------------------------------------------------------+---------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Signaux
--------------
.. _class_AudioStreamPlayer_signal_finished:
.. rst-class:: classref-signal
**finished**\ (\ ) :ref:`🔗<class_AudioStreamPlayer_signal_finished>`
Émis quand un son finit de jouer sans interruption. Ce signal n'est *pas* émis lors de l'appel de :ref:`stop()<class_AudioStreamPlayer_method_stop>`, ou lors de la sortie de l'arbre pendant que des sons jouent.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Énumérations
------------------------
.. _enum_AudioStreamPlayer_MixTarget:
.. rst-class:: classref-enumeration
enum **MixTarget**: :ref:`🔗<enum_AudioStreamPlayer_MixTarget>`
.. _class_AudioStreamPlayer_constant_MIX_TARGET_STEREO:
.. rst-class:: classref-enumeration-constant
:ref:`MixTarget<enum_AudioStreamPlayer_MixTarget>` **MIX_TARGET_STEREO** = ``0``
L'audio ne sera joué que sur le premier canal. C'est le défaut.
.. _class_AudioStreamPlayer_constant_MIX_TARGET_SURROUND:
.. rst-class:: classref-enumeration-constant
:ref:`MixTarget<enum_AudioStreamPlayer_MixTarget>` **MIX_TARGET_SURROUND** = ``1``
L'audio sera joué sur tous les canaux surround.
.. _class_AudioStreamPlayer_constant_MIX_TARGET_CENTER:
.. rst-class:: classref-enumeration-constant
:ref:`MixTarget<enum_AudioStreamPlayer_MixTarget>` **MIX_TARGET_CENTER** = ``2``
L'audio sera joué sur le deuxième canal, qui est généralement le centre.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descriptions des propriétés
------------------------------------------------------
.. _class_AudioStreamPlayer_property_autoplay:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **autoplay** = ``false`` :ref:`🔗<class_AudioStreamPlayer_property_autoplay>`
.. rst-class:: classref-property-setget
- |void| **set_autoplay**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_autoplay_enabled**\ (\ )
Si ``true``, ce nœud appelle :ref:`play()<class_AudioStreamPlayer_method_play>` en entrant dans l'arbre.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_bus:
.. rst-class:: classref-property
:ref:`StringName<class_StringName>` **bus** = ``&"Master"`` :ref:`🔗<class_AudioStreamPlayer_property_bus>`
.. rst-class:: classref-property-setget
- |void| **set_bus**\ (\ value\: :ref:`StringName<class_StringName>`\ )
- :ref:`StringName<class_StringName>` **get_bus**\ (\ )
Le nom du bus cible. Tous les sons de ce nœud joueront sur ce bus.
\ **Note :** En cours d'exécution, si aucun bus avec le nom donné n'existe, tous les sons se replieront sur ``"Master"``. Voir aussi :ref:`AudioServer.get_bus_name()<class_AudioServer_method_get_bus_name>`.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_max_polyphony:
.. rst-class:: classref-property
:ref:`int<class_int>` **max_polyphony** = ``1`` :ref:`🔗<class_AudioStreamPlayer_property_max_polyphony>`
.. rst-class:: classref-property-setget
- |void| **set_max_polyphony**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_max_polyphony**\ (\ )
Le nombre maximum de sons que ce nœud peut jouer en même temps. Appeler :ref:`play()<class_AudioStreamPlayer_method_play>` après que cette valeur est atteinte coupera les sons les plus anciens.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_mix_target:
.. rst-class:: classref-property
:ref:`MixTarget<enum_AudioStreamPlayer_MixTarget>` **mix_target** = ``0`` :ref:`🔗<class_AudioStreamPlayer_property_mix_target>`
.. rst-class:: classref-property-setget
- |void| **set_mix_target**\ (\ value\: :ref:`MixTarget<enum_AudioStreamPlayer_MixTarget>`\ )
- :ref:`MixTarget<enum_AudioStreamPlayer_MixTarget>` **get_mix_target**\ (\ )
Les canaux cibles de mixage. N'a aucun effet lorsque deux haut-parleurs ou moins sont détectés (voir :ref:`SpeakerMode<enum_AudioServer_SpeakerMode>`).
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_pitch_scale:
.. rst-class:: classref-property
:ref:`float<class_float>` **pitch_scale** = ``1.0`` :ref:`🔗<class_AudioStreamPlayer_property_pitch_scale>`
.. rst-class:: classref-property-setget
- |void| **set_pitch_scale**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_pitch_scale**\ (\ )
La hauteur et le tempo de l'audio, en tant que multiplicateur du taux d'échantillonnage du flux :ref:`stream<class_AudioStreamPlayer_property_stream>`. Une valeur de ``2.0`` double la hauteur de l'audio, tandis qu'une valeur de ``0.5`` divise par deux la hauteur.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_playback_type:
.. rst-class:: classref-property
:ref:`PlaybackType<enum_AudioServer_PlaybackType>` **playback_type** = ``0`` :ref:`🔗<class_AudioStreamPlayer_property_playback_type>`
.. rst-class:: classref-property-setget
- |void| **set_playback_type**\ (\ value\: :ref:`PlaybackType<enum_AudioServer_PlaybackType>`\ )
- :ref:`PlaybackType<enum_AudioServer_PlaybackType>` **get_playback_type**\ (\ )
**Expérimental:** Cette propriété peut être changée ou retirée dans de futures versions.
Le type de lecture du lecteur de flux. Si défini à autre chose que la valeur par défaut, elle forcera ce type de lecture.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_playing:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **playing** = ``false`` :ref:`🔗<class_AudioStreamPlayer_property_playing>`
.. rst-class:: classref-property-setget
- |void| **set_playing**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_playing**\ (\ )
Si ``true``, ce nœud joue des sons. Définir cette propriété a le même effet que :ref:`play()<class_AudioStreamPlayer_method_play>` et :ref:`stop()<class_AudioStreamPlayer_method_stop>`.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_stream:
.. rst-class:: classref-property
:ref:`AudioStream<class_AudioStream>` **stream** :ref:`🔗<class_AudioStreamPlayer_property_stream>`
.. rst-class:: classref-property-setget
- |void| **set_stream**\ (\ value\: :ref:`AudioStream<class_AudioStream>`\ )
- :ref:`AudioStream<class_AudioStream>` **get_stream**\ (\ )
La ressource :ref:`AudioStream<class_AudioStream>` à jouer. Définir cette propriété arrête tous les sons en cours de lecture. Si laissé vide, l'**AudioStreamPlayer** ne fonctionne pas.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_stream_paused:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **stream_paused** = ``false`` :ref:`🔗<class_AudioStreamPlayer_property_stream_paused>`
.. rst-class:: classref-property-setget
- |void| **set_stream_paused**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_stream_paused**\ (\ )
Si ``true``, les sons sont mis en pause. Définir :ref:`stream_paused<class_AudioStreamPlayer_property_stream_paused>` à ``false`` reprend tous les sons.
\ **Note :** Cette propriété est automatiquement modifiée lors de la sortie ou de l'entrée de l'arbre, ou si ce nœud est mis en pause (voir :ref:`Node.process_mode<class_Node_property_process_mode>`).
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_volume_db:
.. rst-class:: classref-property
:ref:`float<class_float>` **volume_db** = ``0.0`` :ref:`🔗<class_AudioStreamPlayer_property_volume_db>`
.. rst-class:: classref-property-setget
- |void| **set_volume_db**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_volume_db**\ (\ )
Volume du son, en décibels. Il s'agit d'un décalage du volume de :ref:`stream<class_AudioStreamPlayer_property_stream>`.
\ **Note :** Pour convertir entre decibels et énergie linéaire (comme la plupart des curseurs de volume font), utilisez :ref:`volume_linear<class_AudioStreamPlayer_property_volume_linear>`, ou :ref:`@GlobalScope.db_to_linear()<class_@GlobalScope_method_db_to_linear>` et :ref:`@GlobalScope.linear_to_db()<class_@GlobalScope_method_linear_to_db>`.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_property_volume_linear:
.. rst-class:: classref-property
:ref:`float<class_float>` **volume_linear** :ref:`🔗<class_AudioStreamPlayer_property_volume_linear>`
.. rst-class:: classref-property-setget
- |void| **set_volume_linear**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_volume_linear**\ (\ )
Volume du son, en tant que valeur linéaire.
\ **Note :** Ce membre modifie :ref:`volume_db<class_AudioStreamPlayer_property_volume_db>` par commodité. La valeur renvoyée est équivalente au résultat de :ref:`@GlobalScope.db_to_linear()<class_@GlobalScope_method_db_to_linear>` sur :ref:`volume_db<class_AudioStreamPlayer_property_volume_db>`. Définir ce membre est équivalent à définir :ref:`volume_db<class_AudioStreamPlayer_property_volume_db>` au résultat de :ref:`@GlobalScope.linear_to_db()<class_@GlobalScope_method_linear_to_db>` sur une valeur.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descriptions des méthodes
--------------------------------------------------
.. _class_AudioStreamPlayer_method_get_playback_position:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_playback_position**\ (\ ) :ref:`🔗<class_AudioStreamPlayer_method_get_playback_position>`
Renvoie la position dans le :ref:`AudioStream<class_AudioStream>` du dernier son, en secondes. Renvoie ``0.0`` si aucun son ne joue.
\ **Note :** La position n'est pas toujours exacte, car l':ref:`AudioServer<class_AudioServer>` ne mix pas l'audio à chaque trame traitée. Pour obtenir des résultats plus précis, ajoutez :ref:`AudioServer.get_time_since_last_mix()<class_AudioServer_method_get_time_since_last_mix>` à la position renvoyée.
\ **Note :** Cette méthode renverra toujours ``0.0`` si :ref:`stream<class_AudioStreamPlayer_property_stream>` est un :ref:`AudioStreamInteractive<class_AudioStreamInteractive>`, car il peut avoir plusieurs clips jouant à la fois.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_method_get_stream_playback:
.. rst-class:: classref-method
:ref:`AudioStreamPlayback<class_AudioStreamPlayback>` **get_stream_playback**\ (\ ) :ref:`🔗<class_AudioStreamPlayer_method_get_stream_playback>`
Renvoie le dernier :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` de ce nœud, habituellement le plus récemment créé par :ref:`play()<class_AudioStreamPlayer_method_play>`. Si aucun son ne joue, cette méthode échoue et renvoie une lecture vide.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_method_has_stream_playback:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **has_stream_playback**\ (\ ) :ref:`🔗<class_AudioStreamPlayer_method_has_stream_playback>`
Renvoie ``true`` si un son est actif, même si :ref:`stream_paused<class_AudioStreamPlayer_property_stream_paused>` est défini à ``true``. Voir aussi :ref:`playing<class_AudioStreamPlayer_property_playing>` et :ref:`get_stream_playback()<class_AudioStreamPlayer_method_get_stream_playback>`.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_method_play:
.. rst-class:: classref-method
|void| **play**\ (\ from_position\: :ref:`float<class_float>` = 0.0\ ) :ref:`🔗<class_AudioStreamPlayer_method_play>`
Joue un son depuis le début, ou à la position ``from_position`` donnée, en secondes.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_method_seek:
.. rst-class:: classref-method
|void| **seek**\ (\ to_position\: :ref:`float<class_float>`\ ) :ref:`🔗<class_AudioStreamPlayer_method_seek>`
Recommence tous les sons à jouer de la position ``to_position`` donnée, en secondes. Ne fait rien si aucun son ne joue.
.. rst-class:: classref-item-separator
----
.. _class_AudioStreamPlayer_method_stop:
.. rst-class:: classref-method
|void| **stop**\ (\ ) :ref:`🔗<class_AudioStreamPlayer_method_stop>`
Arrête tous les sons de ce nœud.
.. |virtual| replace:: :abbr:`virtual (Cette méthode doit typiquement être redéfinie par l'utilisateur pour avoir un effet.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Cette méthode n'a pas d'effets de bord. Elle ne modifie aucune des variables membres de l'instance.)`
.. |vararg| replace:: :abbr:`vararg (Cette méthode accepte n'importe quel nombre d'arguments après ceux décris ici.)`
.. |constructor| replace:: :abbr:`constructor (Cette méthode est utilisée pour construire un type.)`
.. |static| replace:: :abbr:`static (Cette méthode n'a pas besoin d'instance pour être appelée, elle peut donc être directement appelée en utilisant le nom de la classe.)`
.. |operator| replace:: :abbr:`operator (Cette méthode décrit un opérateur valide à utiliser avec ce type en tant qu'opérande gauche.)`
.. |bitfield| replace:: :abbr:`BitField (Cette valeur est un nombre entier composé d'un masque de bits des options suivantes.)`
.. |void| replace:: :abbr:`void (Aucune valeur de retour.)`