Share via


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
属性

注解

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。 它不是音频录制界面,仅返回部分和低质量音频内容。 但是,为了保护某些音频数据的隐私 (例如语音邮件) 使用可视化工具需要权限android.permission.RECORD_AUDIO。

传递给构造函数的音频会话 ID 指示应可视化的音频内容:<br><ul<>li>如果会话为 0,则可视化<音频输出混合/li><>如果会话不为 0,则可视化来自特定android.media.MediaPlayerandroid.media.AudioTrack使用此音频会话<的音频 /li></ul>

可以捕获两种类型的音频内容的表示形式:<br><ul<>li>波形数据:使用 #getWaveForm(byte[]) 方法<连续的 8 位 (无符号) 单声道样本/li<>li>频率数据:使用 #getFft(byte[]) 方法</li></ul 的 8 位数量级 FFT>

可以通过分别 #getCaptureSize() 调用 和 #setCaptureSize(int) 方法来检索或指定捕获的长度。 捕获大小必须在 返回 #getCaptureSizeRange()的范围中为 2 的幂。

除了上述使用 #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 峰值和 RMS 监视。 可以通过 检索 #getMeasurementPeakRms(MeasurementPeakRms)度量值。

android.media.audiofx.VisualizerJava 文档。

此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。

构造函数

Visualizer(Int32)

类构造函数。

Visualizer(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

字段

AlreadyExists
已过时.

内部操作状态。

Error
已过时.

错误。

ErrorBadValue
已过时.

由于参数值错误,操作失败。

ErrorDeadObject
已过时.

由于远程对象已死,操作失败。

ErrorInvalidOperation
已过时.

操作失败,因为请求该操作处于错误状态。

ErrorNoInit
已过时.

由于对象初始化错误,操作失败。

ErrorNoMemory
已过时.

由于内存不足,操作失败。

MeasurementModeNone
已过时.

定义不执行测量的度量模式。

MeasurementModePeakRms
已过时.

定义一种度量模式,该模式计算“全刻度”以下的峰值和 RMS 值(以 mB 为单位),其中 0mB 通常是 (的最大样本值,但请参阅以下说明) 。

ScalingModeAsPlayed
已过时.

定义捕获模式,其中播放音量会影响 (缩放) 捕获数据的范围。

ScalingModeNormalized
已过时.

定义一个捕获模式,其中根据捕获数据的内容应用放大。

StateEnabled
已过时.

处于活动状态的可视化工具对象的状态。

StateInitialized
已过时.

可供使用的可视化工具对象的状态。

StateUninitialized
已过时.

创建时未成功初始化的可视化工具对象的状态

Success
已过时.

成功的操作。

属性

CaptureSize

返回当前捕获大小。

Class

返回此 Object的运行时类。

(继承自 Object)
Enabled

获取可视化工具的当前激活状态。

Handle

基础 Android 实例的句柄。

(继承自 Object)
JniIdentityHashCode

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
JniPeerMembers

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

MaxCaptureRate

返回回调捕获方法的最大捕获速率。

MeasurementMode

返回此音频效果执行的当前测量模式

PeerReference

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
SamplingRate

返回捕获的音频的采样率。

ScalingMode

返回捕获的可视化数据上的当前缩放模式。

ThresholdClass

此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。

方法

Clone()

创建并返回此对象的副本。

(继承自 Object)
Dispose()

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
Dispose(Boolean)

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
Equals(Object)

指示某个其他对象是否“等于”此对象。

(继承自 Object)
GetCaptureSizeRange()

返回捕获大小范围。

GetFft(Byte[])

返回当前正在播放的音频内容的频率捕获。

GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
GetMeasurementPeakRms(Visualizer+MeasurementPeakRms)

检索最新的峰值和 RMS 度量。

GetWaveForm(Byte[])

返回当前正在播放的音频内容的波形捕获。

JavaFinalize()

当垃圾回收确定不再引用对象时,由垃圾回收器对对象调用。

(继承自 Object)
Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
Release()

释放本机可视化工具资源。

SetCaptureSize(Int32)

设置捕获大小 i.

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

注册 OnDataCaptureListener 接口,并指定捕获的更新速率以及请求的捕获类型。

SetEnabled(Boolean)

启用或禁用可视化引擎。

SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
SetMeasurementMode(VisualizerMeasurementMode)

设置此音频效果要执行的测量模式的组合。

SetScalingMode(VisualizerScalingMode)

设置对捕获的可视化数据应用的缩放类型。

ToArray<T>()

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
Wait()

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<>

(继承自 Object)
Wait(Int64)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
Wait(Int64, Int32)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)

显式接口实现

IJavaPeerable.Disposed()

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
IJavaPeerable.Finalized()

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

(继承自 Object)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

GetJniTypeName(IJavaPeerable)

可视化工具类使应用程序能够检索当前播放的音频的一部分以实现可视化目的。

适用于