123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269 |
- :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
- ===========
- **Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
- **Inherited By:** :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>`
- Base class for audio streams.
- .. rst-class:: classref-introduction-group
- Description
- -----------
- Base class for audio streams. Audio streams are used for sound effects and music playback, and support WAV (via :ref:`AudioStreamWAV<class_AudioStreamWAV>`) and Ogg (via :ref:`AudioStreamOggVorbis<class_AudioStreamOggVorbis>`) file formats.
- .. rst-class:: classref-introduction-group
- Tutorials
- ---------
- - :doc:`Audio streams <../tutorials/audio/audio_streams>`
- - `Audio Generator Demo <https://godotengine.org/asset-library/asset/2759>`__
- - `Audio Microphone Record Demo <https://godotengine.org/asset-library/asset/2760>`__
- - `Audio Spectrum Visualizer Demo <https://godotengine.org/asset-library/asset/2762>`__
- .. rst-class:: classref-reftable-group
- Methods
- -------
- .. 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
- Signals
- -------
- .. _class_AudioStream_signal_parameter_list_changed:
- .. rst-class:: classref-signal
- **parameter_list_changed**\ (\ ) :ref:`🔗<class_AudioStream_signal_parameter_list_changed>`
- Signal to be emitted to notify when the parameter list changed.
- .. rst-class:: classref-section-separator
- ----
- .. rst-class:: classref-descriptions-group
- Method Descriptions
- -------------------
- .. _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>`
- Overridable method. Should return the total number of beats of this audio stream. Used by the engine to determine the position of every beat.
- Ideally, the returned value should be based off the stream's sample rate (:ref:`AudioStreamWAV.mix_rate<class_AudioStreamWAV_property_mix_rate>`, for example).
- .. 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>`
- Overridable method. Should return the tempo of this audio stream, in beats per minute (BPM). Used by the engine to determine the position of every beat.
- Ideally, the returned value should be based off the stream's sample rate (:ref:`AudioStreamWAV.mix_rate<class_AudioStreamWAV_property_mix_rate>`, for example).
- .. 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>`
- Override this method to customize the returned value of :ref:`get_length<class_AudioStream_method_get_length>`. Should return the length of this audio stream, in seconds.
- .. 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>`
- Return the controllable parameters of this stream. This array contains dictionaries with a property info description format (see :ref:`Object.get_property_list<class_Object_method_get_property_list>`). Additionally, the default value for this parameter must be added tho each dictionary in "default_value" field.
- .. 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>`
- Override this method to customize the name assigned to this audio stream. Unused by the engine.
- .. 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>`
- Override this method to customize the returned value of :ref:`instantiate_playback<class_AudioStream_method_instantiate_playback>`. Should returned a new :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` created when the stream is played (such as by an :ref:`AudioStreamPlayer<class_AudioStreamPlayer>`)..
- .. 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>`
- Override this method to customize the returned value of :ref:`is_monophonic<class_AudioStream_method_is_monophonic>`. Should return ``true`` if this audio stream only supports one channel.
- .. 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>`
- **Experimental:** This method may be changed or removed in future versions.
- 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>`
- **Experimental:** This method may be changed or removed in future versions.
- 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>`
- Returns the length of the audio stream in seconds.
- .. 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>`
- Returns a newly created :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` intended to play this audio stream. Useful for when you want to extend :ref:`_instantiate_playback<class_AudioStream_private_method__instantiate_playback>` but call :ref:`instantiate_playback<class_AudioStream_method_instantiate_playback>` from an internally held AudioStream subresource. An example of this can be found in the source code for ``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>`
- Returns ``true`` if this audio stream only supports one channel (*monophony*), or ``false`` if the audio stream supports two or more channels (*polyphony*).
- .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
- .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
- .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
- .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
- .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
- .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
- .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
- .. |void| replace:: :abbr:`void (No return value.)`
|