pyrit.prompt_converter.AudioEchoConverter#
- class AudioEchoConverter(*, output_format: Literal['wav'] = 'wav', delay: float = 0.3, decay: float = 0.5)[source]#
Bases:
PromptConverterAdds an echo effect to an audio file.
The echo is created by mixing a delayed, attenuated copy of the signal back into the original. The delay and decay parameters control the timing and loudness of the echo respectively. Sample rate, bit depth, and channel count are preserved.
- __init__(*, output_format: Literal['wav'] = 'wav', delay: float = 0.3, decay: float = 0.5) None[source]#
Initialize the converter with echo parameters.
- Parameters:
output_format (str) – The format of the audio file, defaults to “wav”.
delay (float) – The echo delay in seconds. Must be greater than 0. Defaults to 0.3.
decay (float) – The decay factor for the echo (0.0 to 1.0). A value of 0.0 means no echo, 1.0 means the echo is as loud as the original. Must be between 0 and 1 (exclusive of both). Defaults to 0.5.
- Raises:
ValueError – If delay is not positive or decay is not in (0, 1).
Methods
__init__(*[, output_format, delay, decay])Initialize the converter with echo parameters.
convert_async(*, prompt[, input_type])Convert the given audio file by adding an echo effect.
convert_tokens_async(*, prompt[, ...])Convert substrings within a prompt that are enclosed by specified start and end tokens.
get_identifier()Get the component's identifier, building it lazily on first access.
input_supported(input_type)Check if the input type is supported by the converter.
output_supported(output_type)Check if the output type is supported by the converter.
Attributes
Accepted audio formats for conversion.
Tuple of input modalities supported by this converter.
Tuple of output modalities supported by this converter.
supported_input_typesReturns a list of supported input types for the converter.
supported_output_typesReturns a list of supported output types for the converter.
- SUPPORTED_INPUT_TYPES: tuple[Literal['text', 'image_path', 'audio_path', 'video_path', 'binary_path', 'url', 'reasoning', 'error', 'function_call', 'tool_call', 'function_call_output'], ...] = ('audio_path',)#
Tuple of input modalities supported by this converter. Subclasses must override this.
- SUPPORTED_OUTPUT_TYPES: tuple[Literal['text', 'image_path', 'audio_path', 'video_path', 'binary_path', 'url', 'reasoning', 'error', 'function_call', 'tool_call', 'function_call_output'], ...] = ('audio_path',)#
Tuple of output modalities supported by this converter. Subclasses must override this.
- async convert_async(*, prompt: str, input_type: Literal['text', 'image_path', 'audio_path', 'video_path', 'binary_path', 'url', 'reasoning', 'error', 'function_call', 'tool_call', 'function_call_output'] = 'audio_path') ConverterResult[source]#
Convert the given audio file by adding an echo effect.
- Parameters:
prompt (str) – File path to the audio file to be converted.
input_type (PromptDataType) – The type of input data.
- Returns:
The result containing the converted audio file path.
- Return type:
- Raises:
ValueError – If the input type is not supported.
Exception – If there is an error during the conversion process.