mindspore.dataset.audio.Fade
- class mindspore.dataset.audio.Fade(fade_in_len=0, fade_out_len=0, fade_shape=FadeShape.LINEAR)[源代码]
向波形添加淡入和/或淡出。
- 参数:
fade_in_len (int, 可选) - 淡入长度(时间帧),必须是非负。默认值:
0
。fade_out_len (int, 可选) - 淡出长度(时间帧),必须是非负。默认值:
0
。fade_shape (
FadeShape
, 可选) - 淡入淡出形状,可以选择FadeShape提供的模式。默认值:FadeShape.LINEAR
。FadeShape.QUARTER_SINE
,表示淡入淡出形状为四分之一正弦模式。FadeShape.HALF_SINE
,表示淡入形状为半正弦模式。FadeShape.LINEAR
,表示淡入淡出形状为线性模式。FadeShape.LOGARITHMIC
,表示淡入淡出形状为对数模式。FadeShape.EXPONENTIAL
,表示淡入淡出形状为指数模式。
- 异常:
RuntimeError - 如果 fade_in_len 超过音频波形长度。
RuntimeError - 如果 fade_out_len 超过音频波形长度。
- 支持平台:
CPU
样例:
>>> import numpy as np >>> import mindspore.dataset as ds >>> import mindspore.dataset.audio as audio >>> >>> # Use the transform in dataset pipeline mode >>> waveform = np.random.random([5, 16]) # 5 samples >>> numpy_slices_dataset = ds.NumpySlicesDataset(data=waveform, column_names=["audio"]) >>> transforms = [audio.Fade(fade_in_len=3, fade_out_len=2, fade_shape=audio.FadeShape.LINEAR)] >>> numpy_slices_dataset = numpy_slices_dataset.map(operations=transforms, input_columns=["audio"]) >>> for item in numpy_slices_dataset.create_dict_iterator(num_epochs=1, output_numpy=True): ... print(item["audio"].shape, item["audio"].dtype) ... break (16,) float64 >>> >>> # Use the transform in eager mode >>> waveform = np.random.random([16]) # 1 sample >>> output = audio.Fade(fade_in_len=3, fade_out_len=2, fade_shape=audio.FadeShape.LINEAR)(waveform) >>> print(output.shape, output.dtype) (16,) float64
- 教程样例: