SpatialAudioParams

  • Unreal C++

更新时间不可用

空间音频参数。

C++
struct SpatialAudioParams {
  Optional<double> speaker_azimuth;
  Optional<double> speaker_elevation;
  Optional<double> speaker_distance;
  Optional<int> speaker_orientation;
  Optional<bool> enable_blur;
  Optional<bool> enable_air_absorb;
  Optional<double> speaker_attenuation;
  Optional<bool> enable_doppler;
};

属性

参数名描述
speaker_azimuth

远端用户或媒体播放器相对于本地用户的水平角。取值范围为 [0,360],单位为度。其中:

  • 0:(默认)0 度,表示水平面的正前方。
  • 90: 90 度,表示水平面的正左方。
  • 180: 180 度,表示水平面的正后方。
  • 270: 270 度,表示水平面的正右方。
  • 360: 360 度,表示水平面的正前方。
speaker_elevation

远端用户或媒体播放器相对于本地用户的俯仰角。取值范围为 [-90,90],单位为度。其中:

  • 0:(默认)0 度,表示水平面无旋转。
  • -90: -90 度,表示水平面向下旋转 90 度。
  • 90: 90 度,表示水平面向上旋转 90 度。
speaker_distance

远端用户或媒体播放器相对于本地用户的距离。取值范围为 [1,50],单位为米。默认值为 1 米。

speaker_orientation

远端用户或媒体播放器相对于本地用户的朝向。取值范围为 [0,180],单位为度。其中:

  • 0:(默认)0 度,表示声源和听者朝向同一方向。
  • 180: 180 度,表示声源和听者面对面。
enable_blur

是否开启声音模糊处理:

  • true: 开启模糊处理。
  • false: (默认)关闭模糊处理。
enable_air_absorb

是否开启空气衰减,即模拟声音在空气中传播的音色衰减效果:在一定的传输距离下,高频声音衰减速度快、低频声音衰减速度慢。

  • true: (默认)开启空气衰减。需确认 speaker_attenuation 的值不为 0,否则该设置不生效。
  • false: 关闭空气衰减。
speaker_attenuation

远端用户或媒体播放器的声音衰减系数,取值范围为[0,1]。其中:

  • 0:广播模式,即音量和音色均不随距离衰减,无论距离远近,本地用户听到的音量和音色都无变化。
  • (0,0.5):弱衰减模式,即音量和音色(需同时开启 enable_air_absorb )在传播过程中仅发生微弱衰减,跟真实环境相比,声音可以传播得更远。
  • 0.5:(默认)模拟音量在真实环境下的衰减,效果等同于不设置 speaker_attenuation 参数。
  • (0.5,1]:强衰减模式,即音量和音色(需同时开启 enable_air_absorb )在传播过程中发生迅速衰减。
enable_doppler

是否开启多普勒音效:当声源与接收声源者之间产生相对位移时,接收方听到的音调会发生变化。

  • true: 开启多普勒音效。
  • false: (默认)关闭多普勒音效。

注意:

  • 该参数适用于声源高速运动的场景(例如:赛车游戏),在普通音视频互动场景(语聊、连麦、在线 KTV)中不建议开启。
  • 开启该参数时,建议设定一个规律的周期(比如 30 ms),然后调用 updatePlayerPositionInfo、updateSelfPosition 和 updateRemotePosition 方法持续更新声源和接收方的相对距离。以下因素会导致多普勒效应达不到预期或者声音出现抖动:更新距离的周期过长,更新周期不规律,网络丢包或延迟导致距离信息丢失。
表格内容超出当前宽度,可横向滚动查看更多列。

这个页面有帮助吗?