python-scripts/scripts/AudioConverter/audio-converter.py

52 lines
1.1 KiB
Python
Raw Normal View History

2022-10-05 16:37:50 +00:00
import subprocess
import os
import argparse
parser = argparse.ArgumentParser(
description='A program to convert audio to another audio format'
)
parser.add_argument(
'-p',
'--path',
type=str,
help='''
The full path of file to convert OR
the full path of folder that contains all files to convert'
''',
required=True
)
parser.add_argument(
'-e',
'--extension',
type=str,
help='The type of extension to convert the audio',
default='.mp3',
required=False
)
def convert(file, extension):
file_name, _ = file.split('.')
output_name = file_name + extension
subprocess.run(['ffmpeg', '-i', file, output_name])
def convert_all(path, extension):
for _, _, files in os.walk(path):
for file in files:
convert(file, extension)
if __name__ == "__main__":
args = parser.parse_args()
path = args.path
extension = args.extension
os.chdir(os.path.dirname(path))
if (os.path.isdir(path)):
convert_all(path=path, extension=extension)
else:
convert(file=path, extension=extension)