Fuchsia.media.audio

已新增:7

專家

EffectsController

定義於 fuchsia.media.audio/effects_controller.fidl

UpdateEffect

config 訊息傳送至名為 effect_name 的音訊效果。如果伺服器基於任何原因關閉 EffectsController 連線,表示效果已重設,且與之前的 UpdateEffect 訊息相關聯的任何狀態均已遺失。想要重新套用狀態的用戶端應重新連線,並重新傳送任何所需的 UpdateEffect 訊息來回應。如果用戶端關閉連線,狀態就不會遺失,但用戶端也無法判斷與先前訊息相關的任何狀態是否已遺失,

如果名稱為 effect_name 的效果接受訊息,會傳回成功 (空白回應)。

如果找到名稱為 effect_name 的特效,但 config 訊息遭拒,就會傳回 UpdateEffectError.INVALID_CONFIG

如果找不到名稱為 effect_name 的特效,則傳回 UpdateEffectError.NOT_FOUND

要求

名稱類型
effect_name string[128]
config string

回應

名稱類型
payload EffectsController_UpdateEffect_Result

增益控制

定義於 fuchsia.media.audio/gain_control.fidl

可控管及監控音訊增益。這個介面通常會拆開其他介面。舉例來說,fuchsia.media.audio.RendererBindGainControl 方法會繫結至控制轉譯器再次控制的增益控制項。

OnOnMuteChanged 通知

通知客戶目前增減值的變化。

回應

名稱類型
gain_db float32
muted bool

設定增加

設定分貝的獲利。

要求

名稱類型
gain_db float32

設定增益

在指定的持續時間 (以毫秒為單位) 內,從目前值順利變更為指定值。如果「duration_ns」為 0,則會立即變更。否則,只有在串流執行期間才會進行變更。

之後呼叫 SetGet 即可取消任何進行中的或待處理的坡道。

一次最多只能有 1 個主動式坡道。所有使用中或待處理的 RAM 都會由之後呼叫 SetGetWithRamp (即使時間長度為 0) 取代。在這種情況下,增加的幅度會使用新的加/減速,從最新的 (中坡) 值直接移至新指定的值。

使用範例 (以秒為單位): Time 0 SetGetWithRamp(MUTED_GAIN_DB, 0, SCALE_LINEAR) // Ramp 1 SetGetGetRamp(0.0f, ZX_SEC(4), SCALE_LINEAR) // Ramp 2 時間 3 PlayNoReply(kNoampTime 時間戳記, any_media_time) 時間 4 MUTED_GAIN_DB

時間 0:坡道 1 立即完成,將增益變更為 MUTED_GAIN_DB。您目前未播放,因此坡度 2 尚未播放。時間 3,坡道 2 會從 MUTED_GAIN_DB 開始逐漸增加到 0 dB (比例 0.0=>1.0)。時間 4:坡道 2 暫停 (還剩 3 秒)。根據 SCALE_LINEAR,縮放為約 0.25。時間 7:坡道 2 會從最新的值繼續執行至目標。時間 8:坡道 3 會取代 RAM 2,並從目前的縮放比例開始 (約 0.5)。時間 9:坡道 3 完成;目前的比例值現在是 0.0 (MUTED_GAIN_DB)。

要求

名稱類型
gain_db float32
duration zx/Duration
rampType RampType

設定靜音

設定靜音值。適應期和靜音是完全獨立的,但都會影響套用的資源調度。

要求

名稱類型
muted bool

音量控制

定義於 fuchsia.media.audio/Volume_control.fidl

控制磁碟區的通訊協定。

已變更 OnVolumeMute

會在音訊元素的音量或靜音狀態變更時發出。

回應

名稱類型
new_volume float32
new_muted bool

設定靜音

設定是否將控制的元素設為靜音。靜音與將音量設為 0.0 不同,音量在靜音期間會保持不變。如果在靜音前音量為 0.5,則在取消靜音時將繼續音量 0.5。

要求

名稱類型
mute bool

設定音量

將音訊元素的音量設為 [0.0, 1.0] 中的指定值。如果提供的值不在 [0.0, 1.0] 之外,系統會在套用值前限制值。

要求

名稱類型
volume float32

結構

EffectsController_UpdateEffect_Response

定義於 fuchsia.media.audio/effects_controller.fidl

<空白>

表情符號

RampType 嚴格

類型:uint16

定義於 fuchsia.media.audio/gain_control.fidl

列舉提升控制坡道類型。

名稱說明
1

在適應期內,以固定速率的變化。

UpdateEffectError 嚴格

類型:uint32

定義於 fuchsia.media.audio/effects_controller.fidl

名稱說明
1
2

聯合國

EffectsController_UpdateEffect_Result strict

定義於 fuchsia.media.audio/effects_controller.fidl

序數Variant類型說明
response EffectsController_UpdateEffect_Response
err UpdateEffectError

場景

名稱類型說明
MAX_effective_NAME_LENGTH 128 uint32
MAX_GAIN_DB 24 float32

允許的最大獲利值。

最大音量 1 float32

音量值代表最大音量。

MIN_VOLUME 0 float32

代表靜音的音量值。

MUTED_GAIN_DB -160 float32

創造靜音,創造價值。取得的值可以小於這個值,但產生的效果與這個值相同。