Refactor get_output_filename method

Refactor get_output_filename method to improve clarity and efficiency.
This commit is contained in:
kilyabin
2025-11-10 01:22:51 +04:00
committed by GitHub
parent 13f762b26d
commit b8f2ab38a2

View File

@@ -460,45 +460,30 @@ class AudioProcessor:
logger.error(f"Ошибка при извлечении аудио: {e}", exc_info=True) logger.error(f"Ошибка при извлечении аудио: {e}", exc_info=True)
return False return False
def get_output_filename(self, original_filename: str, speed_factor: float) -> str: def get_output_filename(self, original_filename: str, speed_factor: float) -> str:
""" path = Path(original_filename)
Генерирует имя выходного файла stem = path.stem
suffix = path.suffix
Args: if speed_factor < 1.0:
original_filename: Исходное имя файла speed_tag = " (Slowed)"
speed_factor: Коэффициент скорости elif speed_factor > 1.0:
speed_tag = " (Speed Up)"
else:
speed_tag = ""
Returns: stem_clean = stem.replace(" (Slowed)", "").replace(" (Speed Up)", "").strip()
Новое имя файла new_stem = stem_clean + speed_tag
"""
# Получаем имя и расширение
path = Path(original_filename)
stem = path.stem
suffix = path.suffix
# Определяем, что добавить к названию # Также добавляем процент для совместимости
if speed_factor < 1.0: speed_percent = int((speed_factor - 1.0) * 100)
speed_tag = " (Slowed)" if speed_percent != 0:
elif speed_factor > 1.0: # добавляем знак + для положительных значений автоматически
speed_tag = " (Speed Up)" speed_str = f" {speed_percent:+d}%"
else: else:
speed_tag = "" speed_str = ""
# Убираем старые теги, если они есть return f"{new_stem}{speed_str}{suffix}"
stem_clean = stem.replace(" (Slowed)", "").replace(" (Speed Up)", "").strip()
# Добавляем новый тег
new_stem = stem_clean + speed_tag
# Также добавляем процент для совместимости
speed_percent = int((speed_factor - 1.0) * 100)
if speed_percent != 0:
if speed_percent >= 0:
speed_str = f"_{speed_percent:+d}%"
else:
speed_str = f"_{speed_percent}%"
else:
speed_str = ""
return f"{new_stem}{speed_str}{suffix}" return f"{new_stem}{speed_str}{suffix}"