Files
godot-docs-l10n/classes/zh_Hant/class_videostreamplayer.rst

402 lines
15 KiB
ReStructuredText
Raw Permalink 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
.. _class_VideoStreamPlayer:
VideoStreamPlayer
=================
**繼承:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
用於播放影片的控制項。
.. rst-class:: classref-introduction-group
說明
----
A control used for playback of :ref:`VideoStream<class_VideoStream>` resources.
Supported video formats are `Ogg Theora <https://www.theora.org/>`__ (``.ogv``, :ref:`VideoStreamTheora<class_VideoStreamTheora>`) and any format exposed via a GDExtension plugin.
\ **Warning:** On Web, video playback *will* perform poorly due to missing architecture-specific assembly optimizations.
.. rst-class:: classref-introduction-group
教學
----
- :doc:`播放影片 <../tutorials/animation/playing_videos>`
.. rst-class:: classref-reftable-group
屬性
----
.. table::
:widths: auto
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`int<class_int>` | :ref:`audio_track<class_VideoStreamPlayer_property_audio_track>` | ``0`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`bool<class_bool>` | :ref:`autoplay<class_VideoStreamPlayer_property_autoplay>` | ``false`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`int<class_int>` | :ref:`buffering_msec<class_VideoStreamPlayer_property_buffering_msec>` | ``500`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`StringName<class_StringName>` | :ref:`bus<class_VideoStreamPlayer_property_bus>` | ``&"Master"`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`bool<class_bool>` | :ref:`expand<class_VideoStreamPlayer_property_expand>` | ``false`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`bool<class_bool>` | :ref:`loop<class_VideoStreamPlayer_property_loop>` | ``false`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`bool<class_bool>` | :ref:`paused<class_VideoStreamPlayer_property_paused>` | ``false`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`float<class_float>` | :ref:`speed_scale<class_VideoStreamPlayer_property_speed_scale>` | ``1.0`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`VideoStream<class_VideoStream>` | :ref:`stream<class_VideoStreamPlayer_property_stream>` | |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`float<class_float>` | :ref:`stream_position<class_VideoStreamPlayer_property_stream_position>` | |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`float<class_float>` | :ref:`volume<class_VideoStreamPlayer_property_volume>` | |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
| :ref:`float<class_float>` | :ref:`volume_db<class_VideoStreamPlayer_property_volume_db>` | ``0.0`` |
+---------------------------------------+--------------------------------------------------------------------------+---------------+
.. rst-class:: classref-reftable-group
方法
----
.. table::
:widths: auto
+-----------------------------------+------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_stream_length<class_VideoStreamPlayer_method_get_stream_length>`\ (\ ) |const| |
+-----------------------------------+------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_stream_name<class_VideoStreamPlayer_method_get_stream_name>`\ (\ ) |const| |
+-----------------------------------+------------------------------------------------------------------------------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`get_video_texture<class_VideoStreamPlayer_method_get_video_texture>`\ (\ ) |const| |
+-----------------------------------+------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_playing<class_VideoStreamPlayer_method_is_playing>`\ (\ ) |const| |
+-----------------------------------+------------------------------------------------------------------------------------------+
| |void| | :ref:`play<class_VideoStreamPlayer_method_play>`\ (\ ) |
+-----------------------------------+------------------------------------------------------------------------------------------+
| |void| | :ref:`stop<class_VideoStreamPlayer_method_stop>`\ (\ ) |
+-----------------------------------+------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
訊號
----
.. _class_VideoStreamPlayer_signal_finished:
.. rst-class:: classref-signal
**finished**\ (\ ) :ref:`🔗<class_VideoStreamPlayer_signal_finished>`
播放結束時觸發。
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
屬性說明
--------
.. _class_VideoStreamPlayer_property_audio_track:
.. rst-class:: classref-property
:ref:`int<class_int>` **audio_track** = ``0`` :ref:`🔗<class_VideoStreamPlayer_property_audio_track>`
.. rst-class:: classref-property-setget
- |void| **set_audio_track**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_audio_track**\ (\ )
要播放的嵌入式音軌。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_autoplay:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **autoplay** = ``false`` :ref:`🔗<class_VideoStreamPlayer_property_autoplay>`
.. rst-class:: classref-property-setget
- |void| **set_autoplay**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **has_autoplay**\ (\ )
如果為 ``true``\ ,當場景載入時開始播放。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_buffering_msec:
.. rst-class:: classref-property
:ref:`int<class_int>` **buffering_msec** = ``500`` :ref:`🔗<class_VideoStreamPlayer_property_buffering_msec>`
.. rst-class:: classref-property-setget
- |void| **set_buffering_msec**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_buffering_msec**\ (\ )
播放時儲存在緩衝區的時間,以毫秒計。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_bus:
.. rst-class:: classref-property
:ref:`StringName<class_StringName>` **bus** = ``&"Master"`` :ref:`🔗<class_VideoStreamPlayer_property_bus>`
.. rst-class:: classref-property-setget
- |void| **set_bus**\ (\ value\: :ref:`StringName<class_StringName>`\ )
- :ref:`StringName<class_StringName>` **get_bus**\ (\ )
用於聲音播放的音訊匯流排。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_expand:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **expand** = ``false`` :ref:`🔗<class_VideoStreamPlayer_property_expand>`
.. rst-class:: classref-property-setget
- |void| **set_expand**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **has_expand**\ (\ )
如果為 ``true``\ ,影片會縮放到控制項的尺寸。否則,控制項的最小尺寸將被自動調整以配對影片流的尺寸。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_loop:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **loop** = ``false`` :ref:`🔗<class_VideoStreamPlayer_property_loop>`
.. rst-class:: classref-property-setget
- |void| **set_loop**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **has_loop**\ (\ )
如果為 ``true``\ ,當流到達末尾時將自動迴圈。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_paused:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **paused** = ``false`` :ref:`🔗<class_VideoStreamPlayer_property_paused>`
.. rst-class:: classref-property-setget
- |void| **set_paused**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_paused**\ (\ )
如果為 ``true``\ ,則暫停影片。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_speed_scale:
.. rst-class:: classref-property
:ref:`float<class_float>` **speed_scale** = ``1.0`` :ref:`🔗<class_VideoStreamPlayer_property_speed_scale>`
.. rst-class:: classref-property-setget
- |void| **set_speed_scale**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_speed_scale**\ (\ )
The stream's current speed scale. ``1.0`` is the normal speed, while ``2.0`` is double speed and ``0.5`` is half speed. A speed scale of ``0.0`` pauses the video, similar to setting :ref:`paused<class_VideoStreamPlayer_property_paused>` to ``true``.
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_stream:
.. rst-class:: classref-property
:ref:`VideoStream<class_VideoStream>` **stream** :ref:`🔗<class_VideoStreamPlayer_property_stream>`
.. rst-class:: classref-property-setget
- |void| **set_stream**\ (\ value\: :ref:`VideoStream<class_VideoStream>`\ )
- :ref:`VideoStream<class_VideoStream>` **get_stream**\ (\ )
指定的影片流。支援的格式見描述。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_stream_position:
.. rst-class:: classref-property
:ref:`float<class_float>` **stream_position** :ref:`🔗<class_VideoStreamPlayer_property_stream_position>`
.. rst-class:: classref-property-setget
- |void| **set_stream_position**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_stream_position**\ (\ )
The current position of the stream, in seconds.
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_volume:
.. rst-class:: classref-property
:ref:`float<class_float>` **volume** :ref:`🔗<class_VideoStreamPlayer_property_volume>`
.. rst-class:: classref-property-setget
- |void| **set_volume**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_volume**\ (\ )
音訊音量為線性值。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_property_volume_db:
.. rst-class:: classref-property
:ref:`float<class_float>` **volume_db** = ``0.0`` :ref:`🔗<class_VideoStreamPlayer_property_volume_db>`
.. rst-class:: classref-property-setget
- |void| **set_volume_db**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_volume_db**\ (\ )
音訊音量,單位是 dB。
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
方法說明
--------
.. _class_VideoStreamPlayer_method_get_stream_length:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_stream_length**\ (\ ) |const| :ref:`🔗<class_VideoStreamPlayer_method_get_stream_length>`
The length of the current stream, in seconds.
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_method_get_stream_name:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_stream_name**\ (\ ) |const| :ref:`🔗<class_VideoStreamPlayer_method_get_stream_name>`
返回影片流的名稱,如果沒有指定影片流,則返回 ``"<No Stream>"``\ 。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_method_get_video_texture:
.. rst-class:: classref-method
:ref:`Texture2D<class_Texture2D>` **get_video_texture**\ (\ ) |const| :ref:`🔗<class_VideoStreamPlayer_method_get_video_texture>`
將目前影格作為 :ref:`Texture2D<class_Texture2D>` 返回。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_method_is_playing:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_playing**\ (\ ) |const| :ref:`🔗<class_VideoStreamPlayer_method_is_playing>`
如果影片正在播放,返回 ``true``\ 。
\ **注意:**\ 如果在播放過程中暫停,影片仍被認為在播放。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_method_play:
.. rst-class:: classref-method
|void| **play**\ (\ ) :ref:`🔗<class_VideoStreamPlayer_method_play>`
從頭開始播放影片。如果影片處於暫停狀態,不會取消暫停。
.. rst-class:: classref-item-separator
----
.. _class_VideoStreamPlayer_method_stop:
.. rst-class:: classref-method
|void| **stop**\ (\ ) :ref:`🔗<class_VideoStreamPlayer_method_stop>`
停止影片播放並將影片流位置設定為 0。
\ **注意:**\ 雖然影片流位置將被設定為 0但影片流的第一影格不會成為目前影格。
.. |virtual| replace:: :abbr:`virtual (本方法通常需要使用者覆寫才能生效。)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |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 (無回傳值。)`