paddlespeech.s2t.frontend.speech 模块
包含语音段类。
- class paddlespeech.s2t.frontend.speech.SpeechSegment(samples, sample_rate, transcript, tokens=None, token_ids=None)[来源]
基础:
AudioSegment带文本的语音片段
- Args:
音频段 (AudioSegment): 音频段
- Attributes:
duration返回音频时长。
- has_token
num_samples返回样本数量。
rms_db返回音频的均方根能量,单位为分贝。
sample_rate返回音频采样率。
samples返回音频样本。
token_ids返回成绩单文本标记的ID。
tokens返回成绩单文本标记。
transcript返回成绩单文本。
方法
add_noise(noise, snr_dB[, ...])在特定信噪比下添加给定的噪声段。
change_speed(speed_rate)通过线性插值改变音频速度。
concatenate(*segments)将任意数量的语音段连接在一起,音频和文本将被连接。
convolve(impulse_segment[, allow_resample])将此音频片段与给定的脉冲片段进行卷积。
convolve_and_normalize(impulse_segment[, ...])对得到的音频片段进行卷积和归一化,使其具有与输入信号相同的平均功率。
from_bytes(bytes, transcript[, tokens, ...])从字节字符串和相应的创建语音片段
from_file(filepath, transcript[, tokens, ...])从音频文件和相应的转录创建语音片段。
from_pcm(samples, sample_rate, transcript[, ...])在在线模式下从pcm创建语音段 参数: samples (numpy.ndarray): 音频样本 [num_samples x num_channels]。 sample_rate (int): 音频采样率。 transcript (str): 语音的文本记录。 tokens (List[str], optional): 文本标记。 默认为 None。 token_ids (List[int], optional): 文本标记的 ID。 默认为 None。 返回: SpeechSegment: 语音段实例。
from_sequence_file(filepath)从序列文件创建音频段。
gain_db(gain)对样本应用分贝增益。
make_silence(duration, sample_rate)创建一个给定持续时间和采样率的静音语音段,转录将是一个空字符串。
normalize([target_db, max_gain_db])将音频归一化为期望的均方根值(RMS),以分贝为单位。
normalize_online_bayesian(target_db, ...[, ...])使用与生产兼容的在线/因果算法规范化音频。
pad_silence(duration[, sides])用一段静音填充这个音频样本。
random_subsegment(subsegment_length[, rng])随机截取指定长度的音频片段。
resample(target_sample_rate[, filter])将音频重采样到目标采样率。
shift(shift_ms)在时间上移动音频。
slice_from_file(filepath, transcript[, ...])加载语音的一小部分,而无需将整个文件加载到内存中,这可能是非常浪费的。
subsegment([start_sec, end_sec])在给定边界之间裁剪音频段。
superimpose(other)将另一个片段的样本添加到这个片段的样本中(样本级别的添加,而不是片段的连接)。
to([dtype])创建一个 dtype 音频内容。
to_bytes([dtype])创建一个包含音频内容的字节字符串。
to_wav_file(filepath[, dtype])将音频片段保存到磁盘作为wav文件。
- classmethod concatenate(*segments)[来源]
将任意数量的语音片段连接在一起,音频和文本将被连接。
- Parameters:
*segments --
输入的语音段将被连接。
- Returns:
语音片段实例。
- Return type:
- Raises:
值错误 -- 如果段的数量为零,或者任何两个段的 sample_rate 不匹配。
类型错误 -- 如果任何片段不是 SpeechSegment 实例。
- classmethod from_bytes(bytes, transcript, tokens=None, token_ids=None)[来源]
从字节字符串和相应创建语音段
- Args:
filepath (str|file): 音频文件的文件路径或文件对象。
transcript (str): 演讲的文本抄本。
tokens (List[str], optional): 文本标记。默认为 None。
token_ids (List[int], optional): 文本标记 id。默认为 None。- Returns:
语音片段:语音片段实例。
- classmethod from_file(filepath, transcript, tokens=None, token_ids=None, infos=None)[来源]
从音频文件和相应的转录文本创建语音段。
- Args:
filepath (str|file): 音频文件的文件路径或文件对象。
transcript (str): 语音的文本记录。
tokens (List[str], optional): 文本标记。默认为 None。
token_ids (List[int], optional): 文本标记 ID。默认为 None。
infos (TarLocalData, optional): tar2obj 和 tar2infos。默认为 None。- Returns:
语音片段:语音片段实例。
- classmethod from_pcm(samples, sample_rate, transcript, tokens=None, token_ids=None)[来源]
在在线模式下从pcm创建语音片段
参数:样本 (numpy.ndarray): 音频样本 [样本数量 x 通道数量]. 采样率 (int): 音频采样率. 转录 (str): 讲话的转录文本. 标记 (List[str], optional): 文本标记. 默认值为 None. 标记 ID (List[int], optional): 文本标记 ID. 默认值为 None.
- Returns:
SpeechSegment: 语音片段实例。
- property has_token
- classmethod make_silence(duration, sample_rate)[来源]
创建一个给定持续时间和采样率的静音语音段,转录将是一个空字符串。
- Args:
duration (float): 静音的长度(以秒为单位)。
sample_rate (float): 采样率。- Returns:
SpeechSegment: 给定持续时间的静音。
- classmethod slice_from_file(filepath, transcript, tokens=None, token_ids=None, start=None, end=None)[来源]
加载演讲的一个小部分,而无需将整个文件加载到内存中,这可能是非常浪费的。
- Parameters:
filepath (str|file) -- 音频文件的文件路径或文件对象。
开始 (浮点数) -- 开始时间(单位:秒)。如果开始时间为负,则从末尾开始。如果未提供,则此函数从起始位置读取。
end (float) -- 结束时间,以秒为单位。如果结束时间为负数,它将从结尾开始循环。如果未提供,默认行为是读取文件的结尾。
transcript -- 演讲的抄本文本。如果未提供,默认为空字符串。
- Returns:
SpeechSegment 是输入语音文件指定片段的实例。
- Return type:
- property token_ids
返回成绩单文本标记的ID。
- Returns:
List[int]: 文本令牌 ID。
- property tokens
返回成绩单文本标记。
- Returns:
List[str]: 文本令牌。
- property transcript
返回成绩单文本。
- Returns:
str: 演讲的文字记录。