AudioSpectralMap[f,audio]
関数 f を短時間フーリエ(Fourier)変換に適用することで音声信号を変換する.
AudioSpectralMap[f,{audio1,…}]
関数 f をすべての audioiの短時間フーリエ変換のリストに適用する.
AudioSpectralMap[f,video]
video の最初の音声トラックを変換する.
AudioSpectralMap
AudioSpectralMap[f,audio]
関数 f を短時間フーリエ(Fourier)変換に適用することで音声信号を変換する.
AudioSpectralMap[f,{audio1,…}]
関数 f をすべての audioiの短時間フーリエ変換のリストに適用する.
AudioSpectralMap[f,video]
video の最初の音声トラックを変換する.
詳細とオプション
- AudioSpectralMapを使って,時間領域と周波数領域の両方で任意に信号を変更することができる.分光フィルタを使って特定の時間の特定の周波数を,弱めたり,ハイライトしたり,変更したりすることができる(例:ノイズを除去する).
- AudioSpectralMapは関数 f を短時間フーリエ変換に適用し,重畳加算法を使って逆関数を計算する.
- 関数 f は短時間フーリエ変換の値を第1引数として取る.周波数と時間も第2および第3引数として f に任意で与えることができる.
-
#Value または #1 短時間フーリエ変換の値 #Frequency または #2 周波数(単位:Hz) #Time または #3 時間(単位:秒) - 多チャンネル音声オブジェクトについては,変換は各チャンネル別々に行われる.
- 複数の音声信号がある場合は,#Valueは値のリストになる.audioiに#Value〚i〛を使う.
- AudioSpectralMapは,各分割の長さとオフセット,および平滑化窓が指定できるPartitionGranularityオプションを取る.
例題
すべて開く すべて閉じる例 (1)
スコープ (3)
a = \!\(\*AudioBox[""]\);AudioSpectralMap[#Value * #Frequency&, a]//AudioNormalizeAudioSpectralMap[#Value * #Time&, a]//AudioNormalizea1 = \!\(\*AudioBox[""]\);a2 = \!\(\*AudioBox[""]\);AudioSpectralMap[Times@@#Value&, {a1, a2}]AudioSpectralMap[Abs@#Value[[1]] * Exp[-I Arg@#Value[[2]]]&, {a1, a2}]AudioSpectralMap[#Value ^ 1.5&, \!\(\*VideoBox[""]\)]オプション (1)
PartitionGranularity (1)
デフォルトで,分光フィルタリングに適した自動分割が使われる:
a = \!\(\*AudioBox[""]\);AudioSpectralMap[#Value ^ 1.5&, a]//AudioNormalizeAudioSpectralMap[#Value ^ 1.5&, a, PartitionGranularity -> Quantity[80, "Milliseconds"]]//AudioNormalizeAudioSpectralMap[#Value ^ 1.5&, a, PartitionGranularity -> {.08, .005, HannWindow}]//AudioNormalizeアプリケーション (8)
振幅が小さいすべての成分を除去することで,音声信号のノイズを除去する:
a = \!\(\*AudioBox[""]\);
Spectrogram[a]AudioSpectralMap[If[Abs@#Value < 4, 0., #Value]&, a]Spectrogram[%]1000Hzより小さい成分を除去することでローパスフィルタを作る:
a = AudioGenerator["White", 1, SampleRate -> 8000];Spectrogram[a]AudioSpectralMap[#Value (1 - UnitStep[#Frequency - 1000])&, a]Spectrogram[%]AudioSpectralMap[#Value UnitStep[#Frequency - 1000]&, a]Spectrogram[%]a = AudioGenerator["White", 1, SampleRate -> 8000];Spectrogram[a]AudioSpectralMap[#Value (UnitStep[#Time - .5])&, a]Spectrogram[%]すべての成分にランダムな位相を割り当ててささやき効果を出す:
a = ExampleData[{"Audio", "Apollo11SmallStep"}, "Audio"];
AudioSpectralMap[#Value Exp[I RandomReal[2Pi]]&, a]ゼロに等しい位相をすべての成分に割り当ててロボットのような効果を出す:
a = ExampleData[{"Audio", "Apollo11SmallStep"}, "Audio"];
AudioSpectralMap[Abs[#Value]&, a, PartitionGranularity -> Quantity[30, "Milliseconds"]]静かな成分の振幅を低くすると,事実上,単純なノイズ除去が行われる:
apollo = ExampleData[{"Audio", "Apollo11SmallStep"}, "Audio"];f[value_] := (value Abs[value]/Abs[value] + 10)Plot[f[value], {value, 0, 10}]AudioSpectralMap[f, apollo]g[value_] := If[Abs[(value Abs[value]/Abs[value] + 10)] < 2, 0, value]Plot[g[value], {value, 0, 10}]AudioSpectralMap[g, apollo]a = AudioGenerator["White", SampleRate -> 8000];f[value_, freq_, time_] := value(Tanh[(freq - 2000 * (1 - time))] / 2 + .5)AudioSpectralMap[f, a]//AudioNormalizeSpectrogram[%]apollo = ExampleData[{"Audio", "Apollo11SmallStep"}, "Audio"]Spectrogram[apollo]noise = AudioTrim[apollo, {4, 5}]noiseSpectrum = Abs[Fourier[First@AudioData[noise], FourierParameters -> {1, -1}]];smoothedNoiseSpectrum = MeanFilter[noiseSpectrum, 20];平滑化されたノイズスペクトルを使って周波数領域上に補間関数を作る:
len = Floor[Length[noiseSpectrum] / 2];f = Interpolation[Thread[{Array[#&, len, {0., 11025}], smoothedNoiseSpectrum[[ ;; len]]}]]Plot[f[x], {x, 0, 10000}]AudioSpectralMap[Clip[(Abs[#Value] - f[#Frequency]), {0, Infinity}] * Exp[-I Arg@#Value]&, apollo]Spectrogram[%]特性と関係 (1)
a = ExampleData[{"Audio", "Apollo11SmallStep"}, "Audio"];AudioSpectralMap[Identity, a]% == a{Mean[#], StandardDeviation[#]}&[AudioSpectralMap[Identity, a] - a]関連するガイド
-
▪
- 音声編集
テキスト
Wolfram Research (2017), AudioSpectralMap, Wolfram言語関数, https://reference.wolfram.com/language/ref/AudioSpectralMap.html (2024年に更新).
CMS
Wolfram Language. 2017. "AudioSpectralMap." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2024. https://reference.wolfram.com/language/ref/AudioSpectralMap.html.
APA
Wolfram Language. (2017). AudioSpectralMap. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/AudioSpectralMap.html
BibTeX
@misc{reference.wolfram_2026_audiospectralmap, author="Wolfram Research", title="{AudioSpectralMap}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/AudioSpectralMap.html}", note=[Accessed: 17-August-2026]}
BibLaTeX
@online{reference.wolfram_2026_audiospectralmap, organization={Wolfram Research}, title={AudioSpectralMap}, year={2024}, url={https://reference.wolfram.com/language/ref/AudioSpectralMap.html}, note=[Accessed: 17-August-2026]}