Files
TalkEdit/utils/audio_processing.py

20 lines
651 B
Python
Raw Normal View History

2025-01-28 17:00:03 -05:00
from pathlib import Path
# moviepy 2.x removed moviepy.editor; import directly from moviepy
try:
from moviepy import AudioFileClip
except ImportError:
# Fallback for moviepy 1.x
from moviepy.editor import AudioFileClip
2025-01-28 17:00:03 -05:00
def extract_audio(video_path: Path):
"""Extract audio from a video file."""
try:
audio = AudioFileClip(str(video_path))
audio_path = video_path.parent / f"{video_path.stem}_audio.wav"
audio.write_audiofile(str(audio_path), verbose=False, logger=None)
audio.close()
2025-01-28 17:00:03 -05:00
return audio_path
except Exception as e:
raise RuntimeError(f"Audio extraction failed: {e}")