audio-extract is a Python library that allows you to extract audio from video files and trim the audio according to your needs
audio-extract is a Python library that allows you to extract audio from video files and trim the audio according to your needs. You can use it to create audio clips from movies, podcasts, or any other video source. It supports various audio and video formats, such as MP3, WAV, OGG, MP4, AVI, and MKV.
- Install from Pypi:
pip install audio-extract
- Install from GitHub:
pip install git+https://github.com/riad-azz/audio-extract.git
The application is pretty straightforward all you need is to import the extract_audio
function. The function args:
-
input_path
: The path to the input (Video/Audio) file. -
output_path
: The path to the extracted audio file. The default value is./audio.mp3
. -
output_format
: The format of the extracted audio. The default value ismp3
. -
start_time
: The start time of the output inHH:MM:SS
orMM:SS
format. The default value is00:00:00
. -
duration
: The duration of the extracted audio in seconds (float). The default value isNone
which means full audio will be extracted ifstart_time
is set to00:00:00
. -
overwrite
: Whether to overwrite the output file if it already exists or not. The default value isFalse
.
The supported file formats:
-
Supported audio formats :
WAV, OGG, MP3, AAC, FLAC, M4A, OGA, OPUS
-
Supported video formats :
MP4, MKV, WEBM, FLV, AVI, MOV, WMV, M4V
from audio_extract import extract_audio
extract_audio(input_path="./video.mp4", output_path="./audio.mp3")
This will create a mp3
file called audio.mp3
that contains the full audio of the video file video.mp4
.
from audio_extract import extract_audio
extract_audio(input_path="./video.mp4",
output_path="./audio.mp3",
start_time="00:30",
overwrite=True)
This will create a mp3
file called audio.mp3
that starts after the first 30 seconds of the video file video.mp4
and will overwrite audio.mp3
file if it already exists.
from audio_extract import extract_audio
extract_audio(input_path="./video.mp4",
output_path="./audio.mp3",
start_time="00:25",
duration=15.0)
This will convert video file video.mp4
to a mp3 file starting from 00:25
to 00:40
called audio.mp3
that will have a duration of 00:15
.
from audio_extract import extract_audio
extract_audio(input_path="./audio.mp3",
output_path="./new_audio.mp3",
start_time="00:05",
duration=20.0)
This will trim the audio.mp3
file starting from 00:05
to 00:25
to a mp3
file called new_audio.mp3
that will
have a duration of 00:20
.
The following cli arguments are supported:
-
--input
or-i
: The path to the input (Video/Audio) file. -
--output
or-o
: The path to the extracted audio file. The default value is./audio.mp3
. -
--format
or-f
: The format of the extracted audio. The default value ismp3
. -
--start-time
or-st
: The start time of the output inHH:MM:SS
orMM:SS
format. The default value is00:00:00
. -
--duration
or-d
: The duration of the extracted audio in seconds (float), The default value isNone
which means full audio will be extracted ifstart_time
is set to00:00:00
. -
--overwrite
or-ow
: Whether to overwrite the output file if it already exists or not. The default value isFalse
.
Here is an example of using the CLI to extract audio:
audio-extract --input="./video.mp4" --output="./audios/extracted_audio.wav" --format="wav"
This command will extract the full audio starting from video.mp4
to a wav
file called extracted_audio.wav
and will
be saved to the folder ./audios/
. The folder will be automatically created if it doesn't exist.
Riadh Azzoun - @riad-azz
This project is licensed under the [MIT] License - see the LICENSE.md file for details