Files
godot-docs-l10n/classes/zh_CN/class_audiostream.rst

269 lines
14 KiB
ReStructuredText
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. DO NOT EDIT THIS FILE!!!
.. Generated automatically from Godot engine sources.
.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/AudioStream.xml.
.. _class_AudioStream:
AudioStream
===========
**继承:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
**派生:** :ref:`AudioStreamGenerator<class_AudioStreamGenerator>`, :ref:`AudioStreamInteractive<class_AudioStreamInteractive>`, :ref:`AudioStreamMicrophone<class_AudioStreamMicrophone>`, :ref:`AudioStreamMP3<class_AudioStreamMP3>`, :ref:`AudioStreamOggVorbis<class_AudioStreamOggVorbis>`, :ref:`AudioStreamPlaylist<class_AudioStreamPlaylist>`, :ref:`AudioStreamPolyphonic<class_AudioStreamPolyphonic>`, :ref:`AudioStreamRandomizer<class_AudioStreamRandomizer>`, :ref:`AudioStreamSynchronized<class_AudioStreamSynchronized>`, :ref:`AudioStreamWAV<class_AudioStreamWAV>`
音频流的基类。
.. rst-class:: classref-introduction-group
描述
----
音频流的基类。音频流用于播放音效和音乐,支持 WAV通过 :ref:`AudioStreamWAV<class_AudioStreamWAV>`\ )和 Ogg通过 :ref:`AudioStreamOggVorbis<class_AudioStreamOggVorbis>`\ )文件格式。
.. rst-class:: classref-introduction-group
教程
----
- :doc:`音频流 <../tutorials/audio/audio_streams>`
- `音频生成器演示 <https://godotengine.org/asset-library/asset/2759>`__
- `音频麦克风录音演示 <https://godotengine.org/asset-library/asset/2760>`__
- `音频频谱可视化演示 <https://godotengine.org/asset-library/asset/2762>`__
.. rst-class:: classref-reftable-group
方法
----
.. table::
:widths: auto
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`_get_beat_count<class_AudioStream_private_method__get_beat_count>`\ (\ ) |virtual| |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`_get_bpm<class_AudioStream_private_method__get_bpm>`\ (\ ) |virtual| |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`_get_length<class_AudioStream_private_method__get_length>`\ (\ ) |virtual| |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`Array<class_Array>`\[:ref:`Dictionary<class_Dictionary>`\] | :ref:`_get_parameter_list<class_AudioStream_private_method__get_parameter_list>`\ (\ ) |virtual| |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`_get_stream_name<class_AudioStream_private_method__get_stream_name>`\ (\ ) |virtual| |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` | :ref:`_instantiate_playback<class_AudioStream_private_method__instantiate_playback>`\ (\ ) |virtual| |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`_is_monophonic<class_AudioStream_private_method__is_monophonic>`\ (\ ) |virtual| |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`can_be_sampled<class_AudioStream_method_can_be_sampled>`\ (\ ) |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`AudioSample<class_AudioSample>` | :ref:`generate_sample<class_AudioStream_method_generate_sample>`\ (\ ) |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_length<class_AudioStream_method_get_length>`\ (\ ) |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` | :ref:`instantiate_playback<class_AudioStream_method_instantiate_playback>`\ (\ ) |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_meta_stream<class_AudioStream_method_is_meta_stream>`\ (\ ) |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_monophonic<class_AudioStream_method_is_monophonic>`\ (\ ) |const| |
+------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
信号
----
.. _class_AudioStream_signal_parameter_list_changed:
.. rst-class:: classref-signal
**parameter_list_changed**\ (\ ) :ref:`🔗<class_AudioStream_signal_parameter_list_changed>`
当参数列表改变时被发出以通知的信号。
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
方法说明
--------
.. _class_AudioStream_private_method__get_beat_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **_get_beat_count**\ (\ ) |virtual| |const| :ref:`🔗<class_AudioStream_private_method__get_beat_count>`
可覆盖的方法。应返回该音频流的总节拍数。由引擎用来确定每个节拍的位置。
理想情况下,返回值应基于流的采样率(例如,\ :ref:`AudioStreamWAV.mix_rate<class_AudioStreamWAV_property_mix_rate>`\ )。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_private_method__get_bpm:
.. rst-class:: classref-method
:ref:`float<class_float>` **_get_bpm**\ (\ ) |virtual| |const| :ref:`🔗<class_AudioStream_private_method__get_bpm>`
可覆盖的方法。应返回该音频流的节奏以每分钟节拍数BPM为单位。由引擎用来确定每个节拍的位置。
理想情况下,返回值应基于流的采样率(例如,\ :ref:`AudioStreamWAV.mix_rate<class_AudioStreamWAV_property_mix_rate>`\ )。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_private_method__get_length:
.. rst-class:: classref-method
:ref:`float<class_float>` **_get_length**\ (\ ) |virtual| |const| :ref:`🔗<class_AudioStream_private_method__get_length>`
覆盖此方法以自定义 :ref:`get_length<class_AudioStream_method_get_length>` 所返回的值,应该返回这个音频流的长度,单位为秒。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_private_method__get_parameter_list:
.. rst-class:: classref-method
:ref:`Array<class_Array>`\[:ref:`Dictionary<class_Dictionary>`\] **_get_parameter_list**\ (\ ) |virtual| |const| :ref:`🔗<class_AudioStream_private_method__get_parameter_list>`
返回该流的可控制参数。该数组包含具有属性信息描述格式的字典(请参阅 :ref:`Object.get_property_list<class_Object_method_get_property_list>`\ )。此外,必须将该参数的默认值添加到 “default_value” 字段中的每个字典中。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_private_method__get_stream_name:
.. rst-class:: classref-method
:ref:`String<class_String>` **_get_stream_name**\ (\ ) |virtual| |const| :ref:`🔗<class_AudioStream_private_method__get_stream_name>`
覆盖该方法,以自定义分配给该音频流的名称。未被引擎使用。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_private_method__instantiate_playback:
.. rst-class:: classref-method
:ref:`AudioStreamPlayback<class_AudioStreamPlayback>` **_instantiate_playback**\ (\ ) |virtual| |const| :ref:`🔗<class_AudioStream_private_method__instantiate_playback>`
覆盖该方法可以自定义 :ref:`instantiate_playback<class_AudioStream_method_instantiate_playback>` 的返回值。应该返回一个在播放流(例如通过 :ref:`AudioStreamPlayer<class_AudioStreamPlayer>`\ )时创建的新的 :ref:`AudioStreamPlayback<class_AudioStreamPlayback>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_private_method__is_monophonic:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **_is_monophonic**\ (\ ) |virtual| |const| :ref:`🔗<class_AudioStream_private_method__is_monophonic>`
覆盖该方法以自定义 :ref:`is_monophonic<class_AudioStream_method_is_monophonic>` 的返回值。如果该音频流仅支持一个通道,则应返回 ``true``\ 。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_method_can_be_sampled:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **can_be_sampled**\ (\ ) |const| :ref:`🔗<class_AudioStream_method_can_be_sampled>`
**实验性:** 未来版本中可能会修改或移除该方法。
Returns if the current **AudioStream** can be used as a sample. Only static streams can be sampled.
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_method_generate_sample:
.. rst-class:: classref-method
:ref:`AudioSample<class_AudioSample>` **generate_sample**\ (\ ) |const| :ref:`🔗<class_AudioStream_method_generate_sample>`
**实验性:** 未来版本中可能会修改或移除该方法。
Generates an :ref:`AudioSample<class_AudioSample>` based on the current stream.
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_method_get_length:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_length**\ (\ ) |const| :ref:`🔗<class_AudioStream_method_get_length>`
返回音频流的长度,单位为秒。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_method_instantiate_playback:
.. rst-class:: classref-method
:ref:`AudioStreamPlayback<class_AudioStreamPlayback>` **instantiate_playback**\ (\ ) :ref:`🔗<class_AudioStream_method_instantiate_playback>`
返回一个新创建的 :ref:`AudioStreamPlayback<class_AudioStreamPlayback>`\ ,用于播放该音频流。当想要扩展 :ref:`_instantiate_playback<class_AudioStream_private_method__instantiate_playback>`\ ,但从一个内部持有的 AudioStream 子资源调用 :ref:`instantiate_playback<class_AudioStream_method_instantiate_playback>` 时很有用。在 ``AudioStreamRandomPitch::instantiate_playback`` 的源代码中可以找到这方面的示例。
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_method_is_meta_stream:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_meta_stream**\ (\ ) |const| :ref:`🔗<class_AudioStream_method_is_meta_stream>`
Returns ``true`` if the stream is a collection of other streams, ``false`` otherwise.
.. rst-class:: classref-item-separator
----
.. _class_AudioStream_method_is_monophonic:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_monophonic**\ (\ ) |const| :ref:`🔗<class_AudioStream_method_is_monophonic>`
如果该音频流仅支持一个通道(\ *单声道*\ ),则返回 ``true``\ ;如果音频流支持两个或多个通道(\ *复调*\ ),则返回 ``false``\ 。
.. |virtual| replace:: :abbr:`virtual (本方法通常需要用户覆盖才能生效。)`
.. |const| replace:: :abbr:`const (本方法无副作用,不会修改该实例的任何成员变量。)`
.. |vararg| replace:: :abbr:`vararg (本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。)`
.. |constructor| replace:: :abbr:`constructor (本方法用于构造某个类型。)`
.. |static| replace:: :abbr:`static (调用本方法无需实例,可直接使用类名进行调用。)`
.. |operator| replace:: :abbr:`operator (本方法描述的是使用本类型作为左操作数的有效运算符。)`
.. |bitfield| replace:: :abbr:`BitField (这个值是由下列位标志构成位掩码的整数。)`
.. |void| replace:: :abbr:`void (无返回值。)`