diff --git a/audio_splitter/core.py b/audio_splitter/core.py index 5f56d0b..9a15970 100644 --- a/audio_splitter/core.py +++ b/audio_splitter/core.py @@ -71,6 +71,17 @@ def split_audio(input_file: str, output_directory: str, tracks: List[Dict[str, A # -------------------------------------------------------------------------- os.makedirs(output_directory, exist_ok=True) + # Check write permission on output directory. + try: + test_file = os.path.join(output_directory, f'.write_test_{os.getpid()}') + with open(test_file, 'w') as f: + f.write('test') + os.remove(test_file) + except PermissionError: + raise RuntimeError( + f"Error: No write permission for output directory: {output_directory}" + ) + total_duration = get_audio_duration(input_file) stream_info = get_stream_info(input_file)