wechat/audio
audio module provides audio API bindings details in wechat document
Types
AudioContext type
pub type AudioContext
InnerAudioContext type
pub type InnerAudioContext
WebAudioContext type
pub type WebAudioContext
Values
pub fn create_audio_context(id s: String) -> AudioContext
wx.createAudioContext
Create audio context
pub fn create_inner_audio_context() -> InnerAudioContext
wx.createInnerAudioContext
Create inner audio context
pub fn create_web_audio_context() -> WebAudioContext
wx.createWebAudioContext
Create WebAudio context
pub fn get_available_audio_sources(
complete cb: fn() -> Nil,
) -> promise.Promise(Result(object.JsObject, object.WechatError))
wx.getAvailableAudioSources
Get available audio input sources
pub fn get_inner_audio_buffered(ctx: InnerAudioContext) -> Float
InnerAudioContext.getBuffered
pub fn get_inner_audio_current_time(
ctx: InnerAudioContext,
) -> Float
InnerAudioContext.getCurrentTime
pub fn get_inner_audio_duration(ctx: InnerAudioContext) -> Float
InnerAudioContext.getDuration
pub fn get_inner_audio_paused(ctx: InnerAudioContext) -> Bool
InnerAudioContext.getPaused
pub fn inner_audio_destroy(ctx: InnerAudioContext) -> Nil
InnerAudioContext.destroy
pub fn inner_audio_pause(ctx: InnerAudioContext) -> Nil
InnerAudioContext.pause
pub fn inner_audio_seek(
ctx: InnerAudioContext,
position p: Float,
) -> Nil
InnerAudioContext.seek
pub fn off_inner_audio_canplay(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.offCanplay
pub fn off_inner_audio_ended(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.offEnded
pub fn off_inner_audio_error(
ctx: InnerAudioContext,
cb: fn(object.JsObject) -> Nil,
) -> Nil
InnerAudioContext.offError
pub fn off_inner_audio_pause(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.offPause
pub fn off_inner_audio_play(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.offPlay
pub fn off_inner_audio_seeked(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.offSeeked
pub fn off_inner_audio_seeking(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.offSeeking
pub fn off_inner_audio_stop(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.offStop
pub fn off_inner_audio_time_update(
ctx: InnerAudioContext,
cb: fn(object.JsObject) -> Nil,
) -> Nil
InnerAudioContext.offTimeUpdate
pub fn off_inner_audio_waiting(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.offWaiting
pub fn on_inner_audio_canplay(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.onCanplay
pub fn on_inner_audio_ended(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.onEnded
pub fn on_inner_audio_error(
ctx: InnerAudioContext,
cb: fn(object.JsObject) -> Nil,
) -> Nil
InnerAudioContext.onError
pub fn on_inner_audio_pause(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.onPause
pub fn on_inner_audio_play(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.onPlay
pub fn on_inner_audio_seeked(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.onSeeked
pub fn on_inner_audio_seeking(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.onSeeking
pub fn on_inner_audio_stop(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.onStop
pub fn on_inner_audio_time_update(
ctx: InnerAudioContext,
cb: fn(object.JsObject) -> Nil,
) -> Nil
InnerAudioContext.onTimeUpdate
pub fn on_inner_audio_waiting(
ctx: InnerAudioContext,
cb: fn() -> Nil,
) -> Nil
InnerAudioContext.onWaiting
pub fn pause_voice(
complete cb: fn() -> Nil,
) -> promise.Promise(Result(object.JsObject, object.WechatError))
wx.pauseVoice
Pause voice
pub fn play_voice(
file_path fp: String,
duration d: Int,
complete cb: fn() -> Nil,
) -> promise.Promise(Result(object.JsObject, object.WechatError))
wx.playVoice
Play voice
pub fn set_inner_audio_autoplay(
ctx: InnerAudioContext,
autoplay a: Bool,
) -> Nil
InnerAudioContext.setAutoplay
pub fn set_inner_audio_loop(
ctx: InnerAudioContext,
loop l: Bool,
) -> Nil
InnerAudioContext.setLoop
pub fn set_inner_audio_obey_mute_switch(
ctx: InnerAudioContext,
obey o: Bool,
) -> Nil
InnerAudioContext.setObeyMuteSwitch
pub fn set_inner_audio_option(
mix_with_others mwo: Bool,
obey_mute_switch oms: Bool,
complete cb: fn() -> Nil,
) -> promise.Promise(Result(object.JsObject, object.WechatError))
wx.setInnerAudioOption
Set InnerAudioContext options globally
pub fn set_inner_audio_playback_rate(
ctx: InnerAudioContext,
rate r: Float,
) -> Nil
InnerAudioContext.setPlaybackRate
pub fn set_inner_audio_src(
ctx: InnerAudioContext,
src s: String,
) -> Nil
InnerAudioContext.setSrc
pub fn set_inner_audio_start_time(
ctx: InnerAudioContext,
start_time st: Float,
) -> Nil
InnerAudioContext.setStartTime
pub fn set_inner_audio_volume(
ctx: InnerAudioContext,
volume v: Float,
) -> Nil
InnerAudioContext.setVolume
pub fn stop_voice(
complete cb: fn() -> Nil,
) -> promise.Promise(Result(object.JsObject, object.WechatError))
wx.stopVoice
Stop voice
pub fn web_audio_close(wac: WebAudioContext) -> Nil
WebAudioContext.close
Close WebAudio context
pub fn web_audio_create_analyser(
wac: WebAudioContext,
) -> object.JsObject
WebAudioContext.createAnalyser
Create analyser node
pub fn web_audio_create_biquad_filter(
wac: WebAudioContext,
) -> object.JsObject
WebAudioContext.createBiquadFilter
Create biquad filter node
pub fn web_audio_create_buffer(
wac: WebAudioContext,
num_channels nc: Int,
length l: Int,
sample_rate sr: Float,
) -> object.JsObject
WebAudioContext.createBuffer
Create audio buffer
pub fn web_audio_create_buffer_source(
wac: WebAudioContext,
) -> object.JsObject
WebAudioContext.createBufferSource
Create buffer source node
pub fn web_audio_create_channel_merger(
wac: WebAudioContext,
inputs i: Int,
) -> object.JsObject
WebAudioContext.createChannelMerger
Create channel merger node
pub fn web_audio_create_channel_splitter(
wac: WebAudioContext,
outputs o: Int,
) -> object.JsObject
WebAudioContext.createChannelSplitter
Create channel splitter node
pub fn web_audio_create_constant_source(
wac: WebAudioContext,
) -> object.JsObject
WebAudioContext.createConstantSource
Create constant source node
pub fn web_audio_create_delay(
wac: WebAudioContext,
max_delay md: Float,
) -> object.JsObject
WebAudioContext.createDelay
Create delay node
pub fn web_audio_create_dynamics_compressor(
wac: WebAudioContext,
) -> object.JsObject
WebAudioContext.createDynamicsCompressor
Create dynamics compressor node
pub fn web_audio_create_gain(
wac: WebAudioContext,
) -> object.JsObject
WebAudioContext.createGain
Create gain node
pub fn web_audio_create_iir_filter(
wac: WebAudioContext,
feedforward ff: object.JsObject,
feedback fb: object.JsObject,
) -> object.JsObject
WebAudioContext.createIIRFilter
Create IIR filter node
pub fn web_audio_create_oscillator(
wac: WebAudioContext,
) -> object.JsObject
WebAudioContext.createOscillator
Create oscillator node
pub fn web_audio_create_panner(
wac: WebAudioContext,
) -> object.JsObject
WebAudioContext.createPanner
Create panner node
pub fn web_audio_create_periodic_wave(
wac: WebAudioContext,
options o: object.JsObject,
) -> object.JsObject
WebAudioContext.createPeriodicWave
Create periodic wave
pub fn web_audio_create_script_processor(
wac: WebAudioContext,
buffer_size bs: Int,
num_inputs ni: Int,
num_outputs no: Int,
) -> object.JsObject
WebAudioContext.createScriptProcessor
Create script processor node
pub fn web_audio_create_wave_shaper(
wac: WebAudioContext,
curve c: object.JsObject,
) -> object.JsObject
WebAudioContext.createWaveShaper
Create wave shaper node
pub fn web_audio_decode_audio_data(
wac: WebAudioContext,
array_buffer ab: object.JsObject,
complete cb: fn() -> Nil,
) -> promise.Promise(Result(object.JsObject, object.WechatError))
WebAudioContext.decodeAudioData
Decode audio data
pub fn web_audio_resume(wac: WebAudioContext) -> Nil
WebAudioContext.resume
Resume WebAudio context
pub fn web_audio_suspend(wac: WebAudioContext) -> Nil
WebAudioContext.suspend
Suspend WebAudio context