mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2026-01-04 10:09:56 +03:00
447 lines
20 KiB
ReStructuredText
447 lines
20 KiB
ReStructuredText
:github_url: hide
|
|
|
|
.. meta::
|
|
:keywords: sound, sfx
|
|
|
|
.. _class_AudioStreamPlayer2D:
|
|
|
|
AudioStreamPlayer2D
|
|
===================
|
|
|
|
**Eredita:** :ref:`Node2D<class_Node2D>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
|
|
|
|
Riproduce un suono posizionale in uno spazio 2D.
|
|
|
|
.. rst-class:: classref-introduction-group
|
|
|
|
Descrizione
|
|
----------------------
|
|
|
|
Riproduce audio attenuato in base alla distanza dall'ascoltatore.
|
|
|
|
Per impostazione predefinita, l'audio viene ascoltato dal centro dello schermo. Questo può essere modificato aggiungendo un nodo :ref:`AudioListener2D<class_AudioListener2D>` alla scena e abilitandolo chiamando :ref:`AudioListener2D.make_current()<class_AudioListener2D_method_make_current>` su di esso.
|
|
|
|
Vedi anche :ref:`AudioStreamPlayer<class_AudioStreamPlayer>` per riprodurre un suono non posizionale.
|
|
|
|
\ **Nota:** Nascondere un nodo **AudioStreamPlayer2D** non disabilita la sua produzione audio. Per disabilitare temporaneamente la produzione audio di un'**AudioStreamPlayer2D**, imposta :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>` su un valore molto basso come ``-100`` (che non è percettibile dall'udito umano).
|
|
|
|
.. rst-class:: classref-introduction-group
|
|
|
|
Tutorial
|
|
----------------
|
|
|
|
- :doc:`Flussi audio <../tutorials/audio/audio_streams>`
|
|
|
|
.. rst-class:: classref-reftable-group
|
|
|
|
Proprietà
|
|
------------------
|
|
|
|
.. table::
|
|
:widths: auto
|
|
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`int<class_int>` | :ref:`area_mask<class_AudioStreamPlayer2D_property_area_mask>` | ``1`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`float<class_float>` | :ref:`attenuation<class_AudioStreamPlayer2D_property_attenuation>` | ``1.0`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`bool<class_bool>` | :ref:`autoplay<class_AudioStreamPlayer2D_property_autoplay>` | ``false`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`StringName<class_StringName>` | :ref:`bus<class_AudioStreamPlayer2D_property_bus>` | ``&"Master"`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`float<class_float>` | :ref:`max_distance<class_AudioStreamPlayer2D_property_max_distance>` | ``2000.0`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`int<class_int>` | :ref:`max_polyphony<class_AudioStreamPlayer2D_property_max_polyphony>` | ``1`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`float<class_float>` | :ref:`panning_strength<class_AudioStreamPlayer2D_property_panning_strength>` | ``1.0`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`float<class_float>` | :ref:`pitch_scale<class_AudioStreamPlayer2D_property_pitch_scale>` | ``1.0`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`PlaybackType<enum_AudioServer_PlaybackType>` | :ref:`playback_type<class_AudioStreamPlayer2D_property_playback_type>` | ``0`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`bool<class_bool>` | :ref:`playing<class_AudioStreamPlayer2D_property_playing>` | ``false`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`AudioStream<class_AudioStream>` | :ref:`stream<class_AudioStreamPlayer2D_property_stream>` | |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`bool<class_bool>` | :ref:`stream_paused<class_AudioStreamPlayer2D_property_stream_paused>` | ``false`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`float<class_float>` | :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>` | ``0.0`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
| :ref:`float<class_float>` | :ref:`volume_linear<class_AudioStreamPlayer2D_property_volume_linear>` | |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+---------------+
|
|
|
|
.. rst-class:: classref-reftable-group
|
|
|
|
Metodi
|
|
------------
|
|
|
|
.. table::
|
|
:widths: auto
|
|
|
|
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
|
| :ref:`float<class_float>` | :ref:`get_playback_position<class_AudioStreamPlayer2D_method_get_playback_position>`\ (\ ) |
|
|
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
|
| :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` | :ref:`get_stream_playback<class_AudioStreamPlayer2D_method_get_stream_playback>`\ (\ ) |
|
|
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
|
| :ref:`bool<class_bool>` | :ref:`has_stream_playback<class_AudioStreamPlayer2D_method_has_stream_playback>`\ (\ ) |
|
|
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
|
| |void| | :ref:`play<class_AudioStreamPlayer2D_method_play>`\ (\ from_position\: :ref:`float<class_float>` = 0.0\ ) |
|
|
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
|
| |void| | :ref:`seek<class_AudioStreamPlayer2D_method_seek>`\ (\ to_position\: :ref:`float<class_float>`\ ) |
|
|
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
|
| |void| | :ref:`stop<class_AudioStreamPlayer2D_method_stop>`\ (\ ) |
|
|
+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Segnali
|
|
--------------
|
|
|
|
.. _class_AudioStreamPlayer2D_signal_finished:
|
|
|
|
.. rst-class:: classref-signal
|
|
|
|
**finished**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_signal_finished>`
|
|
|
|
Emesso al termine della riproduzione dell'audio.
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Descrizioni delle proprietà
|
|
------------------------------------------------------
|
|
|
|
.. _class_AudioStreamPlayer2D_property_area_mask:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`int<class_int>` **area_mask** = ``1`` :ref:`🔗<class_AudioStreamPlayer2D_property_area_mask>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_area_mask**\ (\ value\: :ref:`int<class_int>`\ )
|
|
- :ref:`int<class_int>` **get_area_mask**\ (\ )
|
|
|
|
Determina quali strati di un :ref:`Area2D<class_Area2D>` influenzano il suono per gli effetti di riverbero e per i bus audio. Le aree possono essere utilizzate per reindirizzare gli :ref:`AudioStream<class_AudioStream>` in modo che siano riprodotti in un determinato bus audio. Un esempio di come potrebbe essere utilizzato è creando un'area di "acqua", in modo che i suoni riprodotti nell'acqua siano reindirizzati attraverso un bus audio per farli sembrare come se fossero riprodotti sott'acqua.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_attenuation:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`float<class_float>` **attenuation** = ``1.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_attenuation>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_attenuation**\ (\ value\: :ref:`float<class_float>`\ )
|
|
- :ref:`float<class_float>` **get_attenuation**\ (\ )
|
|
|
|
Il volume si attenua con la distanza, utilizzando questo come esponente.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_autoplay:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **autoplay** = ``false`` :ref:`🔗<class_AudioStreamPlayer2D_property_autoplay>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_autoplay**\ (\ value\: :ref:`bool<class_bool>`\ )
|
|
- :ref:`bool<class_bool>` **is_autoplay_enabled**\ (\ )
|
|
|
|
Se ``true``, l'audio viene riprodotto quando viene aggiunto all'albero di scene.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_bus:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`StringName<class_StringName>` **bus** = ``&"Master"`` :ref:`🔗<class_AudioStreamPlayer2D_property_bus>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_bus**\ (\ value\: :ref:`StringName<class_StringName>`\ )
|
|
- :ref:`StringName<class_StringName>` **get_bus**\ (\ )
|
|
|
|
Bus su cui viene riprodotto questo audio.
|
|
|
|
\ **Nota:** Quando imposti questa proprietà, tieni presente che non viene eseguita alcuna convalida per vedere se il nome specificato corrisponde a un bus esistente. Questo perché i layout del bus audio potrebbero essere caricati dopo aver impostato questa proprietà. Se questo nome specificato non può essere risolto in fase di esecuzione, tornerà a ``"Master"``.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_max_distance:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`float<class_float>` **max_distance** = ``2000.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_max_distance>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_max_distance**\ (\ value\: :ref:`float<class_float>`\ )
|
|
- :ref:`float<class_float>` **get_max_distance**\ (\ )
|
|
|
|
Distanza massima alla quale l'audio è ancora udibile.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_max_polyphony:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`int<class_int>` **max_polyphony** = ``1`` :ref:`🔗<class_AudioStreamPlayer2D_property_max_polyphony>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_max_polyphony**\ (\ value\: :ref:`int<class_int>`\ )
|
|
- :ref:`int<class_int>` **get_max_polyphony**\ (\ )
|
|
|
|
Il numero massimo di suoni che questo nodo può riprodurre allo stesso tempo. Riproducendo ulteriori suoni dopo aver raggiunto questo valore interromperà i suoni più vecchi.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_panning_strength:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`float<class_float>` **panning_strength** = ``1.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_panning_strength>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_panning_strength**\ (\ value\: :ref:`float<class_float>`\ )
|
|
- :ref:`float<class_float>` **get_panning_strength**\ (\ )
|
|
|
|
Scala la forza di panning per questo nodo moltiplicando la base :ref:`ProjectSettings.audio/general/2d_panning_strength<class_ProjectSettings_property_audio/general/2d_panning_strength>` con questo fattore. Valori più alti aumenteranno il panning dell'audio da sinistra a destra in modo più drammatico rispetto a valori più bassi.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_pitch_scale:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`float<class_float>` **pitch_scale** = ``1.0`` :ref:`🔗<class_AudioStreamPlayer2D_property_pitch_scale>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_pitch_scale**\ (\ value\: :ref:`float<class_float>`\ )
|
|
- :ref:`float<class_float>` **get_pitch_scale**\ (\ )
|
|
|
|
Il tono e il tempo dell'audio, come moltiplicatore della frequenza di campionamento del campione audio.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_playback_type:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`PlaybackType<enum_AudioServer_PlaybackType>` **playback_type** = ``0`` :ref:`🔗<class_AudioStreamPlayer2D_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**\ (\ )
|
|
|
|
**Sperimentale:** Questa proprietà potrebbe essere cambiata o rimossa in versioni future.
|
|
|
|
Il tipo di riproduzione dello stream player. Se impostato diversamente dal valore predefinito, forzerà quel tipo di riproduzione.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_playing:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **playing** = ``false`` :ref:`🔗<class_AudioStreamPlayer2D_property_playing>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_playing**\ (\ value\: :ref:`bool<class_bool>`\ )
|
|
- :ref:`bool<class_bool>` **is_playing**\ (\ )
|
|
|
|
Se ``true``, l'audio è in riproduzione o è in coda per la riproduzione (vedi :ref:`play()<class_AudioStreamPlayer2D_method_play>`).
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_stream:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`AudioStream<class_AudioStream>` **stream** :ref:`🔗<class_AudioStreamPlayer2D_property_stream>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_stream**\ (\ value\: :ref:`AudioStream<class_AudioStream>`\ )
|
|
- :ref:`AudioStream<class_AudioStream>` **get_stream**\ (\ )
|
|
|
|
L'oggetto :ref:`AudioStream<class_AudioStream>` da riprodurre.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_stream_paused:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **stream_paused** = ``false`` :ref:`🔗<class_AudioStreamPlayer2D_property_stream_paused>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_stream_paused**\ (\ value\: :ref:`bool<class_bool>`\ )
|
|
- :ref:`bool<class_bool>` **get_stream_paused**\ (\ )
|
|
|
|
Se ``true``, la riproduzione è in pausa. È possibile riprenderla impostando :ref:`stream_paused<class_AudioStreamPlayer2D_property_stream_paused>` su ``false``.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_volume_db:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`float<class_float>` **volume_db** = ``0.0`` :ref:`🔗<class_AudioStreamPlayer2D_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 di base prima dell'attenuazione, in decibel.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_property_volume_linear:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`float<class_float>` **volume_linear** :ref:`🔗<class_AudioStreamPlayer2D_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 di base prima dell'attenuazione, come valore lineare.
|
|
|
|
\ **Nota:** Questo membro modifica :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>` per comodità. Il valore restituito è equivalente al risultato di :ref:`@GlobalScope.db_to_linear()<class_@GlobalScope_method_db_to_linear>` su :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>`. Impostare questo membro equivale a impostare :ref:`volume_db<class_AudioStreamPlayer2D_property_volume_db>` sul risultato di :ref:`@GlobalScope.linear_to_db()<class_@GlobalScope_method_linear_to_db>` su un valore.
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Descrizioni dei metodi
|
|
--------------------------------------------
|
|
|
|
.. _class_AudioStreamPlayer2D_method_get_playback_position:
|
|
|
|
.. rst-class:: classref-method
|
|
|
|
:ref:`float<class_float>` **get_playback_position**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_get_playback_position>`
|
|
|
|
Restituisce la posizione nell':ref:`AudioStream<class_AudioStream>`.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_method_get_stream_playback:
|
|
|
|
.. rst-class:: classref-method
|
|
|
|
:ref:`AudioStreamPlayback<class_AudioStreamPlayback>` **get_stream_playback**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_get_stream_playback>`
|
|
|
|
Restituisce l'oggetto :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` associato a questo **AudioStreamPlayer2D**.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_method_has_stream_playback:
|
|
|
|
.. rst-class:: classref-method
|
|
|
|
:ref:`bool<class_bool>` **has_stream_playback**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_has_stream_playback>`
|
|
|
|
Restituisce se :ref:`AudioStreamPlayer<class_AudioStreamPlayer>` può restituire o meno l'oggetto :ref:`AudioStreamPlayback<class_AudioStreamPlayback>`.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_method_play:
|
|
|
|
.. rst-class:: classref-method
|
|
|
|
|void| **play**\ (\ from_position\: :ref:`float<class_float>` = 0.0\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_play>`
|
|
|
|
Mette in coda l'audio da riprodurre sul frame successivo di fisica, dalla posizione specificata ``from_position``, in secondi.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_method_seek:
|
|
|
|
.. rst-class:: classref-method
|
|
|
|
|void| **seek**\ (\ to_position\: :ref:`float<class_float>`\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_seek>`
|
|
|
|
Imposta la posizione da cui sarà riprodotto l'audio, in secondi.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_AudioStreamPlayer2D_method_stop:
|
|
|
|
.. rst-class:: classref-method
|
|
|
|
|void| **stop**\ (\ ) :ref:`🔗<class_AudioStreamPlayer2D_method_stop>`
|
|
|
|
Arresta l'audio.
|
|
|
|
.. |virtual| replace:: :abbr:`virtual (Questo metodo dovrebbe solitamente essere sovrascritto dall'utente per aver un effetto.)`
|
|
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
|
|
.. |const| replace:: :abbr:`const (Questo metodo non ha effetti collaterali. Non modifica alcuna variabile appartenente all'istanza.)`
|
|
.. |vararg| replace:: :abbr:`vararg (Questo metodo accetta qualsiasi numero di argomenti oltre a quelli descritti qui.)`
|
|
.. |constructor| replace:: :abbr:`constructor (Questo metodo è utilizzato per creare un tipo.)`
|
|
.. |static| replace:: :abbr:`static (Questo metodo non necessita di alcun'istanza per essere chiamato, quindi può essere chiamato direttamente usando il nome della classe.)`
|
|
.. |operator| replace:: :abbr:`operator (Questo metodo descrive un operatore valido da usare con questo tipo come operando di sinistra.)`
|
|
.. |bitfield| replace:: :abbr:`BitField (Questo valore è un intero composto da una maschera di bit dei seguenti flag.)`
|
|
.. |void| replace:: :abbr:`void (Nessun valore restituito.)`
|