語言

Visualizer 類別

定義

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

[Android.Runtime.Register("android/media/audiofx/Visualizer", DoNotGenerateAcw=true)]
public class Visualizer : Java.Lang.Object
[<Android.Runtime.Register("android/media/audiofx/Visualizer", DoNotGenerateAcw=true)>]
type Visualizer = class
    inherit Object
繼承
Visualizer
屬性

備註

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。 它不是音訊錄製介面,只能回傳部分且低品質的音訊內容。 然而,為了保護某些音訊資料(例如語音信箱)的隱私,使用視覺化器需要取得android.permission.RECORD_AUDIO的許可。

傳給建構者的音訊會話 ID 會顯示應該視覺化哪些音訊內容:<br><ul><li>如果會話是 0,則會視覺化<音訊輸出混音/li><li>如果會話不是 0,則會視覺化android.media.MediaPlayer來自特定android.media.AudioTrack或<使用該音訊會話的音訊 /li></ul>

可擷取兩種音訊內容表示方式:<br><ul><li>波形資料:使用#getWaveForm(byte[])方法</li><li>連續的 8 位元(無符號)單聲道取樣 頻率資料:8 位元幅級 FFT,使用 #getFft(byte[]) 方法</li></ul>

擷取長度可透過呼叫 #getCaptureSize() 與 #setCaptureSize(int) 方法分別取得或指定。 捕獲大小必須是 的 2 次方,該範圍 #getCaptureSizeRange()由 返回。

除了上述使用 #getWaveForm(byte[]) 和 #getFft(byte[]) 方法的輪詢捕捉模式外,還可透過安裝監聽器 #setDataCaptureListener(OnDataCaptureListener, int, boolean, boolean) 來使用回調模式。 會指定監聽器擷取方法的呼叫速率以及回傳的資料類型。

在擷取資料前,必須透過呼叫 #setEnabled(boolean) 方法來啟用視覺化器。 當不再需要資料擷取時,應關閉視覺化工具。

當視覺化器不再使用時,呼叫該 #release() 方法以釋放與視覺化器實例相關的原生資源,是良好的做法。

在輸出混音(音訊會話 0)建立視覺化工具需要取得許可 android.Manifest.permission#MODIFY_AUDIO_SETTINGS

視覺化器類別也可用於對播放中的音訊進行測量。 要執行的測量是透過設定一個遮罩來定義,為 #setMeasurementMode(int)。 支援的數值用於 #MEASUREMENT_MODE_NONE 取消任何測量,以及 #MEASUREMENT_MODE_PEAK_RMS 用於峰值和有效值監測。 測量值可透過 #getMeasurementPeakRms(MeasurementPeakRms)取得。

Java 文件 android.media.audiofx.Visualizer。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

建構函式

名稱 Description
Visualizer(Int32)

職業建造者。

Visualizer(IntPtr, JniHandleOwnership)

用於建立 JNI 物件受管理表示的建構器;由執行時呼叫。

欄位

名稱 Description
AlreadyExists
已淘汰.

內部運作狀態。

Error
已淘汰.

未說明錯誤。

ErrorBadValue
已淘汰.

操作失敗是因為參數值錯誤。

ErrorDeadObject
已淘汰.

操作失敗,因為遠端物件失效。

ErrorInvalidOperation
已淘汰.

手術失敗是因為申請在錯誤的州。

ErrorNoInit
已淘汰.

操作失敗是因為物件初始化不良。

ErrorNoMemory
已淘汰.

由於記憶體不足,操作失敗。

MeasurementModeNone
已淘汰.

定義一種不進行測量的測量模式。

MeasurementModePeakRms
已淘汰.

定義一種測量模式,計算低於「全刻度」的峰值與 RMS 值(單位為 mB),其中 0mB 通常是最大取樣值(但詳見下方註解)。

ScalingModeAsPlayed
已淘汰.

定義一種擷取模式,播放音量會影響(縮放)擷取資料的範圍。

ScalingModeNormalized
已淘汰.

定義一種擷取模式,根據擷取資料的內容進行放大。

StateEnabled
已淘汰.

一個啟用中的 Visualizer 物件的狀態。

StateInitialized
已淘汰.

一個已準備好可使用的視覺化物件狀態。

StateUninitialized
已淘汰.

建立時未成功初始化的 Visualizer 物件狀態

Success
已淘汰.

手術成功。

屬性

名稱 Description
CaptureSize

回傳目前的捕獲大小。

Class

回傳此 Object的執行時類別。

(繼承來源 Object)
Enabled

取得視覺化器目前的啟動狀態。

Handle

底層 Android 實例的帳號。

(繼承來源 Object)
JniIdentityHashCode

取得由互通執行時指派給此 Java 對等端的身份雜湊碼。

(繼承來源 Object)
JniManagedPeerState

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
JniPeerMembers

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

MaxCaptureRate

回傳回調擷取方法的最大擷取率。

MeasurementMode

回傳此音訊效果所執行的電流測量模式

PeerReference

取得這個 Java 節點的 JNI 物件參考。

(繼承來源 Object)
SamplingRate

回傳擷取音訊的取樣率。

ScalingMode

回傳擷取的視覺化資料的當前縮放模式。

ThresholdClass

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

ThresholdType

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

方法

名稱 Description
Clone()

建立並回傳此物件的副本。

(繼承來源 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
Dispose()

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
Dispose(Boolean)

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
DisposeUnlessReferenced()

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
Equals(Object)

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
Equals(Object)

表示是否有其他物體「等同」於此物。

(繼承來源 Object)
GetCaptureSizeRange()

回傳捕獲大小範圍。

GetFft(Byte[])

回傳目前正在播放音訊內容的頻率擷取。

GetHashCode()

回傳物件的雜湊碼值。

(繼承來源 Object)
GetMeasurementPeakRms(Visualizer+MeasurementPeakRms)

取得最新的峰值與均方根值測量值。

GetWaveForm(Byte[])

回傳目前播放音訊內容的波形擷取。

JavaFinalize()
已淘汰.

當垃圾回收判定該物件不再有相關參考時,由垃圾回收器呼叫。

(繼承來源 Object)
Notify()

喚醒一個正在該物件監視器上等待的執行緒。

(繼承來源 Object)
NotifyAll()

喚醒所有等待該物件監視器的執行緒。

(繼承來源 Object)
Release()

釋出原生的 Visualizer 資源。

SetCaptureSize(Int32)

設定擷取大小,i。

SetDataCaptureListener(Visualizer+IOnDataCaptureListener, Int32, Boolean, Boolean)

註冊 OnDataCaptureListener 介面,並指定擷取更新速率及擷取類型。

SetEnabled(Boolean)

啟用或停用視覺化引擎。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetMeasurementMode(VisualizerMeasurementMode)

設定此音訊效果將執行的測量模式組合。

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
SetScalingMode(VisualizerScalingMode)

設定對擷取的視覺化資料套用的縮放類型。

ToArray<T>()

從這個 Java 陣列包裝器建立一個受管理陣列。

(繼承來源 Object)
ToString()

回傳物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

將此 Java 節點從互通執行時中取消註冊。

(繼承來源 Object)
Wait()

導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。

(繼承來源 Object)
Wait(Int64, Int32)

會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。

(繼承來源 Object)
Wait(Int64)

會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。

(繼承來源 Object)

明確介面實作

名稱 Description
IJavaPeerable.Disposed()

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
IJavaPeerable.Finalized()

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

(繼承來源 JavaObject)

擴充方法

名稱 Description
GetJniTypeName(IJavaPeerable)

取得實例 self類型的 JNI 名稱。

JavaAs<TResult>(IJavaPeerable)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

JavaCast<TResult>(IJavaObject)

執行 Android 執行時檢查型別轉換。

JavaCast<TResult>(IJavaObject)

Visualizer 類別讓應用程式能夠擷取目前播放的部分音訊以供視覺化。

TryJavaCast<TResult>(IJavaPeerable, TResult)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

適用於