Я ищу способ автоматизации задач во внешних программах с помощью Python.
У меня большие аудиофайлы в формате AAC.Мне нужно преобразовать их в mp3, а затем усилить их (избегая искажений).
Я написал программу с библиотекой pydub, которая прекрасно работает с небольшими файлами, но мои файлы слишком велики (дольше, чем 2 часа или200mb) и мне не хватает памяти (потому что эта библиотека хранит полные файлы в оперативной памяти, я думаю).Я не могу разбить файл на куски, потому что я не мог объединить их снова по предыдущей причине, и мне нужен файл одним куском.
Итак, я хотел бы написать программу, которая откроет другую программу дляпреобразовать файл в mp3 (mediahuman audio converter), а затем усилить преобразованный файл с помощью другой программы (аудиоредактор WavePad), но я не знаю, возможно ли это.
В настоящее время я делаюэто вручную, но это занимает много времени и требует менее 10 кликов (распределенных по всему процессу), что утомительно.
Я покидаю программу, которую написал.Я расшифровал его, чтобы удалить некоторые функции, которые не имеют отношения и не связаны с этим процессом, плюс я перевел комментарии, переменные и другие вещи на английский язык, поэтому в нем могут быть некоторые ошибки, но оригинальная программа работает хорошо:
import glob
import os
from pydub import AudioSegment
#convert to mp3 128 bits
sound = AudioSegment.from_file("input-file.aac")
sound.export("output-file.mp3", format="mp3", bitrate="128k")
#sound.max_dBFS shows how far below the limit the highest sample is (in dB)
sound = AudioSegment.from_file("output.mp3", format="mp3")
max_gain_without_distortion = -1 * sound.max_dBFS
#increase volume by "max_gain_without_distortion" dB
from pydub.playback import play
song = AudioSegment.from_mp3("output-file.mp3")
louder_song = song + max_gain_without_distortion
#save louder song
louder_song.export("output.mp3", format='mp3')
Характеристики ПК: /// ОС: windows 10 pro 64 bit /// ОЗУ: 4 ГБ /// CPU: двухъядерный 3 ГГц /// ВЕРСИЯ PYTHON: 3.7.1 /// Версия Pydub: v0.23.1-0-g46782a9 /// ffmpeg / avlib версия: "Build: ffmpeg-20190219-ff03418-win32-static" ///