Fuchsia.media.playback

已新增:7

專家

元素來源

定義於 fuchsia.media.playback/source_manager.fidl

Source 變化版本,用於直接向玩家提供基本串流。

新增繫結

將新繫結新增至這個 ElementarySource。只要使用這個方法,用戶端就能取得另一個管道,而該管道即使在呼叫 SourceManager.SetSource 耗用管道後,也可以與這個 ElementarySource 進行通訊。

要求

名稱類型
source_request server_end<ElementarySource>

新增串流

新增基本串流。如要移除元素串流,只要關閉 SimpleStreamSinkticks_per_second_numeratorticks_per_second_denominator 代表要用於 Streampacket 時間戳記值的單位。舉例來說,以奈秒為單位,ticks_per_second_numerator 應為 1000000000,ticks_per_second_denominator 應為 1。如要使用 48K 音訊的影格單位,ticks_per_second_numerator 應為 48000,ticks_per_second_denominator 應為 1。

要求

名稱類型
type fuchsia.media/StreamType
ticks_per_second_numerator uint32
ticks_per_second_denominator uint32
sink_request server_end<fuchsia.media/SimpleStreamSink>

OnStatus 已變更

回應

名稱類型
source_status SourceStatus

選手

定義於 fuchsia.media.playback/player.fidl

播放媒體。

新增繫結

為這個玩家新增繫結。

要求

名稱類型
player_request server_end<Player>

繫結增益控制

繫結至這位玩家的增益控制。

要求

名稱類型
gain_control_request server_end<fuchsia.media.audio/GainControl>

取消 SourceTransition

取消待處理的轉換作業,傳回來源。如果沒有要轉換,要求管道就會關閉。

要求

名稱類型
returned_source_request server_end<Source>

建立 ElementarySource

建立可讓用戶端向玩家提供獨立基礎串流的來源。Duration_ns、can_pause、 can_seek 和中繼資料全都包含在 SourceStatus 中,且當玩家使用 ElementarySource 時,也會顯示在 PlayerStatus 中。can_pausecan_seek (設為 false) 會限制玩家的功能。

要求

名稱類型
duration_ns zx/Duration
can_pause bool
can_seek bool
metadata fuchsia.media/Metadata?
source_request server_end<ElementarySource>

建立檔案來源

建立從檔案讀取的來源。

要求

名稱類型
file_channel handle<channel>
source_request server_end<Source>

建立 ReaderSource

建立從 SeekingReader 讀取的來源。

要求

名稱類型
seeking_reader SeekingReader
source_request server_end<Source>

建立檢視畫面

建立影片觀看次數。

要求

名稱類型
view_token fuchsia.ui.views/ViewToken

OnStatus 已變更

在繫結後和狀態之後變更時立即提供目前狀態。

回應

名稱類型
player_status PlayerStatus

暫停

暫停播放。

要求

<空白>

播放

開始播放。

要求

<空白>

跳轉

跳轉至指定位置,以奈秒指定。

要求

名稱類型
position int64

SetFileSource

設定要讀取的檔案管道。

要求

名稱類型
file_channel handle<channel>

SetFileSourceWithOptions

設定要讀取的檔案管道。

要求

名稱類型
file_channel handle<channel>
options PlayerOptions

設定播放速率

設定播放器時要使用的費率。rate 必須為正數。PlayerStatustimeline_function 欄位表示玩家玩遊戲時的實際比率。

要求

名稱類型
playback_rate float32

設定來源

設定此播放器要使用的來源。如果來源為空值,玩家就會進入閒置狀態。

要求

名稱類型
source Source?

TransitionToSource

播放目前來源時達到轉場效果 (Transition_pts) 時,轉換至指定來源。新來源會在 start_pts 開始播放。如果轉場效果已經待處理,系統會捨棄該轉換,並改用新的轉換作業。

要求

名稱類型
source Source
transition_pts int64
start_pts int64

跳轉器

定義於 fuchsia.media.playback/seeking_reader.fidl

說明

要求

<空白>

回應

名稱類型
status zx/Status
size uint64
can_seek bool

ReadAt

要求

名稱類型
position uint64

回應

名稱類型
status zx/Status
socket handle<socket>?

來源

定義於 fuchsia.media.playback/source_manager.fidl

玩家可能使用的內容來源。

OnStatus 已變更

回應

名稱類型
source_status SourceStatus

來源管理員

定義於 fuchsia.media.playback/source_manager.fidl

代表玩家管理來源。

取消 SourceTransition

取消待處理的轉換作業,傳回來源。如果沒有要轉換,要求管道就會關閉。

要求

名稱類型
returned_source_request server_end<Source>

建立 ElementarySource

建立可讓用戶端向玩家提供獨立基礎串流的來源。Duration_ns、can_pause、 can_seek 和中繼資料全都包含在 SourceStatus 中,且當玩家使用 ElementarySource 時,也會顯示在 PlayerStatus 中。can_pausecan_seek (設為 false) 會限制玩家的功能。

要求

名稱類型
duration_ns zx/Duration
can_pause bool
can_seek bool
metadata fuchsia.media/Metadata?
source_request server_end<ElementarySource>

建立檔案來源

建立從檔案讀取的來源。

要求

名稱類型
file_channel handle<channel>
source_request server_end<Source>

建立 ReaderSource

建立從 SeekingReader 讀取的來源。

要求

名稱類型
seeking_reader SeekingReader
source_request server_end<Source>

設定來源

設定此播放器要使用的來源。如果來源為空值,玩家就會進入閒置狀態。

要求

名稱類型
source Source?

TransitionToSource

播放目前來源時達到轉場效果 (Transition_pts) 時,轉換至指定來源。新來源會在 start_pts 開始播放。如果轉場效果已經待處理,系統會捨棄該轉換,並改用新的轉換作業。

要求

名稱類型
source Source
transition_pts int64
start_pts int64

結構

播放器狀態

定義於 fuchsia.media.playback/player.fidl

播放器狀態資訊。

欄位類型說明預設
duration zx/Duration

內容的時間長度。

無預設
can_pause bool

是否可暫停播放器。

無預設
can_seek bool

播放器是否可以跳轉。

無預設
has_audio bool

來源是否有音訊串流。

無預設
has_video bool

來源是否有影片串流。

無預設
ready bool

指出播放器是否已準備就緒,可以開始玩遊戲。呼叫 SetFileSourceSourceManager.SetSource 後,這個值會設為 false,直到玩家準備好播放來源內容為止。

無預設
metadata fuchsia.media/Metadata? 無預設
problem Problem?

表示發生問題,導致作業無法順利執行。

無預設
audio_connected bool

指出目前是否連線至音訊串流以進行轉譯。如果 has_audio 為 false,或是不支援音訊串流類型,這個值會是 false。

無預設
video_connected bool

指出影片串流目前是否正在連線並算繪。 如果 has_video 為 false,或是不支援影片串流類型,這個值會是 false。

無預設
video_size fuchsia.math/Size?

目前正在製作的影片大小。如果影片大小不明,這個值會是空值。

無預設
pixel_aspect_ratio fuchsia.math/Size?

影片像素的相對尺寸。如果像素顯示比例不明,這個值會是空值。

無預設
timeline_function fuchsia.media/TimelineFunction?

將當地時間翻譯成簡報時間的函式。如果時間軸函式目前未定義,則這個值會是空值。

無預設
end_of_stream bool

表示所有直播的顯示畫面是否已結束直播。

無預設

問題

定義於 fuchsia.media.playback/problem.fidl

模擬發生問題的模型。

Problem 通常會做為元件狀態的一部分顯示,可能為選用欄位。如未顯示 Problem,表示沒有任何項目妨礙預期作業。問題發生時,用戶端可以自動採取行動,或顯示相關的 UI。如果問題可透過某些動作解決,用戶端可能會自動採取行動,或向使用者告知解決方法。無論是哪一種情況,只要造成曝光的問題解決後,問題就會消失。從設計上來說,這是關閉問題的一般方法。

欄位類型說明預設
type string

問題的類型。這是為了方便擴充的字串。

無預設
details string?

類型相關詳細資料。

無預設

來源狀態

定義於 fuchsia.media.playback/source_manager.fidl

來源狀態資訊。

欄位類型說明預設
duration zx/Duration

內容的時間長度。

無預設
can_pause bool

來源是否可以暫停。

無預設
can_seek bool

來源是否可以跳轉。

無預設
has_audio bool

來源是否有音訊串流。

無預設
has_video bool

來源是否有影片串流。

無預設
ready bool

用於表示來源是否已準備就緒。真正的值代表已探測內容,且沒有已知的問題。

無預設
metadata fuchsia.media/Metadata?

說明媒體。

無預設
problem Problem?

表示發生問題,導致作業無法順利執行。空值表示來源正常運作。

無預設

資料表

播放器選項

定義於 fuchsia.media.playback/player.fidl

SetFileSourceWithOptions 中使用的選項。

序數欄位類型說明
silent bool

如果設為 true,系統會停止播放音訊。預設值為 false。

場景

名稱類型說明
問題 fuchsia.media.playback.AssetNotFound String
PROBLEM_AUDIO_ENCODING_NOT_SUPPORTED fuchsia.media.playback.AudioEncodingNotSupported String
PROBLEM_CONNECTION_FAILED fuchsia.media.playback.ConnectionFailed String
問題不支援: fuchsia.media.playback.ContainerNotSupported String
內部問題 fuchsia.media.playback.Internal String
PROBLEM_VIDEO_ENCODING_NOT_SUPPORTED fuchsia.media.playback.VideoEncodingNotSupported String
未知大小 18446744073709551615 uint64

區分 SeekingReader.Describe 傳回的 size 值,表示大小不明。